SD單片機開發(fā)板操作手冊_第1頁
SD單片機開發(fā)板操作手冊_第2頁
SD單片機開發(fā)板操作手冊_第3頁
SD單片機開發(fā)板操作手冊_第4頁
SD單片機開發(fā)板操作手冊_第5頁
已閱讀5頁,還剩24頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、單片機開發(fā)板操作手冊一、 概述1, 多功能單片機開發(fā)板,板載資源非常豐富,僅是包括的功能(芯片)有:步進電機驅(qū)動芯片ULN2003(貼片)、八路并行AD轉(zhuǎn)換芯片ADC0804、八路并行DA轉(zhuǎn)換芯片DAC0832、八路鎖存器芯片74HC573(雙貼片)、串入并出芯片74HC595(貼片)、三八譯碼器74HC138(貼片)實時時鐘芯片DS1302(貼片)及備用電池、IIC總線芯片AT24C02(貼片)、串行下載芯片MAX232CPE、雙運放(比較放大器)LM393(貼片)、5V穩(wěn)壓集成塊78M05(貼片)雙模擬放大器LM358(無線接收模塊自帶)8*8LED點陣4*4矩陣鍵盤、4位獨立按鍵、DC5

2、V SONGLE繼電器、5V蜂鳴器、八位八段共陰數(shù)碼管八路發(fā)光二極管顯示(貼片)另還有功能接口(標(biāo)準(zhǔn)配置沒有芯片但留有接口,可直接連接使用): 單總線溫度傳感器DS18B2接口、紅外線遙控接收頭SM0038接口、2(4)相五線制小功率步進電機接口、藍屏超亮字符型液晶1602接口、藍屏超亮點陣圖形帶中文字庫液晶12864接口、模數(shù)轉(zhuǎn)換芯片ADC0804輸入擴展接口(標(biāo)準(zhǔn)配置)數(shù)模轉(zhuǎn)換芯片ADC0832輸入擴展接口(標(biāo)準(zhǔn)配置)串入并出芯片74HC595輸出擴展接口(標(biāo)準(zhǔn)配置)、三八譯碼器74HC138輸出擴展接口(標(biāo)準(zhǔn)配置)、電腦鍵盤接口P/S2接口(標(biāo)準(zhǔn)配置)、步進電機DC12V和5V驅(qū)動電壓轉(zhuǎn)

3、換接口、繼電器輸出5.0強電端子接口(標(biāo)準(zhǔn)配置)、外接交流(7V-15V)電源接口(標(biāo)準(zhǔn)配置)、USB直接取電接口(標(biāo)準(zhǔn)配置)、ISP接口(方便無下載功能的其它電路板直接連接下載)(標(biāo)準(zhǔn)配置)鍍金MCU晶振座(標(biāo)準(zhǔn)配置)、40DIP鎖緊座(標(biāo)準(zhǔn)配置)、外接電源和5V穩(wěn)壓電源的外接擴展接口及MCU所有IO口擴展(標(biāo)準(zhǔn)配置) 2,可以完成的單片機實驗: 1、無線接收模塊(有玩過遙控飛機的朋友吧,對它的遙控控制原理是怎樣的知道嗎?有了這個,您就可以自己做一個了) 2、LED顯示實驗(點亮某一個指示燈、流水燈), 3、八位八段數(shù)碼管顯示實驗(你可以任意顯示段字符和數(shù)字以及開發(fā)板所有功能芯片的顯示),

