版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1,1,實驗六 基于ARM的鍵盤及數(shù)碼管驅(qū)動實驗,2,2,一、實驗?zāi)康?1.掌握鍵盤及數(shù)碼管驅(qū)動原理。 2.掌握ZLG7290芯片的使用方法。 3.掌握I2C總線的協(xié)議標(biāo)準(zhǔn)。 4.掌握Linux下鍵盤驅(qū)動的實現(xiàn)方法。 二、實驗內(nèi)容 編寫測試程序控制鍵盤和數(shù)碼管。,3,3,三、預(yù)備知識 1.了解ARM9處理器結(jié)構(gòu) 2.了解i2c協(xié)議 四、 實驗設(shè)備與工具 硬件:ARM嵌入式開發(fā)平臺,PC 機(jī)Pentium100 以上。 軟件:PC機(jī)Linux操作系統(tǒng)MINICOM AMRLINUX開發(fā)環(huán)境,4,4,五、 實驗原理與說明 1、ZLG7290寄存器介紹 ZLG7290內(nèi)部有16個8bits寄存器,訪
2、問這些寄存器需要通過I2C 總線接口來實現(xiàn).訪問內(nèi)部寄存器要通過“I2C總線地址+子地址”的方式來實現(xiàn)。ZLG7290B 的I2C 總線器件地址是70H(寫操作)和71H(讀操作)。,5,5,鍵值寄存器Key(地址:01H) 如果某個普通鍵(K1K56)被按下,則微控制器可以從鍵值寄存器Key中讀取相應(yīng)的鍵值156。如果微控制器發(fā)現(xiàn)ZLG7290 的INT 引腳產(chǎn)生了中斷請求,而從Key 中讀到的鍵值是0,則表示按下的可能是功能鍵。鍵值寄存器Key 的值在被讀走后自動變成0。,6,6,顯示緩沖區(qū)DpRam0DpRam7(地址:10H17H),DpRam0DpRam7 這8 個寄存器的取值直接對
3、應(yīng)8個數(shù)碼管的顯示內(nèi)容。每個寄存器的8 個位分別對應(yīng)數(shù)碼管的a,b,c,d,e,f,dp 段,MSB 對應(yīng)a,LSB 對應(yīng)dp。例如大寫字母H 的字型數(shù)據(jù)為6EH(不帶小數(shù)點)或6FH(帶小數(shù)點)。,7,7,命令緩沖區(qū)CmdBuf0 和CmdBuf1(地址:07H 和08H) 通過向命令緩沖區(qū)寫入相關(guān)的控制命令可以實現(xiàn)段尋址、下載顯示數(shù)據(jù)、控制閃爍等功能。,8,8,2、ZLG7290控制命令介紹 寄存器CmdBuf0(地址:07H)和CmdBuf1(地址:08H)共同組成命令緩沖區(qū)。通過向命令緩沖區(qū)寫入相關(guān)的控制命令可以實現(xiàn)段尋址、下載顯示數(shù)據(jù)、控制閃爍等功能。,9,9,下載數(shù)據(jù)并譯碼(Dow
4、nload) 在指令格式中,高4 位的0110 是命令字段;A3A2A1A0 是數(shù)碼管顯示數(shù)據(jù)的位地址(其中A3 留作以后擴(kuò)展之用,實際使用時取0 即可),位地址編號依次為0,1,2,3,4,5,6,7,代表8個數(shù)碼管,dp 控制小數(shù)點是否點亮,0點亮,1熄滅;flash 表示是否要閃爍,0正常顯示,1閃爍;d4d3d2d1d0 是要顯示的數(shù)據(jù),包括10 種數(shù)字和21 種字母。顯示數(shù)據(jù)按照表一中的規(guī)則進(jìn)行譯碼:,10,10,表一 下載數(shù)據(jù)并譯碼命令規(guī)則,11,11,閃爍控制(Flash) 在命令格式中,高4 位的0111 是命令字段;xxxx 表示無關(guān)位,通常取值0000;第2 字節(jié)的Fn(n
5、07)控制數(shù)碼管相應(yīng)位的閃爍屬性,0正常顯示,1閃爍。復(fù)位后,所有位都不閃爍。,12,12,3、 Linux下i2c驅(qū)動接口函數(shù)介紹 Linux為我們提供了一系列的接口函數(shù),通過調(diào)用這些函數(shù)可以很方便的訪問到我們的I2C設(shè)備,達(dá)到對它的操作和控制。在本實驗中,就是通過調(diào)用這些函數(shù),完成對zlg7290內(nèi)部寄存器的配置,從而驅(qū)動鍵盤和數(shù)碼管按照我們需要的方式工作。下面對接口函數(shù)進(jìn)行介紹:,13,13,3、 Linux下i2c驅(qū)動接口函數(shù)介紹 打開設(shè)備: 在linux下編程實現(xiàn)對具體設(shè)備的操作,首先要做的就是打開要操作的設(shè)備文件,zlg7290設(shè)備的設(shè)備文件是“/dev/zlg7290/0”。 具
6、體實現(xiàn)函數(shù)是: fd=open(“/dev/zlg7290/0”,O_RDWR),14,14,向設(shè)備寫數(shù)據(jù)(1/2): 具體實現(xiàn)過程是先寫入要配置的寄存器的地址,然后寫入要配置的值,具體實現(xiàn)函數(shù)是: unsigned char temp2; /定義一個數(shù)組用于存放要發(fā)送的數(shù)據(jù),包括寄存器地址和要寫入該寄存器內(nèi)的值 temp0=address; /將要配置的寄存器的地址address寫入temp0中。 temp1=data; /將要寫入該寄存器中 的值data寫入/temp1中。 write(fd,temp,2); /用write函數(shù)向設(shè)備寫入數(shù)據(jù)temp,首先寫入地址address,然后寫入值
7、data。,15,15,向設(shè)備寫數(shù)據(jù)(2/2): 配置一般的寄存器都是這個步驟,但是唯一例外的是配置命令寄存器cmdbuf0和cmdbuf1,因為寫入命令寄存器中的命令碼均為16bit,因此需要通過兩步完成對命令碼的發(fā)送,具體實現(xiàn)代碼如下: unsigned char temp3; temp0=address; temp1=cmd1; /要寫入的命令碼的高八位 temp2=cmd2; /要寫入的命令碼的低八位 write(fd,temp,3);,16,16,關(guān)閉設(shè)備: close(fd);,17,17,數(shù)碼管位碼鍵盤鍵值、布局圖,18,18,六、實驗步驟 (詳見實驗指導(dǎo)書) 在數(shù)碼管上顯示數(shù)據(jù)
8、有兩種方法,一種方法是直接向8個數(shù)據(jù)緩沖區(qū)DpRam0DpRam7寫入數(shù)據(jù)分別控制每個數(shù)碼管的8個獨(dú)立led的亮滅,使其顯示不同的數(shù)據(jù)。 在數(shù)碼管上顯示數(shù)據(jù)的另一種方法是直接向命令寄存器cmdbuf0或cmdbuf1寫入“下載數(shù)據(jù)并譯碼”命令,直接控制數(shù)碼管的顯示內(nèi)容,具體譯碼規(guī)則如表一所示。 當(dāng)某個按鍵被按下時,可以通過讀取“鍵值寄存器Key(地址:01H)”的值來得到鍵值,將所按鍵的鍵值顯示在數(shù)碼管上。 zlg7290提供數(shù)碼管的閃爍功能,通過向命令寄存器發(fā)送閃爍控制命令可以控制某個數(shù)碼管閃爍。通過按鍵控制數(shù)碼管的閃爍,具體功能是當(dāng)按下鍵盤1-4時,控制數(shù)碼管1-4閃爍。,19,19,5、打開一個終端1,將四個源文件交叉編譯成arm下的可執(zhí)行文件example1-example4(具體參見實驗五一些步驟) 6、重新打開一個終端2,輸入命令minicom進(jìn)入ARM開發(fā)板的命令行界面,檢查硬件是否連接好后,上電開發(fā)板,進(jìn)入ARM-linux操作系統(tǒng)的命令行。 7、在終端2的ARM
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026首都醫(yī)科大學(xué)事業(yè)編制崗位招聘69人(第一批)考試備考試題及答案解析
- 2026福建省閩侯白沙國有林場招聘勞務(wù)派遣護(hù)林員1人參考考試題庫及答案解析
- 獅山鎮(zhèn)財務(wù)管理制度(3篇)
- 平壩跨年活動策劃方案(3篇)
- 游戲年會活動策劃方案(3篇)
- js屋面施工方案(3篇)
- 2026四川涼山州越西公安招聘警務(wù)輔助30人參考考試題庫及答案解析
- 2026廣東肇慶市廣寧縣公安局招聘警務(wù)輔助人員7人(第一次)考試參考試題及答案解析
- 2026山東威海乳山市事業(yè)單位招聘初級綜合類崗位人員參考考試題庫及答案解析
- 北京農(nóng)學(xué)院2026年人才引進(jìn)備考考試題庫及答案解析
- 2026年江西科技學(xué)院單招職業(yè)技能筆試備考試題含答案解析
- 深度解析(2026)《MZT 238-2025 監(jiān)測和定位輔助器具 毫米波雷達(dá)監(jiān)測報警器》
- 2025-2026學(xué)年小學(xué)美術(shù)湘美版(2024)四年級上冊期末練習(xí)卷及答案
- 遼寧省大連市2026屆高三上學(xué)期1月雙基模擬考試語文試題(含答案)
- 2025年腫瘤科年度工作總結(jié)匯報
- 浙江省寧波市2025-2026學(xué)年八年級上數(shù)學(xué)期末自編模擬卷
- 2025版《煤礦安全規(guī)程》學(xué)習(xí)與解讀課件(監(jiān)控與通信)
- 陶瓷巖板應(yīng)用技術(shù)規(guī)程
- 中藥制劑技術(shù)中職PPT完整全套教學(xué)課件
- 龍虎山正一日誦早晚課
- WORD版A4橫版密封條打印模板(可編輯)
評論
0/150
提交評論