初始化提交

This commit is contained in:
王立帮
2024-07-19 10:16:00 +08:00
parent 4c7b571f20
commit 4a2d56dcc4
7084 changed files with 741212 additions and 63 deletions

View File

@@ -0,0 +1,158 @@
import * as Blockly from 'blockly/core';
// ok
export const inout_highlow = function (_, generator) {
// Boolean values HIGH and LOW.
var code = (this.getFieldValue('BOOL') == 'HIGH') ? '1' : '0';
return [code, generator.ORDER_ATOMIC];
}
// ok
export const inout_digital_write = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
var dropdown_stat = generator.valueToCode(this, 'STAT', generator.ORDER_ATOMIC);
var code = "";
code += dropdown_pin + '.value(' + dropdown_stat + ')\n'
return code;
}
// ok
export const inout_digital_read = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
var code = "";
code = dropdown_pin + '.value()';
return [code, generator.ORDER_ATOMIC];
}
//ok
export const inout_pwm_analog_write = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
//var dropdown_stat = this.getFieldValue('STAT');
var value_num = generator.valueToCode(this, 'NUM', generator.ORDER_ATOMIC);
//generator.setups_['setup_output'+dropdown_pin] = 'pinMode('+dropdown_pin+', OUTPUT);';
var code = dropdown_pin + '.duty(' + value_num + ')\n';
return code;
}
//ok
export const inout_analog_write = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
//var dropdown_stat = this.getFieldValue('STAT');
var value_num = generator.valueToCode(this, 'NUM', generator.ORDER_ATOMIC);
//generator.setups_['setup_output'+dropdown_pin] = 'pinMode('+dropdown_pin+', OUTPUT);';
var code = dropdown_pin + '.write(' + value_num + ')\n';
return code;
}
//ok
export const inout_analog_write_set = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
var value_num = generator.valueToCode(this, 'NUM', generator.ORDER_ATOMIC);
var key = this.getFieldValue('key');
var code = dropdown_pin + '.set_analog_' + key + '(' + value_num + ')\n';
//var code = 'pin' + dropdown_pin + '.set_analog_period(' + value_num + ')\n';
return code;
}
export const inout_pwm_analog_write_set_freq = function (_, generator) {
//generator.definitions_['import_machine_Pin'] = "from machine import Pin";
// generator.definitions_['import_machine_PWM'] = "from machine import PWM";
generator.definitions_['import_machine'] = 'import machine';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
var value_num = generator.valueToCode(this, 'NUM', generator.ORDER_ATOMIC);
var code = dropdown_pin + '.freq(' + value_num + ')\n';
//var code = 'pin' + dropdown_pin + '.set_analog_period(' + value_num + ')\n';
return code;
}
//ok
export const inout_analog_read = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
//generator.setups_['setup_input_'+dropdown_pin] = 'pinMode('+dropdown_pin+', INPUT);';
var code = dropdown_pin + '.read()';
return [code, generator.ORDER_ATOMIC];
}
//ok
export const inout_pin_pressed = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var pin = generator.valueToCode(this, 'pin', generator.ORDER_ATOMIC);
var code = pin + '.read()';
return [code, generator.ORDER_ATOMIC];
}
export const inout_pin_attachInterrupt = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
var dropdown_mode = this.getFieldValue('mode');
var atta = generator.valueToCode(this, 'DO', generator.ORDER_ATOMIC);
var code = 'machine.Pin(' + dropdown_pin + ').irq' + '(handler = ' + atta + ', trigger = ' + dropdown_mode + ')\n'
//var funcName = 'attachInterrupt_func_' + dropdown_pin;
//var branch = generator.statementToCode(this, 'DO') || generator.PASS;
//var code2 = 'def' + ' ' + funcName + '(p):\n' + branch + '\n';
//generator.setups_[funcName] = code2;
return code;
}
export const inout_digital_init = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var pin_obj = this.getFieldValue('PIN_OBJ') || 'pin#';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
var dropdown_mode = this.getFieldValue('MODE');
var varName = (pin_obj == 'pin#') ? 'pin' + dropdown_pin : generator.variableDB_.getName(pin_obj, Blockly.Variables.NAME_TYPE);
var code = varName + ' = machine.Pin(' + dropdown_pin + ', ' + dropdown_mode + ')\n';
return code;
}
export const inout_pwm_analog_write_init = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var pin_obj = this.getFieldValue('PIN_OBJ') || 'pwm#';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
var varName = (pin_obj == 'pwm#') ? 'pwm' + dropdown_pin : generator.variableDB_.getName(pin_obj, Blockly.Variables.NAME_TYPE);
var code = varName + ' = machine.PWM(machine.Pin(' + dropdown_pin + '))\n';
return code;
}
//ok
export const inout_analog_write_init = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var pin_obj = this.getFieldValue('PIN_OBJ') || 'dac#';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
var varName = (pin_obj == 'dac#') ? 'dac' + dropdown_pin : generator.variableDB_.getName(pin_obj, Blockly.Variables.NAME_TYPE);
var code = varName + ' = machine.DAC(machine.Pin(' + dropdown_pin + '))\n';
return code;
}
export const inout_analog_read_init = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var pin_obj = this.getFieldValue('PIN_OBJ') || 'adc#';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
var varName = (pin_obj == 'adc#') ? 'adc' + dropdown_pin : generator.variableDB_.getName(pin_obj, Blockly.Variables.NAME_TYPE);
var code = varName + ' = machine.ADC(machine.Pin(' + dropdown_pin + '))\n';
return code;
}
export const inout_analog_atten = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
//var dropdown_stat = this.getFieldValue('STAT');
var value_atten = this.getFieldValue('atten')
var code = dropdown_pin + '.atten(' + value_atten + ')\n';
return code;
}
//ok
export const inout_pin_pressed_init = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var pin_obj = this.getFieldValue('PIN_OBJ') || 'tc#';
var dropdown_pin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
var varName = (pin_obj == 'tc#') ? 'tc' + dropdown_pin : generator.variableDB_.getName(pin_obj, Blockly.Variables.NAME_TYPE);
var code = varName + ' = machine.TouchPad(machine.Pin(' + dropdown_pin + '))\n';
return code;
}