4、4、液晶顯示(1602液晶顯示、12864點陣中文圖形液晶顯示、可以顯示出開發(fā)板所有功能芯片的操作), 5、8*8點陣顯示(見過廣場上的大屏幕電視吧,那就是點陣顯示的效果,只不過比開發(fā)板上要復(fù)雜多了,但原理都是一樣的,你也可以讓自己編輯個圖案,或則產(chǎn)生個動化的效果然后顯示出來。怎么樣,有意思吧) 6、三八譯碼器的操作74HC138(學(xué)過數(shù)字電路的應(yīng)該都知道這個吧,就是沒有實際運用過是吧,就讓這個板子配備的74HC138來實現(xiàn)) 7、串入并出芯片的操作74HC595(對類似芯片的操作是您作為單片機運用所必不可少的一環(huán),它的主要功能是什么呢?就是擴展IO口,試想一下,本來是需要8個IO口資源的,有

5、了74HC595最少只要2個IO口就行了,很實用吧) 8、繼電器的操作(連接強電,控制使用) 9、蜂鳴器的操作(你可以編寫程序讓它發(fā)出美妙動聽的歌聲) 10、P/S2電腦鍵盤的操作(板子上配備有有直接與電腦鍵盤連接的P/S2座,可以直接連接電腦鍵盤,那么電腦鍵盤就是開發(fā)板的一部分了) 11、步進電機的操作ULN2003(這個是邁向自動化控制的第一步,現(xiàn)在的數(shù)控機床、機器人呀什么的實現(xiàn)精度運動控制大部分都是靠它來實現(xiàn)的) 12、數(shù)模轉(zhuǎn)換操作DAC0832(數(shù)字量在這里是怎樣變換成模擬量的,這里采用的轉(zhuǎn)換芯片是8路并行傳輸模式,響應(yīng)時間僅2us) 13、模數(shù)轉(zhuǎn)換操作ADC0804(一個小小的程序,

6、你旋動電位器可以看到阻值的變化在數(shù)碼管上變成了一個個的非常直觀數(shù)字,這里采用的轉(zhuǎn)換芯片是8路并行傳輸模式,響應(yīng)時間僅2us) 14、矩陣鍵盤的操作(這個是你自己定義的編碼鍵盤,4*4=16個按鍵卻只占有單片機的八個IO口,以此類推5*5=25個按鍵只要10個IO口,這樣的控制是怎樣實現(xiàn)的呢) 15、獨立按鍵的操作(在這個里面不但可以進行常規(guī)的按鍵操作,您也進行單片機的外部中斷和計數(shù)器的操作) 16、實時時鐘的操作DS1302(自己動手編寫個萬年歷吧,讓時間在數(shù)碼管或液晶上顯示出來) 17、IIC總線芯片AT24C02的操作(常規(guī)的記憶需要電池,但是AT24C02卻可以斷電記憶數(shù)據(jù)100年不丟失

7、) 18、紅外遙控操作SM0038(可以像遙控電視機樣遙控開發(fā)板,當(dāng)然您還需要配備一個萬能遙控板和接收頭才能實現(xiàn)這個功能) 19、單總線溫度傳感器DS18B20(測試下現(xiàn)在的室溫吧,測試精度在0.1度;也可配合本開發(fā)板的可控硅和光電耦合制作高精度的溫度實驗箱了,想想這與實驗室的實驗箱有什么差距呢) 20、串口通信MAX232(想用電腦控制開發(fā)板或者開發(fā)板控制電腦嗎,我們提供一個串口調(diào)試精靈和一個上位機軟件(且提供全部的VB源代碼),剩下的就靠你自己編寫程序去實現(xiàn)了) 21、晶振采用鍍金座接口(單片機內(nèi)部定時時選用6M或12M晶振,下載或串口通信采用11.0592M,你想怎么換就怎么換) 22、

8、開發(fā)板的所有IO口及外接電源及5V穩(wěn)壓電源的擴展接口(想自己再擴展電路吧,想利用開發(fā)板進行硬件的第二次擴展嗎,這些都是可以很輕松實現(xiàn)) 以上的程序?qū)嶒炦€只是單一的針對開發(fā)板芯片的操作。有了這一步的朋友,您就可以同時對幾個芯片進行操作了,那列子就數(shù)不勝數(shù)。這樣我們的目的也就達到了。這是個系統(tǒng)的開發(fā)學(xué)習(xí)實驗環(huán)境,綜合操作可以完成很多,很復(fù)雜的功能,以完成不同的實驗項目! 3,產(chǎn)品裝箱清單:1、 測試好的單片機開發(fā)板一塊2、 晶振4個(12M、11.0592、6M、4M)3、 實時時鐘DS1302備用紐扣電池(3V)一塊4、 跳線帽10個5、 9針串口線一條6、 USB取電線一條 4,產(chǎn)品可選配件(

9、可直接連接使用): 1、1602字符型藍屏超亮液晶 2、12864點陣圖形藍屏超亮帶中文字庫液晶 3、2(4)相小功率步進電機 4、SST89E516仿真芯片 5、單總線溫度傳感器DS18B20 6、紅外遙控接收頭SM0038 7、萬能遙控板(可直接遙控市場上絕大部分型號電視機) 8、USB-串口下載線(如果您是使用的筆記本或者是不含有串口的電腦) 9、無線接收模塊(315M) 10、汽車專用無線遙控板(內(nèi)置2262編碼發(fā)射芯片),與接收模塊配合使用,需單片機軟解碼 這是個完整的單片機開發(fā)系統(tǒng),這些配置也能完成大部分單片機實驗,只要您能夠仔細的認真的掌握好以上知識,相信您已經(jīng)進入到單片機的世界

