feat(boards): 调整micropython下板载RFID图形块

This commit is contained in:
王立帮
2025-03-27 01:32:40 +08:00
parent f17f2b85e1
commit 7af8bf127e
11 changed files with 313 additions and 160 deletions

View File

@@ -1,5 +1,6 @@
import * as Blockly from 'blockly/core';
import { Boards } from 'mixly';
import { MicroPythonSensorOnBoardBlocks } from '@mixly/micropython';
const MEG1_HUE = 40;
@@ -60,6 +61,69 @@ export const mini_g2_varistor = {
}
};
/**
* @override override "@micropython.MicroPythonSensorOnBoardBlocks.rfid_readid"
*/
export const rfid_readid = {
init: function () {
this.appendDummyInput()
.appendField('MINI G2');
MicroPythonSensorOnBoardBlocks.rfid_readid.init.call(this);
this.setColour(MEG1_HUE);
}
};
/**
* @override override "@micropython.MicroPythonSensorOnBoardBlocks.rfid_readcontent"
*/
export const rfid_readcontent = {
init: function () {
this.appendDummyInput()
.appendField('MINI G2');
MicroPythonSensorOnBoardBlocks.rfid_readcontent.init.call(this);
this.setColour(MEG1_HUE);
}
};
/**
* @override override "@micropython.MicroPythonSensorOnBoardBlocks.rfid_write"
*/
export const rfid_write = {
init: function () {
this.appendDummyInput()
.appendField('MINI G2');
MicroPythonSensorOnBoardBlocks.rfid_write.init.call(this);
this.setColour(MEG1_HUE);
}
};
/**
* @override override "@micropython.MicroPythonSensorOnBoardBlocks.rfid_write_return"
*/
export const rfid_write_return = {
init: function () {
this.appendDummyInput()
.appendField('MINI G2');
MicroPythonSensorOnBoardBlocks.rfid_write_return.init.call(this);
this.setColour(MEG1_HUE);
}
};
/**
* @override override "@micropython.MicroPythonSensorOnBoardBlocks.rfid_status"
*/
export const rfid_status = {
init: function () {
this.appendDummyInput()
.appendField('MINI G2');
MicroPythonSensorOnBoardBlocks.rfid_status.init.call(this);
this.setColour(MEG1_HUE);
}
};
/**
* @deprecated To be removed in the future
*/
export const mini_g2_rfid_readid = {
init: function () {
var version = Boards.getSelectedBoardKey().split(':')[2]
@@ -70,11 +134,17 @@ export const mini_g2_rfid_readid = {
.appendField("RFID" + Blockly.Msg.MIXLY_RFID_READ_CARD);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_RFID_READ_CARD_UID);
this.appendDummyInput()
.appendField(`(${Blockly.Msg.MIXLY_DEPRECATED})`);
this.setOutput(true, Number);
this.setInputsInline(true);
this.setWarningText(Blockly.Msg.MIXLY_DEPRECATED_WARNING_TEXT);
}
};
/**
* @deprecated To be removed in the future
*/
export const mini_g2_rfid_readcontent = {
init: function () {
var version = Boards.getSelectedBoardKey().split(':')[2]
@@ -87,11 +157,17 @@ export const mini_g2_rfid_readcontent = {
.appendField(Blockly.Msg.MIXLY_LIST_INDEX)
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL);
this.appendDummyInput()
.appendField(`(${Blockly.Msg.MIXLY_DEPRECATED})`);
this.setOutput(true, Number);
this.setInputsInline(true);
this.setWarningText(Blockly.Msg.MIXLY_DEPRECATED_WARNING_TEXT);
}
};
/**
* @deprecated To be removed in the future
*/
export const mini_g2_rfid_write = {
init: function () {
var version = Boards.getSelectedBoardKey().split(':')[2]
@@ -103,13 +179,19 @@ export const mini_g2_rfid_write = {
this.appendValueInput('SECTOR')
.appendField(Blockly.Msg.MIXLY_LIST_INDEX)
this.appendValueInput('CONTENT')
.appendField(Blockly.Msg.MIXLY_COMMUNICATION_WRITE_NUM)
.appendField(Blockly.Msg.MIXLY_COMMUNICATION_WRITE_NUM);
this.appendDummyInput()
.appendField(`(${Blockly.Msg.MIXLY_DEPRECATED})`);
this.setInputsInline(true);
this.setPreviousStatement(true, null);
this.setNextStatement(true, null);
this.setWarningText(Blockly.Msg.MIXLY_DEPRECATED_WARNING_TEXT);
}
};
/**
* @deprecated To be removed in the future
*/
export const mini_g2_rfid_write_outcome = {
init: function () {
var version = Boards.getSelectedBoardKey().split(':')[2]
@@ -119,16 +201,22 @@ export const mini_g2_rfid_write_outcome = {
.appendField(name)
.appendField(Blockly.Msg.MIXLY_COMMUNICATION_RFID_WRITE);
this.appendValueInput('SECTOR')
.appendField(Blockly.Msg.MIXLY_LIST_INDEX)
.appendField(Blockly.Msg.MIXLY_LIST_INDEX);
this.appendValueInput('CONTENT')
.appendField(Blockly.Msg.MIXLY_COMMUNICATION_WRITE_NUM)
.appendField(Blockly.Msg.MIXLY_COMMUNICATION_WRITE_NUM);
this.appendDummyInput()
.appendField(Blockly.Msg.RETURN_SUCCESS_OR_NOT)
.appendField(Blockly.Msg.RETURN_SUCCESS_OR_NOT);
this.appendDummyInput()
.appendField(`(${Blockly.Msg.MIXLY_DEPRECATED})`);
this.setInputsInline(true);
this.setOutput(true);
this.setWarningText(Blockly.Msg.MIXLY_DEPRECATED_WARNING_TEXT);
}
};
/**
* @deprecated To be removed in the future
*/
export const mini_g2_rfid_status = {
init: function () {
var version = Boards.getSelectedBoardKey().split(':')[2]
@@ -143,7 +231,10 @@ export const mini_g2_rfid_status = {
[Blockly.Msg.MIXLY_RFID_SCAN_NOTAGERR, "None"],
[Blockly.Msg.MIXLY_RFID_SCAN_ERROR, "False"]
]), "key");
this.appendDummyInput()
.appendField(`(${Blockly.Msg.MIXLY_DEPRECATED})`);
this.setOutput(true, Number);
this.setInputsInline(true);
this.setWarningText(Blockly.Msg.MIXLY_DEPRECATED_WARNING_TEXT);
}
};