View File

@@ -0,0 +1,55 @@
export const me_g1_aht11 = function (_, generator) {
var key = this.getFieldValue('key');
generator.definitions_['import_me_g1'] = 'import me_g1';
var code = 'me_g1.ext_ahtx0.' + key + '()';
return [code, generator.ORDER_ATOMIC];
}
export const me_g1_hp203 = function (_, generator) {
var key = this.getFieldValue('key');
generator.definitions_['import_me_g1'] = 'import me_g1';
var code = 'me_g1.ext_hp203x.' + key;
return [code, generator.ORDER_ATOMIC];
}
export const me_g1_varistor = function (_, generator) {
generator.definitions_['import_me_g1'] = 'import me_g1';
var code = 'me_g1.varistor()';
return [code, generator.ORDER_ATOMIC];
}
export const me_g1_rfid_readid = function (_, generator) {
generator.definitions_['import_me_g1'] = 'import me_g1';
var code = 'me_g1.ext_rc522.read_card(0, x="id")';
return [code, generator.ORDER_ATOMIC];
}
export const me_g1_rfid_readcontent = function (_, generator) {
var sector = generator.valueToCode(this, 'SECTOR', generator.ORDER_ATOMIC);
generator.definitions_['import_me_g1'] = 'import me_g1';
var code = 'me_g1.ext_rc522.read_card(' + sector + ')';
return [code, generator.ORDER_ATOMIC];
}
export const me_g1_rfid_write = function (_, generator) {
var sector = generator.valueToCode(this, 'SECTOR', generator.ORDER_ATOMIC);
var cnt = generator.valueToCode(this, 'CONTENT', generator.ORDER_ATOMIC);
generator.definitions_['import_me_g1'] = 'import me_g1';
var code = 'me_g1.ext_rc522.write_card(' + cnt + ',' + sector + ')\n';
return code;
}
export const me_g1_rfid_write_outcome = function (_, generator) {
var sector = generator.valueToCode(this, 'SECTOR', generator.ORDER_ATOMIC);
var cnt = generator.valueToCode(this, 'CONTENT', generator.ORDER_ATOMIC);
generator.definitions_['import_me_g1'] = 'import me_g1';
var code = 'me_g1.ext_rc522.write_card(' + cnt + ',' + sector + ')';
return [code, generator.ORDER_ATOMIC];
}
export const me_g1_rfid_status = function (_, generator) {
var key = this.getFieldValue('key');
generator.definitions_['import_me_g1'] = 'import me_g1';
var code = 'me_g1.ext_rc522.scan_card()==' + key;
return [code, generator.ORDER_ATOMIC];
}