10、,并開始向更高方向發(fā)展!二、 下載操作:1, 現(xiàn)在你已經(jīng)擁有這樣一塊多功能的單片機開發(fā)板了,第一步我們就測試開發(fā)板的性能,讓你第一次的用眼睛加上你的操作去控制它A、連接好串口下載線(附圖2-1)和USB取電線(附圖2-2),并插好晶振(11.0592M)和安裝好單片機(附圖2-3), 附圖(2-1) 附圖(2-2)B、如果您使用的是筆記本或者是沒有串口的電腦,則需安裝USB-串口驅(qū)動并使用轉(zhuǎn)換線,轉(zhuǎn)換線圖片見附圖2-4,及操作步湊見附圖2-5,及驗證安裝成功步湊見附圖2-6,(如果是直接采用的9針串口線下載,則跳過這一步) 1)USB-串口線如圖所示附圖(2-4)2)請先不要插USB-串口轉(zhuǎn)換

11、線,后點擊下載附送的USB-串口驅(qū)動步湊: 附圖(2-5)3)現(xiàn)在請將USB-串口線插在電腦的USB接口上,電腦會自動搜索安裝,后請驗證安裝是否成功。驗證安裝成功步湊: 附圖(2-6) (如果能看到你的硬件管理器中有個虛擬的通訊端口(則表示USB-串口下載安裝成功),那么請記住是COM幾,因為一會在下載軟件里面要用到) C、安裝下載軟件:安裝我們提供的單片機燒寫軟件 STC-ISP V391.EXE(見附圖2-7),只需將它全部復(fù)制到您的硬盤中直接打開就可(見附圖2-7), 附圖(2-7)D、下載測試程序:將我們提供的單片機開發(fā)板程序下載到開發(fā)板上(舉列下載LED顯示流水燈程序)見附圖2-81

12、)在附圖(2-7)中的界面中選擇 (電腦無串口請選擇此項,否則跳過) (選擇附圖2-6中的COM端口號) (打開流水燈中的HEX文件) 等待 (按下單片機開發(fā)板電源開關(guān),等待數(shù)秒就成功下載了)三、 板載資源詳細介紹(以具體芯片或電路為準(zhǔn),介紹芯片的功能及如何操作,及顯示出源程序并附帶顯示效果):1) 發(fā)光二極管(電路及其顯示的基本原理) A、電路原理圖見附圖(3-1) 附圖(3-1)上圖中的八個LED分別通過一個電阻限流接在單片機的P0口上,如圖所示八個LED的正極都同時接上了五段撥碼開關(guān)的第5位,那么我們想要點亮發(fā)光二極管第一步就應(yīng)該打開開關(guān)。 那么要怎樣才能點亮發(fā)光二極管呢?很簡單,只要使

13、相應(yīng)的發(fā)光二極管負極為低電平就可以了,及相對應(yīng)的單片機IO口為低就可以了 程序如下: #includeAT89x52.h /代入頭文件void main(void) P0=0xfe; /使P00口為低電平 while(1); /程序執(zhí)行到這里不動作這時我們能看到在不但開發(fā)板上的一個LED被點亮了有了第一個LED被點亮的列子,那么我們就可以用同樣的方法點亮其它LED了,當(dāng)然也可以讓LED一個一個的輪流被點亮以達到一種流水燈的效果。實列程序的效果:上面附圖是實列測試程序中的流水燈顯示效果,左邊一排為8位接在P0口的LED,第2個被點亮了,這就是流水燈跑到第2個的效果,右邊的那個燈為電源指示燈,只要