View File

@@ -1986,15 +1986,16 @@
<block type="cc_g1_turnoff"></block>
</category>
<category id="catMINI_G2" colour="40" m-show='micropython:esp32c2:mixgo_mini'>
<block type="mini_g2_rfid_readid"></block>
<block type="mini_g2_rfid_readcontent">
<block type="rfid_status"></block>
<block type="rfid_readid"></block>
<block type="rfid_readcontent">
<value name="SECTOR">
<shadow type="math_number">
<field name="NUM">0</field>
</shadow>
</value>
</block>
<block type="mini_g2_rfid_write">
<block type="rfid_write">
<value name="SECTOR">
<shadow type="math_number">
<field name="NUM">0</field>
@@ -2006,7 +2007,7 @@
</shadow>
</value>
</block>
<block type="mini_g2_rfid_write_outcome">
<block type="rfid_write_return">
<value name="SECTOR">
<shadow type="math_number">
<field name="NUM">0</field>
@@ -2018,7 +2019,6 @@
</shadow>
</value>
</block>
<block type="mini_g2_rfid_status"></block>
</category>
<category id="catIot" colour="#2FAD7A">
<category id="catBlynk" colour="#2FAD7A">
@@ -3854,7 +3854,14 @@
</next>
</block>
<block type="extern_rfid_readcontent" m-hide='micropython:esp32c3:mixgocar_c3'>
<block type="extern_rfid_status" m-hide='micropython:esp32c3:mixgocar_c3'>
<value name="SUB">
<shadow type="variables_get">
<field name="VAR">ysensor</field>
</shadow>
</value>
</block>
<block type="extern_rfid_readid" m-hide='micropython:esp32c3:mixgocar_c3'>
<value name="SUB">
<shadow type="variables_get">
<field name="VAR">ysensor</field>
@@ -3866,7 +3873,7 @@
</shadow>
</value>
</block>
<block type="extern_rfid_readid" m-hide='micropython:esp32c3:mixgocar_c3'>
<block type="extern_rfid_readcontent" m-hide='micropython:esp32c3:mixgocar_c3'>
<value name="SUB">
<shadow type="variables_get">
<field name="VAR">ysensor</field>
@@ -3913,14 +3920,6 @@
</value>
</block>
<block type="extern_rfid_status" m-hide='micropython:esp32c3:mixgocar_c3'>
<value name="SUB">
<shadow type="variables_get">
<field name="VAR">ysensor</field>
</shadow>
</value>
</block>
<block type="weather_have_data" m-hide='micropython:esp32c3:mixgocar_c3'>
<value name="SUB">
<shadow type="variables_get">