View File

@@ -0,0 +1,127 @@
export const me_go_light_number = function (_, generator) {
generator.definitions_['import_me_go_car'] = 'from me_go import car';
var code = 'car.' + this.getFieldValue('op');
return [code, generator.ORDER_ATOMIC];
}
export const me_go_led_bright = function (_, generator) {
var op = generator.valueToCode(this, 'led', generator.ORDER_ATOMIC);
generator.definitions_['import_me_go_car'] = 'from me_go import car';
var bright = generator.valueToCode(this, 'bright', generator.ORDER_ATOMIC);
var code = "car.setonoff(" + op + "," + bright + ")\n";
return code;
}
export const me_go_get_led_bright = function (_, generator) {
var op = generator.valueToCode(this, 'led', generator.ORDER_ATOMIC);
generator.definitions_['import_me_go_car'] = 'from me_go import car';
var code = "car.getrightness(" + op + ")";
return [code, generator.ORDER_ATOMIC];
}
export const me_go_get_led_state = function (_, generator) {
var op = generator.valueToCode(this, 'led', generator.ORDER_ATOMIC);
generator.definitions_['import_me_go_car'] = 'from me_go import car';
var code = "car.getonoff(" + op + ")";
return [code, generator.ORDER_ATOMIC];
}
export const me_go_led_brightness = function (_, generator) {
var op = generator.valueToCode(this, 'led', generator.ORDER_ATOMIC);
generator.definitions_['import_me_go_car'] = 'from me_go import car';
var flag = generator.valueToCode(this, 'bright', generator.ORDER_ATOMIC);
var code = "car.setbrightness(" + op + "," + flag + ")\n";
return code;
}
export const me_go_stepper_keep = function (_, generator) {
var v = this.getFieldValue('VAR');
generator.definitions_['import_me_go_car'] = 'from me_go import car';
var speed = generator.valueToCode(this, 'speed', generator.ORDER_ASSIGNMENT);
var code = 'car.move("' + v + '",' + speed + ")\n";
return code;
}
export const me_go_stepper_stop = function (_, generator) {
var v = this.getFieldValue('VAR');
generator.definitions_['import_me_go_car'] = 'from me_go import car';
var code = 'car.move("' + v + '")\n';
return code;
}
export const me_go_dc_motor = function (_, generator) {
var wheel = this.getFieldValue('wheel');
generator.definitions_['import_me_go_car'] = 'from me_go import car';
var v = this.getFieldValue('direction');
if (wheel == 0) {
if (v == 'CW') { v = 'CCW' }
else if (v == 'CCW') { v = 'CW' }
}
var speed = generator.valueToCode(this, 'speed', generator.ORDER_ATOMIC);
var code = "car.motor(car.MOTO[" + wheel + '],"' + v + '",' + speed + ")\n";
return code;
}
export const me_go_hall_attachInterrupt = function (_, generator) {
var dropdown_mode = this.getFieldValue('mode');
generator.definitions_['import_me_go_hall_' + dropdown_mode] = 'from me_go import hall_' + dropdown_mode;
var atta = generator.valueToCode(this, 'DO', generator.ORDER_ATOMIC);
var code = 'hall_' + dropdown_mode + '.irq_cb(' + atta + ')\n'
return code;
}
export const me_go_hall_initialize = function (_, generator) {
var dropdown_mode = this.getFieldValue('mode');
var args = this.getFieldValue('args');
generator.definitions_['import_me_go_hall_' + dropdown_mode] = 'from me_go import hall_' + dropdown_mode;
var num = generator.valueToCode(this, 'num', generator.ORDER_ATOMIC);
if (args == 'all') {
var code = 'hall_' + dropdown_mode + '.initial(' + 'turns' + '=' + num + ',distance=' + num + ')\n'
return code;
}
var code = 'hall_' + dropdown_mode + '.initial(' + args + '=' + num + ')\n'
return code;
}
export const me_go_hall_data = function (_, generator) {
var dropdown_mode = this.getFieldValue('mode');
var args = this.getFieldValue('args');
generator.definitions_['import_me_go_hall_' + dropdown_mode] = 'from me_go import hall_' + dropdown_mode;
var code = 'hall_' + dropdown_mode + '.' + args + '';
return [code, generator.ORDER_ATOMIC];
}
export const me_go_pin_near_line = function (_, generator) {
var key = this.getFieldValue('key');
generator.definitions_['import_me_go_hall'] = 'from me_go import car';
var code = 'car.patrol()' + key + '';
return [code, generator.ORDER_ATOMIC];
}
export const me_go_pin_near = function (_, generator) {
var key = this.getFieldValue('key');
generator.definitions_['import_me_go_hall'] = 'from me_go import car';
var code = 'car.obstacle()' + key + '';
return [code, generator.ORDER_ATOMIC];
}
export const me_go_pin_near_state_change = function (_, generator) {
var key = this.getFieldValue('key');
generator.definitions_['import_me_go_hall'] = 'from me_go import car';
var code = 'car.ir_mode(car.' + key + ')\n';
return code;
}
export const sensor_mixgome_eulerangles = function (_, generator) {
generator.definitions_['import_mixgo_me_onboard_mxc6655xa'] = "from mixgo_me import onboard_mxc6655xa";
var angle = this.getFieldValue('angle');
var code = 'onboard_mxc6655xa.eulerangles(upright=True)' + angle;
return [code, generator.ORDER_ATOMIC];
}
export const me_go_pin_light = function (_, generator) {
var key = this.getFieldValue('key');
generator.definitions_['import_me_go_hall'] = 'from me_go import car';
var code = 'car.light()' + key + '';
return [code, generator.ORDER_ATOMIC];
}