14、一開電源就會亮。2) 八位八段數(shù)碼管顯示原理及鎖存器的操作A、 電路原理圖見附圖(3-2) 附圖(3-2)B、 數(shù)碼管資料見附圖(3-3) 附圖(3-3) 從圖(3-3)可以看出這個一個四位的共陰數(shù)碼管,上面的11,73是數(shù)碼管的段選端,126是數(shù)碼管的位選端,本開發(fā)板使用了2個這樣的數(shù)碼管,再結(jié)合圖(3-2)可看出,數(shù)碼管的位選和段選都接在了兩片鎖存器74HC573上,而573又接在了單片機的P0端C、 鎖存器74HC573資料見附圖(3-4),更為詳細的芯片資料見其它 這個芯片采用的是八進位的D觸發(fā)器,它可以驅(qū)動電容式或電阻式的負載。因此它特別適合應(yīng)用于緩沖寄存器、IO端口、雙向的總線控制

15、器、和操作寄存器。 當(dāng)寄存器的使能端(LE)為高電平時,Q輸出端和D輸入端一一對應(yīng);當(dāng)LE為低電平時,輸出端管腳Q輸出的是寄存器中已被設(shè)定的值。當(dāng)一個能開啟緩沖功能的負邏輯管腳(OE)為0時,無論是在正常邏輯狀態(tài)還是在高阻抗?fàn)顟B(tài)下,都能放置八位的輸出數(shù)據(jù)。在高阻抗?fàn)顟B(tài)下。輸出并沒有負載或者進行控制總線。高阻態(tài)和改進的總線驅(qū)動可以在不拉起元件的情況下控制總線傳輸。OE端并不影響寄存器內(nèi)部的操作。當(dāng)輸出端呈高阻狀態(tài)時舊的數(shù)據(jù)可以被保存或者新的數(shù)據(jù)進行輸入 從圖(3-4)中可看出,2-9腳為輸入端,12-19為輸出端,1、11腳為控制端,A,當(dāng)1腳為高電平時,不論輸入值,12-19輸出為高阻態(tài),B、

16、當(dāng)1腳為低電平時,11腳為高電平,輸入值的變化直接反映到輸出值的變化 11腳為低電平,輸出值的不受輸入值的變化而變化,而是記錄了上次的輸入值(就鎖存了數(shù)據(jù))根據(jù)鎖存器所具有的這一特性,我們就可以編寫程序控制數(shù)碼管了另外數(shù)碼管的顯示方式分為兩種,一種是靜態(tài)顯示,一種是動態(tài)顯示,在這里我們是以芯片573鎖存器作為重點講解 附圖(3-4) 從附圖(3-2)的原理圖中我們可看出,兩片573的輸入端都是接在了MCU的P0口,也就是說數(shù)碼管的位選端和段選端都是通過鎖存器接在了P0端,但是我們要讓數(shù)碼管亮,就得分別去控制它的位選端和段選端,那么在這里要怎樣分別控制呢?可以這樣:A、 給控制位選的573的11

17、腳高電平,讓它的輸入和輸出直通B、 給P0口數(shù)據(jù),讓這個數(shù)據(jù)通過573去控制數(shù)碼管的位C、 給控制位選的573的11腳低電平,鎖存上次給的數(shù)據(jù)D、 給控制段選的573的11腳高電平,讓它的輸入和輸出直通E、 給P0口數(shù)據(jù),讓這個數(shù)據(jù)通過573去控制數(shù)碼管的段F、 給控制段選的573的11腳低電平,鎖存上次給的數(shù)據(jù)就按照這個思路我們來編寫一個簡單的讓數(shù)碼管顯示的程序吧(顯示效果見附圖(3-5)#includeAT89x52.h /代入頭文件#includemath.h#define uint unsigned int#define uchar unsigned charsbit DUAN=P20

18、; /74HC573的LE端 U5 LED的段選端sbit WEI=P21; /74HC573的LE端 U4 LED的位選端uchar Temp=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /共陰顯示字庫void delay(uint z) /1ms延時uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);main()uchar i;WEI=1; /給573的位選高電平P0=0; /給數(shù)碼管位數(shù)據(jù),讓它們都為低電平WEI=0; /鎖住數(shù)碼管的位數(shù)據(jù)(以上3句話鎖存了位數(shù)據(jù))DUAN=1; /給573的段選高電平

