一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>單片機(jī)>Arduino與單片機(jī)裸機(jī)的對比分析

Arduino與單片機(jī)裸機(jī)的對比分析

2017-09-20 | rar | 0.02 MB | 次下載 | 1積分

資料介紹

  相信對嵌入式開發(fā)感興趣的朋友一定對Arduino有或多或少的了解或熟知。而對初學(xué)者來說,也許經(jīng)常聽到“嵌入式開發(fā)從哪里上手最好?Arduino!”這樣的說法。那么Arduino到底是什么呢?是一種新的控制芯片?還是一種新的開發(fā)軟件呢?

  首先我們先看看Arduino的實(shí)物圖,下面是最常見的一種Arduino實(shí)物圖片(關(guān)于Arduino的分類,我們會在后面詳述):

  圖中已經(jīng)用紅線根據(jù)功能將各個(gè)模塊區(qū)分出來,相信對單片機(jī)開發(fā)稍有了解的朋友一定已經(jīng)發(fā)現(xiàn),這不就是一個(gè)以AVR單片機(jī)最小系統(tǒng)為核心的控制板嗎?

  不錯(cuò),Arduino就是以ATMEL公司的AVR單片機(jī)為核心的單片機(jī)控制板,板上除了ATmega168最小系統(tǒng)電路外,還包含了穩(wěn)壓電路,USB轉(zhuǎn)串口電路,一些指示用的LED,以及一些擴(kuò)展用的電路插座。

  僅僅一個(gè)單片機(jī)最小系統(tǒng),為何能風(fēng)靡全球呢?

  下面我們以圖表的形式來比較一下單片機(jī)裸機(jī)、市面上一般的單片機(jī)開發(fā)板和Arduino之間的比較。

  ATmega168裸機(jī)ArduinoATmega168開發(fā)板

  運(yùn)算性能相同相同相同

  成本最低較低較高

  體積最小適中較大

  自由度最大除單片機(jī)正常運(yùn)行需要占用的端口外,其他端口全部留給了用戶使用很多開發(fā)板集成了鍵盤、數(shù)碼管、跳線開關(guān)等模塊,占用了很多端口

  標(biāo)準(zhǔn)度完全符合ATmega公司公布的芯片資料完全符合Arduino組織公布的標(biāo)準(zhǔn)大多由各個(gè)供應(yīng)商自主開發(fā),各不相同

  工作條件需要自己搭建最小電路通過USB線連上PC即可使用通過USB或COM端口與PC連接即可使用

  開發(fā)資料任何ATmega168資料皆可,但一些細(xì)節(jié)需與自己的電路配合英文資料豐富,目前中文資料略有欠缺。一般開發(fā)板供應(yīng)商都會提供各種學(xué)習(xí)資料,但大多雜亂無章,需學(xué)習(xí)者自己甄別

  上面的表格中列出了三種選擇方案的最直觀比較(表中沒有比較購買渠道的便利性比較,隨著網(wǎng)絡(luò)購物的普及,這一點(diǎn)已經(jīng)不再成為愛好者們需要特別關(guān)注的問題),看起來似乎Arduino并沒有特別的優(yōu)勢,那么為什么Arduino會得到如此熱度的追捧呢?

  要回答這個(gè)問題,我們必須首先回顧一下Arduino的發(fā)展歷程。2005年,意大利 Ivrea 一家高科技設(shè)計(jì)學(xué)校的老師Massimo Banzi為了能給學(xué)生們提供一種便宜好用的微控制器平臺,與當(dāng)時(shí)在這所學(xué)校做訪問學(xué)者的西班牙籍芯片工程師David Cuartielles合作設(shè)計(jì)了最初的Arduino電路板。隨后Arduino便開始迅速的在歐洲流行起來,并且逐漸將春風(fēng)吹到了美國、日本、中國臺灣、中國香港等地區(qū),最近一兩年更是在大陸地區(qū)蓬勃的發(fā)展起來。

  Arduino獨(dú)有的幾種優(yōu)勢表現(xiàn)在下列方面:

  開放性:Arduino的硬件電路的軟件開發(fā)環(huán)境都是完全開源的,在不從事商業(yè)用途的情況下任何人都可以使用、修改和分發(fā)它。這樣不但可以使用戶更好的理解Arduino的電路原理,更可以根據(jù)自己的需要而去修改它。比如由于空間的限制,需要設(shè)計(jì)異形的電路板;或是將自己的擴(kuò)展電路與主控制電路設(shè)計(jì)到一起。

  易用性:對于稍微有心的人,不論基礎(chǔ)如何,只要他有興趣,拿到Arduino之后的一個(gè)小時(shí)之內(nèi),應(yīng)該就可以成功運(yùn)行第一個(gè)簡單的程序了。Arduino與PC的連接采用了當(dāng)下最主流的USB連接,你可以像使用一只MP3一樣把Arduino與電腦直接連起來而不要再額外安裝任何驅(qū)動(dòng)程序。而且Arduino的開發(fā)環(huán)境軟件也非常的簡單,一目了然的菜單,僅提供了最必須的工具欄,除去了一切可能會使初學(xué)者眼花繚亂的元素,你甚至可以不閱讀手冊便實(shí)現(xiàn)代碼的編譯與下載(我可沒說編寫)。

  交流性:對于初學(xué)者來說,交流與展示是非常能激發(fā)學(xué)習(xí)熱情的途徑。但有些時(shí)候,你用AVR做了個(gè)循跡小車,我用PIC做了個(gè)小車循跡。那么對單片機(jī)理解還不是特別深刻的初學(xué)者來說,交流上恐怕就會有些困難。而Arduino已經(jīng)劃定了一個(gè)比較統(tǒng)一的框架,一些底層的初始化采用了統(tǒng)一的方法,對數(shù)字信號模擬信號使用的端口也做了自己的標(biāo)定,初學(xué)者在交流電路或程序的時(shí)候非常方便。

  豐富的第三方資源:Arduino無論硬件還是軟件,都是全部開源的,你可以深入的了解到底層的全部機(jī)理,也預(yù)留了非常友好的第三方庫開發(fā)接口。秉承了開源社區(qū)一貫的開放性和分享性,很多愛好者在成功的實(shí)現(xiàn)了自己的設(shè)計(jì)后,會把自己的硬件和軟件拿出來與大家分享。對于后來者來說,你可以在Arduino社區(qū)輕松找到自己想要使用的一些基本功能模塊:舵機(jī)控制、PID調(diào)速、A/D轉(zhuǎn)換等。特別一些模塊供應(yīng)商也開始越來越重視Arduino社區(qū),會為自己的產(chǎn)品提供Arduino下的使用庫,這些都極大的方便了Arduino開發(fā)者,使你可以不必拘泥于一些基本功能的編寫,而可以把自己的精力更多的放在自己想要的功能設(shè)計(jì)中去。

  是的,單純從嵌入式開發(fā)的技術(shù)角度來說,Arduino并不是第一選擇,為了盡可能的照顧初學(xué)者甚至是電子開發(fā)的門外漢,Arduino定制了很多底層的設(shè)計(jì),這也是許多經(jīng)驗(yàn)豐富的嵌入式設(shè)計(jì)人員對Arduino嗤之以鼻的原因之一。回頭看看上面列出的那些Arduino的優(yōu)勢所在,那么Arduino的定位究竟在何處呢?

  Arduino誕生之初確實(shí)是為嵌入式開發(fā)的學(xué)習(xí)而生,但發(fā)展到今天,Arduino已經(jīng)遠(yuǎn)遠(yuǎn)超出了嵌入式開發(fā)的領(lǐng)域。在臺灣地區(qū),Arduino被稱為“科技藝術(shù)”,很多電子科技領(lǐng)域以外的愛好者,憑借豐富的想象力和創(chuàng)造力,也設(shè)計(jì)開發(fā)出了很多有趣的作品。

  在大陸,Arduino更多的還是作為一種嵌入式學(xué)習(xí)和開發(fā)工具出現(xiàn),但是它的魅力絕不僅僅如此,它完全可以作為一種新“玩具”,甚至新的藝術(shù)載體,來吸引更多各個(gè)領(lǐng)域的人們加入到Arduino的神奇世界里來。

  用Arduino控制的三輪小車

  擦除白板的自動(dòng)機(jī)器

  發(fā)條微博自動(dòng)給你煮咖啡

  是不是已經(jīng)迫不及待,想要開始你的Arduino之旅了?趕快到購物網(wǎng)站上搜一搜Arduino,然后……是不是被各種不同的Arduino控制板搞花了眼?

  Arduino并不是一成不變的,每隔一段時(shí)間,Arduino官方組織就會發(fā)布最新的設(shè)計(jì),對Arduino在原有基礎(chǔ)上進(jìn)行升級,讓愛好者們更方便的使用。同時(shí),為了滿足不同層次的開發(fā)要求,Arduino也推出了不同版本的控制板設(shè)計(jì),這里我們來認(rèn)識一下使用最多的幾種設(shè)計(jì):

  Arduino Uno

  Uno版本應(yīng)該說是Arduino的基礎(chǔ)板,也是初學(xué)者的第一選擇。它提供了基本的數(shù)據(jù)接口,對初學(xué)者足夠的存儲空間,無論是讀取傳感器,還是驅(qū)動(dòng)電機(jī),或者與電腦通信,都可以輕松的勝任。

  Arduino Mega 2560

  這一版可以算是Uno的升級版,各種接口的數(shù)量比Uno要多,而且其搭載的單片機(jī)型號也要比Uno的單片機(jī)更高級一些,運(yùn)算速度更快。如果你覺得Uno的硬件資源無法滿足你的需求,那么你可以嘗試一下Mega,當(dāng)然價(jià)格也會比Uno要更高一些。

  Arduino Nano

  這個(gè)可以說是Uno的簡版,優(yōu)先考慮了體積上的優(yōu)化,盡量將體積做到最小,可以滿足一些手持設(shè)備或體型微小的設(shè)備使用。當(dāng)然性能上相比Uno也略有縮水。

  也許有些心急的朋友已經(jīng)要問了:哪一款可以控制步進(jìn)電機(jī)?哪一款可以實(shí)現(xiàn)無線通信?哪一款可以演奏音樂……

  如果我告訴你都不可以,你會不會很失望?

  Arduino作為一種控制芯片,所起的作用類似于我們的大腦,大腦是無法自行運(yùn)動(dòng)或是發(fā)聲的。大腦所起的作用類似于指揮官,Arduino也是如此,想要做一些實(shí)際任務(wù),離不開外圍電路的支持。

  很多人又要頭痛了,電子電路完全不懂怎么辦?其實(shí)現(xiàn)在這一點(diǎn)也已經(jīng)不是什么大問題。對于電子專業(yè)的學(xué)生,或是想要學(xué)習(xí)電子電路的愛好者,當(dāng)然要一切靠自己,查資料,買元件,做PCB板,焊電路……這其中當(dāng)然會有很多辛苦,可其中學(xué)到的知識無疑也是裝入自己口袋的。

  如果不想在電子電路方面花費(fèi)太多的精力,也沒有問題。現(xiàn)在很多廠商也開發(fā)了各種各樣的Arduino外圍功能電路,無論是電機(jī)驅(qū)動(dòng)、無線通信、音樂播放,還是讀取各種各樣物理信號的傳感器(壓力、速度、傾角、方向等等),都應(yīng)有盡有,而且使用方便,可以直接連到Arduino控制板上工作。

  電機(jī)驅(qū)動(dòng)板

  藍(lán)牙模塊

  

  霍爾傳感器、光敏傳感器、煙霧傳感器

  說完了硬件,那么我們接下來談?wù)労芏嗳硕碱^痛不已的軟件開發(fā)吧。Arduino的代碼結(jié)構(gòu)和一般的嵌入式代碼結(jié)構(gòu)略有不同,一般的嵌入式代碼都是main函數(shù)中一個(gè)死循環(huán),程序不斷的反復(fù)執(zhí)行,單片機(jī)在每個(gè)循環(huán)內(nèi)讀取各個(gè)外部端口的數(shù)據(jù),然后根據(jù)這些數(shù)據(jù)來做出相應(yīng)的策略判斷,把指令再通過外部端口傳出去,達(dá)到控制外部設(shè)備的目的。

  Arduino的程序運(yùn)行方式與此差不多,只是代碼結(jié)構(gòu)略有不同。Arduino代碼中沒有main函數(shù),而是使用了兩個(gè)不同的必備函數(shù):

  Void setup()

  {

  }

  Void loop()

  {

  }

  相信很多朋友已經(jīng)猜出來了,Arduino代碼是把初始化的代碼放在了setup函數(shù)中,而把需要不斷循環(huán)執(zhí)行的代碼放在了loop函數(shù)中。與傳統(tǒng)的嵌入式程序雖然結(jié)構(gòu)不同,但設(shè)計(jì)思想還是一致的。

  開發(fā)環(huán)境軟件截圖(此開發(fā)環(huán)境可以在Arduino網(wǎng)站上免費(fèi)下載)

  Arduino的代碼語法與C++類似,也包含了類和對象的支持。即便是沒有任何代碼編寫的基礎(chǔ),也可以很快上手。關(guān)于Arduino的代碼編寫,無論是Arduino的官方網(wǎng)站,還是網(wǎng)絡(luò)上都有了相當(dāng)豐富的資料,這里不再累述。

  很多Arduino制作還要涉及另外一種程序的編寫,便是上位機(jī)程序。一般是PC端的程序,你可以采用任何你所熟悉的高級語言進(jìn)行開發(fā),接收Arduino控制板所傳遞過來的數(shù)據(jù)(串口傳輸),在屏幕上顯示輸出或?qū)懭胛募B、VC++、Delphi、Flash 、Processing等等都能滿足你的要求。

  一個(gè)通過上位機(jī)程序控制外部電路燈的顏色

  Arduino控制板 + 外圍電路 + 程序編寫 = 整個(gè)世界!

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費(fèi)
  3. 2開關(guān)電源基礎(chǔ)知識
  4. 5.73 MB  |  6次下載  |  免費(fèi)
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計(jì)
  8. 0.60 MB  |  3次下載  |  免費(fèi)
  9. 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
  10. 0.61 MB  |  2次下載  |  免費(fèi)
  11. 651單片機(jī)窗簾控制器仿真程序
  12. 1.93 MB  |  2次下載  |  免費(fèi)
  13. 751單片機(jī)大棚環(huán)境控制器仿真程序
  14. 1.10 MB  |  2次下載  |  免費(fèi)
  15. 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537796次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191185次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)