本人老师,想学习arduino编程,请问arduino与pyhton有什么关系? 如果想要学习Arduino编程,我看完了Arduino从零开...
\u80fd\u7528python\u7ed9arduino\u7f16\u7a0b\u5417\uff1f\u8fc7\u53bb\uff0c\u201cArduino\u201d\u7684\u6807\u7b7e\u610f\u5473\u7740\u4f7f\u7528\u7684\u5f00\u53d1\u677f\u4e0a\u6709\u4e00\u4e2aAtmel\u5904\u7406\u5668\uff0c\u5e76\u4e14\u4f7f\u7528Arduino\u8f6f\u4ef6\u5e93\u3002\u73b0\u5728\u4e0d\u518d\u5982\u6b64\u3002\u51e0\u4e4e\u6bcf\u5bb6\u5fae\u5904\u7406\u5668\u5236\u9020\u5546\u90fd\u57fa\u4e8eArduino\u677f\u8bbe\u8ba1\u4e86\u4e00\u5957\u5f00\u53d1\u5de5\u5177\uff0c\u7528\u5230\u4e86\u5b83\u4eec\u81ea\u5df1\u7684\u5904\u7406\u5668\u548c\u8f6f\u4ef6\u3002\u5728\u300a\u539f\u578b\u5230\u4ea7\u54c1\uff1a\u4e13\u4e1a\u5316\u7684Arduino\u300b\u4e00\u6587\u4e2d\uff0c\u6211\u63d0\u5230Arduino\u7ed9\u5f00\u53d1\u8005\u63d0\u4f9b\u7684\u6700\u91cd\u8981\u7279\u6027\u5c31\u662f\u786c\u4ef6\u517c\u5bb9\uff0c\u5e76\u4e14\u80fd\u7528\u5b83\u4eec\u81ea\u5df1\u7684\u8f6f\u4ef6\u3002\u6b63\u5728\u8bd5\u56fe\u878d\u5408Python\u548cArduino\u4f18\u70b9\u7684\u5f00\u53d1\u8005\u9700\u8981\u5bfb\u627e\u4e00\u6b3e\u5f00\u53d1\u5de5\u5177\u6216\u662f\u5e73\u53f0\uff0c\u7b26\u5408\u786c\u4ef6\u6807\u51c6\uff0c\u80fd\u8fd0\u884cPython\uff0c\u4f46\u53c8\u4e0d\u5c40\u9650\u4e8e\u4f7f\u7528Atmel\u5904\u7406\u5668\u6216\u662fArduino\u4ee3\u7801\u5305\u3002
\u5728Arduino\u4e0a\u8fd0\u884cPython\u7684\u5c0f\u6280\u5de7\u5c31\u662f\u5bfb\u627e\u4e00\u4e2a\u517c\u5bb9Arduino\u7684\u5f00\u53d1\u5de5\u5177\uff0c\u5728\u4e0a\u9762\u8fd0\u884cPython\u3002\u8fd9\u4e2a\u95ee\u9898\u672c\u8d28\u4e0a\u5c31\u662f\u5bfb\u627e\u54ea\u79cd\u578b\u53f7\u7684Arduino\u677f\u5b50\u6709Python\u7aef\u53e3\u3002\u6ca1\u6709\u5f00\u53d1\u8005\u4f1a\u4e3a\u4e86\u5728\u5355\u7247\u673a\u4e0a\u8fd0\u884cPython\u800c\u81ea\u5df1\u505a\u8fc1\u79fb\uff0c\u5c3d\u7ba1\u8fc1\u79fbPython\u5f88\u6709\u8da3\uff0c\u4f46\u662f\u4e5f\u975e\u5e38\u8017\u8d39\u7cbe\u529b\u3002\u5f53\u7136\u8fd8\u6709\u5176\u5b83\u7684\u5f00\u53d1\u8005\uff0c\u548c\u5f00\u6e90\u7684\u6216\u8005\u8fc1\u79fb\u7684Python\u4ee3\u7801\u3002
\u5f3a\u5927\u7684\u8c37\u6b4c\u641c\u7d22\u544a\u8bc9\u6211\u4eec\u51e0\u4e4e\u6ca1\u6709\u5408\u9002\u7684\u9009\u62e9\u3002\u4ec5\u6709\u7684\u51e0\u4e2a\u4e4b\u4e00\u7684\u9009\u62e9\u662f\u4e00\u6b3e\u4e94\u5e74\u524d\u7684\u5f00\u6e90\u4ea7\u54c1\uff0c\u540d\u4e3aPymite\u3002\u5b83\u4f7f\u7528\u7684Python\u7248\u672c\u662f2.5\uff08\u4e0d\u662f\u6700\u65b0\u76842.7\u7248\u672c\uff09\uff0c\u5728\u8fc7\u53bb\u4e24\u5e74\u91cc\u51e0\u4e4e\u6ca1\u6709\u66f4\u65b0\u3002\u6ca1\u6709\u6d3b\u8dc3\u793e\u533a\u7684\u652f\u6301\uff0cPymite\u4e5f\u514d\u4e0d\u4e86\u843d\u5165\u5f00\u6e90\u9879\u76ee\u7684\u9677\u9631\u4e2d\u3002Pymite\u53ef\u4ee5\u4f5c\u4e3a\u4e00\u4e2a\u65b9\u6848\uff0c\u4f46\u662f\u5728\u51fa\u73b0\u95ee\u9898\u7684\u65f6\u5019\u4f1a\u5f88\u65e0\u52a9\u3002
**\u7b2c\u4e8c\u79cd\u9009\u62e9\u662fMicro Python\u3002**Micro Python\u662f\u4e00\u4e2aPython 3\u7684\u5f00\u6e90\u9879\u76ee\uff0c\u9488\u5bf9\u5355\u7247\u673a\u505a\u4e86\u6027\u80fd\u4f18\u5316\u3002\uff08\u4f60\u53ef\u4ee5\u9605\u8bfb\u300aMicro Python\u5165\u95e8\u6559\u7a0b\u300b\u6765\u4e86\u89e3\u5b83\uff09\u3002Micro Python\u8fd1\u671f\u6c47\u96c6\u4e86\u4e00\u4e9b\u8d44\u6e90\uff0c\u76ee\u524d\u652f\u6301\u8bb8\u591a\u786c\u4ef6\u5e73\u53f0\uff0c\u5305\u62ecCC3200\u3001ESP8266\u3001PIC16\u548cSTM32\u3002\u7c97\u7565\u6d4f\u89c8Micro Python\u4ee3\u7801\u5e93\uff08\u5982\u56fe1\uff09\u53ef\u4ee5\u53d1\u73b0\u5b83\u5bf9STM32\u5bb6\u65cf\u7684\u4ea7\u54c1\u652f\u6301\u5ea6\u8981\u597d\u4e8e\u5176\u5b83\u4ea7\u54c1\u3002
\u4f46\u662f\uff0c\u8fd9\u4e9b\u5355\u7247\u673a\u5f00\u53d1\u5de5\u5177\u5305\u5728\u76d2\u5b50\u4e4b\u5916\u8fd8\u652f\u6301Micro Python\u5417\uff1f\u5bf9\u76ee\u524d\u652f\u6301Micro Python\u7684\u677f\u5b50\u8c03\u7814\u540e\u53d1\u73b0\uff0c\u53ea\u6709NETDUINO_PLUS_2\u548cOLIMEX_E407\u6709Arduino\u517c\u5bb9\u7684\u8f93\u51fa\u3002OLIMEX_E407\u4f7f\u7528\u7684\u5904\u7406\u5668\u4e0ePyBoard\u539f\u4ea7\u7684405RG\u7565\u6709\u4e0d\u540c\uff0c\u4f46\u662fNetduino Plus 2\u4f7f\u7528\u5b8c\u5168\u76f8\u540c\u7684\u5904\u7406\u5668\u3002\u4e0d\u5e78\u7684\u662f\uff0cNetduino Plus 2\u521a\u521a\u88ab\u6dd8\u6c70\u3002\u53d6\u800c\u4ee3\u4e4b\u7684\u662fNetduino Plus 3\uff0c\u5b83\u7684\u5904\u7406\u5668\u6027\u80fd\u8fdc\u8fdc\u597d\u4e8e405RG\u3002\u8fd9\u6b3e\u65b0\u5904\u7406\u5668\u76ee\u524d\u8fd8\u6ca1\u6709Micro Python\u7684\u7aef\u53e3\u3002\u56e0\u6b64\uff0c\u5f00\u53d1\u8005\u53ea\u80fd\u4f7f\u7528Olimex\u677f\uff0c\u6216\u8005\u80fd\u627e\u5230\u4e00\u5757\u53ef\u7528\u7684Netduino Plus 2.
\u5982\u679c\u4e0a\u8ff0\u4e24\u79cd\u65b9\u6848\u5bf9\u5f00\u53d1\u8005\u6765\u8bf4\u90fd\u65e0\u6cd5\u5b9e\u73b0\uff0c\u7528Arduino\u677f\u5b50\u8fd0\u884cPython\u7684\u7b2c\u4e09\u79cd\u65b9\u6848\u5c31\u662f\u5728PyBoard\u677f\u5b50\u548c\u6807\u51c6Arduino\u5f15\u811a\u677f\u5b50\u4e4b\u95f4\u8fde\u4e00\u5757\u9002\u914d\u677f\u3002\u9002\u914d\u677f\u4e5f\u8bb8\u662f\u786e\u4fdd\u4e0e\u539f\u751fMicro Python\u677f\u4ee5\u53ca\u5c06\u6765\u66f4\u65b0\u76f8\u517c\u5bb9\u7684\u6700\u4f73\u65b9\u6848\u3002\u7b2c\u56db\u79cd\u65b9\u6848\u5c31\u662f\u57fa\u4e8e405RG\u5236\u4f5c\u6211\u4eec\u81ea\u5df1\u7684Arduino\u517c\u5bb9\u677f\u5b50\uff0c\u4e0d\u8fc7\u8fd9\u6837\u6211\u4eec\u7684\u539f\u578b\u5236\u4f5c\u901f\u5ea6\u5c06\u5927\u6253\u6298\u6263\u3002
\u4e00\u4e2a\u5f00\u53d1\u56e2\u961f\u662f\u6709\u53ef\u80fd\u6574\u5408Arduino\u3001\u786c\u4ef6\u8bbe\u5907\u3001Python\u7f16\u7a0b\u7684\u4fbf\u6377\u6027\u4ee5\u53ca\u8f6f\u4ef6\u5f00\u53d1\u7684\u4f18\u52bf\u3002\u7136\u800c\uff0c\u76ee\u524d\u5e76\u6ca1\u6709\u4e00\u79cd\u553e\u624b\u53ef\u5f97\u7684\u7ecf\u9a8c\u3002\u5f00\u53d1\u8005\u82e5\u60f3\u5728Arduino\u4e0a\u8fd0\u884cPython\uff0c\u53ef\u4ee5\u5148\u5199\u597dPython\u811a\u672c\uff0c\u7136\u540e\u5728Olimex 407\u6216\u662fNetduino Plus 2\u4e0a\u8f7b\u6613\u5730\u8dd1\u8d77\u6765\u3002
\u5173\u6ce8\u8fd9\u4e2a
\u3002
Arduino的本质:全世界各厂商主流微控制器底层程序标准化。由顶级高手们编写主流微控制器底层驱动,固化封装成更易用语言,减少BUG,增加终端产品开发效率。弱化项目中嵌入式软件工程师的作用,强化硬件工程师和PCB设计工程师的作用。随着PCB打样技术成熟,价格低廉,完美符合当前市场价值要求。频繁快速打样的价格远远低于程序开发价格。可以避免以往前期平台软件开发大量资金和时间投入,快速进入到项目运营研讨和量产研讨阶段。
树莓派的本质:固化硬件系统,尺寸,性能,外设增减都不可改,必须购买树莓派原版硬件。避免硬件设计,避免PCB工程设计,打样,焊接,调试。使用LINUX系统,强化嵌入式软件工程师尤其是LINUX软件工程师的作用,弱化硬件工程师和PCB设计工程师的作用。随着电子技术的不断进步,硬件新芯片日新月异,这种模式不符合发展潮流,LINUX的随意更改,大量底层驱动软件开发人员水平的良莠不齐,意味着层出不穷的软件BUG和混乱的应用逻辑,最终影响终端产品的效果和数据安全性,可以参考早期各行业繁多昙花一现的LINUX嵌入式终端,开发软件平台建设时间久,资金大,运营研讨和量产研讨拖得很久,变数大,风险高,成功率小。好处是,这种模式可以让桌面操作系统的软件工程师和互联网软件公司,找到微控制器应用领域的一个切入点,。应用LINUX系统去分ST,AT,TI,MICOCHIP等硬件芯片公司的终端产品一杯羹,实现过度,后期仍然要转换到灵活硬件设计,固化软件平台开发的轨道上来。
老实说,还没有开始arduino编程。 不过据我了解的情况,它是用C语言的。根本不着python。 不过在树莓派里有一个arduino的开发环境。
至于多线程,这个东西是用中断来实现的。 各种中断,比如如果利用好时间中断,可以编写出类似python中stackless效果的程序结构。
绛旓細瑕佸洖绛旇繖涓棶棰橈紝鎴戜滑蹇呴』棣栧厛鍥為【涓涓Arduino鐨勫彂灞曞巻绋嬨2005骞达紝鎰忓ぇ鍒 Ivrea 涓瀹堕珮绉戞妧璁捐瀛︽牎鐨鑰佸笀Massimo Banzi涓轰簡鑳界粰瀛︾敓浠彁渚涗竴绉嶄究瀹滃ソ鐢ㄧ殑寰帶鍒跺櫒骞冲彴锛屼笌褰撴椂鍦ㄨ繖鎵瀛︽牎鍋氳闂鑰呯殑瑗跨彮鐗欑睄鑺墖宸ョ▼甯圖avid Cuartielles鍚堜綔璁捐浜嗘渶鍒濈殑Arduino鐢佃矾鏉裤傞殢鍚嶢rduino渚垮紑濮嬭繀閫熺殑鍦ㄦ娲叉祦琛岃捣鏉...
绛旓細浠涔堟槸Arduino:1銆丄rduino鏄竴涓瘮浣犵殑鍙板紡鐢佃剳鏇磋兘澶熺敤鏉ユ劅搴斿拰鎺у埗鐜板疄鐗╃悊涓栫晫鐨勪竴濂楀伐鍏.2銆 瀹冪敱涓涓熀浜庣畝鏄撳崟鐗囨満骞朵笖寮鏀炬簮鐮佺殑璁$畻鏈哄钩鍙,鍜屼竴濂椾负Arduino鏉跨紪鍐欑▼搴 鐨勫紑鍙戠幆澧冪粍鎴.Arduino鍙戝睍鍘嗙▼ 1銆丮assimo Banzi涔嬪墠鏄 鎰忓ぇ鍒㊣vrea涓瀹堕珮绉戞妧璁捐瀛︽牎鐨鑰佸笀銆2銆佷粬鐨勫鐢熶滑缁忓父鎶辨ㄦ壘涓嶅埌渚垮疁...
绛旓細鍏堝畨瑁呬笂winavr锛岀幆澧冨彉閲忚嚜鍔ㄨ缃ソ浜嗭紝鍚庡畨瑁呬笂Arduino0022, 鑷姩鍙互鎵惧埌winavr浜嗐傚湪arduino0022涓婂氨鍙互浣跨敤浜嗐傝鐪媓ttp://hi.baidu.com/hyper99鍗氬鐨刟rduino鍒嗘爮锛屾湁寰堝鍏充簬arduino鐨勶紝涔熸湁浣跨敤winavr鐨勩
绛旓細鏅嬪崌涓骇闃舵锛氭兂鏅嬪崌涓哄埌楂樼骇Android宸ョ▼甯堣嚦绯荤粺鏋舵瀯甯堢殑鑱屼綅锛屽緢閲嶈鐨勪竴鐐瑰氨鏄瀛︿範鐮旂┒婧愪唬鐮侊紝鐩存帴鏌ラ槄Android鐨勬簮浠g爜锛堣繖鏄湅鏉庡畞鑰佸笀鐨勪功寰楀埌鐨勫惎鍙戯級锛屾簮浠g爜寰堝鏄撲粠缃戜笂鑾峰緱銆傚悓鏃讹紝Android寰堝ぇ绋嬪害涓婃槸鍩轰簬Linux鍐呮牳鐨勶紝鎵浠ュ涔 Linux鐨勭浉搴擜PI浠ュ強鍚勭鎿嶄綔涔熸槸鍗佸垎蹇呰鐨勩傝繕鏈夛紝甯哥敤娣峰悎绉诲姩寮鍙...
绛旓細鍥犳锛屽鏋滀綘鎯冲弬涓庡垱瀹㈡暀鑲诧紝鑷冲皯瑕佹帉鎻′竴闂ㄥ浘褰㈠寲缂栫▼鎵嬫銆備簩銆佺畝鍗曠‖浠剁殑鍏ラ棬 闄や簡瀛﹀ソ璁$畻鏈鸿瑷锛屾垜浠繕闇瑕佽绠楁満璇█鎺у埗纭欢锛岀洰鍓嶆渶瀹规槗涓婃墜鐨勭‖浠舵槸Arduino鍙婂叾浼犳劅鍣ㄣ侫rduino琚浗闄呬笂绉颁负鐢靛瓙绉湪锛屼娇鐢ㄤ笉鏄お鍥伴毦锛屽畠涓嶄絾鑳藉鐢ㄥ湪瀛︿範涓婏紝鑰屼笖鑳藉鐩存帴鍦ㄥ疄闄呯敓浜у伐浣滀腑浣跨敤銆傚鏋滄帉鎻′簡瀹冿紝閭d箞...
绛旓細1,浣犺繖涓唬鐮佷笉浼氭槸20绉掓墠鑳借窇瀹岀殑锛屼竴瀹氭槸鏈夊叾浠栭儴鍒嗗湪璧蜂綔鐢ㄣ傝鏌ュ埌鐪熺浉锛屼綘瑕佹妸鍏ㄩ儴浠g爜鍙戜笂鎵嶈兘鍒嗘瀽娓呮鐨勩2,u8g2搴撳緢璐硅祫婧愶紝杩欎箞澶х殑鍥撅紝濡傛灉鏄arduino uno鐨勬澘瀛愶紝闈欐佹樉绀轰篃璐瑰姴锛屽埆璇存槸绉诲姩浜嗏3,鎯杈惧埌鍥剧墖绉诲姩鏄剧ず鏁堟灉锛岀敤鏄剧ず灞忚嚜甯︾殑鏇村簳灞傜殑搴撳幓鍐欙紝涓嶈鐢╱8g2,鍝曟槸鐢╱8g涔...
绛旓細楂樹腑鐢熷紑杩欎簺璇撅紝澶秴鍓嶄簡涓浜涳紝浣曞喌锛屼腑鍥界殑楂樹腑閮藉湪绱у紶鐨勪负鈥滄湭鏉モ濆姫鍔涳紝鏃堕棿閮藉湪澶囨垬楂樿冿紝鏈夋椂闂村紕杩欎釜锛熷浘鐗囩湅涓嶆竻妤氾紝涓嶈繃浣犺鐨勮建杩广侀伩闅溿佺伃鐏紝璨屼技璺熶竴鑸殑閬ユ帶灏忚溅宸笉澶氾紝瑕佷拱鏉愭枡鍋氱殑璇濓紝鍙互涔颁竴杈嗘櫤鑳藉皬杞︼紝鏅鸿兘灏忚溅涓鑸兘鍏峰锛氶仴鎺с佸杩广侀伩闅滅伅鍔熻兘锛岃嚦浜庣伃鐏紝鍙互鍦ㄥ皬杞︿笂鍐嶅~...
绛旓細1.璁$畻鏈虹浉鍏充笓涓氭瘯涓氾紝鐔熺粌鎺屾彙micro锛歜it銆arduino銆丳hython绛夌瓑缂栫▼杞欢銆傛帴鍙楀叕鍙哥殑涓撲笟鍖栨寚瀵煎拰鍩硅骞惰繘琛屾帉鎻″惛鏀讹紝璐熻矗鐩稿叧璇剧▼鐨勭爺鍙戝拰鏁欏鎬荤粨宸ヤ綔锛2.鏍规嵁鍏徃鐨勭粺涓瀹夋帓涓哄鐢熻鎺堟満鍣ㄤ汉鐩稿叧璇剧▼锛3.鍚戝鐢熷強瀹堕暱浼犳巿鍏徃鐨勭悊蹇碉紝骞跺鍏剁枒闂繘琛岃В绛旓紝鍋氬ソ璇惧悗绠$悊宸ヤ綔锛4.鎺屾彙瀛︾敓鏃ュ父瀛︿範鐢熸椿鎯呭喌锛...
绛旓細voidloop锛堬級{loop锛堬級鏄富绋嬪簭鐨勬墽琛屽唴瀹癸紝鍙涓嶆柇鐢碉紝鍑芥暟鍐呯殑绋嬪簭灏变細涓鐩磋鎵ц銆ArduinoIDEArduinoIDE閰嶇疆绔彛锛堣姹侰OM绔彛涓鑷达級鎴戠殑鐢佃剳IDE绠$悊宸ュ叿璁惧绠$悊鍣≒ort绔彛绔彛涓鑷撮厤缃澘鍗$被鍨嬶紙閫夋嫨ArduinoUno锛夊浘鍨嬪寲缂栫▼ArduBlock锛堝晩鏉滃竷璇哄彲锛夌紪鍐欑▼搴忓厛鐪鑰佸笀缂栧啓涓娆★紝鍚屽浠湪鑷繁鐨勭數鑴戜笂缂栧啓銆備慨鏀...
绛旓細涓鑸悊宸ョ鑳屾櫙鐨鑰佸笀鐩稿涓婃墜瑕佸揩涓浜涖備篃瑕佺湅涓嶅悓鐨勫唴瀹归毦搴︼紝灏戝効缂栫▼鍒嗗皬榫勬scratch鍜屽ぇ榫勬python鍜孋+銆Arduino寮婧愮‖浠剁瓑銆傚紑婧愮尗灏戝効鏈哄櫒浜虹紪绋嬬殑璇剧▼缁勫悎涓哄皬榫勬scratch涓骞村崐鐨瀛︿範鍜屽ぇ榫勬Arduino寮婧愮‖浠跺姩鎵嬪埗浣滅粍鍚堛傚紑婧愮尗灏戝効缂栫▼涓績闀挎湡鐮斿彂鎬荤粨浜嗕竴濂楅珮鏁堝煿璁佸笀鐨勬柟娉曞拰鏁欑▼銆傜紪绋嬭佸笀鍓嶆湡...