19、,讓段一直保持直通狀態(tài)while(1) /因為數(shù)碼管的位數(shù)據(jù)被鎖存,我們現(xiàn)在再給P0口數(shù)據(jù)就是只改 /變段的數(shù)據(jù)了for(i=0;i10;i+) /顯示0-9,10個數(shù)字delay(500); /延時P0=Tempi; /給數(shù)碼管段數(shù)據(jù)delay(500);附圖(3-5)以上程序就循環(huán)在數(shù)碼管上顯示了0-9 10-個數(shù)字。回顧下,普通的LED接法是讓LED的位和段接在不同的MCU的IO口上(按照上圖所示就要占用16個IO口),但現(xiàn)在我們使用了2片573將它們都接在了MCU的P0(8個IO口)上,節(jié)約了單片機的IO口資源,這在單片機IO口緊張的情況下是很有用的4) 液晶顯示由于液晶顯示比較復(fù)雜,

20、在這里我們不打算詳細介紹它的工作原理,只對其接口電路進行簡單的介紹1)1602字符型液晶 A、1602實物圖見附圖(3.6) 附圖(3.6)B、 電路原理圖(1602和12864)見附圖(3-7) 附圖(3-7) C、1602引腳定義及時序見附圖(3.8,3.9) 附圖(3.8) 附圖(3.9)從附圖(3.6,3.7)中我們可以看出1602和12864的都是使用的八位并行數(shù)據(jù),而它們的數(shù)據(jù)引腳都并接在了P0口,VCC為DC5V電源,VSS為地線,其中除了DB0-DB7為數(shù)據(jù)線外,另還有幾個可操作引腳是RS,R/W,E,其操作方法請嚴(yán)格按照附圖(3.8)的讀寫時序圖。以上液晶的資料較為簡單,詳細

21、的資料和測試程序另有收錄,下面只列出可參照1602的如何寫的程序?qū)懨钭雍瘮?shù):void write_cmd(uchar cmd) /帶要寫的命令,無返回值uchar CMD;CMD=cmd;while(lcd_busy(); /判忙標(biāo)志,這里也可以用一個普通的延時解決rs=0; /參照時序圖rw=0;cs=1;nop(); /稍微延時P0=CMD; /給P0口附值cs=0;寫數(shù)據(jù)子函數(shù):void write_data(uchar data1) /帶要寫的數(shù)據(jù),無返回值 uchar DATA;DATA=data1;while(lcd_busy();rs=1; /參照時序圖rw=0;cs=1;no

22、p();P0=DATA;cs=0;1602液晶顯示效果見附圖(3.10) 附圖(3.10)從附圖(3.10)中可看見中有個00顯示不亮,這不是液晶本身的問題,而是程序處理延時時間的不準(zhǔn)確所造成的。如果顯示的是數(shù)碼管,延時不好會造成閃爍的現(xiàn)象2)12864帶中文字庫點陣型液晶 A、12864實物圖見附圖(3.11) 附圖(3.11)B、12864引腳定義及時序見附圖(3.12,3.13) 附圖(3.12) 讀時序 寫時序 附圖(3.13)從原理附圖(3.7)和12864接口附圖(3.12)中我們應(yīng)注意一點,(3.12)中12864的17腳是液晶的復(fù)位引腳,在(3.7)中我們把它直接接到了MCU的

23、P27中.。這個問題大家在編程需注意。我們在操作液晶的時候一般只是讓它顯示需要的內(nèi)容,那就是寫數(shù)據(jù)/命令,下面將列出12864的寫子函數(shù),以做參考,其它測試程序另有收錄。寫命令子函數(shù):void lcd_wcmd(uchar cmd) /寫命令 RS=L,RW=L,E=高脈沖,D0-D7=指令碼。 while(lcd_busy(); /判忙 LCD_RS = 0; /參照時序圖 LCD_RW = 0; LCD_EN = 0; _nop_(); _nop_(); P0 = cmd; delayNOP(); LCD_EN = 1; delayNOP(); LCD_EN = 0; 寫數(shù)據(jù)子函數(shù)void

24、 lcd_wdat(uchar dat) /寫數(shù)據(jù) RS=H,RW=L,E=高脈沖,D0-D7=數(shù)據(jù)。 while(lcd_busy(); LCD_RS = 1; LCD_RW = 0; LCD_EN = 0; P0 = dat; delayNOP(); LCD_EN = 1; delayNOP(); LCD_EN = 0;以上只是列出了它的寫時序。12864顯示效果見附圖(3.14) 附圖(3.14)這個液晶不但能顯示漢字也能顯示圖畫,而且漢字不用自己編碼,都是芯片自帶了的。操作很方便很實用、上面的圖片因為相機的問題,不清楚,大家諒解5) 鍵盤操作 鍵盤的操作在這里分為兩種,獨立鍵盤和距陣編

25、碼鍵盤A、 鍵盤的實物見附圖(5.1) 附圖(5.1) 上面附圖中按鍵共有21個,在左邊的上面4排4*4個為距陣鍵盤,下面1排4個為4位獨立按鍵,在右邊為一個復(fù)位 按鍵B、 鍵盤的原理圖見附圖(5.2) 附圖(5.2)C、 先說簡單的獨立鍵盤吧,就是原理附圖(5.2)上的最下面的4個按鍵,這4個按鍵分別連接在MCU的P30,P31,P32,P33,上,我們可以先讓這幾個腳為高電平,當(dāng)有鍵按下時某個被按下的按鍵所連接到的MCU引腳就變成了低電平,在編程時我們不論是采用哪種方法都很容易的判別出來。這里就不列出源程序了D、 距陣鍵盤就要復(fù)雜得多了1),原理圖分析:原理附圖(5.2)上的上面16個按鍵

26、,每4個列連在了P30、P31、P32、P33和每4個行連在了P34、P35、P36、P37上2)編程思路:由P30-P33送出掃描信號,而由P34-P37讀取按鍵數(shù)據(jù)返回代碼,具體如下:以程序掃描的方式來檢查那一按鍵被按下,一次掃描一行4個按鍵,掃描的順序如下:a、 送出掃描信號1110以掃描第一行的4個按鍵,讀取按鍵數(shù)據(jù),判斷該行是否有鍵按下,如有則連接被按下的該鍵返回線為0;b、 送出掃描信號1101以掃描第一行的4個按鍵,讀取按鍵數(shù)據(jù),判斷該行是否有鍵按下,如有則連接被按下的該鍵返回線為0;c、 送出掃描信號1011以掃描第一行的4個按鍵,讀取按鍵數(shù)據(jù),判斷該行是否有鍵按下,如有則連接

