999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Arduino:開放的軟硬件電子平臺

2013-12-29 00:00:00李瑞陳杰
中國信息技術教育 2013年11期

編者按:在科技發(fā)展日新月異的今天,信息技術教學已經(jīng)遠離了開、關機還需要反復講解的時代,三歲孩童熟練地擺弄著iPad已非奇事。自策劃了“Scratch來了”這一專題之后,編輯深刻感受到研究程序語言的老師的可愛,他們的執(zhí)著、他們的探索,使得程序教學不再那么枯燥,煥發(fā)出勃勃生機。因此,雜志特別策劃了這一專欄,將陸續(xù)刊發(fā)一些程序教學領域有代表性的教學實踐。也期待更多老師投身到程序教學中去,通過自身的踐行,推動程序教學的復興。

● 什么是Arduino

如果你還頑固地認為編程就是坐在電腦屏幕前,不停地敲代碼,利用電子計算機自動處理問題,做一個老實本分的“碼農(nóng)”的話,那你就Out了。今天的Arduino會讓你對編程的看法耳目一新。因為你在編寫程序前需要設置好自己的電子線路,就像在對一個類似于物理的計算平臺進行相應的連線,然后再編寫程序代碼,并且這些程序可以來控制、感知外圍世界一樣。

Arduino是一款開源電子平臺,包含各種型號的Arduino板,使用的軟件是Arduino IDE,是由意大利教師Massimo Banzi和西班牙籍晶片工程師David Cuartielles聯(lián)手開發(fā)設計電路板,并引入Banzi的學生提供程序設計語言的。起初他們是為了解決學生們在做試驗時找不到便宜好用的微控制器這一問題,但隨后三人又秉承設計時的開放源碼理念,把設計圖放到了網(wǎng)上,任何人都被允許生產(chǎn)電路板的復制品,還能重新設計,為現(xiàn)在市場上大量的Arduino板奠定了堅實基礎。Arduino不僅是一個基于開放源碼的軟硬件平臺,并且具有使用類似JAVA、C語言的Processing/Wiring開發(fā)環(huán)境。幾乎任何人,即使不懂電腦編程,也能用Arduino做出很酷的東西,如對感測器做出回應,閃爍燈光,控制馬達……

● Arduino的特色

1.開放的電路板設計

Arduino控制板是采用了開放源代碼的電路圖設計的,所以有經(jīng)驗的電路設計師能夠根據(jù)需求設計自己的模塊,可以對其擴展或改進。甚至是對一些相對沒有什么經(jīng)驗的用戶,也可以通過制作試驗板來理解Arduino是怎么工作的。而且版權(quán)法只監(jiān)管開源軟體,卻很難用在硬體上,于是Arduino采用了Creative Commons許可,即任何人都被允許生產(chǎn)電路板的復制品,還能重新設計,甚至銷售原設計的復制品,而這一切都不需要付版稅。然而,如果你重新發(fā)布了引用設計,你必須說明原始Arduino團隊的貢獻。如果你調(diào)整或改動了電路板,你的最新設計必須使用相同或類似的Creative Commons許可,以保證新版本的Arduino電路板也會一樣的自由和開放,唯一被保留的只有Arduino這個名字,如圖1的ArduinoMANGOII、圖2的Arduino MEGA2560 R3與圖3的Arduino Robot。

2.編程方式多樣,代碼簡潔

