-
三種方法讀取鍵值 使用者設計行列鍵盤介面,一般常採用三種方法讀取鍵值。 中斷式 在鍵盤按下時產生一個外部中斷通知CPU,並由中斷處理程式通過不同位址讀資料線上的狀態判斷哪個按鍵被按下。 本實驗採用中斷式實現使用者鍵盤介面。 掃描法 對鍵盤上的某一行送低電位,其他為高電位,然後讀取列值,若列值中有一位是低,表明該行與低電位對應列的鍵被按下。否則掃描下一行。 反轉法 先將所有行掃描線輸出低電位,讀列值,若列值有一位是低表明有鍵按下;接著所有列掃描線輸出低電位,再讀行值。 根據讀到的值組合就可以查表得到鍵碼。4x4鍵盤按4行4列組成如圖電路結構。按鍵按下將會使行列連成通路,這也是見的使用者鍵盤設計電路。
//-----------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; //復位 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; //沒有按鍵按下 }
標簽:
4x4
鍵盤
上傳時間:
2013-11-12
上傳用戶:a673761058
-
本文將探討微控制器與 PSoC (可編程系統單晶片)在數位電視應用上的設計挑戰,並比較微控制器和 PSoC 架構在處理這些挑戰時的不同處,以有效地建置執行。
標簽:
PSoC
MCU
比較
數位電視
上傳時間:
2013-11-22
上傳用戶:gengxiaochao
-
附件是一款PCB阻抗匹配計算工具,點擊CITS25.exe直接打開使用,無需安裝。附件還帶有PCB連板的一些計算方法,連板的排法和PCB聯板的設計驗驗。
PCB設計的經驗建議:
1.一般連板長寬比率為1:1~2.5:1,同時注意For FuJi Machine:a.最大進板尺寸為:450*350mm,
2.針對有金手指的部分,板邊處需作掏空處理,建議不作為連板的部位.
3.連板方向以同一方向為優先,考量對稱防呆,特殊情況另作處理.
4.連板掏空長度超過板長度的1/2時,需加補強邊.
5.陰陽板的設計需作特殊考量.
6.工藝邊需根據實際需要作設計調整,軌道邊一般不少於6mm,實際中需考量板邊零件的排布,軌道設備正常卡壓距離為不少於3mm,及符合實際要求下的連板經濟性.
7.FIDUCIAL MARK或稱光學定位點,一般設計在對角處,為2個或4個,同時MARK點面需平整,無氧化,脫落現象;定位孔設計在板邊,為對稱設計,一般為4個,直徑為3mm,公差為±0.01inch.
8.V-cut深度需根據連板大小及基板板厚考量,角度建議為不少於45°.
9.連板設計的同時,需基於基板的分板方式考量<人工(治具)還是使用分板設備>.
10.使用針孔(郵票孔)聯接:需請考慮斷裂后的毛刺,及是否影響COB工序的Bonding機上的夾具穩定工作,還應考慮是否有無影響插件過軌道,及是否影響裝配組裝.
標簽:
PCB
阻抗匹配
計算工具
教程
上傳時間:
2014-12-31
上傳用戶:sunshine1402
-
附件是一款PCB阻抗匹配計算工具,點擊CITS25.exe直接打開使用,無需安裝。附件還帶有PCB連板的一些計算方法,連板的排法和PCB聯板的設計驗驗。
PCB設計的經驗建議:
1.一般連板長寬比率為1:1~2.5:1,同時注意For FuJi Machine:a.最大進板尺寸為:450*350mm,
2.針對有金手指的部分,板邊處需作掏空處理,建議不作為連板的部位.
3.連板方向以同一方向為優先,考量對稱防呆,特殊情況另作處理.
4.連板掏空長度超過板長度的1/2時,需加補強邊.
5.陰陽板的設計需作特殊考量.
6.工藝邊需根據實際需要作設計調整,軌道邊一般不少於6mm,實際中需考量板邊零件的排布,軌道設備正常卡壓距離為不少於3mm,及符合實際要求下的連板經濟性.
7.FIDUCIAL MARK或稱光學定位點,一般設計在對角處,為2個或4個,同時MARK點面需平整,無氧化,脫落現象;定位孔設計在板邊,為對稱設計,一般為4個,直徑為3mm,公差為±0.01inch.
8.V-cut深度需根據連板大小及基板板厚考量,角度建議為不少於45°.
9.連板設計的同時,需基於基板的分板方式考量<人工(治具)還是使用分板設備>.
10.使用針孔(郵票孔)聯接:需請考慮斷裂后的毛刺,及是否影響COB工序的Bonding機上的夾具穩定工作,還應考慮是否有無影響插件過軌道,及是否影響裝配組裝.
標簽:
PCB
阻抗匹配
計算工具
教程
上傳時間:
2013-10-15
上傳用戶:3294322651
-
一、PAC的概念及軟邏輯技術二、開放型PAC系統三、應用案例及分析四、協議支持及系統架構五、軟件編程技巧&組態軟件的整合六、現場演示&上機操作。PAC是由ARC咨詢集團的高級研究員Craig Resnick提出的,定義如下:具有多重領域的功能,支持在單一平臺里包含邏輯、運動、驅動和過程控制等至少兩種以上的功能單一開發平臺上整合多規程的軟件功能如HMI及軟邏輯, 使用通用標簽和單一的數據庫來訪問所有的參數和功能。軟件工具所設計出的處理流程能跨越多臺機器和過程控制處理單元, 實現包含運動控制及過程控制的處理程序。開放式, 模塊化構架, 能涵蓋工業應用中從工廠的機器設備到過程控制的操作單元的需求。采用公認的網絡接口標準及語言,允許不同供應商之設備能在網絡上交換資料。
標簽:
PAC
開放式
系統設計
上傳時間:
2014-01-14
上傳用戶:JGR2013
-
利用桶排序給數組a排序,建立的桶為b和e,其中b為含有十萬個桶,e為只有一個鏈表的桶,然后對b和e使用插入算法排序,比較兩種算法的時間,b需要40毫秒左右,e需要9到10分鐘。
標簽:
排序
數組
上傳時間:
2014-01-02
上傳用戶:13681659100
-
源代碼\用動態規劃算法計算序列關系個數
用關系"<"和"="將3個數a,b,c依次序排列時,有13種不同的序列關系:
a=b=c,a=b<c,a<b=v,a<b<c,a<c<b
a=c<b,b<a=c,b<a<c,b<c<a,b=c<a
c<a=b,c<a<b,c<b<a
若要將n個數依序列,設計一個動態規劃算法,計算出有多少種不同的序列關系,
要求算法只占用O(n),只耗時O(n*n).
標簽:
lt
源代碼
動態規劃
序列
上傳時間:
2013-12-26
上傳用戶:siguazgb
-
LCS(最長公共子序列)問題可以簡單地描述如下:
一個給定序列的子序列是在該序列中刪去若干元素后得到的序列。給定兩個序列X和Y,當另一序列Z既是X的子序列又是Y的子序列時,稱Z是序列X和Y的公共子序列。例如,若X={A,B,C,B,D,B,A},Y={B,D,C,A,B,A},則序列{B,C,A}是X和Y的一個公共子序列,但它不是X和Y的一個最長公共子序列。序列{B,C,B,A}也是X和Y的一個公共子序列,它的長度為4,而且它是X和Y的一個最長公共子序列,因為X和Y沒有長度大于4的公共子序列。
最長公共子序列問題就是給定兩個序列X={x1,x2,...xm}和Y={y1,y2,...yn},找出X和Y的一個最長公共子序列。對于這個問題比較容易想到的算法是窮舉,對X的所有子序列,檢查它是否也是Y的子序列,從而確定它是否為X和Y的公共子序列,并且在檢查過程中記錄最長的公共子序列。X的所有子序列都檢查過后即可求出X和Y的最長公共子序列。X的每個子序列相應于下標集{1,2,...,m}的一個子集。因此,共有2^m個不同子序列,從而窮舉搜索法需要指數時間。
標簽:
序列
LCS
元素
上傳時間:
2015-06-09
上傳用戶:氣溫達上千萬的
-
利用Java寫的拼圖遊戲(Applet型式),並具簡易的影像處理功能。
標簽:
Applet
Java
上傳時間:
2014-01-02
上傳用戶:wpwpwlxwlx
-
c語言版的多項式曲線擬合。
用最小二乘法進行曲線擬合.
用p-1 次多項式進行擬合,p<= 10
x,y 的第0個域x[0],y[0],沒有用,有效數據從x[1],y[1] 開始
nNodeNum,有效數據節點的個數。
b,為輸出的多項式系數,b[i] 為b[i-1]次項。b[0],沒有用。
b,有10個元素ok。
標簽:
多項式
曲線擬合
c語言
最小二乘法
上傳時間:
2014-01-12
上傳用戶:變形金剛