为什么arduino程序写好之后另存为到其他文件夹就会导致软件运行崩溃呢? arduino leonardo在烧写进了有关模拟usb设备...
arduino\u52a8\u6001\u5185\u5b58\u4f4e\uff0c\u5bfc\u81f4sd\u5361\u8fd0\u884c\u4e0d\u7a33\u5b9a\uff0c\u6c42\u95ee\u5927\u795e\u6211\u8fd9\u7a0b\u5e8f\u80fd\u4e0d\u80fd\u518d\u7f29\uff1f \u8fd8\u662f\u5176\u4ed6\u95ee\u9898\u5462\uff1f\u770b\u8d77\u6765\u4e0d\u884c\u4e86\u3002\u4f60\u7684\u4ee3\u7801\u633a\u7b80\u5355\u7684\u3002
\u4f60\u53ef\u4ee5\u5148\u7528 2560 \u8bd5\u8bd5\u770b\u662f\u4e0d\u662f\u5185\u5b58\u5bfc\u81f4\u7684\u4e0d\u7a33\u5b9a\u518d\u505a\u51b3\u5b9a
\u5e94\u8be5\u662f bootloader \u88ab\u6539\u6389\u4e86\uff0c\u4f60\u53ef\u4ee5\u518d\u5237\u4e00\u4e0b\u6807\u51c6\u7684 leonard bootloader
安装路径在软件安装完成后不可以更改,只有在安装时选择自定义安装才可以更改路径。文件打开和保存路径可以更改,或许你描述不够正确。请截图或者拍照,才能更方便地帮助你
OneWire库不属于Arduino的基本库,请到Arduino官网下载,或者使用Arduino IDE 1.8.9的“库管理器”下载(详见:Arduino教程┃1招轻松搞定Arduino扩展库下载)。使用后者下载的库文件在Arduino项目文件夹的Libraries文件夹里。在OneWire库中定义了一个OneWire类,下面我将带你从类定义、构造函数、reset()、write_bit()、read_bit()、write()、read()、select()、skip()等各类函数快速了解它。
1、下载OneWire库文件
图1 使用库管理器下载Onewire库文件
如图1所示,点击“工具”→“管理库”,打开“库管理器”,在里面输入关键词:onewire,找到以后选择库文件版本,点击“安装”,安装成功之后,点击“项目”→“加载库”,在“贡献库”中点击OneWire,完成加载。
安装成功的库文件在Arduino项目文件夹→“libraries"文件夹中,在“OneWire”文件夹中可以找到所有库文件(包含示例文件),如图2所示。
图2 OneWire库文件列表
2、认识OneWire类
打开图2列表中的“OneWire.h”文件,找到“class OneWire”关键词,这部分就是OneWire类(图3)。
图3 OneWire类
3、OneWire构造函数
OneWire类的构造函数用于指定Arduino应用于单总线的引脚。
参数pin:表示应用于单总线的引脚。
构造函数原型如下,在OneWire.cpp中查看:
图4 构造函数原型
4、OneWire的reset()函数
reset函数的作用是初始化单总线。
(1)返回值:uint8类型,表示初始化结构。返回1则表示单总线上有从机设备,且准备就绪;否则返回0。
(2)参数:无。
(3)函数原型:
图5 reset()函数原型
5、OneWire的write_bit()函数
write_bit函数的功能是写时隙,即写1或写0。
(1)返回值:无。
(2)参数v:写入的数据。参数的bit0为0则为写0,bitl则为写1。
(3)函数原型:
图6 write_bit函数原型
6、OneWire的read_bit()函数
read_bit函数的功能是读时隙,即读l或读0。
(1)返回值:uint8类型,表示读出的数据。
(2)参数:无。
(3)函数原型:
图7 read_bit()函数原型
7、OneWire的write()函数
write函数的功能是发送1byte的数据。
(1)返回值:无。
(2)参数v:表示要发送的数据;power:可选参数,默认值为0。该参数表示在空闲状态引脚是否置高。若参数值为0则空闲状态为漏级或集电极开路;若为1则表示空闲状态引脚置高,以保证寄生性单总线器件的正常工作。
(3)函数原型:
图8 write函数原型
8、OneWire的read()函数
read函数的功能是读取1byte的数据。
(1)返回值:uint8类型,表示读出的数据。
(2)参数:无。
(3)函数原型:
图9 read函数原型
9、OneWire的select()函数
select函数的作用是让主机指定某一个从机。
(1)返回值:无。
(2)参数:rom[8]:表示将指定从机的8byte的ROM数据。
(3)函数原型:
图10 select函数原型
10、OneWire的skip()函数
skip函数的作用是执行跳跃ROM指令。
(1)返回值:无。
(2)参数:无。
(3)函数原型:
图11 skip函数原型
11、OneWire的其他函数
除上述函数之外,还有例如reset_search()、target_search()、search()等函数,更多功能及使用方法请打开OneWire.cpp阅读,这里不再介绍。
小结
OneWire库是针对单总线推出的扩展库,了解并掌握其使用方法对于Arduino的学习非常重要。
单总线(One-Wire)是Dallas公司的一项特有的总线技术,它采用单根信号线实现数据的双向传输,具有节省I/O口资源、结构简单、便于扩展和维护等优点。One-Wire适用于单个主机的系统,能够控制一个或多个从机设备。
初始化工作室专注于Arduino、Scratch、乐高的学习以及“STEM+”课程的实施,如果你觉得这篇文章对你有帮助,请“关注”我并且点个赞呗,非常感谢。
绛旓細鏂囦欢鎵撳紑鍜屼繚瀛樿矾寰勫彲浠ユ洿鏀癸紝鎴栬浣犳弿杩颁笉澶熸纭傝鎴浘鎴栬呮媿鐓э紝鎵嶈兘鏇存柟渚垮湴甯姪浣
绛旓細1銆Arduino浣跨敤鐨缂栫▼璇█涓昏鏄熀浜嶤++璇█鐨勪竴绉嶇畝鍖栫増鏈紝绉颁负Arduino璇█鎴朩iring璇█銆侫rduino璇█鍦–++鐨勫熀纭涓婅繘琛屼簡涓浜涚畝鍖栧拰灏佽锛屼娇寰楃敤鎴峰彲浠ユ洿鍔犺交鏉惧湴杩涜纭欢缂栫▼銆2銆侀鍏圕璇█鏄疉rduino璇█鐨勪竴绉嶃傛棭鏈熺殑Arduino鏍稿績搴撲娇鐢–璇█缂栧啓锛屽悗鏉ュ紩杩涗簡闈㈠悜瀵硅薄鐨勬濇兂锛岀洰鍓嶆渶鏂扮殑Arduino鏍稿績搴撻噰鐢–涓...
绛旓細Arduino鏄竴涓В鍐虫柟妗堛備綘鍙互浣跨敤Arduino瀹樻柟鐨勭‖浠跺紑鍙戞澘锛屼篃鍙互浣跨敤esp8266鐨凙rduino瀹炵幇锛岀敋鑷矨ttiny85鐨凙rduino瀹炵幇銆傝繖浜涘疄鐜板緢寤変环锛岄┈浜戝灏卞彲浠ヤ拱鍒般傛渶鍘夊鐨勬槸锛屼笉璁浠涔纭欢寮鍙戞澘锛岃繖浜涘疄鐜伴伒寰狝rduino鏍囧噯锛岄兘鍙互浣跨敤Arduino鐨処DE鍘荤紪璇戙傛墍浠ヤ綘鑳界湅鍒板悇绉嶅悇鏍风殑搴撱傝繖浜涙槸Arduino鐨勭敓鎬併備綘杩樺彲...
绛旓細6.Arduino鐨勭悊蹇靛氨鏄紑婧愶紝杞‖浠跺畬鍏ㄥ紑鏀撅紝鎶鏈笂涓嶅仛浠讳綍淇濈暀銆傞拡瀵瑰懆杈笽/O璁惧鐨凙rduino缂栫▼锛屽緢澶氬父鐢ㄧ殑I/O璁惧閮藉凡缁忓甫鏈夊簱鏂囦欢鎴栬呮牱渚嬬▼搴忥紝鍦ㄦ鍩虹涓婅繘琛岀畝鍗曠殑淇敼锛屽嵆鍙紪鍐欏嚭姣旇緝澶嶆潅鐨勭▼搴忥紝瀹屾垚鍔熻兘澶氭牱鍖栫殑浣滃搧銆傝屽崟鐗囨満鐨勮蒋浠跺紑鍙戯紝闇瑕佽蒋浠跺伐绋嬪笀缂栧啓搴曞眰鍒板簲鐢ㄥ眰鐨勭▼搴忋傛病鏈夐偅涔堝鐜版垚鐨...
绛旓細鐢ㄤ釜璁颁簨鏈紝鎴栬呬换浣曚竴涓枃鏈紪杈戝櫒閮借兘鍐欑▼搴銆備絾绋嬪簭鍐欏畬鍚庯紝杩樿缂栬瘧锛岃繕瑕佽皟璇曪紝淇敼閿欒锛宎rduino缂栬瘧濂藉悗杩樿涓嬭浇鍒版澘瀛愪笂銆傛墍浠ヤ竴娆炬妸浠ヤ笂鍔熻兘闆嗘垚鍦ㄤ竴璧风殑缂栫▼IDE鏄兘澶熷ぇ澶ф彁楂樺伐浣滄晥鐜囩殑銆缂栧啓arduino鐨勮蒋浠讹紝鏈鏂逛究鐨勮帿杩囦簬鐩存帴鍒癮rduino鐨勫畼缃戜笅杞絘rduino IDE銆傚綋鐒讹紝鍏跺畠瀹gО鑷繁鑳芥敮鎸乤rduino鐨...
绛旓細鎴戞瘯涓氳璁″仛鐨勬槸鍩轰簬鐗╄仈缃戞帶鍒剁殑鏈哄櫒浜猴紝濡傛灉浣犳槸璁$畻鏈轰笓涓氱殑锛屼簩閫変竴鐨勮瘽锛屾垜鎺ㄨ崘鐢╮aspberry PI B+,濡傛灉璁$畻鏈哄熀纭涓嶆槸寰堝ソ锛屽彲浠ョ敤Arduino,杩欎釜瀹炵幇鏂逛究锛屽紑鍙戝懆鏈熺煭锛屾湰韬甫浜嗗緢澶氱被搴撱傚棷锛岀洿鎺ュ憡璇変綘锛屾爲鑾撴淳鍙互鐩存帴鎺у埗鑸垫満鍜屽姩鍔涙ā鍧楋紝浣嗘槸浠嶇劧闇瑕佸姞涓涓數鏈洪┍鍔ㄨ姱鐗囷紝鍙互閫夋嫨缁忓吀鐨 L298鎴栬...
绛旓細绋嬪簭澶ぇ锛屼覆鍙f尝鐗圭巼鍙堝お浣庡惂
绛旓細杩樻湁锛孡inux涓婂悇绉嶉棶棰樺仛濂界殑瑙e喅鏂规闈炲父澶氥Arduino鐨勫ソ澶勶細浼犳劅鍣ㄥ锛屼絾鏄氳鍗忚瑕佽嚜宸卞啓銆備綋绉皬銆佺‖浠堕夋嫨澶氭牱锛屼究浜庡祵鍏ュ紡寮鍙戙傚杩嘋鐨勫悓瀛﹀彲浠ョ湅涓や釜渚嬬▼灏辩洿鎺鍐欑▼搴浜嗐傜己鐐癸細绉诲姩璁惧闅句互缂栫▼銆侫rduino涓嶅儚RPi鏄竴涓畬鏁寸殑绯荤粺锛屽鏋滄湁閮ㄤ欢涓嶇ǔ瀹氾紝涓嶇煡閬撳摢閲屼細鍑洪棶棰樸傝屼笖Arduino娌℃湁鐙珛鐨...
绛旓細鍏跺疄,鍒湅閭d簺绫昏瑷,濂戒簺姣旇В閲婂瀷璇█濂,鍏跺疄,閭f槸鏈夐棽宸ュか鏃堕棿鐨勪汉,鎴栬呮妧鏈繃纭殑浜,鎼炲緱銆備竴鑸笉鎺ㄥ瓨,缂栫▼鍛戒护鍐欎唬鐮,鍐欑殑濂介夯鐑︺傚嚑鍗冨嚑涓囦唬鐮佽鍐,澶毦浜嗐傝В閲婂瀷璇█,鏈涓嶅ソ鐨勭煭鏉,灏辨槸娌℃湁鍥惧舰鍖栬〃杈俱傝繖涓‘瀹炵煭鏉夸簡!缂栫▼鍐浠g爜涔熸槸寰堣垂鍔茬殑!璇翠簺鑷繁鐨勬劅瑙,鐢ㄨ绠楁満杩欎箞涔呬簡,C,C++,java,python,...
绛旓細arduino鍜51閮芥槸鍩轰簬C璇█锛屼箣鎵浠ョ畝鍗曟瘮51鏄洜涓篴rduino鐨勭紪璇戝櫒鍖呭惈浜嗗緢澶氬簱锛岀洿鎺ヤ娇鐢ㄥ嚱鏁板氨鍙互浜嗐傝屼笖鏈arduino涓哄暐瑕佸啓51锛宎rduino鐨勫紑鍙戝懆鏈熸瘮51鐨勭煭澶氫簡銆傛湜閲囩撼路路路杩欏氨鏄痑rduino鐨勫ご鏂囦欢锛屾枃浠剁被鍨嬭鍐欎负C/C++锛屾墍浠ュ叾瀹炴槸涓涓瑷锛屼絾arduino鐨勭紪璇戝櫒骞朵笉鑳界粰51鐑绋嬪簭 ...