版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、嵌入式微處理器結(jié)構(gòu)與應(yīng)用基于ARM7TDMI微處理器S3C44B0X實(shí)驗(yàn)指導(dǎo)書(選修班)撰稿人:韓桂明 張錕 2011年3月信息科技學(xué)院 電子工程系實(shí) 驗(yàn) 目 錄實(shí)驗(yàn)一實(shí)驗(yàn)開發(fā)環(huán)境的創(chuàng)建和使用1實(shí)驗(yàn)二 ARM匯編程序?qū)嶒?yàn)12實(shí)驗(yàn)三GPIO輸出控制實(shí)驗(yàn)15實(shí)驗(yàn)四GPIO輸入控制實(shí)驗(yàn)17實(shí)驗(yàn)五PWM信號(hào)實(shí)驗(yàn)19實(shí)驗(yàn)六定時(shí)中斷實(shí)驗(yàn)21實(shí)驗(yàn)七鍵盤及LED驅(qū)動(dòng)實(shí)驗(yàn)27實(shí)驗(yàn)一實(shí)驗(yàn)開發(fā)環(huán)境的創(chuàng)建和使用一、實(shí)驗(yàn)?zāi)康?1. 熟悉ADS1.2 開發(fā)環(huán)境,學(xué)習(xí)使用ADS 編譯、下載、調(diào)試并跟蹤程序。2.了解嵌入式開發(fā)的基本思想和過(guò)程。3. 了解UP-NETARM3000實(shí)驗(yàn)箱,學(xué)會(huì)ARM 仿真器的使用。4. 掌握W
2、indows超級(jí)終端的設(shè)置,能夠正確使用實(shí)驗(yàn)箱提供的BIOS功能。二、實(shí)驗(yàn)內(nèi)容1.運(yùn)行Windows系統(tǒng)下的超級(jí)終端,通過(guò)超級(jí)終端查看BIOS啟動(dòng)情況。2.配置ADS 集成開發(fā)環(huán)境,新建一個(gè)簡(jiǎn)單的工程文件,并編譯這個(gè)工程文件。3. 學(xué)習(xí)ARM 仿真器的使用和開發(fā)環(huán)境的設(shè)置。4.下載已經(jīng)編譯好的文件到嵌入式控制器中運(yùn)行,學(xué)會(huì)在程序中設(shè)置斷點(diǎn),觀察系統(tǒng)內(nèi)存和變量,為調(diào)試應(yīng)用程序打下基礎(chǔ)。三、實(shí)驗(yàn)設(shè)備及工具 1. 硬件:UP-NETARM3000實(shí)驗(yàn)箱、JTAG仿真器、PC機(jī)。 2. 軟件:PC 機(jī)操作系統(tǒng)WinXP、ADS1.2 集成開發(fā)環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。四、實(shí)驗(yàn)步驟1.超級(jí)
3、終端設(shè)置及BIOS功能使用1)運(yùn)行Windows 系統(tǒng)下的超級(jí)終端(HyperTerminal)應(yīng)用程序,新建一個(gè)通信終端。如果要求輸入?yún)^(qū)號(hào)、電話號(hào)碼等信息請(qǐng)隨意輸入。出現(xiàn)如圖1.1所示對(duì)話框時(shí),為所建超級(jí)終端取名,如“arm”;可以為其選一個(gè)圖標(biāo),然后單擊“確定”按鈕。圖1.1創(chuàng)建超級(jí)終端2)在接下來(lái)的對(duì)話框中選擇ARM 開發(fā)平臺(tái)實(shí)際連接的PC 機(jī)串口(如COM1),按確定后出現(xiàn)如圖1.2所示的屬性對(duì)話框,設(shè)置通信的格式和協(xié)議。這里波特率為115200,數(shù)據(jù)位8,無(wú)奇偶校驗(yàn),停止位1,無(wú)數(shù)據(jù)流控制。按確定完成設(shè)置。圖1.2設(shè)置串行口3)完成新建超級(jí)終端的設(shè)置以后,可以選擇超級(jí)終端文件菜單中的
4、保存,將當(dāng)前設(shè)置保存為一個(gè)特定超級(jí)終端到桌面上,以備后用。用串口線將PC 機(jī)串口和平臺(tái)UART0 正確連接后,就可以在超級(jí)終端上看到程序輸出的信息。4)啟動(dòng)開發(fā)板,按住開發(fā)板上鍵盤的任意按鍵,使開發(fā)板進(jìn)入BIOS設(shè)置狀態(tài)。如圖1.3所示。圖1.3系統(tǒng)的BIOS 設(shè)置程序5)該畫面上提示了該BIOS 的版本等信息。Shell Menu 是平臺(tái)的檢測(cè)菜單,每個(gè)條目的最左邊字母是該功能的快捷鍵,按PC 機(jī)鍵盤相應(yīng)鍵將執(zhí)行對(duì)應(yīng)功能。注意操作時(shí)保持超級(jí)終端處于激活狀態(tài),并且PC 機(jī)鍵盤必須為小寫。6)用戶可以按超級(jí)終端的提示嘗試部分測(cè)試功能,其中:l:測(cè)試LCD 的文本和圖形顯示。執(zhí)行該命令后LCD 上
5、會(huì)打出文本提示,然后進(jìn)入圖形模式并顯示一幅彩色條形圖案,然后在超級(jí)終端上看提示按任意鍵返回文本模式,并退出LCD測(cè)試返回測(cè)試菜單。o:格式化開發(fā)平臺(tái)的16M FLASH,其中的文件將丟失,需要重新拷貝。執(zhí)行該命令后超級(jí)終端上會(huì)出現(xiàn)確認(rèn)提示,如果按“y”鍵則會(huì)格式化Flash,之后返回菜單。n :設(shè)置開發(fā)平臺(tái)網(wǎng)卡的IP 地址,子網(wǎng)掩碼等,下有子菜單。執(zhí)行該命令后出現(xiàn)子菜單:p:設(shè)置MAC 地址,執(zhí)行該命令后按提示操作i:設(shè)置IP 地址,執(zhí)行該命令后按提示操作,請(qǐng)與所在局域網(wǎng)在同一網(wǎng)段m:設(shè)置子網(wǎng)掩碼,執(zhí)行該命令后按提示操作g:設(shè)置網(wǎng)關(guān)的IP 地址,執(zhí)行該命令后按提示操作s:保存所設(shè)地址,設(shè)置完I
6、P 地址等后必須執(zhí)行該命令保存設(shè)置,否則設(shè)置無(wú)效d:設(shè)置默認(rèn)地址q:退出子菜單,返回到主菜單。u:激活開發(fā)平臺(tái)的USB 連接,開發(fā)平臺(tái)的Flash 可以作為U 盤使用,從而可以方便的將字庫(kù)和應(yīng)用程序等文件從PC 機(jī)拷貝到平臺(tái)的FLASH 中。使用此功能時(shí),必須保證USB 電纜正確連接。e:測(cè)試由ZLG7289 驅(qū)動(dòng)的LED 顯示,共分3 步,請(qǐng)看超級(jí)終端提示按任意鍵繼續(xù),同時(shí)觀察LED 的變化,最后返回主菜單。k:測(cè)試由ZLG7289 控制的鍵盤掃描,執(zhí)行該命令后按開發(fā)平臺(tái)的鍵盤,看超級(jí)終端的鍵名顯示,而在超級(jí)終端上按PC 鍵盤任意鍵則退出測(cè)試返回菜單。s:測(cè)試開發(fā)平臺(tái)觸摸屏,觸摸屏有動(dòng)作時(shí)在
7、超級(jí)終端上會(huì)顯示動(dòng)作類型和坐標(biāo)。按PC鍵盤任意鍵后,再點(diǎn)一下觸摸屏即可退出測(cè)試并返回主菜單。h:設(shè)置觸摸屏的坐標(biāo)基準(zhǔn)點(diǎn),也就是校屏功能。需要按提示點(diǎn)擊觸摸屏的3 個(gè)位置并保存結(jié)果。a:測(cè)試開發(fā)平臺(tái)的AD 電路,執(zhí)行該命令后調(diào)節(jié)平臺(tái)的4個(gè)電位器,在超級(jí)終端上顯示AD0AD3 的數(shù)值。按PC 鍵盤任意鍵退出測(cè)試并返回。d:測(cè)試開發(fā)平臺(tái)的DA 電路,在超級(jí)終端顯示電壓值,需要用電壓表測(cè)量平臺(tái)DA 輸出端子。按PC 鍵盤任意鍵退出測(cè)試并返回。t:設(shè)置開發(fā)平臺(tái)的RTC 時(shí)間參數(shù),該時(shí)間由開發(fā)平臺(tái)上的鈕扣電池保證持續(xù)計(jì)時(shí)。請(qǐng)按提示確認(rèn)修改時(shí)間并分別輸入時(shí)間。設(shè)置完成合需要保存,否則設(shè)置參數(shù)無(wú)效。i:測(cè)試平
8、臺(tái)的音頻電路,執(zhí)行該命令后可以聽到一段從平臺(tái)揚(yáng)聲器發(fā)出的音樂。請(qǐng)適當(dāng)調(diào)節(jié)音量電位器。m:測(cè)試平臺(tái)的兩個(gè)電機(jī),需要打開電機(jī)附近的電機(jī)電源開關(guān),按提示分別測(cè)試直流電機(jī)和步進(jìn)電機(jī)。c:測(cè)試平臺(tái)的CAN 控制器。執(zhí)行該命令在超級(jí)終端顯示CAN 控制器ID,正常應(yīng)該顯示1234 或0000。b:引導(dǎo)FLASH 中的應(yīng)用程序system.bin。執(zhí)行該功能將退出BIOS 狀態(tài),把控制交給應(yīng)用程序。7)按PC 鍵盤的u 鍵(要使超級(jí)終端處于活動(dòng)狀態(tài)),這時(shí)超級(jí)終端上會(huì)顯示如圖1.4所示的信息。圖1.4 進(jìn)入U(xiǎn) 盤狀態(tài)這時(shí),在“我的電腦”中可以發(fā)現(xiàn)多了一個(gè)“可移動(dòng)磁盤”,這就是開發(fā)板的海量存儲(chǔ)器16M非線性F
9、lash。開發(fā)平臺(tái)的Flash 芯片就像一個(gè)U 盤,可以通過(guò)“我的電腦”進(jìn)行操作??梢园丫幾g后生成的system.bin 文件通過(guò)USB 下載到嵌入式開發(fā)板中,復(fù)位系統(tǒng),運(yùn)行并檢查輸出結(jié)果。< 提示 >system.bin 文件是系統(tǒng)通過(guò)BIOS 引導(dǎo)以后,裝入內(nèi)存中運(yùn)行的默認(rèn)文件名。2. 配置ADS 集成開發(fā)環(huán)境1)運(yùn)行ADS1.2 集成開發(fā)環(huán)境(CodeWarrior for ARM Developer Suite)。選擇“FileNew”菜單,在對(duì)話框中選擇Project,如圖1.5所示,新建一個(gè)工程文件。圖中示例的工程名為Exp6.mcp。圖1.5新建工程點(diǎn)“set”按鈕可
10、為該工程選擇路徑如圖1.6所示,選中CreatFolder 選項(xiàng)后將以圖1.5中的ProjectName為名創(chuàng)建目錄,這樣可以將所有與該工程相關(guān)的文件放到該工程目錄下,便于管理工程。圖1.6保存工程在圖1.5中工程模板列表中我們選擇ARM Executable Image 通用模板。我們隨后將一步一步的把它配置成針對(duì)我們ARM3000 開發(fā)板的模板44B0 ARM Executable Imaage,并把它拷貝到ADS1.2 安裝目錄下的Stationery 目錄中(所有的工程模板都在此目錄下)。以后我們新建工程時(shí),在工程模板列表中直接選中44B0 ARM Executable Imaage
11、模板選項(xiàng),就不必每次重新配置模板了。2)在新建的工程中,如圖1.7所示,選擇Debug 版本,使用Edit | Debug Settings菜單對(duì)Debug 版本進(jìn)行參數(shù)設(shè)置。圖 1.7選擇版本在Debug Settings 對(duì)話框中選擇Target Settings 項(xiàng),如圖1.8所示。在Post-linker一欄中選擇ARM fromELF,點(diǎn)擊右下角的Apply 使其有效。圖 1.8 Target Settings在Debug Settings 對(duì)話框中選擇ARM Linker 項(xiàng),如圖1.9。在Output 下的Linktype中有三種類型的連接方式,我們常用的是Simple 和Sca
12、ttered 兩種。如果程序需要用到標(biāo)準(zhǔn)C 庫(kù)函數(shù)的話需要按Scattered 進(jìn)行連接地址的設(shè)置。如果用不到標(biāo)準(zhǔn)C 庫(kù)函數(shù)的話,請(qǐng)選擇Simple 選項(xiàng)。下面以Simple方式設(shè)置為例:在ARM Linker 項(xiàng)的Output 選項(xiàng)卡中,我們選擇Simple 選項(xiàng),如圖1.9所示。在Simple image 框中設(shè)置連接的Read-Only(只讀)和Read-Write(讀寫)地址。地址0x0c080000是開發(fā)板上SDRAM的真實(shí)地址,是由系統(tǒng)的硬件決定的;0x0c200000 指的是系統(tǒng)可讀寫的內(nèi)存地址。也就是說(shuō)0x0c0800000xC1fffff 之間是只讀區(qū)域,存放程序的代碼段,在
13、0xC200000開始是程序的數(shù)據(jù)段。圖1.9設(shè)置連接地址范圍點(diǎn)擊Layout選項(xiàng)卡,在Layout 選項(xiàng)卡的Place at beginning of image 框中設(shè)置程序的入口模塊。如圖1.10所示,指定在生成的代碼中,程序從44binit.s 開始運(yùn)行的。Object設(shè)為44binit.o,section 設(shè)為init。圖 1.10設(shè)置入口模塊3)在Debug Settings 對(duì)話框中選擇ARM fromELF 項(xiàng),如圖1.11。在Output file name框中設(shè)置輸出文件名為system.bin,這就是要下載到開發(fā)板的嵌入式應(yīng)用程序文件。圖1.11 設(shè)置輸出文件名4)回到如
14、圖1.7所示的工程窗口中,選擇Release 版本,使用Edit | ReleaseSettings 菜單對(duì)Release 版本進(jìn)行參數(shù)設(shè)置。參照前文設(shè)置Release版本的Post-linker、連接地址范圍、入口模塊和輸出文件。5)回到工程窗口中,選擇Targets選項(xiàng)卡,如圖1.12所示。選中DebugRel 版本,按Del 鍵將其刪除。圖1.12 刪除DebugRel 版本6)設(shè)置完成后,可以將該新建的空工程文件作為模板保存以便以后使用。在ADS1.2 軟件安裝目錄下的Stationery 目錄下新建名為ARM 44B0X Simple Image的模板目錄,再將剛設(shè)置完的mcp工程模
15、板文件存放到該目錄下。這樣以后新建工程的時(shí)候,就能看到圖1.13所示以“ARM 44B0X Simple Image”為名字的模板了。圖1.13顯示44B0 ARM 模板<提示>建議同學(xué)們將老師提供的“ARM 44B0X Scattered Image”子目錄直接拷貝到ADS1.2 安裝目錄下的Stationery目錄中,這樣也能在新建工程對(duì)話框中看到這個(gè)模板。此模板為Scattered 版本,其中已經(jīng)設(shè)置好針對(duì)本開發(fā)板的參數(shù)。3. 建立工程文件配置好針對(duì)UP-ARM3000的開發(fā)環(huán)境后,可以執(zhí)行菜單Project | Add Files把和工程相關(guān)的所有文件加入到工程中。ADS1
16、.2 不能自動(dòng)按文件類別對(duì)這些文件進(jìn)行分類,需要的話用戶可以執(zhí)行菜單Project | Create Group 創(chuàng)建文件組,然后分別將不同類的文件加入到不同的組,以方便管理。如圖1.14所示。更為簡(jiǎn)單的辦法是,在新建工程時(shí)ADS創(chuàng)建了和工程同名的目錄,在該目錄下按類別創(chuàng)建子目錄并存放工程文件。然后用鼠標(biāo)選中工程子目錄,將其拖動(dòng)到工程文件窗口,松開鼠標(biāo)。這樣ADS 將以子目錄名建立同名文件組并以此對(duì)文件分類。這里我們把init 和STARTUP 兩個(gè)目錄拷貝到新建的工程目錄下,然后選中這兩個(gè)目錄,拖動(dòng)到工程文件窗口,松開鼠標(biāo)。這樣ADS 將以init 和STARTUP 目錄名建立同名文件組并以
17、此對(duì)文件分類。圖 1.14加入工程文件雙擊圖1.14中的Main.c 打開該文件,可以看到Main()函數(shù)的內(nèi)容:int main(void)ARMTargetInit(); /開發(fā)版初始化LCD_Init();LCD_ChangeMode(DspTxtMode); /轉(zhuǎn)換LCD 顯示模式為文本顯示模式LCD_Cls(); /文本模式下清屏命令LCD_printf("Hello world!n"); /向液晶屏輸出Uart_Printf("nHello world!n"); /向串口輸出while(1);讀者可以查看其他源文件的內(nèi)容以對(duì)系統(tǒng)運(yùn)行有所了解。
18、可以發(fā)現(xiàn)ADS 的文本編輯器可以按語(yǔ)法分顏色顯示,讀者可以根據(jù)喜好在Edit 菜單下的Preferences 窗口中進(jìn)行設(shè)置。4.進(jìn)行程序的在線仿真、調(diào)試1) 回到工程窗口選中Debug 版本,執(zhí)行菜單Project | Make 對(duì)工程進(jìn)行編譯連接。在出現(xiàn)的錯(cuò)誤/警告窗口中選擇某錯(cuò)誤/警告信息,ADS 會(huì)自動(dòng)打開相應(yīng)源文件并用箭頭指向出錯(cuò)的文本行。如果某個(gè)源文件被修改,重新編譯時(shí)ADS 會(huì)自動(dòng)同步各文件的日期信息。2) 在ADS 中執(zhí)行菜單Project | Debug 啟動(dòng)ADS1.2 的調(diào)試工具AXD。3) 在AXD 中執(zhí)行菜單Options | Configure Target 對(duì)AX
19、D 進(jìn)行設(shè)置。如圖1.15所示。選擇ADP 即遠(yuǎn)程調(diào)試,點(diǎn)Configure 按鈕進(jìn)一步設(shè)置具體參數(shù),如圖1.16所示。圖1.15 設(shè)置AXD 參數(shù)4)在圖1.16中點(diǎn)Select 按鈕選擇遠(yuǎn)程連接為ARM ethernet driver,點(diǎn)Configure按鈕輸入仿真器的IP 地址。如果用戶使用的是并行口仿真器,請(qǐng)輸入127.0.0.1 即可。圖1.16 設(shè)置遠(yuǎn)程連接5)等待程序裝載完畢以后,通過(guò)Execute | Go 菜單以及Execute | Stop(或者工具欄中的相應(yīng)按鈕)運(yùn)行或暫停程序。程序暫停后在窗口中將顯示出程序暫停的位置。6)通過(guò)Execute | Step 菜單(或者工
20、具欄中的相應(yīng)按鈕)可以單步運(yùn)行程序。也可以使用Step In、Step Out 菜單命令進(jìn)入或者跳出函數(shù)的調(diào)用。Run To Cursor 命令運(yùn)行到光標(biāo)位置。7)程序停止后可以通過(guò)Processor Views | Sources 菜單查看源文件,并可在適當(dāng)位置按F9 設(shè)置端點(diǎn)。8)使用在Processor View 菜單下的Registers、Variables 和Memory 命令可以查看工作寄存器或者內(nèi)存變量。讀者可以逐一地嘗試,為以后調(diào)試程序打下基礎(chǔ)。< 提示 >在進(jìn)行調(diào)試時(shí)在ADS 中必須選擇當(dāng)前工程的Debug 版本,如果選擇Release 版本則無(wú)法正常調(diào)試程序。實(shí)
21、驗(yàn)二 ARM匯編程序?qū)嶒?yàn)一、實(shí)驗(yàn)?zāi)康?. 掌握ARM匯編指令的含義和使用方法。2. 了解ARM指令靈活的第二操作數(shù)。3. 學(xué)習(xí)簡(jiǎn)單匯編程序的編寫。二、實(shí)驗(yàn)內(nèi)容1. 使用ARM的數(shù)據(jù)傳送指令,能夠訪問(wèn)寄存器和存儲(chǔ)器。2. 使用相關(guān)指令完成數(shù)據(jù)加/減運(yùn)算及邏輯運(yùn)算。三、實(shí)驗(yàn)設(shè)備及工具 1. 硬件:UP-NETARM3000實(shí)驗(yàn)箱、JTAG仿真器、PC機(jī)。2. 軟件:PC 機(jī)操作系統(tǒng)WinXP、ADS1.2 集成開發(fā)環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。四、實(shí)驗(yàn)原理實(shí)驗(yàn)參考程序:五、實(shí)驗(yàn)步驟1. 啟動(dòng)ADS1.2,建立一個(gè)工程文件。然后建立匯編源文件,添加到工程中,編寫實(shí)驗(yàn)程序。2. 編寫好實(shí)驗(yàn)程
22、序后,編譯連接工程,選擇Project>Debug,啟動(dòng)AXD進(jìn)行軟件仿真調(diào)試?;蛘唿c(diǎn)擊Debug圖標(biāo)。3. 調(diào)試并觀察程序執(zhí)行過(guò)程1)AXD調(diào)試模式,選擇Options->Configure Target,如圖:2)選擇軟件仿真,點(diǎn)擊ARMUL,并點(diǎn)擊OK。3)點(diǎn)擊Load Image,裝載我們的 .axf文件4)打開寄存器窗口(Processor Registers),選擇Current項(xiàng)監(jiān)視各寄存器的值。說(shuō)明:使用鼠標(biāo)左鍵選擇一個(gè)寄存器,然后右擊,在Format項(xiàng)中選擇顯示格式Hex、Decimal等,如圖所示。單步運(yùn)行程序,觀察寄存器值的變化。說(shuō)明:有變化的寄存器會(huì)以紅色顯
23、示,如圖。4. 編寫、調(diào)試、觀察以下程序通過(guò)課本P61頁(yè)【例3.5】【例3.6】,掌握無(wú)符號(hào)數(shù)和有符號(hào)數(shù)的相關(guān)運(yùn)算。六、思考題1. 指令“MOV R0,#0x12345678”是否正確?為什么?2. 將參考程序中應(yīng)用CMP指令的代碼,功能改為“若(5*Y/2)>(2*X),則R5=R5|0x000000FF,否則R5=R5&0XFFFF0000”,程序應(yīng)如何修改?3. 更改參考程序X的值為200,Y的值為163,單步運(yùn)行程序,每執(zhí)行一步程序的結(jié)果是多少?實(shí)驗(yàn)三GPIO輸出控制實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?. 熟悉S3C44B0 ARM芯片的GPIO輸入輸出配置方法。2. 通過(guò)實(shí)驗(yàn)掌握ARM芯
24、片I/O控制LED顯示的方法。3. 進(jìn)一步熟悉ARM匯編語(yǔ)言程序設(shè)計(jì)步驟。二、實(shí)驗(yàn)內(nèi)容1. 熟悉ARM芯片I/O口的編程配置方法。 2.熟悉S3C44B0芯片I/O口配置寄存器。3. 通過(guò)編程實(shí)現(xiàn)GPIO的E口輸入,A口輸出來(lái)控制實(shí)驗(yàn)平臺(tái)上的LED。三、實(shí)驗(yàn)設(shè)備及工具 1. 硬件:UP-NETARM3000實(shí)驗(yàn)箱、JTAG 仿真器、PC 機(jī)。2. 軟件:PC 機(jī)操作系統(tǒng)WinXP、ADS1.2 集成開發(fā)環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。四、實(shí)驗(yàn)原理S3C44B0芯片上共有71個(gè)多功能I/O引腳,它們分為7組I/O端口:l 2個(gè)9位I/O端口(端口E和F)。l 2個(gè)8位I/O端口(端口D和
25、G)。l 1個(gè)16位I/O端口(端口C)。l 1個(gè)10位I/O端口(端口A)。l 1個(gè)11位I/O端口(端口B)。每組端口都可以通過(guò)軟件配置寄存器來(lái)滿足不同系統(tǒng)和設(shè)計(jì)的需要。1)流程示意圖開始結(jié)束E端口輸出初始化E端口數(shù)據(jù)寄存器賦值延時(shí)2) 部分參考程序3) 電路原理圖 S3C44B0芯片GPE6GPE7VCC3.3五、實(shí)驗(yàn)步驟1. 啟動(dòng)ADS1.2,建立一個(gè)工程文件。然后建立匯編源文件,添加到工程中,編寫實(shí)驗(yàn)程序。2. 編寫程序,實(shí)現(xiàn)用E口輸出控制LED燈亮、滅的匯編程序。3. 單步運(yùn)行程序,查看工作寄存器;并觀察LED燈的亮、滅情況。六、思考題1. 用C語(yǔ)言如何實(shí)現(xiàn)上述程序的編寫。實(shí)驗(yàn)四G
26、PIO輸入控制實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?. 熟悉S3C44B0 ARM芯片的GPIO輸入輸出配置方法。2. 通過(guò)實(shí)驗(yàn)掌握ARM芯片I/O控制LED顯示的方法。3. 進(jìn)一步熟悉ARM匯編語(yǔ)言程序設(shè)計(jì)步驟。二、實(shí)驗(yàn)內(nèi)容1. 熟悉ARM芯片I/O口的編程配置方法。 2.熟悉S3C44B0芯片I/O口配置寄存器。3. 通過(guò)編程實(shí)現(xiàn)GPIO的E口輸入,A口輸出來(lái)控制實(shí)驗(yàn)平臺(tái)上的LED。三、實(shí)驗(yàn)設(shè)備及工具 1. 硬件:UP-NETARM3000實(shí)驗(yàn)箱、JTAG 仿真器、PC 機(jī)。2. 軟件:PC 機(jī)操作系統(tǒng)WinXP、ADS1.2 集成開發(fā)環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。四、實(shí)驗(yàn)原理S3C44B0芯片上共
27、有71個(gè)多功能I/O引腳,它們分為7組I/O端口:l 2個(gè)9位I/O端口(端口E和F)。l 2個(gè)8位I/O端口(端口D和G)。l 1個(gè)16位I/O端口(端口C)。l 1個(gè)10位I/O端口(端口A)。l 1個(gè)11位I/O端口(端口B)。每組端口都可以通過(guò)軟件配置寄存器來(lái)滿足不同系統(tǒng)和設(shè)計(jì)的需要。1)流程圖開始結(jié)束E端口輸入初始化A端口輸出初始化A口作相應(yīng)的輸出值判斷E口輸入情況2) 部分參考程序3) 電路原理圖 S3C44B0芯片GPA2GPA3VCC3.3GPE7輸入五、實(shí)驗(yàn)步驟1. 啟動(dòng)ADS1.2,建立一個(gè)工程文件。然后建立匯編源文件,添加到工程中,編寫實(shí)驗(yàn)程序。2. 編寫實(shí)現(xiàn)E口輸入的匯
28、編程序,使用JTAG進(jìn)行仿真調(diào)試。3. 編寫程序,實(shí)現(xiàn)用A口輸出控制LED燈亮、滅的匯編程序。4. 編寫程序,通過(guò)E口輸入來(lái)控制A口的LED燈亮、滅,A口、E口的配置采用調(diào)用子程序的方式。5. 單步運(yùn)行程序,查看工作寄存器;并觀察LED燈的亮、滅情況。六、思考題1. 用C語(yǔ)言如何實(shí)現(xiàn)上述程序的編寫。實(shí)驗(yàn)五PWM信號(hào)實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?. 了解PWM信號(hào)的特點(diǎn)。2. 掌握S3C44B0X產(chǎn)生PWM信號(hào)的方法。3. 練習(xí)如何優(yōu)化代碼。二、實(shí)驗(yàn)內(nèi)容1. 定時(shí)器工作方式設(shè)置。2. 配置GPIO為PWM信號(hào)輸出引腳。三、實(shí)驗(yàn)設(shè)備及工具 1. 硬件:UP-NETARM3000實(shí)驗(yàn)箱、JTAG 仿真器、PC
29、機(jī)。2. 軟件:PC 機(jī)操作系統(tǒng)WinXP、ADS1.2 集成開發(fā)環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。四、實(shí)驗(yàn)原理1. 實(shí)驗(yàn)電路示意圖如下:Led1R1 S3C44B0芯片PWM信號(hào)輸出2.實(shí)驗(yàn)主程序框圖如下:主程序開始PWM信號(hào)端口輸出初始化設(shè)置定時(shí)器分頻、預(yù)置值初始化定時(shí)器啟動(dòng)定時(shí)器停機(jī)等待3.實(shí)驗(yàn)參考程序:PCONEEQU0X01D20028PDATEEQU0X01D2002CPUPEEQU0X01D20030TCFG0EQU 0X01D50000TCFG1EQU 0X01D50004TCONEQU 0X01D50008TCNTB3EQU 0X01D50030TCMPB3EQU 0X
30、01D50034TCNTO3EQU 0X01D50014CMD1EQU 0X00A0000CMD2EQU 0X0090000AREAtime,CODE,READONLYENTRY ;程序入口CODE32 ;指定為32位的ARM程序代碼STARTLDRR1,=PCONE LDR R0,=0X02000STRR0,R1LDRR1,=PUPE ;不配置E口的上拉電阻LDRR0,=0X1FFSTR R0,R1LDR R1,=TCFG0LDR R2,=0X0000FF00STR R2,R1LDR R1,=TCFG1LDR R2,=0X02000STR R2,R1LDR R1,=TCNTB3LDR R2,
31、=0XFFFFFFFFSTR R2,R1LDR R1,=TCMPB3LDR R2,=0X88888888STR R2,R1LDR R1,=TCONLDR R2,=CMD1STR R2,R1LDR R1,=TCONLDR R2,=CMD2STR R2,R1WAITB WAITEND五、實(shí)驗(yàn)步驟1. 啟動(dòng)ADS1.2,建立一個(gè)工程文件。然后建立匯編源文件,添加到工程中,編寫實(shí)驗(yàn)程序。2. 編寫程序?qū)崿F(xiàn)PWM輸出控制LED燈亮度,使用JTAG進(jìn)行仿真調(diào)試。3.單步運(yùn)行程序,查看工作寄存器;并觀察LED燈的情況。4. 修改、完善源程序,實(shí)現(xiàn)程序的模塊化。六、思考題1. 在進(jìn)行匯編模塊化編程的時(shí)候如何建
32、立堆棧,實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)的保護(hù)。2. 用C語(yǔ)言如何實(shí)現(xiàn)上述程序的編寫。實(shí)驗(yàn)六定時(shí)中斷實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?. 了解S3C44B0X處理器的定時(shí)器應(yīng)用方法。2. 掌握S3C44B0X處理器上中斷的程序編寫。3. 進(jìn)一步熟悉平臺(tái)硬件及其驅(qū)動(dòng)程序的編寫。二、實(shí)驗(yàn)內(nèi)容1.設(shè)置并啟動(dòng)定時(shí)器。2.設(shè)置中斷,編寫定時(shí)器中斷服務(wù)程序,對(duì)中斷次數(shù)進(jìn)行計(jì)數(shù)并用LED 顯示結(jié)果。三、實(shí)驗(yàn)設(shè)備及工具 1. 硬件:UP-NETARM3000實(shí)驗(yàn)箱、JTAG 仿真器、PC 機(jī)。2. 軟件:PC 機(jī)操作系統(tǒng)WinXP、ADS1.2 集成開發(fā)環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。四、實(shí)驗(yàn)原理1. 定時(shí)器原理S3C44B0X 具有6個(gè)
33、16bit 定時(shí)器,每個(gè)定時(shí)器可以基于中斷模式或DMA 模式運(yùn)行。定時(shí)器0、1、2、3 具有PWM 功能,定時(shí)器0 還具有死區(qū)發(fā)生器可用于大電流設(shè)備。定時(shí)器0 和1,2 和3,4 和5 分別共享3個(gè)8bit 預(yù)比例因子寄存器。每個(gè)定時(shí)器都各有一個(gè)4 或5 級(jí)的分頻器,用TCFG0 和TCFG1 可以設(shè)置這些比例因子或分頻系數(shù)。計(jì)數(shù)值緩存寄存器TCNTBn 的值在定時(shí)器啟動(dòng)后裝載到減法計(jì)數(shù)器中。比較緩存寄存器TCMPBn 的值將裝載到比較寄存器中以和計(jì)數(shù)器中的值進(jìn)行比較。TCNTBn 和TCMPBn 的這種雙緩存技術(shù)使得當(dāng)頻率和占空比改變時(shí)定時(shí)器能有一個(gè)穩(wěn)定的輸出。即使設(shè)置了一個(gè)新的計(jì)數(shù)值,當(dāng)前
34、定時(shí)器操作繼續(xù)完成。當(dāng)減法計(jì)數(shù)器到達(dá)0 時(shí)將產(chǎn)生定時(shí)器中斷請(qǐng)求,通知CPU 定時(shí)器操作已經(jīng)完成。此時(shí),如果自動(dòng)重裝控制位使能,TCNTBn 的值會(huì)自動(dòng)裝載到計(jì)數(shù)器并開始下一操作周期。當(dāng)通過(guò)清除定時(shí)器使能位等方法使定時(shí)器停止后,計(jì)數(shù)值將不會(huì)自動(dòng)重裝。TCMPBn 的值用于PWM 或產(chǎn)生波形。當(dāng)減法計(jì)數(shù)器的值和比較寄存器的值匹配時(shí),定時(shí)器控制邏輯將改變輸出電平。這樣可以控制定時(shí)器輸出的波形占空比。下圖是定時(shí)器2 和3 的結(jié)構(gòu)圖,其中沒有死區(qū)發(fā)生器。啟動(dòng)定時(shí)器的步驟如下:1)將初始值寫入TCNTBn 和TCMPBn。2)將該定時(shí)器的人工刷新位(manual update bit)置1,建議同時(shí)配置反
35、轉(zhuǎn)開關(guān)位(inverter on/off bit)。3)將該定時(shí)器的啟動(dòng)位置1,啟動(dòng)定時(shí)器,同時(shí)清除人工刷新位。定時(shí)器時(shí)鐘頻率和比例因子、分頻系數(shù)以及系統(tǒng)主頻的關(guān)系如下:Timer input clock Frequency = MCLK / prescaler value + 1 / divider valueprescaler value = 0-255divider value = 2, 4, 8, 16, 322. 中斷控制器S3C44B0X的中斷控制器接受來(lái)自于30 個(gè)中斷源的請(qǐng)求。這些中斷源包括DMA 控制器,UART和SIO 等等。其中外部中斷EINT4/5/6/7是相或的。中斷
36、控制器的任務(wù)是經(jīng)過(guò)仲裁過(guò)程(當(dāng)有多個(gè)中斷源同時(shí)發(fā)出中斷請(qǐng)求時(shí))將FIQ或IRQ 中斷請(qǐng)求遞交給ARM7TDMI 核。S3C44B0X支持基于軟件優(yōu)先級(jí)算法的仲裁過(guò)程,也支持向量中斷模式。前者在有多個(gè)中斷請(qǐng)求產(chǎn)生時(shí),將讀取中斷掛起寄存器來(lái)決定中斷服務(wù)的優(yōu)先級(jí)。S3C44B0X的中斷控制器硬件直接提供了中斷服務(wù)向量表,當(dāng)有多個(gè)中斷請(qǐng)求時(shí)硬件優(yōu)先級(jí)邏輯決定響應(yīng)哪個(gè)中斷。向量中斷模式較之軟件方法減少了中斷響應(yīng)時(shí)間。要使能IRQ或FIQ中斷響應(yīng)必須清除程序狀態(tài)字PSR 中的I-bit 或F-bit 并且必須清除INTMSK中的相關(guān)位。如果PSR 中的I-bit 或F-bit 置1,CPU將不接受中斷控制
37、器的IRQ或FIQ。ARM7TDMI 具有兩種中斷類型:IRQ中斷請(qǐng)求,F(xiàn)IQ快速中斷請(qǐng)求。所有的中斷源都可以決定在中斷請(qǐng)求時(shí)采用那種中斷模式。中斷掛起寄存器表明是否有中斷請(qǐng)求被掛起。當(dāng)某掛起位被置1,如果中斷使能則啟動(dòng)中斷服務(wù)例程。它是只讀寄存器,必須通過(guò)對(duì)I_ISPC或F_ISPC置1來(lái)清除。當(dāng)中斷掩碼寄存器的某位置1后表明對(duì)應(yīng)中斷被關(guān)閉。如果某掩碼位被置1而相應(yīng)中斷請(qǐng)求產(chǎn)生后,對(duì)應(yīng)掛起位將被置1,但該中斷不被響應(yīng)。中斷設(shè)置相關(guān)的寄存器如下:1)INTCON:使能IRQ向量模式、使能IRQ和FIQ到CPU 的中斷請(qǐng)求線。其設(shè)置和位描述如表6-1所示。表6-1 INTCON 寄存器的位描述2
38、)INTPND:其設(shè)置如表6-2所示。表6-2 INTPND 寄存器的設(shè)置3)INTMOD:設(shè)置中斷的類型,在本系統(tǒng)中全部選為IRQ,其設(shè)置如表6-3所示。表6-3 INTMOD 寄存器的設(shè)置4)INTMSK:每個(gè)中斷源在各寄存器內(nèi)的偏移位址都是一樣的。其設(shè)置及位描述如表6-4,表6-5所示。表6-4 INTMSK 寄存器的設(shè)置表6-5 INTMSK 寄存器的位描述5)I_ISPR:0 =不服務(wù) 1 =現(xiàn)在服務(wù),其設(shè)置如表6-6所示。表6-6 I_ISPR 寄存器的設(shè)置6)I_ISPC/F_ISPC:清除中斷掛起位,在中斷服務(wù)程序結(jié)束前必須清除對(duì)應(yīng)的中斷掛起位。其設(shè)置如表6-7所示。表6-7
39、I_ISPC/F_ISPC 寄存器的設(shè)置3、IRQ 非向量中斷模式的中斷響應(yīng)過(guò)程在本實(shí)驗(yàn)中所有的中斷均被分配為IRQ類型,采用軟件優(yōu)先級(jí)算法。當(dāng)有中斷請(qǐng)求并且PSR、INTCON、INTMSK 等寄存器允許中斷響應(yīng)時(shí),CPU會(huì)執(zhí)行位于地址0x00000018 的指令。在44BINIT.S 文件中可以看到該處的指令是b HandlerIRQ。執(zhí)行該指令程序跳轉(zhuǎn)到:HandlerIRQ HANDLER HandleIRQ其中HANDLER是一個(gè)宏,定義如下:MACRO$HandlerLabel HANDLER $HandleLabel$HandlerLabelsub sp,sp,#4stmfd s
40、p!,r0ldr r0,=$HandleLabelldr r0,r0str r0,sp,#4ldmfd sp!,r0,pcMEND該宏的意思是程序跳轉(zhuǎn)到$HandlerLabel 之后再跳轉(zhuǎn)到$HandleLabel。這意味著程序又跳轉(zhuǎn)到了HandleIRQ 處,也就從0Bank 的ROM 空間跳到6Bank 的SDRAM 空間了,因?yàn)镠andleIRQ實(shí)際上是一個(gè)RAM 地址,從ADS 環(huán)境下的工程路徑的Init 目錄下isr_address.s 文件和scat_ram.scf 文件即可看出,其值是0xc7fff00+0x18。另外,在44b.h 文件中有如此定義:#define pISR_
41、IRQ (*(unsigned *)(_ISR_STARTADDRESS+0x18)其中的宏_ISR_STARTADDRESS 的定義在option.h文件中:#define _ISR_STARTADDRESS 0xc7fff00這就意味著HandleIRQ 和pISR_IRQ 有著特殊的關(guān)系,前者是地址,后者是這個(gè)地址上的內(nèi)容,也就是說(shuō)pISR_IRQ 就可認(rèn)為是中斷服務(wù)程序的地址了。在UHAL.C 中有這個(gè)函數(shù)void uHALr_InterruptRequestInit()用來(lái)初始化中斷。其中有:pISR_IRQ= (unsigned) IRQ_Handler;而IRQ_Handler
42、又回到了0Bank 的ROM 中,在44BINIT.S 中有:IRQ_HandlerIMPORT ISR_IrqHandlerSTMFD sp!, r0-r12, lrBL ISR_IrqHandlerLDMFD sp!, r0-r12, lrSUBS pc, lr, #4EXPORT IRQ_Handler從這段匯編程序看出,控制又轉(zhuǎn)移到了ISR_IrqHandler 上,這是IRQ 的中斷服務(wù)程序,定義在ISR.C 中:void ISR_IrqHandler() int IntOffset;IntOffset=GetISROffsetClr(); /得到中斷向量的偏移地址(*Interru
43、ptHandlersIntOffset)(); /運(yùn)行中斷服務(wù)程序其中GetISROffsetClr()定義如下:int GetISROffsetClr() /計(jì)算中斷的偏移地址,高位優(yōu)先 int i,ispr=rI_ISPR,tmp=1<<(MAXHNDLRS-1); /temp bitfor(i=MAXHNDLRS;i>0;i-)if(ispr&tmp)rI_ISPC=tmp;return i-1;tmp>>=1;return -1;實(shí)際上這段程序就是軟件優(yōu)先級(jí)算法,通過(guò)查看I_ISPR 寄存器,決定應(yīng)該執(zhí)行的真正的對(duì)應(yīng)于具體中斷的中斷服務(wù)程序。并使用
44、rI_ISPC 寄存器清除中斷掛起位。而(*InterruptHandlersIntOffset)();則是把控制最終轉(zhuǎn)移到了ISR 上。然而,實(shí)際的ISR 是如何和這套極其復(fù)雜的中斷響應(yīng)過(guò)程發(fā)生關(guān)系的呢?這里用SetISR_Interrupt()函數(shù)把用戶編寫的ISR 設(shè)置在中斷系統(tǒng)上,也就是把ISR的函數(shù)指針存放到數(shù)組InterruptHandlers里,有中斷請(qǐng)求時(shí)GetISROffsetClr()會(huì)在該數(shù)組里找到它的。五、實(shí)驗(yàn)步驟1編寫定時(shí)器的初始化等控制函數(shù),因?yàn)槠脚_(tái)上定時(shí)器0、1、2 都分配給了電機(jī)控制,這里選擇定時(shí)器3,編程主要針對(duì)Timer3。2編寫定時(shí)器中斷服務(wù)程序,完成對(duì)中
45、斷次數(shù)的計(jì)數(shù)。3編寫中斷初始化等函數(shù),這里打開或關(guān)閉中斷分為兩個(gè)層面,其一是針對(duì)程序狀態(tài)字PSR 的,用匯編語(yǔ)言編寫如下:INTS_OFFmrs r0, cpsr ; 當(dāng)前 CSR 寄存器mov r1, r0 ; 拷貝CSR 寄存器到r1 中orr r1, r1, #0xC0 ; 屏蔽中斷位msr CPSR_cxsf, r1 ; 關(guān)閉 ints (IRQ 和FIQ)and r0, r0, #0x80 ; 從原csr 寄存器返回FIQ 位mov pc,lr ; 返回INTS_ONmrs r0, cpsr ; 當(dāng)前CSR 寄存器bic r0, r0, #0xC0 ; 開啟中斷位msr CPSR_c
46、xsf, r0 ; 使能中斷(IRQ 和FIQ)mov pc,lr ; 返回另一個(gè)層面就是對(duì)INTCON和INTMSK寄存器的操作了。六、思考題1.如何利用前面幾次實(shí)驗(yàn)內(nèi)容,在本實(shí)驗(yàn)的中斷服務(wù)程序中加入相應(yīng)代碼讓在PE6上的LED按一定規(guī)律閃亮?實(shí)驗(yàn)七鍵盤及LED驅(qū)動(dòng)實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?.學(xué)習(xí)鍵盤及LED驅(qū)動(dòng)原理。2. 掌握 ZLG7289A芯片的使用方法。二、實(shí)驗(yàn)內(nèi)容通過(guò)ZLG7289芯片驅(qū)動(dòng)17鍵的鍵盤和8個(gè)共陰極LED,將按鍵值在LED上顯示出來(lái)。三、實(shí)驗(yàn)設(shè)備及工具 1. 硬件:UP-NETARM3000實(shí)驗(yàn)箱、JTAG 仿真器、PC 機(jī)。2. 軟件:PC 機(jī)操作系統(tǒng)WinXP、ADS1.
47、2 集成開發(fā)環(huán)境、仿真器驅(qū)動(dòng)程序、超級(jí)終端通訊程序。四、實(shí)驗(yàn)原理ZLG7289A是一片具有串行接口的,可同時(shí)驅(qū)動(dòng)8位共陰式數(shù)碼管(或64只獨(dú)立 LED)的智能顯示驅(qū)動(dòng)芯片,該芯片同時(shí)還可連接多達(dá) 64 鍵的鍵盤矩陣,單片即可完成 LED 顯示鍵盤接口的全部功能。其主要特點(diǎn)如下: a串行接口無(wú)需外圍元件可直接驅(qū)動(dòng) LED。 b各位獨(dú)立控制譯碼/不譯碼及消隱和閃爍屬性。 c(循環(huán))左移/(循環(huán))右移指令。 d具有段尋址指令方便控制獨(dú)立 LED。 e鍵盤控制器內(nèi)含去抖動(dòng)電路。ZLG7289A的引腳說(shuō)明如表7-1所示:表7-1 ZLG7289A引腳說(shuō)明ZLG7289A的控制指令分為二大類純指令和帶有數(shù)
48、據(jù)的指令:1純指令(1)復(fù)位(清除)指令,如表7-2所示:表7-2 復(fù)位指令格式當(dāng) ZLG7289A收到該指令后,將所有的顯示清除,所有設(shè)置的字符消隱、閃爍等屬性也被一起清除。執(zhí)行該指令后,芯片所處的狀態(tài)與系統(tǒng)上電后所處的狀態(tài)一樣。(2)測(cè)試指令,如表7-3所示:表7-3 測(cè)試指令格式該指令使所有的 LED 全部點(diǎn)亮,并處于閃爍狀態(tài),主要用于測(cè)試。(3)左移指令,如表7-4所示:表7-4 左移指令格式 使所有的顯示自右向左(從第 1 位向第 8 位)移動(dòng)一位(包括處于消隱狀態(tài)的顯示位),但對(duì)各位所設(shè)置的消隱及閃爍屬性不變。(4)右移指令,如表7-5所示: 表7-5 右移指令格式 與左移指令類似
49、,但所做移動(dòng)為自左向右(從第8位向第1位)移動(dòng),移動(dòng)后,最左邊一位為空。(5)循環(huán)左移指令,如表7-6所示: 表7-6 循環(huán)左移指令格式 與左移指令類似,不同之處在于移動(dòng)后原最左邊一位(第8位)的內(nèi)容顯示于最右位(第1位)。 (6)循環(huán)右移指令,如表7-7所示: 表7-7 循環(huán)右移指令格式 與循環(huán)左移指令類似,但移動(dòng)方向相反。 2帶有數(shù)據(jù)的指令(1)下載數(shù)據(jù)且按方式0譯碼,其指令與數(shù)據(jù)格式如表7-8所示: 表7-8 下載數(shù)據(jù)具按方式0 譯碼的指令與數(shù)據(jù)格式 其中 X 表示無(wú)影響。命令由二個(gè)字節(jié)組成,前半部分為指令,其中a2,a1,a0為位地址,d0 -d3 為數(shù)據(jù),收到此指令時(shí)ZLG7289A
50、 按表7-9(譯碼方式 0)進(jìn)行譯碼。 表7-9 譯碼方式0 小數(shù)點(diǎn)的顯示由DP位控制,DP=1時(shí)小數(shù)點(diǎn)顯示,DP=0時(shí)小數(shù)點(diǎn)不顯示。 (2)下載數(shù)據(jù)且按方式1譯碼,其指令與數(shù)據(jù)格式如表7-10所示: 表7-10 下載數(shù)據(jù)且按方式1 譯碼的其指令與數(shù)據(jù)格式其中 X 表示無(wú)影響。此指令與上一條指令基本相同,所不同的是譯碼方式,該指令按16進(jìn)制進(jìn)行譯碼,對(duì)應(yīng)顯示為“0F”。(3)下載數(shù)據(jù)但不譯碼,其指令與數(shù)據(jù)格式如表7-11所示: 表7-11 下載數(shù)據(jù)但不譯碼的指令與數(shù)據(jù)格式 其中,a2,a1,a0為位地址,A-G 和 DP 為顯示數(shù)據(jù),分別對(duì)應(yīng)7段 LED 數(shù)碼管的各段。當(dāng)相應(yīng)的數(shù)據(jù)位為“1”時(shí),該段點(diǎn)亮,否則不亮。 (4)閃爍控制,如表7-12所示: 表
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年政府機(jī)關(guān)信息化建設(shè)服務(wù)器采購(gòu)合同
- 2024年度電機(jī)振動(dòng)傳感器安裝與維護(hù)合同
- 2024年敲墻施工安全合同
- 2024-2030年版中國(guó)酒石酸行業(yè)發(fā)展態(tài)勢(shì)及投資風(fēng)險(xiǎn)分析報(bào)告
- 2024-2030年新版中國(guó)銀稅一體機(jī)項(xiàng)目可行性研究報(bào)告
- 2024年度股權(quán)轉(zhuǎn)讓合同:某股東與另一股東之間關(guān)于股權(quán)轉(zhuǎn)讓的合同
- 2024年房產(chǎn)裝修工程承包合同
- 2024-2030年新版中國(guó)環(huán)氧丙烯酸齊聚體項(xiàng)目可行性研究報(bào)告
- 2024-2030年新版中國(guó)冶性炭項(xiàng)目可行性研究報(bào)告
- 2024-2030年動(dòng)物來(lái)源的腎素行業(yè)市場(chǎng)現(xiàn)狀供需分析及重點(diǎn)企業(yè)投資評(píng)估規(guī)劃分析研究報(bào)告
- 雅魯藏布江大拐彎巨型水電站規(guī)劃方案
- 廣西基本醫(yī)療保險(xiǎn)門診特殊慢性病申報(bào)表
- 城市經(jīng)濟(jì)學(xué)習(xí)題與答案
- 國(guó)開成本會(huì)計(jì)第14章綜合練習(xí)試題及答案
- 幼兒園大班科學(xué):《樹葉為什么會(huì)變黃》課件
- 1到50帶圈數(shù)字直接復(fù)制
- 鐵路工程施工組織設(shè)計(jì)(施工方案)編制分類
- 幼兒園中班數(shù)學(xué)《有趣的圖形》課件
- 《規(guī)劃每一天》教案2021
- 草莓創(chuàng)意主題實(shí)用框架模板ppt
- 山大口腔頜面外科學(xué)課件第5章 口腔種植外科-1概論、口腔種植的生物學(xué)基礎(chǔ)
評(píng)論
0/150
提交評(píng)論