feat(boards): 为mp下外接ws2812添加 跑马灯 和 彩虹 效果模块
This commit is contained in:
@@ -178,41 +178,54 @@ export const actuator_extern_led_brightness = function (_, generator) {
|
||||
}
|
||||
|
||||
export const actuator_neopixel_init = function (_, generator) {
|
||||
var v = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||
var dropdown_rgbpin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
|
||||
var value_ledcount = generator.valueToCode(this, 'LEDCOUNT', generator.ORDER_ATOMIC);
|
||||
const v = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||
const dropdown_rgbpin = generator.valueToCode(this, 'PIN', generator.ORDER_ATOMIC);
|
||||
const value_ledcount = generator.valueToCode(this, 'LEDCOUNT', generator.ORDER_ATOMIC);
|
||||
generator.definitions_['import_machine'] = 'import machine';
|
||||
generator.definitions_['import_neopixel'] = 'import neopixel';
|
||||
var code = v + ' = neopixel.NeoPixel(machine.Pin(' + dropdown_rgbpin + '), ' + value_ledcount + ')\n';
|
||||
generator.definitions_['import_ws2812_Neopixel'] = 'from ws2812 import NeoPixel';
|
||||
const code = `${v} = NeoPixel(machine.Pin(${dropdown_rgbpin}), ${value_ledcount})\n`;
|
||||
return code;
|
||||
}
|
||||
|
||||
export const actuator_neopixel_rgb_all = function (_, generator) {
|
||||
var v = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||
var value_rvalue = generator.valueToCode(this, 'RVALUE', generator.ORDER_ATOMIC);
|
||||
var value_gvalue = generator.valueToCode(this, 'GVALUE', generator.ORDER_ATOMIC);
|
||||
var value_bvalue = generator.valueToCode(this, 'BVALUE', generator.ORDER_ATOMIC);
|
||||
var code = v + '.fill((' + value_rvalue + ', ' + value_gvalue + ', ' + value_bvalue + '))\n';
|
||||
const v = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||
const value_rvalue = generator.valueToCode(this, 'RVALUE', generator.ORDER_ATOMIC);
|
||||
const value_gvalue = generator.valueToCode(this, 'GVALUE', generator.ORDER_ATOMIC);
|
||||
const value_bvalue = generator.valueToCode(this, 'BVALUE', generator.ORDER_ATOMIC);
|
||||
const code = `${v}.fill((${value_rvalue}, ${value_gvalue}, ${value_bvalue}))\n`;
|
||||
return code;
|
||||
}
|
||||
|
||||
export const actuator_neopixel_write = function (_, generator) {
|
||||
generator.definitions_['import_machine'] = 'import machine';
|
||||
generator.definitions_['import_neopixel'] = 'import neopixel';
|
||||
var v = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||
var code = v + '.write()\n';
|
||||
const v = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||
const code = `${v}.write()\n`;
|
||||
return code;
|
||||
}
|
||||
|
||||
export const actuator_neopixel_rgb = function (_, generator) {
|
||||
generator.definitions_['import_machine'] = 'import machine';
|
||||
generator.definitions_['import_neopixel'] = 'import neopixel';
|
||||
var v = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||
var value_led = generator.valueToCode(this, '_LED_', generator.ORDER_ATOMIC);
|
||||
var value_rvalue = generator.valueToCode(this, 'RVALUE', generator.ORDER_ATOMIC);
|
||||
var value_gvalue = generator.valueToCode(this, 'GVALUE', generator.ORDER_ATOMIC);
|
||||
var value_bvalue = generator.valueToCode(this, 'BVALUE', generator.ORDER_ATOMIC);
|
||||
var code = v + '[' + value_led + '] = (' + value_rvalue + ', ' + value_gvalue + ', ' + value_bvalue + ')\n';
|
||||
const v = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||
const value_led = generator.valueToCode(this, '_LED_', generator.ORDER_ATOMIC);
|
||||
const value_rvalue = generator.valueToCode(this, 'RVALUE', generator.ORDER_ATOMIC);
|
||||
const value_gvalue = generator.valueToCode(this, 'GVALUE', generator.ORDER_ATOMIC);
|
||||
const value_bvalue = generator.valueToCode(this, 'BVALUE', generator.ORDER_ATOMIC);
|
||||
const code = `${v}[${value_led}] = (${value_rvalue}, ${value_gvalue}, ${value_bvalue})\n`;
|
||||
return code;
|
||||
}
|
||||
|
||||
export const actuator_neopixel_rgb_show_all_chase = function (_, generator) {
|
||||
const v = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||
const value_rvalue = generator.valueToCode(this, 'RVALUE', generator.ORDER_ATOMIC);
|
||||
const value_gvalue = generator.valueToCode(this, 'GVALUE', generator.ORDER_ATOMIC);
|
||||
const value_bvalue = generator.valueToCode(this, 'BVALUE', generator.ORDER_ATOMIC);
|
||||
const number_time = generator.valueToCode(this, 'time', generator.ORDER_ATOMIC);
|
||||
const code = `${v}.color_chase(${value_rvalue}, ${value_gvalue}, ${value_bvalue}, ${number_time})\n`;
|
||||
return code;
|
||||
}
|
||||
|
||||
export const actuator_neopixel_rgb_show_all_rainbow = function (_, generator) {
|
||||
const v = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||
const number_time = generator.valueToCode(this, 'time', generator.ORDER_ATOMIC);
|
||||
const code = `${v}.rainbow_cycle(${number_time})\n`;
|
||||
return code;
|
||||
}
|
||||
|
||||
|
||||
@@ -203,49 +203,49 @@ export const rm_actuator_led_brightness = function (_, generator) {
|
||||
}
|
||||
|
||||
export const actuator_onboard_neopixel_write = function (_, generator) {
|
||||
var version = Boards.getSelectedBoardKey().split(':')[2]
|
||||
generator.definitions_['import_' + version + '_onboard_rgb'] = 'from ' + version + ' import onboard_rgb';
|
||||
var code = 'onboard_rgb.write()\n';
|
||||
const version = Boards.getSelectedBoardKey().split(':')[2];
|
||||
generator.definitions_[`import_${version}_onboard_rgb`] = `from ${version} import onboard_rgb`;
|
||||
const code = 'onboard_rgb.write()\n';
|
||||
return code;
|
||||
}
|
||||
|
||||
export const actuator_onboard_neopixel_rgb = function (_, generator) {
|
||||
var version = Boards.getSelectedBoardKey().split(':')[2]
|
||||
generator.definitions_['import_' + version + '_onboard_rgb'] = 'from ' + version + ' import onboard_rgb';
|
||||
var value_led = generator.valueToCode(this, '_LED_', generator.ORDER_ATOMIC);
|
||||
var value_rvalue = generator.valueToCode(this, 'RVALUE', generator.ORDER_ATOMIC);
|
||||
var value_gvalue = generator.valueToCode(this, 'GVALUE', generator.ORDER_ATOMIC);
|
||||
var value_bvalue = generator.valueToCode(this, 'BVALUE', generator.ORDER_ATOMIC);
|
||||
var code = 'onboard_rgb[' + value_led + '] = (' + value_rvalue + ', ' + value_gvalue + ', ' + value_bvalue + ')\n';
|
||||
const version = Boards.getSelectedBoardKey().split(':')[2];
|
||||
generator.definitions_[`import_${version}_onboard_rgb`] = `from ${version} import onboard_rgb`;
|
||||
const value_led = generator.valueToCode(this, '_LED_', generator.ORDER_ATOMIC);
|
||||
const value_rvalue = generator.valueToCode(this, 'RVALUE', generator.ORDER_ATOMIC);
|
||||
const value_gvalue = generator.valueToCode(this, 'GVALUE', generator.ORDER_ATOMIC);
|
||||
const value_bvalue = generator.valueToCode(this, 'BVALUE', generator.ORDER_ATOMIC);
|
||||
const code = `onboard_rgb[${value_led}] = (${value_rvalue}, ${value_gvalue}, ${value_bvalue})\n`;
|
||||
return code;
|
||||
}
|
||||
|
||||
export const actuator_onboard_neopixel_rgb_all = function (_, generator) {
|
||||
var version = Boards.getSelectedBoardKey().split(':')[2]
|
||||
generator.definitions_['import_' + version + '_onboard_rgb'] = 'from ' + version + ' import onboard_rgb';
|
||||
var value_rvalue = generator.valueToCode(this, 'RVALUE', generator.ORDER_ATOMIC);
|
||||
var value_gvalue = generator.valueToCode(this, 'GVALUE', generator.ORDER_ATOMIC);
|
||||
var value_bvalue = generator.valueToCode(this, 'BVALUE', generator.ORDER_ATOMIC);
|
||||
var code = 'onboard_rgb.fill((' + value_rvalue + ', ' + value_gvalue + ', ' + value_bvalue + '))\n';
|
||||
const version = Boards.getSelectedBoardKey().split(':')[2];
|
||||
generator.definitions_[`import_${version}_onboard_rgb`] = `from ${version} import onboard_rgb`;
|
||||
const value_rvalue = generator.valueToCode(this, 'RVALUE', generator.ORDER_ATOMIC);
|
||||
const value_gvalue = generator.valueToCode(this, 'GVALUE', generator.ORDER_ATOMIC);
|
||||
const value_bvalue = generator.valueToCode(this, 'BVALUE', generator.ORDER_ATOMIC);
|
||||
const code = `onboard_rgb.fill((${value_rvalue}, ${value_gvalue}, ${value_bvalue}))\n`;
|
||||
return code;
|
||||
}
|
||||
|
||||
export const actuator_onboard_neopixel_rgb_show_all_chase = function (_, generator) {
|
||||
var version = Boards.getSelectedBoardKey().split(':')[2]
|
||||
generator.definitions_['import_' + version + '_onboard_rgb'] = 'from ' + version + ' import onboard_rgb';
|
||||
var value_rvalue = generator.valueToCode(this, 'RVALUE', generator.ORDER_ATOMIC);
|
||||
var value_gvalue = generator.valueToCode(this, 'GVALUE', generator.ORDER_ATOMIC);
|
||||
var value_bvalue = generator.valueToCode(this, 'BVALUE', generator.ORDER_ATOMIC);
|
||||
var number_time = generator.valueToCode(this, 'time', generator.ORDER_ATOMIC);
|
||||
var code = 'onboard_rgb.color_chase(' + value_rvalue + ', ' + value_gvalue + ', ' + value_bvalue + ', ' + number_time + ')\n';
|
||||
const version = Boards.getSelectedBoardKey().split(':')[2];
|
||||
generator.definitions_[`import_${version}_onboard_rgb`] = `from ${version} import onboard_rgb`;
|
||||
const value_rvalue = generator.valueToCode(this, 'RVALUE', generator.ORDER_ATOMIC);
|
||||
const value_gvalue = generator.valueToCode(this, 'GVALUE', generator.ORDER_ATOMIC);
|
||||
const value_bvalue = generator.valueToCode(this, 'BVALUE', generator.ORDER_ATOMIC);
|
||||
const number_time = generator.valueToCode(this, 'time', generator.ORDER_ATOMIC);
|
||||
const code = `onboard_rgb.color_chase(${value_rvalue}, ${value_gvalue}, ${value_bvalue}, ${number_time})\n`;
|
||||
return code;
|
||||
}
|
||||
|
||||
export const actuator_onboard_neopixel_rgb_show_all_rainbow = function (_, generator) {
|
||||
var version = Boards.getSelectedBoardKey().split(':')[2]
|
||||
generator.definitions_['import_' + version + '_onboard_rgb'] = 'from ' + version + ' import onboard_rgb';
|
||||
var number_time = generator.valueToCode(this, 'time', generator.ORDER_ATOMIC);
|
||||
var code = 'onboard_rgb.rainbow_cycle(' + number_time + ')\n';
|
||||
const version = Boards.getSelectedBoardKey().split(':')[2];
|
||||
generator.definitions_[`import_${version}_onboard_rgb`] = `from ${version} import onboard_rgb`;
|
||||
const number_time = generator.valueToCode(this, 'time', generator.ORDER_ATOMIC);
|
||||
const code = `onboard_rgb.rainbow_cycle(${number_time})\n`;
|
||||
return code;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user