27、被按下的該鍵返回線為0;d、 送出掃描信號0111以掃描第一行的4個按鍵,讀取按鍵數(shù)據(jù),判斷該行是否有鍵按下,如有則連接被按下的該鍵返回線為0;e、 回到步湊a,繼續(xù)做按鍵掃描。列出鍵盤掃描子程序:uchar Keyboard() /掃描子函數(shù)uchar i,j,pc;for(i=0;i4|0xf0; /假如說有按鍵按下for(j=0;j4;j+) /將掃描值與掃描按鍵值比較if(keyboard_Scanj=pc)in=i+j*4; /計算按鍵值while(keyboard_Scani!=P3) /松手檢測P3=keyboard_Scani; 將掃描后的值返回MCUreturn in; /返

28、回按鍵值以上的程序在實列測試程序中(列子)中加入另外一些代碼,就可以通過按下某個按鍵后讓這個值在LED上顯示出來6)、步進電機A、步進電機的實物見附圖(6.1) 附圖(6.1)附圖(6.1)是本開發(fā)板選配的高精度2(4)相5(6)線制步進電機,全新(30元)八成新(8元)。 注:步進電機以實物為準(zhǔn) 因為開發(fā)板是個提供您學(xué)習(xí)的實驗平臺,所以本開發(fā)板具有步進電機電壓選擇的功能,您可以把電機的驅(qū)動電壓選為穩(wěn)壓的DC5V(推薦),當(dāng)你使用外接電源適配器供電時,也可以選擇這個電壓(在開發(fā)板上可以通過跳線冒方便選擇)。步進電機驅(qū)動電壓選擇見附圖(6.1.1 )B、步進電機內(nèi)部原理圖見附圖(6.2) 附圖(

29、6.2)附圖(6.2)為一個兩相步進電機的內(nèi)部原理圖,這和附圖(6.1)的電機是一樣的。C、 怎樣通過單片機來控制步進電機本開發(fā)板中使用的步進電機為二(四)相步進電機。轉(zhuǎn)子小齒數(shù)為64。系統(tǒng)中采用四路I/O進行并行控制,MCU控制器直接發(fā)出多相脈沖信號,在通過功率放大芯片ULN2003后,進入步進電機的各相繞組。四相步距電機的控制方法有四相單四拍,四相單、雙八拍和四相雙四拍三種控制方式。步距角的計算公式為:b3600mCk其中:m為相數(shù),控制方法是四相單四拍和四相雙四拍時C為1,控制方法是四相單、雙八拍時C為2,Zk為轉(zhuǎn)子小齒數(shù)。在本開發(fā)板所列出的步進電機測試程序:采用的是四相單、雙八拍控制方

