




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 實驗報告學生姓名: 學 號: 專業班級: 實驗類型: 驗證 綜合 設計 創新 實驗日期: 實驗成績: 實驗一: 直流、步進電機綜合控制系統設計一、實驗目的1、初步熟悉實驗GPIO口的初始化設置,并熟悉實驗箱各個模塊的功能2、掌握步進機的控制原理及利用延時脈沖來改變步進電機速度3、掌握直流電機的控制原理及利用pwm占空比控制來改變速度4、學習IIC總線讀取和寫數據原理,并掌握對CAT1025 E2PROOM操作方法5、學會控制數碼管的顯示UART串口函數,并初步掌握中斷處理函數的寫法二、實驗基本原理1、S3C 2410A具有117個通用I/O口,分為AH等8個端口,由于每個I/O口都有第2功能
2、,甚至第3功能,所以需要通過設置GPxCON寄存器來選擇GPx口I/O口功能,其中x可以為A、B、C、D、E、F、G表示相應的I/O端口。當I/O口設置為GPIO輸出模式(Output模式)時,可以通過寫GPxDAT控制相應I/O口輸出高電平或低電平,GPxDAT為1的位對應I/O輸出高電平,為0的位對應輸出低電平。2、工程模板中包含有串口軟件包UART.C,用戶可以調用相應的接口函數進行串口數據發送和接收,串口的波特率需要在config.h文件中進行設置,本實驗使用默認的115200波特率。對串口進行初始化時,首先要設置相應I/O口為TXD0,TRD0功能引腳,然后通過ULCON0來設置通訊
3、波特率。設置UCON0寄存器時,要設置串口工作模式為查詢模式,即UCON3:0應為0101b。3、S3C2410A具有實時時鐘(RTC)功能,能夠提供時、分、秒,年、月、日的計時功能,還具有定時報警功能。RTC單元采用獨立的后備電池供電,獨立是時鐘源(采用32.768KHz晶振),即使系統關閉電源,RTC還可以正常工作。要初始化RTC的時間值,首先要給RTCON寄存器寫為0x01,使能RTC接口(即允許寫RTC操作),然后對年寄存器BCDYEAR、月寄存器BCDMON、日寄存器BCDDATE、時寄存器BCDHOUR、分寄存器BCDMIN、秒寄存器BCDSEC、星期寄存器BCDDAY進行初始化,
4、時間值為BCD格式。初始化完成,將RTCCON寄存器寫為0x00,禁能RTC接口(即禁止寫RTC操作),接下來就可以直接讀取RTC時間寄存器的值來使用了。4、步進電機是一種將電脈轉化為角位移的數據控制電機,即給它一個脈沖信號,它就按設定的方向轉動一個固定的角度。用戶可以通過設置脈沖的個數來控制角位移量,從而實現準確的定位操作;另外,通過控制脈沖頻率來控制電機轉動速度和加速度,從而實現調速的目的。當然,對于步進電機各組繞組(即內部線圈)的控制脈沖要有一定的順序,否則電機無法正常旋轉。MagicARM2410試驗箱上的步進電機為四項步進電機,電機驅動為18°。S3C2410A的GPIO驅
5、動能力有限,必須通過ULCN2003達林頓集成驅動芯片驅動步進電機,在步進電機和驅動電路之間連接了電阻,防止控制紊亂造成電機的損壞。5、S3C2410A具有一個硬件I/O接口,可以配置為主發送、主接收、從發送和從接收等4種工作模式。I/O接口包含4個寄存器,控制寄存器IICCON用于設置IIC總線時鐘和中斷(標志)使能,還有一位中斷標志位;狀態寄存器IICSTAT除了指示當前IIC總線狀態外,還有2位IIC操作模式控制位和總線啟動/結束控制位;數據寄存器IICDS用來發送數據或接收數據;從機地址寄存器IICADD用來保存S3C2410A作從機時的器件地址。對IIC接口進行初始化時,首先要設置相
6、應的I/O為IICSDA、IICSCL功能引腳,然后通過對IICCON寄存器來設置IIC總線時鐘,并使能IIC中斷(標志),通過IICSTAT寄存器來設置IIC接口為主發送模式。6、外部中斷:設置GPF4引腳為外部中斷EINT4功能,下降沿觸發方式。初始化S3C2410A中斷控制器,設置EINT4為IRQ中斷,并使能中斷允許。初始化完成后,等待外部中斷產生。7、設計過程本實驗為多個實驗的綜合,可先編輯好各個函數后,在主函數中用switch分為8種情況,分別調用實驗要求的8種功能函數。實現四個LED燈按照十六進制的規則依次亮滅,主要是在各LED燈按16進制在其相應GPxDAT上寫1或0。編寫加減
7、乘除函數時因為數據在超級終端上是一位一位發送的,所以要考慮到各種結果的最大可能位數,運算時將接收到的ASC碼轉化為相應數字進行運算,發送結果時將各位數對應的ASC碼,從最高位到最低位逐位發送出來,在超級終端上顯示的就是其操作結果。顯示當前系統時間值可調用實驗教材2.16RTC實驗SendRTC工程中的函數實現。步進電機靠延時來控制其轉速,本實驗用旋轉按鈕W1來調速,這是通過A/D轉換實現的,將W1旋轉一周分為10個檔,進行A/D轉換后為01024中的一個數,再除以10,分為10個檔。W1從最左邊旋轉至中間位置時,電機反轉,并且電機轉速不斷減小。中間位置,電機停止轉動。從中間位置旋轉至最右邊時,
8、電機正轉,并且速度不斷增大。三、主要儀器設備及耗材1、硬件:PC機一臺,MagicARM2410教學實驗開發平臺一套2、軟件:Windows98/XP/2000系統,ADS 1.2集成開發環境四、實驗步驟1、安裝Wiggler JTAG仿真器并打開;2、運行超級終端,新建一個連接;3、啟動ADS 1.2,建立工程,在src組中的main.c中編寫主程序代碼;4、選用DebugRel生成目標,編譯鏈接工程,選擇【Debug】,進行JTAG仿真;5、按照超級終端上的提示信息操作;6、根據實驗箱及超級終端上的反饋結果調試程序。五、實驗主程序/*Copyright (c)* * * *-File In
9、fo-* File Name: main.c* Last modified Date: 20140415* Last Version: v1.0 * Description: 直流、步進電機綜合控制系統設計* *-* Created By: 廖麗* Created date: 2014-04-115* Version: v1.0* Descriptions: 1 LED_DispAllOn 2 LED_DispAllOff 3 LED_OnebyOne 4 LED_DispNume 5 Addsubmuldiv_Test 6 Dateweektime_Display 7 StepMOTO_Te
10、st 8 EXIT_AllTest*-* Modified by:* Modified date:* Version:* Description:*/#include "config.h"#include "main.h"/功能測試選擇數組char select_test50 ="nnPlease input 110 to select test:n","1 LED_DispAllOnn","2 LED_DispAllOffn","3 LED_OnebyOnen","
11、;4 LED_DispNumen","5 Addsubmuldiv_Testn","6 Dateweektime_Displayn","7 StepMOTO_Testn","8 EXIT_AllTestn","Please input a num you want to test:"/* Function name: DelayNS* Descriptions: 長軟件延時。* 延時時間與系統時鐘有關。* Input: dly 延時參數,值越大,延時越久* Output: 無* Cre
12、ated by: 廖麗* Created Date: 20140415*-* Modified by:* Modified Date: *-*/void DelayNS(uint32 dly) uint32 i;for(; dly>0; dly-) for(i=0; i<50000; i+);/ 串口接收字符臨時變量void fun_test(void)int i = 0;for(i = 0; i < 14; i+)UART_SendStr(select_testi);int main(void)uint8 g_getch ;int i = 0;UART_Select(0);
13、 /選擇UART0UART_Init(); /UART0初始化LED_init(); /LED相關初始化EINT_init(); /外部中斷初始化while(1)fun_test();switch(g_getch = UART_GetKey()case '1':UART_SendByte(g_getch);UART_SendStr("n");LED_DispAllOn(); /LED燈全亮DelayNS(10);UART_SendStr("nTest LED_DispAllOn is Over!n"); break;case '2
14、':UART_SendByte(g_getch);UART_SendStr("n");LED_DispAllOff(); /LED燈全滅DelayNS(10);UART_SendStr("nTest LED_DispAllOff is Over!n"); break;case '3':UART_SendByte(g_getch);UART_SendStr("n");for(;) /死循環,當檢測到按下Esc鍵時退出LED_onebyone(); /流水燈if(UART_GetFlag() = 0x1B) /檢測
15、是否按下'Esc'鍵break;LED_DispAllOff(); UART_SendStr("nTest LED_OnebyOne is Over!n");break;case '4':UART_SendByte(g_getch);UART_SendStr("n");for(i = 0; i < 16 ; i+)LED_DispNum(i); /以二進制形式顯示十六進制DelayNS(500);if(i = 15)i =0; if(UART_GetFlag() = 0x1B) /檢測是否按下'Esc'
16、;鍵break;LED_DispAllOff();UART_SendStr("nTest LED_DispNum test is Over!n");break;case '5':UART_SendByte(g_getch);UART_SendStr("n"); Addsubmuldiv(); /加減乘除測試模塊 UART_SendStr("nTest Addsubmuldiv_Test is Over!n");break;case '6':UART_SendByte(g_getch);UART_Send
17、Str("n"); DateWeekTime_Test();UART_SendStr("nTest DateWeekTime_Test is Over!n"); break;case '7':UART_SendByte(g_getch);UART_SendStr("n");StepMOTO_Test();UART_SendStr("nTest StepMOTO_Test is Over!n");break;case '8': return 0;default: break;retur
18、n 0;六、實驗數據及處理結果1、選擇Debug進行JTAG仿真后進入選擇操作情況界面選擇1,可看到實驗箱上4個LED燈全亮。2、選擇2可看到實驗箱上4個LED燈全滅。3、選擇3可看到實驗箱上4個LED燈依次點亮。4、 選擇4可看到4個LED燈按16進制數閃亮,最左邊的燈為最低位,最右邊的燈為最高位。 Debug仿真的操作界面5、 輸入5,可進入到能實現兩位數的加減乘除的子程序,分別實現加減乘除。例如選擇1 進行兩位數加法運算;選擇2,進行兩位數減法運算選擇3進行兩位數乘法運算選擇4進行除法運算6、 輸入6,按提示信息,按任意鍵輸出當前時間。7、 輸入7,觀察步進電機的轉動情況, Z鍵控制電機正轉,F鍵控制電機反轉,終端上顯示轉速,可通過旋轉W1調節電機的正反轉方向和轉速情況。按ESC退出測試,按下字母O鍵退出整個步進機測試。按Z鍵控制正轉按F鍵控制反轉旋轉W1改變速度六、思考討論題或體會或對改進實驗的建議1、掌握了GPxCON寄存器控制LED燈顯示的原理。在相應的GPxDAT位寫1時,LED燈亮,寫0時LED燈滅。2、掌握了在ARM超級終端上進行數學算法的原理,本實驗中實現小數減大數,只要將減法指令改為if(num1>=num2)sprintf(disp_buf, "nsub = %dn", sub); elsesprintf(disp_buf,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國減肥連鎖行業市場發展現狀及競爭格局與投資機會研究報告
- 2025-2030中國農業旅游行業市場深度調研及競爭格局與投資研究報告
- 2025年長方燈電子支架項目市場調查研究報告
- 智能家居環境監測與控制系統設計及實施服務協議
- 物流行業合同爭議案例心得體會
- 幼兒園數學思維訓練計劃
- 委托購買債權合同協議7篇
- 簡裝修商鋪租賃合同書10篇
- 的獨家買賣合同(新標準版)5篇
- 舞蹈培訓合作標準合同7篇
- 《兒童文學》課件-圖畫書的概念
- 2025屆高三語文專題復習:文言文閱讀-實詞的五種類型
- 帕金森病的護理教學查房
- 智能手環項目財務分析報告
- 住宅不動產買賣合同標準范本
- 高血壓綜合管理
- 產量目標完成及超產獎勵方案
- 廣東省2019年中考化學試卷(含答案)
- 2024年國家低壓電工證理論考試題庫(含答案)
- 傳媒藝人合同模板
- 植物新生命的開始《向日葵的一生》觀察課件
評論
0/150
提交評論