2014-2015-1嵌入式系統(tǒng)實(shí)驗(yàn)指導(dǎo)書-唐永鋒_第1頁(yè)
2014-2015-1嵌入式系統(tǒng)實(shí)驗(yàn)指導(dǎo)書-唐永鋒_第2頁(yè)
2014-2015-1嵌入式系統(tǒng)實(shí)驗(yàn)指導(dǎo)書-唐永鋒_第3頁(yè)
2014-2015-1嵌入式系統(tǒng)實(shí)驗(yàn)指導(dǎo)書-唐永鋒_第4頁(yè)
2014-2015-1嵌入式系統(tǒng)實(shí)驗(yàn)指導(dǎo)書-唐永鋒_第5頁(yè)
已閱讀5頁(yè),還剩53頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、適用學(xué)院:電氣學(xué)院陰工學(xué)院編 者:唐永鋒2014 年 6 月 23 日實(shí)驗(yàn)一 開(kāi)發(fā)環(huán)境的搭建與調(diào)試,1實(shí)驗(yàn)二 S5PV210數(shù)碼管實(shí)驗(yàn),14實(shí)驗(yàn)三 S5PV210 GPIOLED控制實(shí)驗(yàn),20實(shí)驗(yàn)四 S5PV210串口實(shí)驗(yàn),25實(shí)驗(yàn)五S5PV210步進(jìn)電機(jī)控制實(shí)驗(yàn),33實(shí)驗(yàn)一開(kāi)發(fā)環(huán)境的搭建與調(diào)試1、實(shí)驗(yàn)?zāi)康模?1 ) 、熟悉Eclipse 開(kāi)發(fā)環(huán)境的搭建;( 2) 、熟悉Eclipse 的調(diào)試方法,2、實(shí)驗(yàn)內(nèi)容創(chuàng)建一個(gè)工程,新建一個(gè)Makefile 文件, 新建一個(gè)腳本文件,新建一個(gè)匯編源文件,編譯工程,并配置FS-JTAG調(diào)試工具,配置Eclipse 調(diào)試工具。3、實(shí)驗(yàn)設(shè)備( 1) 、硬件:

2、CVT-A8-III 教學(xué)平臺(tái),PC機(jī),A8 JTAG仿真器。( 2) 、軟件:PC 機(jī)操作系統(tǒng)(Windows XP ) + Eclipse 開(kāi)發(fā)環(huán)境。4、實(shí)驗(yàn)步驟4.1 Eclipse開(kāi)發(fā)環(huán)境的安裝Eclipse 是著名的開(kāi)放源代碼、跨平臺(tái)的自由集成開(kāi)發(fā)環(huán)境(IDE) 。它主要由Eclipse 項(xiàng)目、 Eclipse 工具項(xiàng)目和Eclipse 技術(shù)項(xiàng)目三個(gè)項(xiàng)目組成,具體包括四個(gè)部分組成 EclipsePlatform、 JDT、 CDT 和 PDE。 JDT 支持 Java開(kāi)發(fā)、 CDT 支持 C 開(kāi)發(fā)、 PDE 用來(lái)支持插件開(kāi)發(fā), Eclipse Platform 則是一個(gè)開(kāi)放的可擴(kuò)展I

3、DE,提供了一個(gè)通用的開(kāi)發(fā)平臺(tái)。最初主要用來(lái) Java語(yǔ)言開(kāi)發(fā),通過(guò)安裝不同的插件Eclipse 可以支持不同的計(jì)算機(jī)語(yǔ)言,比如C+等開(kāi)發(fā)工具。許多軟件開(kāi)發(fā)商以Eclipse 為框架開(kāi)發(fā)自己的IDE。 Eclipse 的目標(biāo)是成為可進(jìn)行任何語(yǔ)言開(kāi)發(fā)的IDE 集成者,使用者只需下載各種語(yǔ)言的插件即可。打開(kāi)光盤下的目錄,安裝文件包,安裝步驟如下:4.1.1 安裝 ARM-GCC 交叉編譯工具打開(kāi) yagarto-bu-2.21_gcc-4.6.2-c-c+_nl-1.19.0_gdb-7.3.1_eabi_20111119.exe 。這個(gè)工具為交叉編譯器。 這里的安裝目錄需要記住,因?yàn)樵诤竺娴木幾g

