三種方法讀取鍵值 使用者設(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
附件是一款PCB阻抗匹配計算工具,點擊CITS25.exe直接打開使用,無需安裝。附件還帶有PCB連板的一些計算方法,連板的排法和PCB聯(lián)板的設(shè)計驗驗。 PCB設(shè)計的經(jīng)驗建議: 1.一般連板長寬比率為1:1~2.5:1,同時注意For FuJi Machine:a.最大進板尺寸為:450*350mm, 2.針對有金手指的部分,板邊處需作掏空處理,建議不作為連板的部位. 3.連板方向以同一方向為優(yōu)先,考量對稱防呆,特殊情況另作處理. 4.連板掏空長度超過板長度的1/2時,需加補強邊. 5.陰陽板的設(shè)計需作特殊考量. 6.工藝邊需根據(jù)實際需要作設(shè)計調(diào)整,軌道邊一般不少於6mm,實際中需考量板邊零件的排布,軌道設(shè)備正常卡壓距離為不少於3mm,及符合實際要求下的連板經(jīng)濟性. 7.FIDUCIAL MARK或稱光學(xué)定位點,一般設(shè)計在對角處,為2個或4個,同時MARK點面需平整,無氧化,脫落現(xiàn)象;定位孔設(shè)計在板邊,為對稱設(shè)計,一般為4個,直徑為3mm,公差為±0.01inch. 8.V-cut深度需根據(jù)連板大小及基板板厚考量,角度建議為不少於45°. 9.連板設(shè)計的同時,需基於基板的分板方式考量<人工(治具)還是使用分板設(shè)備>. 10.使用針孔(郵票孔)聯(lián)接:需請考慮斷裂后的毛刺,及是否影響COB工序的Bonding機上的夾具穩(wěn)定工作,還應(yīng)考慮是否有無影響插件過軌道,及是否影響裝配組裝.
上傳時間: 2014-12-31
上傳用戶:sunshine1402
附件是一款PCB阻抗匹配計算工具,點擊CITS25.exe直接打開使用,無需安裝。附件還帶有PCB連板的一些計算方法,連板的排法和PCB聯(lián)板的設(shè)計驗驗。 PCB設(shè)計的經(jīng)驗建議: 1.一般連板長寬比率為1:1~2.5:1,同時注意For FuJi Machine:a.最大進板尺寸為:450*350mm, 2.針對有金手指的部分,板邊處需作掏空處理,建議不作為連板的部位. 3.連板方向以同一方向為優(yōu)先,考量對稱防呆,特殊情況另作處理. 4.連板掏空長度超過板長度的1/2時,需加補強邊. 5.陰陽板的設(shè)計需作特殊考量. 6.工藝邊需根據(jù)實際需要作設(shè)計調(diào)整,軌道邊一般不少於6mm,實際中需考量板邊零件的排布,軌道設(shè)備正常卡壓距離為不少於3mm,及符合實際要求下的連板經(jīng)濟性. 7.FIDUCIAL MARK或稱光學(xué)定位點,一般設(shè)計在對角處,為2個或4個,同時MARK點面需平整,無氧化,脫落現(xiàn)象;定位孔設(shè)計在板邊,為對稱設(shè)計,一般為4個,直徑為3mm,公差為±0.01inch. 8.V-cut深度需根據(jù)連板大小及基板板厚考量,角度建議為不少於45°. 9.連板設(shè)計的同時,需基於基板的分板方式考量<人工(治具)還是使用分板設(shè)備>. 10.使用針孔(郵票孔)聯(lián)接:需請考慮斷裂后的毛刺,及是否影響COB工序的Bonding機上的夾具穩(wěn)定工作,還應(yīng)考慮是否有無影響插件過軌道,及是否影響裝配組裝.
上傳時間: 2013-10-15
上傳用戶:3294322651
PCB LAYOUT 術(shù)語解釋(TERMS)1. COMPONENT SIDE(零件面、正面)︰大多數(shù)零件放置之面。2. SOLDER SIDE(焊錫面、反面)。3. SOLDER MASK(止焊膜面)︰通常指Solder Mask Open 之意。4. TOP PAD︰在零件面上所設(shè)計之零件腳PAD,不管是否鑽孔、電鍍。5. BOTTOM PAD:在銲錫面上所設(shè)計之零件腳PAD,不管是否鑽孔、電鍍。6. POSITIVE LAYER:單、雙層板之各層線路;多層板之上、下兩層線路及內(nèi)層走線皆屬之。7. NEGATIVE LAYER:通常指多層板之電源層。8. INNER PAD:多層板之POSITIVE LAYER 內(nèi)層PAD。9. ANTI-PAD:多層板之NEGATIVE LAYER 上所使用之絕緣範(fàn)圍,不與零件腳相接。10. THERMAL PAD:多層板內(nèi)NEGATIVE LAYER 上必須零件腳時所使用之PAD,一般稱為散熱孔或?qū)住?1. PAD (銲墊):除了SMD PAD 外,其他PAD 之TOP PAD、BOTTOM PAD 及INNER PAD 之形狀大小皆應(yīng)相同。12. Moat : 不同信號的 Power& GND plane 之間的分隔線13. Grid : 佈線時的走線格點2. Test Point : ATE 測試點供工廠ICT 測試治具使用ICT 測試點 LAYOUT 注意事項:PCB 的每條TRACE 都要有一個作為測試用之TEST PAD(測試點),其原則如下:1. 一般測試點大小均為30-35mil,元件分布較密時,測試點最小可至30mil.測試點與元件PAD 的距離最小為40mil。2. 測試點與測試點間的間距最小為50-75mil,一般使用75mil。密度高時可使用50mil,3. 測試點必須均勻分佈於PCB 上,避免測試時造成板面受力不均。4. 多層板必須透過貫穿孔(VIA)將測試點留於錫爐著錫面上(Solder Side)。5. 測試點必需放至於Bottom Layer6. 輸出test point report(.asc 檔案powerpcb v3.5)供廠商分析可測率7. 測試點設(shè)置處:Setuppadsstacks
標(biāo)簽: layout design pcb 硬件工程師
上傳時間: 2013-11-17
上傳用戶:cjf0304
RA8802 是一個中英文文字與繪圖模式的點矩陣液晶顯示(LCD)控制器,可最大支援320x240 點的LCD 面 板。內(nèi)建512Kbyte 的字形碼可以顯示中文字型、數(shù)字符號與英文字母。在文字模式中,RA8802 可接收標(biāo)準(zhǔn) 中文文字內(nèi)碼直接顯示中文,而不需要進入繪圖模式以繪圖方式描繪中文,可以節(jié)省許多微處理器時間,提 升液晶顯示中文之處理效率。
上傳時間: 2014-06-08
上傳用戶:wweqas
最小平方近似法 (least-squares approximation) 是用來求出一組離散 (discrete) 數(shù)據(jù)點的近似函數(shù) (approximating function),作實驗所得的數(shù)據(jù)亦常使用最小平方近似法來達成曲線密合 (curve fitting)。以下所介紹的最小平方近似法是使用多項式作為近似函數(shù),除了多項式之外,指數(shù)、對數(shù)方程式亦可作為近似函數(shù)。關(guān)於最小平方近似法的計算原理,請參閱市面上的數(shù)值分析書籍
標(biāo)簽: least-squares approximation approximating discrete
上傳時間: 2015-06-21
上傳用戶:SimonQQ
根據(jù)bluelab3.5.2實例hid-keyboard做出應(yīng)用,能發(fā)出數(shù)字鍵1-5
標(biāo)簽: hid-keyboard bluelab
上傳時間: 2013-12-24
上傳用戶:牧羊人8920
歐基理德輾轉(zhuǎn)相除法(之二) m與n相差太大時,可用(m%n)來取代(m-n),這樣的處理效率較高。以下便以此方法求出最大公因數(shù)。
標(biāo)簽: 除法
上傳時間: 2014-01-14
上傳用戶:llandlu
Boost C++ Libraries Free peer-reviewed portable C++ source libraries Boost C++ Libraries 基本上是一個免費的 C++ 的跨平臺函式庫集合,基本上應(yīng)該可以把它視為 C++ STL 的功能再延伸;他最大的特色在於他是一個經(jīng)過「同行評審」(peer review,可參考維基百科)、開放原始碼的函式庫,而且有許多 Boost 的函式庫是由 C++ 標(biāo)準(zhǔn)委員會的人開發(fā)的,同時部分函式庫的功能也已經(jīng)成為 C++ TR1 (Technical Report 1,參考維基百科)、TR2、或是 C++ 0x 的標(biāo)準(zhǔn)了。 它的官方網(wǎng)站是:http://www.boost.org/,包含了 104 個不同的 library;由於他提供的函式庫非常地多,的內(nèi)容也非常地多元,根據(jù)官方的分類,大致上可以分為下面這二十類: 字串和文字處理(String and text processing) 容器(Containers) Iterators 演算法(Algorithms) Function objects and higher-order programming 泛型(Generic Programming) Template Metaprogramming Preprocessor Metaprogramming Concurrent Programming 數(shù)學(xué)與數(shù)字(Math and numerics) 正確性與測試(Correctness and testing) 資料結(jié)構(gòu)(Data structures) 影像處理(Image processing) 輸入、輸出(Input/Output) Inter-language support 記憶體(Memory) 語法分析(Parsing) 程式介面(Programming Interfaces) 其他雜項 Broken compiler workarounds 其中每一個分類,又都包含了一個或多個函式庫,可以說是功能相當(dāng)豐富。
標(biāo)簽: Boost C++ Libraries
上傳時間: 2015-05-15
上傳用戶:fangfeng
諸如電信設(shè)備、存儲模塊、光學(xué)繫統(tǒng)、網(wǎng)絡(luò)設(shè)備、服務(wù)器和基站等許多復(fù)雜繫統(tǒng)都采用了 FPGA 和其他需要多個電壓軌的數(shù)字 IC,這些電壓軌必須以一個特定的順序進行啟動和停機操作,否則 IC 就會遭到損壞。
上傳時間: 2014-12-24
上傳用戶:packlj
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1