1 line
15 KiB
XML
1 line
15 KiB
XML
<xml version="Mixly 3.0 rc0" board="Python ESP32-C5@元控自立(SOWL)" shown="block"><block type="variables_set" id="vwmQ71HyH)_F=Sph@=5f" x="-3256" y="-432"><field name="VAR">开始录音</field><value name="VALUE"><block type="logic_boolean" id="A#5?)(.dhzhS@I/zccIG"><field name="BOOL">FALSE</field></block></value><next><block type="variables_set" id="-Jr/7#.n}cs7la0^x@L_"><field name="VAR">d</field><value name="VALUE"><block type="math_number" id="^.(]j-vINf/ttn*Nf*Q7"><field name="NUM">0</field></block></value><next><block type="controls_whileUntil" id="M2`gcDvhfj`XUX;fk|I7"><field name="MODE">WHILE</field><value name="BOOL"><shadow type="logic_boolean" id="?qEU::dIrlJ`IE;-WFSW"><field name="BOOL">TRUE</field></shadow></value><statement name="DO"><block type="controls_if" id="efOuM|$-A0bDGdumZ]Q*"><value name="IF0"><block type="sensor_mixgo_button_was_pressed" id="lGA6TWryWUk!BquHN~XQ"><value name="btn"><shadow type="pins_button" id="NLbC-k_*:hsr-4XR00f)"><field name="PIN">B1key</field></shadow></value></block></value><statement name="DO0"><block type="variables_set" id="eRB{I!ncS`g~5:N4GNG1"><field name="VAR">录音计数</field><value name="VALUE"><block type="math_number" id="ew*7I.JB~dIfuwDcv3.y"><field name="NUM">0</field></block></value><next><block type="variables_set" id="maCY@c2}C?][R)7zW9J:"><field name="VAR">开始录音</field><value name="VALUE"><block type="logic_boolean" id=",X[B6,2?r@8xWAxsdE!="><field name="BOOL">TRUE</field></block></value><next><block type="storage_fileopen" id="iPa_/}Pj7xjktKiBN.kq"><field name="MODE">w</field><value name="FILENAME"><shadow type="text" id="kxIqXOXA6qQRECzYatYs"><field name="TEXT">/test.txt</field></shadow></value><value name="FILE"><shadow type="variables_get" id="jwlj!0Z#++__D?jJ;t6r"><field name="VAR">f</field></shadow></value></block></next></block></next></block></statement><next><block type="controls_if" id="miAVR6Am{5D51`x.yJ90"><value name="IF0"><block type="sensor_mixgo_button_was_pressed" id="lpD];uZ:#Ja5JDDw(SYQ"><value name="btn"><shadow type="pins_button" id="rn+QX5!LZFaFGH.g44(h"><field name="PIN">B2key</field></shadow></value></block></value><statement name="DO0"><block type="variables_set" id="cTDyF*eF/ElI4VEB8,mB"><field name="VAR">开始录音</field><value name="VALUE"><block type="logic_boolean" id="n#nKG$RP4WeX(tp08p*1"><field name="BOOL">FALSE</field></block></value><next><block type="storage_close_file" id="{Dos;DNG-0Eetg.}}OLe"><value name="FILE"><shadow type="variables_get" id="6RyFj)(4J3lG5/7t9tL{"><field name="VAR">f</field></shadow></value></block></next></block></statement><next><block type="controls_if" id="Nc/3kD:8]RL#7p!mVH.]"><value name="IF0"><block type="sensor_mixgo_button_was_pressed" id="7Pzf^9E5n6#ACA=ZnUM{"><value name="btn"><shadow type="pins_button" id="M[i2s#wBx.;=}K~5MpcS"><field name="PIN">A1key</field></shadow></value></block></value><statement name="DO0"><block type="procedures_callnoreturn" id="U70),28=bdbbj82l9ruq"><mutation name="播放声音"></mutation></block></statement><next><block type="controls_if" id=":0~ru6kpqqozuX8qfl-F"><value name="IF0"><block type="variables_get" id="V817lzetYhR[KHY(b{:^"><field name="VAR">开始录音</field></block></value><statement name="DO0"><block type="variables_set" id="EBr#rT!`n?vxK`*jP@;x"><field name="VAR">d</field><value name="VALUE"><block type="sensor_sound" id="G:)uhJ:qIuu[e/rJV=z_"></block></value><next><block type="onboard_tft_display_line" id="0M1y?V7#1g5^xy[JMSzx"><value name="x1"><shadow type="math_number" id="a:A4[]1sBKro|H|3I|Lf"><field name="NUM">127</field></shadow></value><value name="y1"><shadow type="math_number" id="6-7b3Z~qd}I*n1pM2CH#"><field name="NUM">127</field></shadow></value><value name="x2"><shadow type="math_number" id="Wv8#0D^Ay?p:$uWec)FZ"><field name="NUM">127</field></shadow></value><value name="y2"><shadow type="math_number" id="EJWkf/ov4)5y~Zf~@nxG"><field name="NUM">50</field></shadow><block type="math_arithmetic" id="b0q~Mm9VwxqKFlxwp?8T"><field name="OP">MINUS</field><value name="A"><shadow type="math_number" id="rooscQb31)X##:CfKcG)"><field name="NUM">127</field></shadow></value><value name="B"><shadow type="math_number" id="/f{7,d6vY?yb.VjzuH1;"><field name="NUM">1</field></shadow><block type="text_to_number" id="pFHp]z[j}M?T.7snj[p$"><field name="TOWHAT">int</field><value name="VAR"><shadow type="variables_get" id="JE!b|Lwn#{[$?b442vkL"><field name="VAR">x</field></shadow><block type="math_map" id="a5hu1TG]MjA;m`WS^{9l"><value name="NUM"><shadow type="math_number" id="TSHpS_1?hpHo+{0*IEJC"><field name="NUM">50</field></shadow><block type="variables_get" id="R3vJB+{Hsn}:z(JM~L$9"><field name="VAR">d</field></block></value><value name="fromLow"><shadow type="math_number" id="=y^H1pa!I#6J6`N^~YE0"><field name="NUM">0</field></shadow></value><value name="fromHigh"><shadow type="math_number" id="0]:H)/sxiYbQ3ESH(mAR"><field name="NUM">20000</field></shadow></value><value name="toLow"><shadow type="math_number" id="ez)qOb?n]e$gXzG=+9Ap"><field name="NUM">0</field></shadow></value><value name="toHigh"><shadow type="math_number" id="RAfa^cEpT}3jI}:iya+;"><field name="NUM">127</field></shadow></value></block></value></block></value></block></value><value name="VAR"><shadow type="tuple_create_with_text_return" id="P^YrC64$xye(5s.^{9j{"><field name="TEXT">255,255,0</field></shadow><block type="display_color_seclet" id="ww`S=GW0$/HOY*-{;M5^"><field name="COLOR">#ffffff</field></block></value><value name="boolean"><shadow type="logic_boolean" id="c+I@:.tAQAKQq]ws9Kx}"><field name="BOOL">FALSE</field></shadow></value><next><block type="display_shift" id="X3pfaQfiNQ8E01@+4f~~"><field name="OP">shift_left</field><value name="val"><shadow type="math_number" id="]}-7uAnC^kd:)EeE(_rX"><field name="NUM">1</field></shadow></value><value name="boolean"><shadow type="logic_boolean" id="O+B.+OpFFEZCN9*Xr!i["><field name="BOOL">TRUE</field></shadow></value><next><block type="storage_file_write" id="k`);MZE#7e2_:WsV!z6x"><value name="data"><shadow type="text" id=";JP=~^i}6O0x?s=1l7R{"><field name="TEXT">Mixly</field></shadow><block type="number_to_text" id="}^lb?peyS1K3D6FArDji"><value name="VAR"><shadow type="variables_get" id="sB9$KO6i10`2(oBj$[jq"><field name="VAR">x</field></shadow><block type="variables_get" id="/As8b3_`/!*`-BjX~Agw"><field name="VAR">d</field></block></value></block></value><value name="FILE"><shadow type="variables_get" id="*wyloY^e0-cFNY)1qg?l"><field name="VAR">f</field></shadow></value><next><block type="storage_file_write" id="krx9.o8M@}3FshG]z0}Q"><value name="data"><shadow type="text" id="odjba5B4hbI^GS0uUKWj"><field name="TEXT">Mixly</field></shadow><block type="ascii_to_char" id="5z{fX-ZXA.!pC|}Qw_EH"><value name="VAR"><shadow type="math_number" id="tHb=ej5v46||(avKrVk="><field name="NUM">10</field></shadow></value></block></value><value name="FILE"><shadow type="variables_get" id="X(Lf58xCVA|}r{tf~HGl"><field name="VAR">f</field></shadow></value><next><block type="math_selfcalcu" id="NQs)|lv]F[SjXv3yo-U4"><field name="OP">ADD</field><value name="A"><shadow type="variables_get" id="}Sv@O:k-f?`MjxJRa1Xk"><field name="VAR">录音计数</field></shadow></value><value name="B"><shadow type="math_number" id="Hzr|TLksNSczu=G3f.14"><field name="NUM">1</field></shadow></value></block></next></block></next></block></next></block></next></block></next></block></statement><next><block type="actuator_led_bright" id="`Q944bfVu~d/n_6{}0sL"><value name="led"><shadow type="number" id="NPTNjoP_zs9ON1O2vL(v"><field name="op">1</field></shadow></value><value name="bright"><shadow type="ledswitch" id="Hl/.8QWDWl|~-j7oOwCE"><field name="flag">0</field></shadow><block type="variables_get" id="|R0eK#A{psIjsv[ywmgQ"><field name="VAR">开始录音</field></block></value></block></next></block></next></block></next></block></next></block></statement></block></next></block></next></block><block type="procedures_defnoreturn" id="Ir6SwL,lZb:7j|RWnm.P" x="-1993" y="-428"><field name="NAME">播放声音</field><statement name="STACK"><block type="actuator_led_bright" id="}[K`H]xUx1Sl=vMKYal["><value name="led"><shadow type="number" id="b_527E(TMjKfPr{e{n/-"><field name="op">2</field></shadow></value><value name="bright"><shadow type="ledswitch" id="{V||T)}Sm?0_jwP~-s`H"><field name="flag">1</field></shadow></value><next><block type="controls_try_finally" id="||}9H6U[@jrPs(YkOA`1"><mutation elseif="1"></mutation><statement name="try"><block type="storage_fileopen" id="FG8-]B;A9mkRl94@kU*d"><field name="MODE">r</field><value name="FILENAME"><shadow type="text" id=";O)[:QVt8;;?IFH2zKoU"><field name="TEXT">/test.txt</field></shadow></value><value name="FILE"><shadow type="variables_get" id="0}n|GKM2*N0=)-vA+[(W"><field name="VAR">f</field></shadow></value><next><block type="controls_whileUntil" id="/ThkP05p/K$Y21rCTQdk"><field name="MODE">WHILE</field><value name="BOOL"><shadow type="logic_boolean" id="NE+.fdp7mYi0_AG0@DDj"><field name="BOOL">TRUE</field></shadow></value><statement name="DO"><block type="variables_set" id="p?#Pq{/v;XRBtps[|)UH"><field name="VAR">s</field><value name="VALUE"><block type="storage_get_contents_without_para" id="KqW1P@`l64yElaLPnH`S"><field name="MODE">readline</field><value name="FILE"><shadow type="variables_get" id="k~AKvS!kwu*P(.CvPU98"><field name="VAR">f</field></shadow></value></block></value><next><block type="controls_if" id="Z]#ua#wIFfyG^Jb-Hh}T"><mutation else="1"></mutation><value name="IF0"><block type="variables_get" id="FQaZ_sNi2nAWaYi0=Ujw"><field name="VAR">s</field></block></value><statement name="DO0"><block type="variables_set" id="_Na)*t=RG{+)BV|i6}xq"><field name="VAR">d</field><value name="VALUE"><block type="text_to_number" id="obk+YfP;/pC7oEV$rl.q"><field name="TOWHAT">int</field><value name="VAR"><shadow type="variables_get" id="fntqd/J$Rp`gc4/d|h}0"><field name="VAR">x</field></shadow><block type="variables_get" id="JR1Lld?imXNr.hVcY~Wb"><field name="VAR">s</field></block></value></block></value><next><block type="onboard_tft_display_line" id="Z=f+]K4F,Ddmh+P51I`C"><value name="x1"><shadow type="math_number" id="=U#MFR]{^@pm!l~ggBh?"><field name="NUM">127</field></shadow></value><value name="y1"><shadow type="math_number" id="5Ci`K5AsEz]g]y^Rty9X"><field name="NUM">127</field></shadow></value><value name="x2"><shadow type="math_number" id="([?HW,~LguZ31l8|rZ59"><field name="NUM">127</field></shadow></value><value name="y2"><shadow type="math_number" id="Rxr?bm2L6lQzc*Y]WK=?"><field name="NUM">50</field></shadow><block type="math_arithmetic" id="Np)Ma=8TsEM6Ib{z4y}z"><field name="OP">MINUS</field><value name="A"><shadow type="math_number" id="3FIQc0J=b]e]a_Y;XAAn"><field name="NUM">127</field></shadow></value><value name="B"><shadow type="math_number" id="Z^Qu*nz;:6Q#G2)fMtxZ"><field name="NUM">1</field></shadow><block type="text_to_number" id=",4@79E`MCzuETrqo*SM^"><field name="TOWHAT">int</field><value name="VAR"><shadow type="variables_get" id="Lq=6!]};F6a]:5;(im$A"><field name="VAR">x</field></shadow><block type="math_map" id="9/B[tiTJ!Tq:o+s(R?N#" inline="false"><value name="NUM"><shadow type="math_number" id="H/,tbJx=/nO1}it_Gl-I"><field name="NUM">50</field></shadow><block type="variables_get" id=":I.8(X*B^YffnhIFU?3Q"><field name="VAR">d</field></block></value><value name="fromLow"><shadow type="math_number" id="oNtKIEIzZbF}PwS:03Ow"><field name="NUM">0</field></shadow></value><value name="fromHigh"><shadow type="math_number" id="ag.]+4oMsM9UCF;WC+~W"><field name="NUM">20000</field></shadow></value><value name="toLow"><shadow type="math_number" id="7?7cl|@T0!1Dg5BFcnr$"><field name="NUM">0</field></shadow></value><value name="toHigh"><shadow type="math_number" id="HF{Zo}_:iRF_]5rE(d!i"><field name="NUM">127</field></shadow></value></block></value></block></value></block></value><value name="VAR"><shadow type="tuple_create_with_text_return" id="c),D4^4iPf4P/f1hz!Og"><field name="TEXT">255,255,0</field></shadow><block type="display_color_seclet" id="iZs~+Wjeg.L^xs1|*KlK"><field name="COLOR">#ffffff</field></block></value><value name="boolean"><shadow type="logic_boolean" id="p4o+8gULZVfZ5zFo]X/!"><field name="BOOL">FALSE</field></shadow></value><next><block type="display_shift" id="a#[WdJnY)#WKyELR4K/m"><field name="OP">shift_left</field><value name="val"><shadow type="math_number" id="!I_BWo!D4PVRCldQ,j6Z"><field name="NUM">1</field></shadow></value><value name="boolean"><shadow type="logic_boolean" id=")sHpOF?^Vd5q5Ch)vQ:2"><field name="BOOL">TRUE</field></shadow></value></block></next></block></next></block></statement><statement name="ELSE"><block type="controls_flow_statements" id="|G@)j#3bTo7lLMx8Ludk"><field name="FLOW">BREAK</field></block></statement></block></next></block></statement><next><block type="storage_close_file" id="LG/HT(:Lx_LPyXgt:$Fy"><value name="FILE"><shadow type="variables_get" id="#^78,UUY,||+26mycMH5"><field name="VAR">f</field></shadow></value></block></next></block></next></block></statement><value name="IF1"><shadow type="factory_block_return" id="BmR6m,r!++;@VmhbTKgJ"><field name="VALUE">Exception as e</field></shadow></value><statement name="DO1"><block type="system_print" id="zz{!{~)x2pdcv61~H,Q+"><value name="VAR"><block type="variables_get" id="7yH?bfW+4t099}h}7!w$"><field name="VAR">e</field></block></value></block></statement><next><block type="actuator_led_bright" id="J1C+4/PS?5.RD!}/psB7"><value name="led"><shadow type="number" id="0Y7X7Hr:EbdwlaCo0oKB"><field name="op">2</field></shadow></value><value name="bright"><shadow type="ledswitch" id="kzwIGKS1.nKW6=v0FDr2"><field name="flag">0</field></shadow></value></block></next></block></next></block></statement></block></xml><config>{"BurnSpeed":{"key":"921600","label":"921600"}}</config><code>aW1wb3J0IG1peGdvX3Nvd2wKZnJvbSBtaXhnb19zb3dsIGltcG9ydCBvbmJvYXJkX3NvdW5kCmZyb20gbWl4Z29fc293bCBpbXBvcnQgb25ib2FyZF90ZnQKZnJvbSBtaXhweSBpbXBvcnQgbWF0aF9tYXAKZnJvbSBtaXhnb19zb3dsIGltcG9ydCBvbmJvYXJkX2xlZAppbXBvcnQgbWFjaGluZQoKCmRlZiDmkq3mlL7lo7Dpn7MoKToKICAgIG9uYm9hcmRfbGVkLnNldG9ub2ZmKDIsMSkKICAgIHRyeToKICAgICAgICBmID0gb3BlbignL3Rlc3QudHh0JywgJ3InKQogICAgICAgIHdoaWxlIFRydWU6CiAgICAgICAgICAgIHMgPSBmLnJlYWRsaW5lKCkKICAgICAgICAgICAgaWYgczoKICAgICAgICAgICAgICAgIGQgPSBpbnQocykKICAgICAgICAgICAgICAgIG9uYm9hcmRfdGZ0LmxpbmUoMTI3LCAxMjcsIDEyNywgKDEyNyAtIGludCgobWF0aF9tYXAoZCwgMCwgMjAwMDAsIDAsIDEyNykpKSksIDB4ZmZmZixzeW5jPUZhbHNlKQogICAgICAgICAgICAgICAgb25ib2FyZF90ZnQuc2hpZnRfbGVmdCgxLHN5bmM9VHJ1ZSkKICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgZi5jbG9zZSgpCiAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgcHJpbnQoZSkKICAgIG9uYm9hcmRfbGVkLnNldG9ub2ZmKDIsMCkKCgoK5byA5aeL5b2V6Z+zID0gRmFsc2UKZCA9IDAKd2hpbGUgVHJ1ZToKICAgIGlmIG1peGdvX3Nvd2wuQjFrZXkud2FzX3ByZXNzZWQoKToKICAgICAgICDlvZXpn7PorqHmlbAgPSAwCiAgICAgICAg5byA5aeL5b2V6Z+zID0gVHJ1ZQogICAgICAgIGYgPSBvcGVuKCcvdGVzdC50eHQnLCAndycpCiAgICBpZiBtaXhnb19zb3dsLkIya2V5Lndhc19wcmVzc2VkKCk6CiAgICAgICAg5byA5aeL5b2V6Z+zID0gRmFsc2UKICAgICAgICBmLmNsb3NlKCkKICAgIGlmIG1peGdvX3Nvd2wuQTFrZXkud2FzX3ByZXNzZWQoKToKICAgICAgICDmkq3mlL7lo7Dpn7MoKQogICAgaWYg5byA5aeL5b2V6Z+zOgogICAgICAgIGQgPSBvbmJvYXJkX3NvdW5kLnJlYWQoKQogICAgICAgIG9uYm9hcmRfdGZ0LmxpbmUoMTI3LCAxMjcsIDEyNywgKDEyNyAtIGludCgobWF0aF9tYXAoZCwgMCwgMjAwMDAsIDAsIDEyNykpKSksIDB4ZmZmZixzeW5jPUZhbHNlKQogICAgICAgIG9uYm9hcmRfdGZ0LnNoaWZ0X2xlZnQoMSxzeW5jPVRydWUpCiAgICAgICAgZi53cml0ZShzdHIoZCkpCiAgICAgICAgZi53cml0ZShjaHIoMTApKQogICAgICAgIOW9lemfs+iuoeaVsCArPSAxCiAgICBvbmJvYXJkX2xlZC5zZXRvbm9mZigxLOW8gOWni+W9lemfsykK</code> |