




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 南通大學(xué)實(shí)驗(yàn)報(bào)告院系:計(jì)算機(jī)科學(xué)與技術(shù) 姓名:課程名稱:接口技術(shù) 成績:學(xué)號(hào):1213022013指導(dǎo)教師:李躍華 同組實(shí)驗(yàn)者: 實(shí)驗(yàn)日期:2014-5-7實(shí)驗(yàn)名稱:鍵盤中斷實(shí)驗(yàn)1. 實(shí)驗(yàn)?zāi)康?熟練運(yùn)用 CodeWarrior 嵌入式開發(fā)系統(tǒng)環(huán)境、C 語言、調(diào)試方式。2復(fù)習(xí)串行通信接口(SCI)的內(nèi)容。3加強(qiáng)鍵盤中斷基本原理及編程原理的理解。4理解“行掃描”法的原理并能進(jìn)行鍵值識(shí)別和鍵值編碼2. 實(shí)驗(yàn)內(nèi)容鍵盤的 c 語言編程:1)初始化,先按 IO 口方式初始化,即定義列線為輸入且上拉,行線為輸出,然后依輸入口的鍵盤功能初始化相應(yīng)的寄存器。2)定義鍵值表3)掃描一次,讀取鍵值4)獲得鍵盤定義
2、值行掃描法是使鍵盤的某一行輸出為低電平,其余行為高電平,然后讀取列值,如果列值中有某位為低電平,則表明該行和列交點(diǎn)處的鍵被按下;若為全高則再掃描下一行,直至掃描完全部的行線為止。這樣就可以確定是哪一行哪一列交點(diǎn)的鍵被按下。 2. 軟件設(shè)計(jì) 主程序中構(gòu)件初始化三 程序流程圖 在主函數(shù)里添加波特率 在中斷中加接受函數(shù) Tool測試按鍵值在pc上顯示四 編程 1.內(nèi)核定時(shí)器中斷void tpm0_isr(void) static uint_32 TPMCounter = 0; /計(jì)時(shí)器 uint_8 value; /鍵盤變量 static uint_8 LEDindex=0; /位選口聲明 uint
3、_8 LEDDataBuffer4; /LED顯示緩沖區(qū)uint_8 i;/LED緩沖區(qū)賦值 LEDDataBuffer0='0' LEDDataBuffer1='2' LEDDataBuffer2='3' LEDDataBuffer3='5' /LCD顯示緩沖區(qū),其中.表示按下的數(shù)字 uint_8 kbv32="The keyboard you just input is ." if(TPM_SC_REG(TPM0_BASE_PTR) & TPM_SC_TOF_MASK) = TPM_SC_TOF_M
4、ASK) TPMCounter+; BSET(TPM_SC_TOF_SHIFT,TPM_SC_REG(TPM0_BASE_PTR); /中斷置標(biāo)志位寫1清0 /處理LED部分 LEDindex+; /位選位+1if (LEDindex>=4) LEDindex=0; /大于4位選口置0i=LEDchangeCode(LEDDataBufferLEDindex-'0'); /轉(zhuǎn)碼 LEDshow1(LEDindex,i); /顯示LEDif(TPMCounter>100) TPMCounter = 0; /鍵盤得到掃描值 value = KBScanN(2); /掃描
5、鍵值,存于value中 if(KBDef(value) != 0xff) /發(fā)送鍵值 /修改.成為按鍵值 kbv31 = KBDef(value); /通過LCD顯示出來 LCDShow(kbv); uart_send_string(UART_2,kbv);/鍵盤發(fā)送信息 2.程序的入口int main(void) /1.聲明主函數(shù)使用的局部變量uint_8 * g_DispalyInit; /2.關(guān)總中斷 enter_critical(); /3.初始化底層模塊 uart_init (UART_1,BUSCLK, 9600); /串口1初始化, 總線時(shí)鐘24000Khz,波特率9600 LE
6、DInit(); /LED初始化 LCDInit(); /LCD初始化 KBInit(); /鍵盤初始化 tpm_init(TPM0,TPM_CLKSRC_PLL,1000); /初始化TPM模塊,1ms中斷一次 /4.緩沖區(qū)賦值 g_DispalyInit = (uint_8 *)"Wait Receiving.Soochow 2013.01." /5.開中斷 tpm_enable_int(0); init_critical(); /6.lcd顯示初始字符 LCDShow(g_DispalyInit); /= for(;) /=return 0;四.實(shí)驗(yàn)小結(jié) 在這次實(shí)驗(yàn)中主要讓我們熟悉掌握gpio口通信的知識(shí),在熟悉代碼
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 證券質(zhì)押典當(dāng)業(yè)務(wù)合同書
- 工業(yè)廠房租賃安全合同范本
- 銷售合同專業(yè)模板
- 機(jī)電安裝工程合同標(biāo)準(zhǔn)格式
- 房地產(chǎn)開發(fā)合同糾紛案例分析
- 兼職臨時(shí)工雇傭合同
- 農(nóng)村合作社租賃合同糾紛解決策略
- 煤炭購銷長期合同范本參考
- 年度合作協(xié)議范文:標(biāo)識(shí)標(biāo)牌制作合同
- 綠化養(yǎng)護(hù)合同模板
- 2025年湖南工業(yè)職業(yè)技術(shù)學(xué)院單招職業(yè)傾向性測試題庫含答案
- 社會(huì)企業(yè)參與養(yǎng)老服務(wù)的模式與效果
- 2025年執(zhí)業(yè)醫(yī)師定期考核題庫及參考答案
- 高一上學(xué)期統(tǒng)編版(2019)必修中外歷史綱要上翻書大賽課件
- 心理健康七個(gè)一主題活動(dòng)方案
- 絕緣墊技術(shù)規(guī)范說明
- 《公路施工組織設(shè)計(jì)》課件
- 筑牢安全防線守護(hù)平安校園
- 公司減資-章程修正案范本
- 工程索賠報(bào)告范文
- 八年級(jí)上學(xué)期期末復(fù)習(xí)《全等三角形》單元試卷(含部分解析) 2024-2025學(xué)年人教版數(shù)學(xué)
評論
0/150
提交評論