《Arduino在單片機教學(xué)中的優(yōu)勢剖析》由會員分享,可在線閱讀,更多相關(guān)《Arduino在單片機教學(xué)中的優(yōu)勢剖析(2頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、Arduino在單片機教學(xué)中的優(yōu)勢剖析
摘 要: 高職電類專業(yè)教學(xué)中傳統(tǒng)單片機的教與學(xué)存在著諸多不足,而Arduino函數(shù)庫模塊化,程序代碼簡單易學(xué),代碼開放源,成本低廉的特點,使其應(yīng)用于高職電類專業(yè)教學(xué)更符合高職生知識和心理結(jié)構(gòu),有利于高職生掌握單片機的應(yīng)用技術(shù)和創(chuàng)新創(chuàng)業(yè)要求。
關(guān)鍵詞:傳統(tǒng)單片機教學(xué) Arduino特點 教學(xué)優(yōu)勢
中圖分類號:G64 文獻(xiàn)標(biāo)識碼:A 文章編號:1003-9082(2016)09-0236-01
一、Arduino產(chǎn)生背景
Arduino是由意大利米蘭交互設(shè)計學(xué)院的兩位教師 David
2、Cuartielles 和 Massimo Banzi 聯(lián)合創(chuàng)建,是一款便捷靈活、方便使用的開源電子原型平臺,它構(gòu)建于開放原始碼simple I/O介面版,并且具有使用類似Java、C語言的Processing/Wiring開發(fā)環(huán)境。它包含兩個主要的部分:硬件部分是可以用來做電路連接的Arduino電路板;另外一個則是Arduino IDE,即計算機的程序開發(fā)環(huán)境。Arduino能通過各種各樣的傳感器來感知環(huán)境,通過控制燈光、電機和其他裝置來反饋、影響環(huán)境,支持多樣的互動程序,如 Flash,Max/MSP,VVVV,PureData,C,Processin 等。
二、傳統(tǒng)單片機課程教學(xué)
3、中的困境
目前高職電類專業(yè)的課程設(shè)置中,單片機技術(shù)與應(yīng)用是專業(yè)基礎(chǔ)課程,是每個學(xué)生的必修課程,要求學(xué)生完成該課程后熟練掌握單片機相關(guān)知識,利用所學(xué)知識設(shè)計智能控制系統(tǒng)。傳統(tǒng)的單片機課程理論內(nèi)容多、難度大,超越了絕大多數(shù)高職學(xué)生的認(rèn)知水平,使得人才培養(yǎng)目標(biāo)常常不能實現(xiàn)。
傳統(tǒng)單片機教學(xué)中編程語言一般是匯編語言或C51語言,其中匯編語言由于涉及到單片機硬件的底層結(jié)構(gòu),需要熟悉掌握各類寄存器的讀寫等;C51語言相對匯編語言不需過多涉及單片機底層結(jié)構(gòu),通過C51語言的學(xué)習(xí)能夠完成一般接口的控制和應(yīng)用,但是學(xué)習(xí)中涉及到專用傳感器、顯示器等器件時,復(fù)雜的代碼和高要求的時序就大大增加了學(xué)習(xí)的難度
4、,但因為必須要掌握各種傳感器、顯示器實際應(yīng)用,學(xué)生需要花費大量時間學(xué)習(xí)各種協(xié)議和時序,客觀上影響了應(yīng)用和開發(fā)層面的學(xué)習(xí),而且學(xué)習(xí)過程復(fù)雜且枯燥,也容易使學(xué)生失去單片機學(xué)習(xí)的興趣。實際上,從人才培養(yǎng)目標(biāo)來看,單片機技術(shù)應(yīng)該以應(yīng)用為主,學(xué)生掌握較深的單片機理論知識沒有必要。
三、Arduino在單片機教學(xué)中的優(yōu)勢
高職教學(xué)應(yīng)該符合“實用、夠用,能用”的原則。簡化單片機學(xué)習(xí)中復(fù)雜、繁雜的中間過程――硬件的制作和軟件的編程,掌握系統(tǒng)整合能力,實現(xiàn)較復(fù)雜的電路功能,急需一種簡單實用的開放式學(xué)習(xí)模式,而Arduino的出現(xiàn),并且在高職教學(xué)中推廣應(yīng)用是一種較好的解決目前單片機教學(xué)困境的有效辦法,
5、它相對傳統(tǒng)的單片機教學(xué)有不少優(yōu)勢。
1.程序代碼簡單易用
Arduino發(fā)明之初就是為了解決電子技術(shù)難學(xué)、程序代碼難編程的不足。Arduino IDE是基于processing IDE開發(fā)的,極易掌握,同時它又有著足夠的靈活性。Arduino語言基于wiring語言開發(fā),是對 AVRGCC庫的二次封裝,不需要太多的單片機知識,Arduino的程序語言類似于C/C++的語法,隨著IDE的更新,它包含了許多基本常用的函數(shù)庫,如EEPROM、網(wǎng)絡(luò)通信(Ethernet)、舵機控制(Servo)、步進(jìn)電機控制(Stepper)等。有了這些函數(shù)庫,可以節(jié)省大量的單片機繁瑣的底層知識學(xué)習(xí)和編程
6、時間。只要了解函數(shù)的應(yīng)用及對參數(shù)設(shè)定,就可以輕松完成電路的設(shè)計。比如在智能機器人設(shè)計中,需要用到舵機控制,如果采用傳統(tǒng)單片機方式來設(shè)計,因舵機的控制需要產(chǎn)生PWM信號,編寫的代碼相當(dāng)復(fù)雜。而應(yīng)用Arduino時,只需直接調(diào)用頭文件,利用函數(shù)“**servo.write(i)”即完成舵機旋轉(zhuǎn)動作,代碼簡潔明了。
2.資源開放易于獲取
Arduino IDE可以在Windows、Macintosh OSX、Linux三大主流操作系統(tǒng)上運行,而大多數(shù)控制器只能在Windows上開發(fā)。所有軟硬件資源放在網(wǎng)絡(luò)上,有任何需要都可以在網(wǎng)絡(luò)上找到解答。在Arduino的發(fā)展中,由于源代碼的開放性,
7、世界各地的電子愛好者或者電子積木創(chuàng)意者緊隨電子科技的發(fā)展,不斷開發(fā)出應(yīng)用程序,更新、添加Arduino庫函數(shù),拓展了實踐應(yīng)用范圍。網(wǎng)上有許多社交網(wǎng)站供愛好者討論和學(xué)習(xí),這種“互聯(lián)網(wǎng)+”的學(xué)習(xí)模式符合高職主流教學(xué)模式。對于高職院校電類專業(yè)學(xué)生,掌握Arduino編程,僅需掌握 C語言基礎(chǔ),簡單學(xué)習(xí)后,就可以利用各種資源快速的進(jìn)行電路開發(fā)。
3.成本低廉方便推廣
Arduino應(yīng)用系統(tǒng)具備電子積木式特點,通過以Arduino開發(fā)板為核心,配合各種傳感器、電機等積木式外設(shè),容易搭建出智能控制系統(tǒng)。由于代碼的開放性,同時Arduino硬件是基于AVR芯片發(fā)展而來,如網(wǎng)絡(luò)平臺淘寶等電子P2P
8、平臺有極其豐富的產(chǎn)品且發(fā)展迅速。根據(jù)不同應(yīng)用方向Arduino開發(fā)板有十幾種,各種積木式應(yīng)用模塊也是應(yīng)有盡有且價格低廉; Arduino的代碼開放性及發(fā)明人基本不收取專利費,可以快速建設(shè)Arduino實訓(xùn)室;普通學(xué)生也購得起,玩得起,課余時間也能夠自主學(xué)習(xí),使得利用Arduino進(jìn)行學(xué)習(xí)、創(chuàng)意成本低廉、成效顯著,可以更好地提升單片機理論和實踐水平。
四、結(jié)束語
Arduino發(fā)展十年,隨著電子技術(shù)的迅猛發(fā)展及眾多電子設(shè)計人員的努力,Arduino作為互動電子創(chuàng)意設(shè)計與制作的平臺,越來越得到廣泛應(yīng)用。許多高職院校不斷地探索將Arduino應(yīng)用于教學(xué)中,也取得了一定的效果。由于易學(xué)易懂
9、,成本低廉,高職院校電類專業(yè)學(xué)生甚至其他專業(yè)的學(xué)生,通過模塊化電子積木方式,自己創(chuàng)意創(chuàng)新完成設(shè)計的產(chǎn)品,可以增加單片機技術(shù)學(xué)習(xí)樂趣,提高單片機技術(shù)水平,為就業(yè)打下良好的基礎(chǔ)。
參考文獻(xiàn)
[1]蔡睿妍.Arduino的原理及應(yīng)用[J] 電子設(shè)計工程, 2012 (8)。
[2]施智雄. Arduino在大學(xué)工科教學(xué)中應(yīng)用探索[J] 西昌學(xué)院學(xué)報(自然科學(xué)版),2012(4)。
[3]蘇江. 高職機電專業(yè)單片機課程一體化教學(xué)改革探索與實踐[J] 科技咨訊2015(35)
[4]解曉飛,王曉莉,郝紅娟.淺談高職單片機課程教學(xué)改革[J].石油教育,2014(3)