4、過(guò)程中,需要使用對(duì)應(yīng)的交叉編譯器。安裝過(guò)程如下:安裝完成后,對(duì)應(yīng)的編譯器存放目錄為:D:Program Filesyagartobin4.1.2 安裝 GNU make 工具打開(kāi) yagarto-tools-20100703-setup.exe ,安裝過(guò)程如下:4.1.3 安裝 FS-JTAG 工具打開(kāi) Setup.exe 。安裝過(guò)程如下:A8 實(shí)驗(yàn)箱 。安裝完成后,桌面有如下圖標(biāo)。這個(gè)工具主要是用來(lái)仿真器連接目標(biāo)1.1.4 安裝 JAVA開(kāi)發(fā)包打開(kāi) jre-6u7-windows-i586-p-s.exe 。如果電腦上已經(jīng)安裝過(guò)JAVA此類的工具,則不需要再次安裝。1.1.5 安裝 Ecli

5、pse解壓 05.eclipse-cpp-helios-SR1-win32.zip 壓縮包,解壓完成后,找到當(dāng)中的eclipse.exeANDROID 高版本的發(fā)送到桌面快捷方式,改名為eclipse_c(這里的改名主要為區(qū)別eclipse) 。圖標(biāo)如下:打開(kāi) eclipse_c, 設(shè)置過(guò)程如下:這里主要是設(shè)置工作區(qū)的主目錄,我們這里采用默認(rèn)。這里點(diǎn)擊最右邊的工作區(qū)按鈕,就進(jìn)入eclipse_c 主界面。如下所示:4.2 ARM 仿真器驅(qū)動(dòng)的安裝把 FS-JTAG 接入計(jì)算機(jī)USB口,會(huì)提示發(fā)現(xiàn)新硬件(如圖) ,選擇從列表或指定位置安裝,然后單擊下一步。單擊下一步會(huì)出現(xiàn)選擇驅(qū)動(dòng)安裝目錄,單擊瀏

6、覽找到DRIVER所在的目錄(如下圖)選擇好,單擊確定后,會(huì)提示沒(méi)有通過(guò)微軟認(rèn)證,選擇“仍然繼續(xù)”在安裝的過(guò)程中,會(huì)提示需要ftdibus.sys 文件,單擊瀏覽在DRIVER找到需要所需要應(yīng)驅(qū)動(dòng)安裝3 次 ,驅(qū)動(dòng)就算安裝完成。4.3 Eclipse的調(diào)試方法4.3.1 指定一個(gè)工程存放目錄Eclipse for ARM是一個(gè)標(biāo)準(zhǔn)的窗口應(yīng)用程序,可以點(diǎn)擊程序按鈕開(kāi)始運(yùn)行。打開(kāi)后必須先指定一個(gè)工程存放路徑:4.3.2 創(chuàng)建一個(gè)工程進(jìn)入主界面后,單擊File -New- C Project 菜單項(xiàng),Eclipse 將打開(kāi)一個(gè)標(biāo)準(zhǔn)對(duì)話框,輸入希望新建工程的名字(如gpioled_s) 單擊 Fini

7、sh 即可創(chuàng)建一個(gè)新的工程,建議對(duì)每個(gè)新建工程使用獨(dú)立的文件夾。4.3.3 新建一個(gè)MakeFile 文件在創(chuàng)建一個(gè)新的工程后,單擊 File -New- Other 在彈出的對(duì)話框中的General 下單擊file,然后單擊next 。然后選擇所要指定的工程后,在文件名選框中輸入文件名MakeFile單擊 Finish 。4.3.4 新建一個(gè)腳本文件單擊 File -New- Other 在彈出的對(duì)話框中的General 下單擊 file,然后單擊Next ,然后選擇所要指定的工程后,在文件名選框中輸入文件名s5pc210.init, 單擊Finish。4.3.5 新建一個(gè)匯編源文件單擊 F

8、ile -New- Other 在彈出的對(duì)話框中的General 下單擊 file ,然后單擊Next ,然后選擇所要指定的工程后,在文件名選框中輸入文件名led.s , 單擊 Finish。4.3.6 編譯工程1)在匯編源文件(led.s)當(dāng)中輸入?yún)R編代碼.equGPH3CON, 0XE0200C60.equ GPH3DAT, 0XE0200C64.section .text.globl _start_start:start:ldrr0,=GPH3CONldrr1,=0x11110000 set gpio gpg3 output modestrr1,r0loop:ldrr0,=GPH3DAT