30、法,所以步距角為360/512。但步進電機經(jīng)過一個1/8的減速器引出,實際的步距角應(yīng)為360/512/8。開發(fā)平臺中使用P1口的高四位控制四相步進電機的四個相。按照四相單、雙八拍控制方法,電機正轉(zhuǎn)時的控制順序為AABBBCCCDDDA。P1口的高四位的值參見下表:十六進制二進制通電狀態(tài)1H0001A3H0011AB2H0010B6H0110BC4H0100CCH1100CD8H1000D9H1001DA電機正轉(zhuǎn)時,P1口的高四位的值反轉(zhuǎn)時,只要將控制信號按相反的順序給出即可。本實驗使作的是12相勵磁方式,還可以使用1相勵磁方式和2相勵磁方式。1相勵磁方式的順序是ABCD,因此只要設(shè)置數(shù)組cha

31、rstepdata=0x10,0x20,0x400x,0x80即可 2相勵磁方式的順序是AB,BC,CD,DA,因此只要設(shè)置數(shù)組charstepdata=0x30,0x60,0xc0,0x90即可要實現(xiàn)電機的反轉(zhuǎn),只需將上面數(shù)組的值按相反的順序排列即可先列出MCU控制步進電機子程序如下(勵磁方式為1-2相): uchar plus=0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09,0x00; /電機正轉(zhuǎn)uchar minu=0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09,0x00; /電機反轉(zhuǎn)void T_move() /控制子函數(shù)

32、uchar i;for(i=0;i8;i+) /電機轉(zhuǎn)動控制字P1=plusi; /給P1口附值delay(50); /延時再控制 以上程序只是控制了電機的轉(zhuǎn)動,并不附帶轉(zhuǎn)動時的速度、方向、角度效準(zhǔn)、等等,總之要想很好的控制步進電機使其真正的運用到實際場合,還要很多資料需要查詢(實列程序在測試程序中,有兩個,還有一個利用了MCU的定時器實現(xiàn)其速度的精度控制)電機與開發(fā)板接口連接見附圖(6.3) 附圖(6.3) 這是選配的2(4)相步進電機,實際選配的步進電機(八成新)比它新多了7) 八位并行傳輸D/A芯片DAC0832A、 DAC0832的結(jié)構(gòu)、引腳及操作時序 DAC0832是八位輸入寄存器、

33、八位DAC寄存器、八位D/A轉(zhuǎn)換器所構(gòu)成。芯片中有兩級鎖存器,第一級即輸入寄存器,第二級即DAC寄存器。因為有兩級鎖存器,DAC0832可以工作在雙緩沖方式下,這樣在輸出模擬信號的同時可以采集下一個數(shù)字量,這樣可以有效地提高轉(zhuǎn)換速度(響應(yīng)速度僅為2us),另外,有了兩級鎖存器,可以在多個D/A轉(zhuǎn)換器同時工作時,利用第二級鎖存信號實現(xiàn)多路D/A的同時輸出。DAC0832即可以工作在雙緩沖方式,也可以工作在單緩沖方式,無論哪種方式,只要數(shù)據(jù)進入DAC寄存器,便啟動D/A轉(zhuǎn)換1)、結(jié)構(gòu)、引腳、MCU-DAC0832接口、操作時序見附圖(7-1)、(7-2)、(7-3)、(7-4) 附圖(7-1) 附圖(7-2) 附圖(7-3)DAC0804輸入擴展跳線帽見附圖(7.3.1)。附圖(7-3)中的DA擴展端口的2、3腳應(yīng)用短路子連接(實際已連接),這樣我們在進行數(shù)模轉(zhuǎn)換的時候模擬量就可通過D16直

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論