欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>嵌入式開發(fā)>單片機僅靠CPU和內(nèi)存是無法運行的!資料下載

單片機僅靠CPU和內(nèi)存是無法運行的!資料下載

2021-04-02 | pdf | 225.99KB | 次下載 | 2積分

資料介紹

本連載共分6期,將介紹有效使用單片機外設(shè)功能的結(jié)構(gòu)及使用方法。通過本連載的學(xué)習(xí),我們將能學(xué)到各種單片機共通的基本外設(shè)功能,并可廣泛應(yīng)用到各個方面。 單片機僅靠CPU和內(nèi)存是無法運行的! 有效使用單片機不可或缺的“外設(shè)功能”是什么呢? 正如過去連載的“單片機入門”系列中所介紹的那樣,對電子產(chǎn)品進行控制的單片機是由CPU、內(nèi)存及外設(shè)功能等部分組成的(圖1)。CPU根據(jù)指令(程序),執(zhí)行運算、數(shù)據(jù)的讀寫以及進行條件判斷等,而內(nèi)存則用來保存該程序(記憶)。 圖1:單片機內(nèi)部結(jié)構(gòu)示意圖 外設(shè)功能是指為了使單片機便于使用的各種功能。例如,CPU為了與外部的傳感器及開關(guān)等進行信號交換,就需要“輸入/輸出端口(I/O端口)”這種外設(shè)功能。 而且,將模擬輸入信號轉(zhuǎn)換為數(shù)字值的“A/D轉(zhuǎn)換器”以及反過來將數(shù)字值轉(zhuǎn)換為模擬輸出信號的“D/A轉(zhuǎn)換器”則是單片機對各種信號進行處理時不可或缺的外設(shè)功能。 另外,還有為了正確測量時間所用的“定時器”以及提供日期和時計的“實時時鐘(RTC)”,用于進行與時間相關(guān)的處理,此外還有將并行信號(parallel signal)和串行信號(serial signal)進行互相交換的“UART(Universal Asynchronous Receiver Transmitter,通用異步收發(fā)器)”等,以便進行通信。 本連載中,將以瑞薩電子單片機--RX63N為例,介紹令單片機更便于使用的外設(shè)功能的基礎(chǔ)知識。我們將使用搭載了“RX63N”程序的電子板“GR-SAKURA”進行說明,請你也實際操作試試看吧! 了解數(shù)字信號的輸入/輸出端口---“GPIO” 在“輸入/輸出端口(I/O端口)”中,數(shù)字信號的輸入/輸出端口即“GPIO(General Purpose Input/Output)”也被稱為“通用I/O端口”,是一種用于數(shù)字信號輸入/輸出的非常方便的端口。用于將數(shù)字輸出的傳感器值和開關(guān)的ON/OFF值傳送到單片機的輸入端及通過LED來顯示單片機的運算結(jié)果,以及輸出用于驅(qū)動電機運行的信號等等。 GPIO被稱為通用端口是其引腳既可以用于輸入也可以用于輸出。在早期的單片機中,引腳都被固定用于輸入或輸出,但是現(xiàn)在很多單片機中都可以自由地將其設(shè)定為輸入或輸出端口。假設(shè)GPIO端子有8個引腳,則可以將4個引腳用于輸入,另4個引腳用于輸出,也可以將1個引腳用于輸入,剩下的7個引腳用于輸出。 在GPIO中,為了使CPU和外部設(shè)備之間進行數(shù)據(jù)交換,要相互執(zhí)行通過程序處理的數(shù)字值(0或1)與信號(電壓的LOW電平或HIGH電平)的轉(zhuǎn)換。下面是作為RX63N單片機的GPIO端口基礎(chǔ)的寄存器(※1)的作用(圖2)。 (※1)寄存器(Register):存在于單片機的CPU和外設(shè)功能內(nèi)部中的記憶回路。用于運算和保持CPU的執(zhí)行狀態(tài)。由于是作為CPU及外設(shè)功能的內(nèi)部回路,所以在對內(nèi)存進行寫入和讀取時速度很快,但容量卻非常小,既有可以用于各種用途的寄存器(通用寄存器),又有用于某些限定的功能和用途的特殊寄存器。 圖2:GPIO的基本結(jié)構(gòu)示意圖 ● 端口方向寄存器(PDR) 決定引腳方向的寄存器,也稱為“方向寄存器”。 ● 端口輸入數(shù)據(jù)寄存器(PIDR) 輸入時反映所使用的引腳狀態(tài)的寄存器。從引腳輸入LOW電平或者HIGH電平時會將之轉(zhuǎn)換為0或1的值并讀取該轉(zhuǎn)換結(jié)果。隨著引腳的變化數(shù)值也將發(fā)生變化。所以不會保持讀取時的值。 ● 端口輸出數(shù)據(jù)寄存器(PODR) 此寄存器保存用作輸出引腳的輸出數(shù)據(jù)。將0或1的值轉(zhuǎn)換為LOW電平或HIGH電平信號并從引腳輸出。由于可以與內(nèi)存一樣保持改寫前的值,所以在改寫前來自引腳的輸出電壓也將保持不變。 通過GR-SAKURA來體驗活用了GPIO的程序! 本期我們將通過“按下開關(guān)時LED會發(fā)光”這個程序來學(xué)習(xí)GPIO的運行。我們將利用GR-SAKURA專用的程序庫進行編程。(櫻花程序庫的“數(shù)字I/O”)(僅英文版) 在櫻花程序庫(SAKURA Library)的“數(shù)字I/O”中,電路板上的I/O專用引腳究竟是用作輸入還是用作輸出最初由pinMode(引腳號、模式)函數(shù)來指定。一旦指定后,只要引腳的用法沒發(fā)生變化就無需執(zhí)行pinMode函數(shù)。 用作輸入時,通過digitalRead函數(shù)來指定引腳號,結(jié)果將被作為HIGH電平或LOW電平信號被返送回。用作輸出時通過digitalWrite函數(shù)來指定引腳號。值還是HIGH電平或LOW電平,HIGH電平相當(dāng)于1,LOW電平相當(dāng)于0,所以也可將之記述為0或1。 由于這次使用的是GR-SAKURA電路板上的開關(guān)和LED,所以即使不知道與其相連的引腳號和端口號,如為開關(guān),只需在程序中寫入“PIN_SW”,如為LED,只需在程序中寫入“PIN_LED0”?“PIN_LED3”,櫻花程序庫(SAKURA Library)就會進行處理。 (僅英文版) (僅英文版) 圖3所示的是使用GPIO時,通過LED的閃爍來反映開關(guān)的值的程序例。首先通過pinMode函數(shù)來指定與開關(guān)相連的引腳作為輸入引腳,將與LED連接的引腳作為輸出引腳(1)。只需在開始時定義一次就夠了,之后將在setup函數(shù)中進行處理。 接下來,“只要按下開關(guān)LED就點亮,不按開關(guān)LED就熄滅”的部分在loop函數(shù)中進行處理。開關(guān)是否被按下要根據(jù)digitalRead(PIN_SW)返回的值來判斷。所以GR-SAKURA的開關(guān)在什么都不做(松開)的狀態(tài)下為HIGH電平(通過上拉電阻連接電源),被按下時為LOW電平(連接GND)。 如果digitalRead(PIN_SW)返回的值為LOW電平時=開關(guān)被按下(2)、LED將被點亮。D1的LED為digitalWrite(PIN_LED0, HIGH)時將被點亮(3)。 如果判斷為開關(guān)沒被按下時,當(dāng)是digitalWrite(PIN_LED0, LOW)時(4),GPIO的輸出為LOW電平,LED熄滅。 請試著使用GR-SAKURA的Web編譯器來執(zhí)行圖4所示的程序。 圖3:程序例 圖4:振蕩體驗程序 程序的提示 通過"振蕩"來防止誤操作 開關(guān)是用來接通(開關(guān)有時顯示為"關(guān)")和切斷(開關(guān)有時顯示為"開")電路的,即開和關(guān)。在開關(guān)等裝置機械地進行開和關(guān)的操作時,任何一種狀態(tài)都不可能在一瞬間完成。裝置會發(fā)生非常快速的振動,并非常精細地在開和關(guān)之間反復(fù)動作后才會轉(zhuǎn)變?yōu)樾碌臓顟B(tài)。這種現(xiàn)象被稱為"振蕩"。為了讓大家更容易理解"振蕩"的現(xiàn)象,我們制作了一個簡單易懂的體驗程序(圖4)。請大家也試著體驗一下吧。 試著通過控制開關(guān)反復(fù)點亮、熄滅LED來執(zhí)行所期望的動作,怎么樣?是不是有時如你所愿,有時又適得其反?產(chǎn)生這種現(xiàn)象的原因就是因為振蕩。如果將振動過程中的狀態(tài)作為開關(guān)的信號讀取出來,將得不到正確的結(jié)果。因此,需用防振蕩程序來解決。 在圖3的程序中,檢測到開關(guān)最初被按下后先停止50微妙(0.05秒)后再進行處理(圖3中的⑤)。如果不停止,在檢測到開關(guān)被按下時雖然LED也會亮燈,但接下來確認開關(guān)的狀態(tài)時,由于振蕩的原因,有可能會認為是"開關(guān)處于松開的狀態(tài)"(因為輸入暫時還沒返回到HIGH)而導(dǎo)致LED熄滅。因此,如上所述,我們通過在開關(guān)的狀態(tài)穩(wěn)定之前停止處理(50微妙)的方式來解決這個問題。 本期我們一起學(xué)習(xí)了GPIO的結(jié)構(gòu)和使用方法。如果將程序中的PIN_LED0的部分換成別的LED號(僅在選0?3時有效),將可以變換閃爍的LED。另外,如果改寫判斷部分的程序,也可以進行諸如"按兩次則LED亮燈,接下來再按1次時熄滅"等復(fù)雜的處理。這次的體驗程序只使用了GR-SAKURA上的輸入/輸出設(shè)備,但也可將帶有數(shù)字輸出功能的外部傳感器連接到GR-SAKURA的I/O端子上,也可以連接LED以外的設(shè)備(如電子蜂鳴器)。? (mbbeetchina)
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

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

本月

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

總榜

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