9、movr1,#0xffstrr1,r0ldrr0,=GPH3DATmovr1,#0x0strr1,r0ldrr0,=GPH3DATmovr1,#0xffstrr1,r0ldrr0,=GPH3DATmovr1,#0xefstrr1,r0ldrr0,=GPH3DATmovr1,#0xdfstrr1,r0ldrr0,=GPH3DATmovr1,#0xbfstrr1,r0ldrr0,=GPH3DATmovr1,#0x7fstrr1,r0b loop.end2)編寫MakeFile 文件編譯規(guī)則在 MakeFile 輸入如下信息all:led.sarm-none-eabi-gcc-4.6.2 -O0 -

10、g -c -o led.o led.sarm-none-eabi-ld led.o -Ttext 0x20080000 -o led.elfarm-none-eabi-objcopy-O binary -S led.elf led.binarm-none-eabi-objdump-D led.elf led.dis3)在s5pc210.init 文件如輸入如下信息target remote 127.0.0.1:3333monitor haltmonitor arm mcr 15 0 1 0 0 0monitor step 04) 保存各文檔,選中工程led,點(diǎn)擊Clean Project,建立

11、工程如下:5)編譯Project - Bulit All4.4 Eclipse的調(diào)試工程過(guò)程4.4.1 配置 FS-JTAG 調(diào)試工具在 Target選項(xiàng)中選擇s5pc100 或者s5pc110,在 Workdir 選項(xiàng)中 選擇自己的工程目錄(D:eclipse_projectsgpioled_s ) ,單擊 Connect 后下面出現(xiàn)如下圖所示,即表示已經(jīng)連接目標(biāo)板。(此前需要連接好仿真 器,實(shí)驗(yàn)箱上電)此時(shí)表示仿真器已經(jīng)與目標(biāo)實(shí)驗(yàn)箱連接成功。4.4.2 配置調(diào)試工具在 Eclipse 的菜單中單擊Run Debug Configurations 彈出下圖對(duì)話框。單擊 Zyin Embedd

12、ed debug(Native) 選項(xiàng),然后右擊選擇“NEW ”出現(xiàn)一個(gè)窗口。在 Main 選項(xiàng)卡中Project 框中, 點(diǎn)擊 Browse 選擇 gpioled_s 工程, 在 C/C+ Application單擊 Browse 找到工程目錄下的led.elf 文件 。在 Debugger 選項(xiàng)卡中main 中 GDB Debugger 中單擊 Browse 選擇前面安裝的C:ProgramFilesyagartobinarm-none-eabi-gdb.exe (這里選擇自己的安裝目錄),在 GDB Command files5pc100.init 文件 。在 Command 選項(xiàng)卡中輸

13、入:loadbreak _startc點(diǎn)擊應(yīng)用后點(diǎn)擊 debug 開(kāi)始調(diào)試運(yùn)行,會(huì)出現(xiàn)調(diào)試界面。程序會(huì)在斷點(diǎn)處停下,然后使用單步和全速等工具進(jìn)行調(diào)試運(yùn)行程序,點(diǎn)擊全速運(yùn)行,會(huì)出現(xiàn) LED 亮。5、實(shí)驗(yàn)報(bào)告要求( 1 )熟悉Eclipse 開(kāi)發(fā)環(huán)境的搭建;( 2)熟悉Eclipse 的調(diào)試方法;實(shí)驗(yàn)二 S5PV210 數(shù)碼管實(shí)驗(yàn)1、 、 實(shí)驗(yàn)?zāi)康模?1 )熟悉Eclipse開(kāi)發(fā)環(huán)境;( 2)熟悉在ARM 裸機(jī)環(huán)境下的C語(yǔ)言編程;( 3)熟悉 CVT-S5PV210 下,數(shù)碼管的操作。2、 實(shí)驗(yàn)內(nèi)容( 1)編寫程序,練習(xí)C語(yǔ)言的使用。( 2)實(shí)現(xiàn)對(duì)開(kāi)發(fā)板上數(shù)碼管控制。( 3) 代碼分別在Eclip

14、se 的 Debug環(huán)境下運(yùn)行。3、 實(shí)驗(yàn)設(shè)備( 1 )硬件:CVT-S5PV210 嵌入式教學(xué)實(shí)驗(yàn)箱、PC 機(jī);( 2)軟件:PC 機(jī)操作系統(tǒng)(Windows XP) Eclipse 開(kāi)發(fā)環(huán)境。4、 基礎(chǔ)知識(shí)發(fā)光二極管數(shù)碼顯示器簡(jiǎn)稱LED 顯示器。LED 顯示器具有耗電省、成本低廉、配置簡(jiǎn)單靈活、安裝方便、耐振動(dòng)、壽命長(zhǎng)等優(yōu)點(diǎn),目前廣泛應(yīng)用于嵌入式系統(tǒng)中。7段 LED 由 7個(gè)發(fā)光二極管按“日 ”字形排列,所有發(fā)光二極管的陽(yáng)極連在一起稱共陽(yáng)極接法, 陰極連在一起稱為共陰極接法。一般共陰極可以不需外接電阻,但共陽(yáng)極接法中發(fā)光二極管必須外接電阻。LED 的結(jié)構(gòu)及連接圖見(jiàn)圖2-1 。圖 2-1 L

