mini增加网络请求和板载显示绘制指针
This commit is contained in:
@@ -1453,4 +1453,20 @@ export const onboard_tft_display_shape_circle = {
|
||||
"previousStatement": null
|
||||
});
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
export const draw_pointer = {
|
||||
init: function() {
|
||||
this.setColour(DISPLAY_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.DRAW_POINTER)
|
||||
.appendField(Blockly.Msg.DRAW_POINTER_ANGLE);
|
||||
this.appendValueInput('angle');
|
||||
this.appendDummyInput()
|
||||
.appendField('°');
|
||||
this.setPreviousStatement(true, null);
|
||||
this.setNextStatement(true, null);
|
||||
this.setInputsInline(true);
|
||||
this.setTooltip(Blockly.Msg.DRAW_POINTER_TOOLTIP);
|
||||
}
|
||||
};
|
||||
@@ -123,59 +123,6 @@ export const network_wifi_connect = {
|
||||
}
|
||||
};
|
||||
|
||||
export const urequests_wifi_connect = {
|
||||
init: function () {
|
||||
this.setColour(NETWORK_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI);
|
||||
this.appendValueInput('WIFINAME')
|
||||
.setCheck(String)
|
||||
.appendField(Blockly.Msg.HTML_NAME);
|
||||
this.appendValueInput('PASSWORD')
|
||||
.setCheck(String)
|
||||
.appendField(Blockly.Msg.HTML_PASSWORD);
|
||||
this.setInputsInline(true);
|
||||
this.setPreviousStatement(true);
|
||||
this.setNextStatement(true);
|
||||
this.setTooltip(Blockly.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP);
|
||||
}
|
||||
};
|
||||
|
||||
export const urequests_wifi_url = {
|
||||
init: function () {
|
||||
this.setColour(NETWORK_HUE);
|
||||
this.appendValueInput('URL')
|
||||
.setCheck(String)
|
||||
.appendField('URL');
|
||||
this.setInputsInline(true);
|
||||
this.setOutput(true);
|
||||
this.setTooltip(Blockly.Msg.MIXLY_UREQUESTS_URL_TOOLTIP);
|
||||
}
|
||||
};
|
||||
|
||||
export const urequests_connect_url = {
|
||||
init: function () {
|
||||
this.setColour(NETWORK_HUE);
|
||||
this.appendValueInput('url')
|
||||
.appendField(Blockly.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP);
|
||||
this.setPreviousStatement(true);
|
||||
this.setNextStatement(true);
|
||||
this.setInputsInline(true);
|
||||
this.setTooltip(Blockly.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP);
|
||||
}
|
||||
};
|
||||
|
||||
export const urequests_response = {
|
||||
init: function () {
|
||||
this.setColour(NETWORK_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_ESP32_URL_REPONSE);
|
||||
this.setInputsInline(true);
|
||||
this.setOutput(true);
|
||||
this.setTooltip(Blockly.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP);
|
||||
}
|
||||
};
|
||||
|
||||
export const network_get_connect = {
|
||||
init: function () {
|
||||
this.setColour(NETWORK_HUE);
|
||||
@@ -564,4 +511,63 @@ export const ntptime_address = {
|
||||
]), 'op')
|
||||
this.setOutput(true);
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
const COMMUNICATE_HUE = '#3288dd';
|
||||
|
||||
export const requests_get2 = {
|
||||
init: function() {
|
||||
this.setColour(COMMUNICATE_HUE);
|
||||
this.appendValueInput("URL")
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_LET2)
|
||||
.setCheck(String);
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.blockpy_CONDUCT)
|
||||
.appendField(new Blockly.FieldDropdown([["get", "get"], ["head", "head"], ["delete", "delete"]]), 'TYPE')
|
||||
.appendField(Blockly.Msg.blockpy_REQUESTS)
|
||||
.appendField(Blockly.Msg.MIXPY_REQUESTS_GET_RESULT)
|
||||
this.setInputsInline(true);
|
||||
this.setOutput(true);
|
||||
this.setTooltip("");
|
||||
},
|
||||
};
|
||||
|
||||
export const requests_post = {
|
||||
init: function() {
|
||||
this.setColour(COMMUNICATE_HUE);
|
||||
this.appendValueInput("URL")
|
||||
.appendField(Blockly.Msg.DISPLAY_IMAGE_LET2)
|
||||
.setCheck(String);
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.blockpy_CONDUCT)
|
||||
.appendField(new Blockly.FieldDropdown([["post", "post"], ["put", "put"], ["patch", "patch"]]), 'TYPE')
|
||||
.appendField(Blockly.Msg.blockpy_REQUESTS)
|
||||
this.appendValueInput("data")
|
||||
.appendField(Blockly.Msg.blockpy_REQUESTS+Blockly.Msg.OLED_STRING)
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.MIXPY_REQUESTS_GET_RESULT)
|
||||
this.setInputsInline(true);
|
||||
this.setOutput(true);
|
||||
this.setTooltip("");
|
||||
},
|
||||
};
|
||||
|
||||
export const requests_attribute2 = {
|
||||
init: function() {
|
||||
this.appendValueInput('VAL')
|
||||
|
||||
var attr =
|
||||
[[Blockly.Msg.blockpy_REQUESTS_GET_ATTR_TEXT, 'text'],
|
||||
[Blockly.Msg.blockpy_REQUESTS_GET_ATTR_JSON,'json()'],
|
||||
[Blockly.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE, 'status_code'],
|
||||
[Blockly.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT, 'content']
|
||||
,[Blockly.Msg.MIXPY_TEXT_ENCODE, 'encoding']];
|
||||
this.setColour(COMMUNICATE_HUE);
|
||||
this.appendDummyInput("")
|
||||
.appendField(Blockly.Msg.MIXLY_MICROBIT_JS_GET)
|
||||
.appendField(new Blockly.FieldDropdown(attr), 'ATTR')
|
||||
|
||||
this.setInputsInline(true);
|
||||
this.setOutput(true, String);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -913,4 +913,12 @@ export const onboard_tft_display_shape_circle = function (block, generator) {
|
||||
var code = 'onboard_tft.ellipse(' + x + ', ' + y + ', ' + R + ', ' + R + ', 0x' + rgb565.toString(16) + ',' + shape + ')\n' + 'onboard_tft.show()\n';
|
||||
}
|
||||
return code;
|
||||
}
|
||||
|
||||
export const draw_pointer = function(_, generator) {
|
||||
var version = Boards.getSelectedBoardKey().split(':')[2]
|
||||
generator.definitions_['import_'+version+'_onboard_matrix'] = "from "+version+" import onboard_matrix";
|
||||
var angle = generator.valueToCode(this, 'angle', generator.ORDER_ASSIGNMENT);
|
||||
var code = "onboard_matrix.pointern(angle=" + angle + ")\n";
|
||||
return code;
|
||||
}
|
||||
@@ -230,29 +230,30 @@ export const ntptime_address = function (_, generator) {
|
||||
return [code, generator.ORDER_ATOMIC];
|
||||
}
|
||||
|
||||
export const urequests_wifi_connect = function (_, generator) {
|
||||
export const requests_get2 = function(_, generator) {
|
||||
generator.definitions_['import_urequests'] = "import urequests";
|
||||
var username = generator.valueToCode(this, 'WIFINAME', generator.ORDER_ATOMIC);
|
||||
var password = generator.valueToCode(this, 'PASSWORD', generator.ORDER_ATOMIC);
|
||||
var code = 'wifi.connect(' + username + ',' + password + ')\n';
|
||||
return code;
|
||||
}
|
||||
|
||||
export const urequests_wifi_url = function (_, generator) {
|
||||
generator.definitions_['import_urequests'] = "import urequests";
|
||||
var url = generator.valueToCode(this, 'URL', generator.ORDER_ATOMIC);
|
||||
var code = url;
|
||||
var dropdown_type = this.getFieldValue('TYPE');
|
||||
var str =generator.valueToCode(this, 'URL', generator.ORDER_ATOMIC) ;
|
||||
var code= 'urequests.'+dropdown_type+'(' + str + ')';
|
||||
return [code,generator.ORDER_ATOMIC];
|
||||
}
|
||||
|
||||
export const urequests_connect_url = function (_, generator) {
|
||||
|
||||
};
|
||||
|
||||
export const requests_attribute2 = function(_, generator) {
|
||||
generator.definitions_['import_urequests'] = "import urequests";
|
||||
var url = generator.valueToCode(this, 'url', generator.ORDER_ATOMIC);
|
||||
return 'response=urequests.get('+url+')\n';
|
||||
}
|
||||
|
||||
export const urequests_response = function (_, generator) {
|
||||
generator.definitions_['import_urequests'] = "import urequests";
|
||||
var code = 'res=response.text';
|
||||
var varName = generator.valueToCode(this, 'VAL', generator.ORDER_ASSIGNMENT) || '0';
|
||||
var attr = this.getFieldValue('ATTR');
|
||||
var code=varName+"." + attr;
|
||||
return [code,generator.ORDER_ATOMIC];
|
||||
}
|
||||
};
|
||||
|
||||
export const requests_post = function(_, generator) {
|
||||
generator.definitions_['import_urequests'] = "import urequests";
|
||||
var dropdown_type = this.getFieldValue('TYPE');
|
||||
var str = generator.valueToCode(this, 'URL', generator.ORDER_ATOMIC) ;
|
||||
var data = generator.valueToCode(this, 'data', generator.ORDER_ATOMIC) ;
|
||||
var code= 'urequests.'+dropdown_type+'(' + str +',data='+data+ ')';
|
||||
return [code,generator.ORDER_ATOMIC];
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -350,3 +350,11 @@ div.blocklyToolboxDiv > div.blocklyToolboxContents > div:nth-child(12) > div.blo
|
||||
background:url('../../../../common/media/mark/factory4.png') no-repeat;
|
||||
background-size: 100% auto;
|
||||
}
|
||||
#catCommunicate.blocklyTreeRow > div.blocklyTreeRowContentContainer > span.blocklyTreeIcon{
|
||||
background:url('../../../../common/media/mark/requests.png') no-repeat;
|
||||
background-size: 100% auto;
|
||||
}
|
||||
#catCommunicate.blocklyTreeRow.blocklyTreeSelected > div.blocklyTreeRowContentContainer > span.blocklyTreeIcon{
|
||||
background:url('../../../../common/media/mark/requests2.png') no-repeat;
|
||||
background-size: 100% auto;
|
||||
}
|
||||
@@ -1855,17 +1855,21 @@
|
||||
</block>
|
||||
|
||||
<block type="display_bright_screen">
|
||||
|
||||
<value name="x">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">0.5</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="display_get_screen_pixel">
|
||||
|
||||
</block>
|
||||
<block type="display_get_screen_pixel"></block>
|
||||
<block type="display_clear"></block>
|
||||
<block type="draw_pointer">
|
||||
<value name="angle">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">0</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
</category>
|
||||
|
||||
<category id="catME_GO" colour="100" m-show='micropython:esp32c2:mixgo_mini'>
|
||||
@@ -6494,37 +6498,44 @@
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="urequests_wifi_connect">
|
||||
<value name="WIFINAME">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">wifi-name</field>
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="PASSWORD">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">wifi-password</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="urequests_wifi_url">
|
||||
<value name="URL">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">url</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="urequests_connect_url">
|
||||
<value name="url">
|
||||
<block type="urequests_wifi_url">
|
||||
</category>
|
||||
<category id="catCommunicate" colour="#3288dd">
|
||||
<block type="variables_set">
|
||||
<field name="VAR">response</field>
|
||||
<value name="VALUE">
|
||||
<block type="requests_get2">
|
||||
<value name="URL">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">url</field>
|
||||
<field name="TEXT">http://mixio.mixly.cn</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
</value>
|
||||
</block>
|
||||
<block type="urequests_response"></block>
|
||||
<block type="variables_set">
|
||||
<field name="VAR">response</field>
|
||||
<value name="VALUE">
|
||||
<block type="requests_post">
|
||||
<value name="URL">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">http://mixio.mixly.cn</field>
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="data">
|
||||
<shadow type="text">
|
||||
<field name="TEXT"></field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
</value>
|
||||
</block>
|
||||
<block type="requests_attribute2">
|
||||
<value name="VAL">
|
||||
<shadow type="variables_get">
|
||||
<field name="VAR">response</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
</category>
|
||||
|
||||
<category id="catFactory" name="Factory" colour="#777777">
|
||||
|
||||
Reference in New Issue
Block a user