三種方法讀取鍵值 使用者設(shè)計行列鍵盤介面,一般常採用三種方法讀取鍵值。 中斷式 在鍵盤按下時產(chǎn)生一個外部中斷通知CPU,並由中斷處理程式通過不同位址讀資料線上的狀態(tài)判斷哪個按鍵被按下。 本實驗採用中斷式實現(xiàn)使用者鍵盤介面。 掃描法 對鍵盤上的某一行送低電位,其他為高電位,然後讀取列值,若列值中有一位是低,表明該行與低電位對應(yīng)列的鍵被按下。否則掃描下一行。 反轉(zhuǎn)法 先將所有行掃描線輸出低電位,讀列值,若列值有一位是低表明有鍵按下;接著所有列掃描線輸出低電位,再讀行值。 根據(jù)讀到的值組合就可以查表得到鍵碼。4x4鍵盤按4行4列組成如圖電路結(jié)構(gòu)。按鍵按下將會使行列連成通路,這也是見的使用者鍵盤設(shè)計電路。 //-----------4X4鍵盤程序--------------// uchar keboard(void) { uchar xxa,yyb,i,key; if((PINC&0x0f)!=0x0f) //是否有按鍵按下 {delayms(1); //延時去抖動 if((PINC&0x0f)!=0x0f) //有按下則判斷 { xxa=~(PINC|0xf0); //0000xxxx DDRC=0x0f; PORTC=0xf0; delay_1ms(); yyb=~(PINC|0x0f); //xxxx0000 DDRC=0xf0; //復(fù)位 PORTC=0x0f; while((PINC&0x0f)!=0x0f) //按鍵是否放開 { display(data); } i=4; //計算返回碼 while(xxa!=0) { xxa=xxa>>1; i--; } if(yyb==0x80) key=i; else if(yyb==0x40) key=4+i; else if(yyb==0x20) key=8+i; else if(yyb==0x10) key=12+i; return key; //返回按下的鍵盤碼 } } else return 17; //沒有按鍵按下 }
上傳時間: 2013-11-12
上傳用戶:a673761058
為了實現(xiàn)對成像測井系統(tǒng)中井下儀器所采集數(shù)據(jù)的實時顯示,設(shè)計了一種基于ARM LPC1788的顯示系統(tǒng)。該系統(tǒng)主要用來接收上位機命令,采集各種模擬信號,將采集數(shù)據(jù)實時顯示在液晶屏上。軟件部分采用Keil RealView MDK+c語言編程。實際應(yīng)用表明,該系統(tǒng)具有操作簡便、測試準確的特點,達到了設(shè)計要求,滿足成像系統(tǒng)整體需求。
上傳時間: 2013-11-02
上傳用戶:lht618
RA8802 是一個中英文文字與繪圖模式的點矩陣液晶顯示(LCD)控制器,可最大支援320x240 點的LCD 面 板。內(nèi)建512Kbyte 的字形碼可以顯示中文字型、數(shù)字符號與英文字母。在文字模式中,RA8802 可接收標準 中文文字內(nèi)碼直接顯示中文,而不需要進入繪圖模式以繪圖方式描繪中文,可以節(jié)省許多微處理器時間,提 升液晶顯示中文之處理效率。
上傳時間: 2014-06-08
上傳用戶:wweqas
一套圖書管理程序,主要採用OO技術(shù)實現(xiàn),有參考價值
標簽: 程序
上傳時間: 2015-06-20
上傳用戶:nairui21
Debussy是NOVAS Software, Inc(思源科技)發(fā)展的HDL Debug & Analysis tool,這套軟體主要不是用來跑模擬或看波形,它最強大的功能是:能夠在HDL source code、schematic diagram、waveform、state bubble diagram之間,即時做trace,協(xié)助工程師debug。 可能您會覺的:只要有simulator如ModelSim就可以做debug了,我何必再學這套軟體呢? 其實Debussy v5.0以後的新版本,還提供了nLint -- check coding style & synthesizable,這蠻有用的,可以協(xié)助工程師了解如何寫好coding style,並養(yǎng)成習慣。 下圖所示為整個Debussy的原理架構(gòu),可歸納幾個結(jié)論:
標簽: Analysis Software Debussy Debug
上傳時間: 2014-01-14
上傳用戶:hustfanenze
這是一個簡單的小工具,有點類似我們使用form方式設(shè)計時,使用behaver方式讓各個form作轉(zhuǎn)場特效一樣,不過這個工具是針對各個movie clip,相信對一些Art設(shè)計師有一定的幫助囉, 使用的是Transition manager方式完成,相信不久會有利用tween class方式的程式產(chǎn)生器吧..其實我還蠻需要的...因為help檔沒有,有時要參考指令,都要上網(wǎng)查一次
上傳時間: 2013-12-17
上傳用戶:hasan2015
車牌定位---VC++源代碼程序 1.24位真彩色->256色灰度圖。 2.預(yù)處理:中值濾波。 3.二值化:用一個初始閾值T對圖像A進行二值化得到二值化圖像B。 初始閾值T的確定方法是:選擇閾值T=Gmax-(Gmax-Gmin)/3,Gmax和Gmin分別是最高、最低灰度值。 該閾值對不同牌照有一定的適應(yīng)性,能夠保證背景基本被置為0,以突出牌照區(qū)域。 4.削弱背景干擾。對圖像B做簡單的相鄰像素灰度值相減,得到新的圖像G,即Gi,j=|Pi,j-Pi,j-1|i=0,1,…,439 j=0,1,…,639Gi,0=Pi,0,左邊緣直接賦值,不會影響整體效果。 5.用自定義模板進行中值濾波 區(qū)域灰度基本被賦值為0。考慮到文字是由許多短豎線組成,而背景噪聲有一大部分是孤立噪聲,用模板(1,1,1,1,1)T對G進行中值濾波,能夠得到除掉了大部分干擾的圖像C。 6.牌照搜索:利用水平投影法檢測車牌水平位置,利用垂直投影法檢測車牌垂直位置。 7.區(qū)域裁剪,截取車牌圖像。
上傳時間: 2013-11-26
上傳用戶:懶龍1988
1.24位真彩色->256色灰度圖。 2.預(yù)處理:中值濾波。 3.二值化:用一個初始閾值T對圖像A進行二值化得到二值化圖像B。 初始閾值T的確定方法是:選擇閾值T=Gmax-(Gmax-Gmin)/3,Gmax和Gmin分別是最高、最低灰度值。 該閾值對不同牌照有一定的適應(yīng)性,能夠保證背景基本被置為0,以突出牌照區(qū)域。 4.削弱背景干擾。對圖像B做簡單的相鄰像素灰度值相減,得到新的圖像G,即Gi,j=|Pi,j-Pi,j-1|i=0,1,…,439 j=0,1,…,639Gi,0=Pi,0,左邊緣直接賦值,不會影響整體效果。 5.用自定義模板進行中值濾波 區(qū)域灰度基本被賦值為0??紤]到文字是由許多短豎線組成,而背景噪聲有一大部分是孤立噪聲,用模板(1,1,1,1,1)T對G進行中值濾波,能夠得到除掉了大部分干擾的圖像C。 6.牌照搜索:利用水平投影法檢測車牌水平位置,利用垂直投影法檢測車牌垂直位置。 7.區(qū)域裁剪,截取車牌圖像。
上傳時間: 2014-01-08
上傳用戶:songrui
《實用開發(fā)地震》(龐彥明等編譯、石油工業(yè)出版社出版,16開272頁)的PDF電子書,僅供研究不得用于商業(yè)目的。該書講述了地震勘探數(shù)據(jù)采集、處理和解釋的基本原理和方法 介紹了VSP、AVO、3D地震勘探和層析成像等先進技術(shù),并提供了大量地震勘探開發(fā)實例。
上傳時間: 2015-09-14
上傳用戶:qweqweqwe
Applied-Exploiture-Seism3《實用開發(fā)地震》(龐彥明等編譯、石油工業(yè)出版社出版,16開272頁)的PDF電子書,僅供研究不得用于商業(yè)目的。該書講述了地震勘探數(shù)據(jù)采集、處理和解釋的基本原理和方法 介紹了VSP、AVO、3D地震勘探和層析成像等先進技術(shù),并提供了大量地震勘探開發(fā)實例。
標簽: Applied-Exploiture-Seism 272 16
上傳時間: 2013-12-24
上傳用戶:zhuyibin
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1