15、ED 結(jié)構(gòu)及連接圖當(dāng)選用共陰極的LED 顯示器時(shí),所有發(fā)光二極管的陰極連在一起接地,當(dāng)某個(gè)發(fā)光二極管的陽(yáng)極加入高電平時(shí),對(duì)應(yīng)的二極管點(diǎn)亮。因此要顯示某字形就應(yīng)使此字形的相應(yīng)段的二極管點(diǎn)亮,也就是送一個(gè)用不同電平組合代表的數(shù)據(jù)字來(lái)控制LED的顯示, 此數(shù)據(jù)稱為字符的段碼。字符0、 1 、 2, F 與LED碼段A、 B、 C, F 以及DP(小數(shù)點(diǎn))的關(guān)系如表3-8-2所示:表 2-1 LED 字符與碼段對(duì)應(yīng)表字符DPGFEDCBA段碼 (共陰 )段碼 (共陽(yáng) )0001111113FHC0H10000011006HF9H2010110115BHA4H3010011114FHB0H4011001

16、1066H99H5011011016DH92H6011111017DH82H70000011107HF8H8011111117FH80H9011011116FH90HA0111011177H88HB011111007CH83HC0011100139HC5HD010111105EHA1HE0111100179H86HF0111000171H8EH-0100000040HBFH.1000000080H7FH熄滅0000000000HFFH說(shuō)明:共陰的LED ,被選中時(shí)的段為高電平有效,熄滅的段碼為00H;共陽(yáng)的LED ,被選中時(shí)的段為低電平有效熄滅的段碼為FFH。LED 顯示器的接口一般有靜態(tài)顯示

17、與動(dòng)態(tài)顯示接口兩種方式,下面分別加以介紹。1) 靜態(tài)顯示LED 數(shù)碼管采用靜態(tài)接口時(shí),共陰極或共陽(yáng)極點(diǎn)連接在一起接地或接高電平。每個(gè)顯示位的段選線與一個(gè)8位并行口線對(duì)應(yīng)相連,只要在顯示位上的段選線上保持段碼電平不變,則該位就能保持相應(yīng)的顯示字符。這里的 8位并行口可以直接采用并行I/O口, 也可以采用串 入并出的移位寄存器或是其它具有三態(tài)功能的鎖存器等。2) 動(dòng)態(tài)顯示在多位 LED 顯示時(shí),為了簡(jiǎn)化電路,降低成本,將所有位的段選線并聯(lián)在一起,由一個(gè)8位 I/O口控制。而共陰(或共陽(yáng))極公共端分別由相應(yīng)的I/O線控制,實(shí)現(xiàn)各位的分時(shí)選通。由于各個(gè)數(shù)碼管是共用同一個(gè)段碼輸出口,分時(shí)輪流通電的,從而

18、大大簡(jiǎn)化了硬件線路,降低了成本。不過(guò)這種方式的數(shù)碼管接口電路中數(shù)碼管不宜太多,一般在8個(gè)以內(nèi),否則每個(gè)數(shù)碼管所分配的實(shí)際導(dǎo)通時(shí)間會(huì)太少,顯得亮度不足。若 LED 位數(shù)較多時(shí)應(yīng)采用增加驅(qū)動(dòng)能力以提高顯示亮度。本實(shí)驗(yàn)系統(tǒng)中采用的是動(dòng)態(tài)顯示接口,其中數(shù)碼管掃描控制地址為0x88007000, 位 0位5每位分別對(duì)應(yīng)一個(gè)數(shù)碼管,將其中某位清0來(lái)選擇相應(yīng)的數(shù)碼管,地址 0x88009000為數(shù)碼管數(shù)碼管采用共陽(yáng)方式,向該地址寫一個(gè)數(shù)據(jù)就可以控制LED 的顯示。實(shí)驗(yàn)電路原理圖如下:實(shí)驗(yàn)程序如下:#includes5pc210.h#includeuart.h#define U8 unsigned charu

