feat(boards): 更新micropython下machine.Timer图形块

This commit is contained in:
王立帮
2026-01-20 18:01:04 +08:00
parent 899c811dc1
commit 0968a1c678
13 changed files with 257 additions and 76 deletions

View File

@@ -143,7 +143,7 @@ export const set_system_timer = function (_, generator) {
var period = generator.valueToCode(this, "period", generator.ORDER_NONE) || "0";
var mode = this.getFieldValue('mode');
var callback = generator.valueToCode(this, "callback", generator.ORDER_NONE) || "None";
var code = v + " = machine.Timer("+ i +",period = " + period + ", mode=machine.Timer." + mode + ", callback=" + callback + ")\n";
var code = v + " = machine.Timer("+ i +", period=" + period + ", mode=machine.Timer." + mode + ", callback=" + callback + ")\n";
return code;
}
@@ -154,30 +154,24 @@ export const system_ticks_diff = function (_, generator) {
var code = "time.ticks_diff(" + end + ", " + start + ")";
return [code, generator.ORDER_ATOMIC];
}
/**
* @deprecated To be removed in the future
*/
export const system_timer_init = function (_, generator) {
var v = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
generator.definitions_['import_machine'] = 'import machine';
var code = v + ' = machine.Timer(0)\n';
return code;
}
/**
* @deprecated To be removed in the future
*/
export const system_timer = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var v = generator.valueToCode(this, "VAR", generator.ORDER_NONE) || "None";
var period = generator.valueToCode(this, "period", generator.ORDER_NONE) || "0";
var v = generator.valueToCode(this, 'VAR', generator.ORDER_NONE) || 'None';
var period = generator.valueToCode(this, 'period', generator.ORDER_NONE) || '0';
var mode = this.getFieldValue('mode');
//var branch = generator.statementToCode(this, 'callback') || generator.PASS;
var callback = generator.valueToCode(this, "callback", generator.ORDER_NONE) || "None";
//var code = v + ".init(period = " + period + ", mode = machine.Timer." + mode + ", callback = " + v + "_callback_func)\n";
//generator.setups_['timer_callback_func'] = 'def ' + v + '_callback_func(t):\n' + branch + '\n';
var code = v + ".init(period = " + period + ", mode=machine.Timer." + mode + ", callback=" + callback + ")\n";
var callback = generator.valueToCode(this, 'callback', generator.ORDER_NONE) || 'None';
var code = `${v}.init(period=${period}, mode=machine.Timer.${mode}, callback=${callback})\n`;
return code;
}
export const system_timer_deinit = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var v = generator.valueToCode(this, 'VAR', generator.ORDER_NONE) || 'None';
var code = `${v}.deinit()\n`;
return code;
}
export const system_wdt_init = function (_, generator) {
generator.definitions_['import_machine'] = 'import machine';
var period = generator.valueToCode(this, "period", generator.ORDER_NONE) || "0";
@@ -204,6 +198,7 @@ export const system_bitbot_shutdown = function (_, generator) {
}
export const Timer_init = system_timer_init;
export const timer2 = system_timer;
export const system_timer = system_timer_init;
export const timer2 = system_timer_init;
export const time_ticks_diff = system_ticks_diff;
export const base_delay = controls_delay;