Arduino編程主要有以下幾種方式:第一種是使用官網(wǎng)Arduino IDE編程環(huán)境(如圖4),這可以在官網(wǎng)下載(http://www.arduino.cc),支持Windows,MacOS,Linux操作系統(tǒng)。第二種是使用微軟的VisualStudio環(huán)境(如圖5),也有Arduino for Microsoft Visual Studio的插件,安裝后可以在Visual Studio里進行Arduino的開發(fā)。第三種是如果不太喜歡寫代碼,或者是教小孩子玩Arduino,也有圖形化的編程環(huán)境,如圖6的Ardublock。

Arduino是基于AVR平臺,對AVR庫進行了二次編譯封裝,把端口都打包好了,寄存器、地址指針之類匯編語言的那些東西都給拋開了,取而代之的是高級語言的簡單函數(shù)。大大降低了軟件開發(fā)難度,適宜非專業(yè)愛好者使用。Arduino軟件是開源的,同時與C、JAVA語言在語法上有很大的相似性,有經(jīng)驗的程序員可以對其進行擴展。圖7是匯編語言編程環(huán)境,圖8是Arduino ide編程環(huán)境。

3.線上燒錄,感知外圍世界

Arduino可使用ICSP線上燒入器,將編制程序燒入芯片,我們只有一根連接線就隨時隨地向芯片中刷入程序,實現(xiàn)相應的功能。同時利用Arduino控制板可簡單地與傳感器,各式各樣的電子元件連接,如紅外線、超音波、熱敏電阻、光敏電阻、電機馬達等。從而實現(xiàn)程序感知外圍世界,控制外圍世界的目的。下頁圖9中的實驗就是LED發(fā)光二極管在受到光線照射時會產(chǎn)生微弱的電流,我們用三極管對其進行放大,觸發(fā)Arduino進行檢測,如果達到極值蜂鳴器發(fā)出報警聲。

Arduino還有很多優(yōu)點,如支持安卓系統(tǒng),支持多種互動程序,并且由于在軟硬件上都采用開源的設計理念,使得Arduino擁有了大量的資源。

● Arduino的典型范例

Arduino編程與其他編程工具最大的區(qū)別在于需要Arduino控制板及一定的硬件支持,編制好的程序首先燒入控制板中,從而實現(xiàn)感知外圍世界,控制外圍世界,讓虛擬世界與物理世界聯(lián)通,使其具有一定的現(xiàn)實意義。

例如,光照報警系統(tǒng),孵化車間對光線的控制是有要求的,當光線適當時可以促進孵化進程;但當光線過強時不但不利于孵化,還有可能導致孵化徹底失敗。請你為該孵化室設計一個光線報警系統(tǒng),當光照強度超過一定值,通過報警燈告知管理員,對光線進行調(diào)整。

選材:要完成任務的設計,首先需要找到感知光線強度的器材,這里我們選擇了光敏三極管,通過它來感知光線強度的變化。

連線:此次實驗的電路略顯復雜,LED部分比較容易解決,從13號引腳到地線,中間串接220Ω的保護電阻,然后就是光敏三極管的部分,光敏三極管有凸起的一邊為發(fā)射極,此端接A0檢測口,同時并聯(lián)一個10KΩ的分壓電阻到地線以擴展光敏三極管的靈敏度(此處電阻越小靈敏度越高)。另一極采用5V輸入。

編程:制作完的光照控制系統(tǒng),當光線值強度的值小于300時(如下頁圖10,報警燈滅;當光線強度的值超過300時,報警燈亮,提示管理員適當調(diào)整光照強度。通過傳感器,使得孵化室具備了一定的智能——報警。這只是其中的一個小小功能,教師完全可以引導學生做進一步的探究,即作出對應的反應:關閉窗簾、調(diào)整孵化燈亮度。而不再需要管理員來進行調(diào)整。從而激發(fā)學生進行深入探究。隨后即可進行調(diào)試。此實驗的部分代碼如下:

*/

int a =300; //此處需是環(huán)境基礎亮度變量,請查看自己的亮度數(shù)值

void setup ()

{

Serial.begin(9600);

pinMode(13,OUTPUT);

}

void loop()

{

int n = analogRead(A0); //讀取模擬口A0數(shù)值

Serial.println(n);

if (n>= a ) //對光線強度進行判斷,如果比我們的預設值大就點亮LED否則就關閉

{

digitalWrite(13,HIGH);

}

else

{

digitalWrite(13,LOW);

}

}

拓展:現(xiàn)實生活中,對于孵化室的要求有很多,如溫度、濕度、光照、氣體等,那么通過本例,我們可拓展利用溫度傳感器、濕度傳感器來實現(xiàn)孵化指標的控制。

將Arduino傳感器等外部設備引入課程后,使那些具備研究能力的學生可以自由發(fā)揮自己的想象,使用這些工具將自己的想法在游戲、娛樂、科學研究中得以實現(xiàn)。其角色也由之前單一的用戶,向玩家、交互設計師、研究者的角度轉(zhuǎn)換。在這個看似沒有目的、沒有實用性的實驗中,學生漸漸懂得了自己適合做什么,喜歡做什么,以及完成一項任務需要找哪些人來合作。

● 如何開發(fā)Arduino課程

相對于VB、VC等可視化編程軟件來說,Arduino沒有所見即所得的程序設計界面。而多出來的卻是簡單的電路設計,但就是這些基于硬件的電路設計,讓程序的功能從虛擬世界跨步進入到了現(xiàn)實世界中,并實現(xiàn)了兩者的互通。另外,與傳統(tǒng)的程序設計教學不同,Arduino的教學要從簡單的電路設計開始,而不是從數(shù)據(jù)結(jié)構(gòu)、程序語法講授開始。因為Arduino編程更注重的是硬件的控制,所以傳統(tǒng)編程類軟件課程設計思路,不適合Arduino。

開發(fā)Arduino課程要從以下幾個方面考慮:①了解電子控制系統(tǒng)的基本組成,認識常見的電子元器件,能看懂相關技術指標參數(shù)。Arduino的編程是建立在一定硬件基礎之上的,如果對硬件知識知之甚少,想完成Arduino作品的設計可能是有困難的。②熟悉數(shù)字電路設計,Arduino編程是基于硬件設備正確的電路連接的,如果程序編寫沒有問題,而電路連接錯誤,一樣無法實現(xiàn)設計所要實現(xiàn)的目標。因此,在教學中對數(shù)字電路的學習可以說是實現(xiàn)Arduino編程的前提,應給予充分重視。③教學案例的選擇應盡量緊密聯(lián)系現(xiàn)實生活,貼近學生生活實際,如聲控燈、溫度報警裝置等都可作為教學案例。

目前基礎教育中Arduino的教學主要以S4A教學為主,使用Arduino1.0進行大班的代碼教學的情況還比較少見。在基礎教育中,如果開展Arduino的相關教學,不妨與我們的通用技術課程(選修)電子控制技術結(jié)合起來,這樣既使得Arduino可以走進日常教學的課堂,另外也彌補了通用技術課程缺少相關配套實驗的缺憾,從而最終實現(xiàn)技術課堂的大整合。

主站蜘蛛池模板: 国产精品观看视频免费完整版| 99资源在线| 久久99国产精品成人欧美| 亚洲精品第1页| 亚洲Av激情网五月天| 欧美一级在线看| 男人天堂伊人网| 狠狠做深爱婷婷久久一区| julia中文字幕久久亚洲| 国产sm重味一区二区三区| 欧美亚洲国产视频| 亚洲一区二区三区国产精华液| 国产成人高精品免费视频| 2021无码专区人妻系列日韩| 国产免费黄| 日本成人一区| 日本少妇又色又爽又高潮| 99视频在线免费观看| 五月婷婷亚洲综合| 99精品视频九九精品| 亚洲成人黄色在线| 免费在线观看av| 国内精品久久久久久久久久影视| AV熟女乱| 成人毛片在线播放| 亚洲国产清纯| AV在线麻免费观看网站| 免费一级毛片完整版在线看| 午夜影院a级片| 日本黄色a视频| 亚洲嫩模喷白浆| 国产小视频免费观看| 国产18在线播放| 全部免费毛片免费播放 | 久久不卡精品| 99re66精品视频在线观看 | 91人人妻人人做人人爽男同| 久久无码av一区二区三区| 看国产一级毛片| 成人欧美日韩| 国产成人综合日韩精品无码首页 | 国产视频一二三区| 亚洲欧洲AV一区二区三区| 欧美一区二区三区不卡免费| 最新日本中文字幕| 欧美日韩免费观看| 国产情侣一区| 国产精品xxx| 久久精品丝袜高跟鞋| 亚洲伊人天堂| 精品国产中文一级毛片在线看| 97视频免费看| 亚洲Av综合日韩精品久久久| 亚洲欧美日本国产专区一区| 99视频国产精品| 国内精品九九久久久精品| 国产精品久久久久久久久久98 | 91视频精品| 欧美五月婷婷| 狠狠色噜噜狠狠狠狠色综合久 | 国产在线精彩视频论坛| 国产高清无码麻豆精品| 小说 亚洲 无码 精品| 国产精品成人一区二区| a在线亚洲男人的天堂试看| 亚洲欧美综合另类图片小说区| www.狠狠| 一本色道久久88综合日韩精品| 中文字幕亚洲综久久2021| 久久黄色免费电影| 中文字幕乱妇无码AV在线| 欧美在线伊人| 国产精品中文免费福利| 99er精品视频| 91在线无码精品秘九色APP| 国产免费网址| 情侣午夜国产在线一区无码| 欧美精品色视频| 午夜日本永久乱码免费播放片| 国产精品v欧美| 欧美日韩在线亚洲国产人| 麻豆精品久久久久久久99蜜桃|