19、nsignedchar seg7table16= /* 01234567*/0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8,/* 89 AB C D E F*/0x80, 0x90, 0x88, 0x83, 0xc6, 0xa1, 0x86, 0x8e,;/*/ Function name: delay/ Description: 延時(shí)子程序/ Return type: void/ Argument : count,延時(shí)的數(shù)值*/void delay ( int count )int cnt;for ( count = count; count0;

20、 count-) for ( cnt = 0; cnt 1000; cnt+);int main ()uart_init();printf( CVT S5PV210 Jtag Seg Test.n);int i;*(U8*) 0x88007000) = 0x00;for ( ; ; )/* 數(shù)碼管從0到 F依次將字符顯示出來(lái)*/for (i=0;i=0x0;i-)/* 查表并輸出數(shù)據(jù)*/*(U8*) 0x88009000) = seg7tablei;delay (1000);return 0;5、實(shí)驗(yàn)步驟1. 首先打開(kāi)Eclipse 軟件,指定工作目錄。2. 打開(kāi) Seg工程,點(diǎn)擊工具欄的“F

21、ile ”,然后點(diǎn)擊“Import然后點(diǎn)擊“Existing Project into Workspace ”。再次點(diǎn)擊“Browse”按鈕。進(jìn)入Finish ”按鈕。成功添加工程到Eclipse 中。3. 點(diǎn)擊工程右鍵,點(diǎn)擊“Bulid Project ”按鈕,對(duì)工程進(jìn)行編譯,生成 seg.elf 文件。編譯成功提示如上。4. 連接好仿真器。實(shí)驗(yàn)箱通電。打開(kāi)FS-JTAG調(diào)試工具, 連接成功。設(shè)置 Debug Configurations 。設(shè)置過(guò)程參看實(shí)驗(yàn)1 內(nèi)容。調(diào)試模式成功運(yùn)行后。查看結(jié)果。6、實(shí)驗(yàn)結(jié)果六個(gè) SEG 輪流閃爍,實(shí)現(xiàn)從0-F 輪流顯示。7、實(shí)驗(yàn)報(bào)告要求( 1 )結(jié)合戶外廣

22、告屏,根據(jù)實(shí)驗(yàn)總結(jié)LED的不同顯示方法;2)數(shù)碼管的靜態(tài)顯示和動(dòng)態(tài)顯示各有什么優(yōu)缺點(diǎn)。實(shí)驗(yàn)三 S5PV210 GPIOLED實(shí)驗(yàn)1 、實(shí)驗(yàn)?zāi)康模?1 )熟悉Eclipse開(kāi)發(fā)環(huán)境。( 2)熟悉在ARM 裸機(jī)環(huán)境下的C語(yǔ)言編程。( 3)熟悉 CVT-S5PV210 下, GpioLed 的操作。2、實(shí)驗(yàn)內(nèi)容( 1)編寫程序,練習(xí)C語(yǔ)言的使用。( 2)實(shí)現(xiàn)對(duì)開(kāi)發(fā)板上GpioLed 的控制。( 3) 代碼分別在Eclipse 的 Debug環(huán)境下運(yùn)行。3、實(shí)驗(yàn)設(shè)備( 1 )硬件:CVT-S5PV210 嵌入式教學(xué)實(shí)驗(yàn)箱、PC 機(jī);( 2)軟件:PC 機(jī)操作系統(tǒng)(Windows XP) Eclipse

23、 開(kāi)發(fā)環(huán)境。4、基礎(chǔ)知識(shí)從電路圖上我們可以看到,發(fā)光二極管LED 的一端連接到了ARM 的 GPIO GPH3,另一端經(jīng)過(guò)一個(gè)限流電阻接電源VDD33V 。當(dāng)GPIO口為低電平時(shí),LED兩端產(chǎn)生電壓降,這時(shí)LED 有電流通過(guò)并發(fā)光。反之當(dāng)GPIO為高電平時(shí),LED將熄滅。注意亮滅之間要有一定的延時(shí),以便人眼能夠區(qū)分出來(lái)。實(shí)驗(yàn)相應(yīng)寄存器端口配置寄存器端口數(shù)據(jù)寄存器實(shí)驗(yàn)電路實(shí)驗(yàn)程序如下:#includes5pc210.h#includeuart.h/*/ Function name: delay/ Description: 延時(shí)子程序/ Return type: void/ Argument : count,延時(shí)的數(shù)值void delay ( int count )int cnt;for ( count = count; count0; count-)for ( cnt = 0; cnt 1000; cnt+);int main ()uart_init(););printf(CVT S5PV210 Jtag GpioLed Test.nvolatile int i,j=0;GPH3. GPH3CON = 0x11110000;while (1)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論