三種方法讀取鍵值 使用者設計行列鍵盤介面,一般常採用三種方法讀取鍵值。 中斷式 在鍵盤按下時產生一個外部中斷通知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; //沒有按鍵按下 }
上傳時間: 2013-11-12
上傳用戶:a673761058
本文將探討微控制器與 PSoC (可編程系統單晶片)在數位電視應用上的設計挑戰,並比較微控制器和 PSoC 架構在處理這些挑戰時的不同處,以有效地建置執行。
上傳時間: 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機上的夾具穩定工作,還應考慮是否有無影響插件過軌道,及是否影響裝配組裝.
上傳時間: 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機上的夾具穩定工作,還應考慮是否有無影響插件過軌道,及是否影響裝配組裝.
上傳時間: 2013-10-15
上傳用戶:3294322651
一、PAC的概念及軟邏輯技術二、開放型PAC系統三、應用案例及分析四、協議支持及系統架構五、軟件編程技巧&組態軟件的整合六、現場演示&上機操作。PAC是由ARC咨詢集團的高級研究員Craig Resnick提出的,定義如下:具有多重領域的功能,支持在單一平臺里包含邏輯、運動、驅動和過程控制等至少兩種以上的功能單一開發平臺上整合多規程的軟件功能如HMI及軟邏輯, 使用通用標簽和單一的數據庫來訪問所有的參數和功能。軟件工具所設計出的處理流程能跨越多臺機器和過程控制處理單元, 實現包含運動控制及過程控制的處理程序。開放式, 模塊化構架, 能涵蓋工業應用中從工廠的機器設備到過程控制的操作單元的需求。采用公認的網絡接口標準及語言,允許不同供應商之設備能在網絡上交換資料。
上傳時間: 2014-01-14
上傳用戶:JGR2013
此工具書是一般常用的到的數學工具書,內容詳細介紹matlab指令的各種用法,從基本的概述、初探matlab、二維平面繪圖、三維立體繪圖、數值運算與其它應用、影像顯示與讀寫、動畫製作、握把式圖形與GUI、GUIDEGUI設計環境、矩陣的處理與運算、字元與字串、多維陣列、異質陣列、結植陣列、稀疏矩陣、matlab的運算元、m檔案、程式流程控制、程式除錯、檔案輸出及輸入、程式計時、程式碼與記憶、應用程式介面、線性代數、多項式的處理、一般數學函數、內插法、曲線擬合與迴圈、常微分方程式…等,是非常好用的工具書。
標簽:
上傳時間: 2016-08-24
上傳用戶:ynsnjs
歐基理德輾轉相除法(之二) m與n相差太大時,可用(m%n)來取代(m-n),這樣的處理效率較高。以下便以此方法求出最大公因數。
標簽: 除法
上傳時間: 2014-01-14
上傳用戶:llandlu
11111111111111活用自動控制,運用科學數學自然
標簽: adaptive-control
上傳時間: 2015-03-16
上傳用戶:54333
Boost C++ Libraries Free peer-reviewed portable C++ source libraries Boost C++ Libraries 基本上是一個免費的 C++ 的跨平臺函式庫集合,基本上應該可以把它視為 C++ STL 的功能再延伸;他最大的特色在於他是一個經過「同行評審」(peer review,可參考維基百科)、開放原始碼的函式庫,而且有許多 Boost 的函式庫是由 C++ 標準委員會的人開發的,同時部分函式庫的功能也已經成為 C++ TR1 (Technical Report 1,參考維基百科)、TR2、或是 C++ 0x 的標準了。 它的官方網站是:http://www.boost.org/,包含了 104 個不同的 library;由於他提供的函式庫非常地多,的內容也非常地多元,根據官方的分類,大致上可以分為下面這二十類: 字串和文字處理(String and text processing) 容器(Containers) Iterators 演算法(Algorithms) Function objects and higher-order programming 泛型(Generic Programming) Template Metaprogramming Preprocessor Metaprogramming Concurrent Programming 數學與數字(Math and numerics) 正確性與測試(Correctness and testing) 資料結構(Data structures) 影像處理(Image processing) 輸入、輸出(Input/Output) Inter-language support 記憶體(Memory) 語法分析(Parsing) 程式介面(Programming Interfaces) 其他雜項 Broken compiler workarounds 其中每一個分類,又都包含了一個或多個函式庫,可以說是功能相當豐富。
上傳時間: 2015-05-15
上傳用戶:fangfeng
主版上有很多PCI的介面可以利用,他的LAYOUT有一些注意事項及必須處理走線的特性阻抗才可以讓系統穩定。
上傳時間: 2013-06-14
上傳用戶:夢雨軒膂