View File

@@ -0,0 +1,49 @@
export const pins_digital = function (_, generator) {
var code = this.getFieldValue('PIN');
return [code, generator.ORDER_ATOMIC];
}
export const pins_button = pins_digital;
export const pins_buttonB = pins_digital;
export const pins_digital_pin = pins_digital;
export const pins_input_pin = pins_digital;
export const pins_output_pin = pins_digital;
export const pins_pwm_input = pins_digital;
export const espnow_channel = pins_digital;
export const haskylens_model = pins_digital;
export const analog_input = pins_digital;
export const pwm_output = pins_digital;
export const analog_output = pins_digital;
export const i2c_A_pin = pins_digital;
export const i2c_B_pin = pins_digital;
export const spi_A_pin = pins_digital;
export const spi_B_pin = pins_digital;
export const spi_C_pin = pins_digital;
export const spi_D_pin = pins_digital;
export const pins_analog_pin = pins_digital;
export const pins_analog = pins_digital;
export const pins_pwm_pin = pins_digital;
export const pins_pwm = pins_digital;
export const pins_dac_pin = pins_digital;
export const pins_dac = pins_digital;
export const pins_touch_pin = pins_digital;
export const pins_touch = pins_digital;
export const pins_interrupt = pins_digital;
export const pins_serial = pins_digital;
export const pins_builtinimg = pins_digital;
export const pins_builtinimg_extern = pins_digital;
export const pins_imglist = pins_digital;
export const pins_playlist = pins_digital;
export const pins_playlist_extern = pins_digital;
export const pins_axis = pins_digital;
export const pins_exlcdh = pins_digital;
export const pins_exlcdv = pins_digital;
export const pins_brightness = pins_digital;
export const pins_tts_voice = pins_digital;
export const pins_tts_builtin_music = pins_digital;
export const pins_tts_bgmusic = pins_digital;
export const pins_tone_notes = pins_digital;
export const pins_radio_power = pins_digital;
export const pins_radio_datarate = pins_digital;
export const pins_one_more = pins_digital;
export const pins_digital_dot = pins_digital;