三種方法讀取鍵值 使用者設(shè)計(jì)行列鍵盤(pán)介面,一般常採(cǎi)用三種方法讀取鍵值。 中斷式 在鍵盤(pán)按下時(shí)產(chǎn)生一個(gè)外部中斷通知CPU,並由中斷處理程式通過(guò)不同位址讀資料線上的狀態(tài)判斷哪個(gè)按鍵被按下。 本實(shí)驗(yàn)採(cǎi)用中斷式實(shí)現(xiàn)使用者鍵盤(pán)介面。 掃描法 對(duì)鍵盤(pán)上的某一行送低電位,其他為高電位,然後讀取列值,若列值中有一位是低,表明該行與低電位對(duì)應(yīng)列的鍵被按下。否則掃描下一行。 反轉(zhuǎn)法 先將所有行掃描線輸出低電位,讀列值,若列值有一位是低表明有鍵按下;接著所有列掃描線輸出低電位,再讀行值。 根據(jù)讀到的值組合就可以查表得到鍵碼。4x4鍵盤(pán)按4行4列組成如圖電路結(jié)構(gòu)。按鍵按下將會(huì)使行列連成通路,這也是見(jiàn)的使用者鍵盤(pán)設(shè)計(jì)電路。 //-----------4X4鍵盤(pán)程序--------------// uchar keboard(void) { uchar xxa,yyb,i,key; if((PINC&0x0f)!=0x0f) //是否有按鍵按下 {delayms(1); //延時(shí)去抖動(dòng) 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) //按鍵是否放開(kāi) { display(data); } i=4; //計(jì)算返回碼 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; //返回按下的鍵盤(pán)碼 } } else return 17; //沒(méi)有按鍵按下 }
上傳時(shí)間: 2013-11-12
上傳用戶:a673761058
用C 語(yǔ)言來(lái)開(kāi)發(fā)單片機(jī)系統(tǒng)軟件最大的好處是編寫(xiě)代碼效率高、軟件調(diào)試直觀、維護(hù)升級(jí)方便、代碼的重復(fù)利用率高、便于跨平臺(tái)的代碼移植等等,因此C 語(yǔ)言編程在單機(jī)系統(tǒng)設(shè)計(jì)中已得到越來(lái)越廣泛的運(yùn)用。針對(duì)PIC 單片機(jī)的軟件開(kāi)發(fā),同樣可以用C 語(yǔ)言實(shí)現(xiàn)。但在單片機(jī)上用C 語(yǔ)言寫(xiě)程序和在PC 機(jī)上寫(xiě)程序絕對(duì)不能簡(jiǎn)單等同。現(xiàn)在的PC 機(jī)資源十分豐富,運(yùn)算能力強(qiáng)大,因此程序員在寫(xiě)PC 機(jī)的應(yīng)用程序時(shí)幾乎不用關(guān)心編譯后的可執(zhí)行代碼在運(yùn)行過(guò)程中需要占用多少系統(tǒng)資源,也基本不用擔(dān)心運(yùn)行效率有多高。寫(xiě)單片機(jī)的C 程序最關(guān)鍵的一點(diǎn)是單片機(jī)內(nèi)的資源非常有限,控制的實(shí)時(shí)性要求又很高,因此,如果沒(méi)有對(duì)單片機(jī)體系結(jié)構(gòu)和硬件資源作詳盡的了解,以筆者的愚見(jiàn)認(rèn)為是無(wú)法寫(xiě)出高質(zhì)量實(shí)用的C 語(yǔ)言程序。這就是為什么前面所有章節(jié)中的的示范代碼全部用基礎(chǔ)的匯編指令實(shí)現(xiàn)的原因,希望籍此能使讀者對(duì)PIC 單片機(jī)的指令體系和硬件資源有深入了解,在這基礎(chǔ)之上再來(lái)討論C 語(yǔ)言編程,就有水到渠成的感覺(jué)。本書(shū)圍繞中檔系列PIC 單片機(jī)來(lái)展開(kāi)討論,Microchip 公司自己沒(méi)有針對(duì)中低檔系列PIC單片機(jī)的C 語(yǔ)言編譯器,但很多專(zhuān)業(yè)的第三方公司有眾多支持PIC 單片機(jī)的C 語(yǔ)言編譯器提供,常見(jiàn)的有Hitech、CCS、IAR、Bytecraft 等公司。其中筆者最常用的是Hitech 公司的PICC 編譯器,它穩(wěn)定可靠,編譯生成的代碼效率高,在用PIC 單片機(jī)進(jìn)行系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)的工程師群體中得到廣泛認(rèn)可。其正式完全版軟件需要購(gòu)置,但在其網(wǎng)站上有限時(shí)的試用版供用戶評(píng)估。另外,Hitech 公司針對(duì)廣大PIC 的業(yè)余愛(ài)好者和初學(xué)者還提供了完全免費(fèi)的學(xué)習(xí)版PICC-Lite 編譯器套件,它的使用方式和完全版相同,只是支持的PIC 單片機(jī)型號(hào)限制在PIC16F84、PIC16F877 和PIC16F628 等幾款。這幾款Flash 型的單片機(jī)因其所具備的豐富的片上資源而最適用于單片機(jī)學(xué)習(xí)入門(mén),因此筆者建議感興趣的讀者可從PICC-Lite 入手掌握PIC 單片機(jī)的C 語(yǔ)言編程。
標(biāo)簽: PIC C語(yǔ)言編程 單片機(jī)
上傳時(shí)間: 2013-11-12
上傳用戶:wfeel
我國(guó)的骨干通信網(wǎng)上的傳輸速率已經(jīng)向40 GB/s甚至是160 GB/s發(fā)展,傳輸線路以光纖作為主要的傳輸通道。與光纖相關(guān)的損耗和單模光纖的主要色散,即偏振模色散,不僅僅限制了光信號(hào)在通信過(guò)程中的傳輸距離,還很大程度上影響其通信容量。其中,偏振模色散對(duì)單模光纖高速和長(zhǎng)距離通信的影響尤為突出。因此應(yīng)現(xiàn)代光纖通信技術(shù)網(wǎng)的高速發(fā)展的需要,把當(dāng)前流行的FPGA技術(shù)應(yīng)用到單模光纖的偏振模色散的自適應(yīng)補(bǔ)償技術(shù)中,用硬件描述語(yǔ)言來(lái)實(shí)現(xiàn),可以大大提高光纖的偏振模色散自適應(yīng)補(bǔ)償對(duì)實(shí)時(shí)性和穩(wěn)定性的要求。
標(biāo)簽: FPGA 偏振模 仿真 補(bǔ)償技術(shù)
上傳時(shí)間: 2013-11-15
上傳用戶:zhaiye
目前運(yùn)動(dòng)控制主要有兩種實(shí)現(xiàn)方式,一是使用PLC加運(yùn)動(dòng)控制模塊來(lái)實(shí)現(xiàn):二是使用PC加運(yùn)動(dòng)控制卡來(lái)實(shí)現(xiàn)。兩者各有優(yōu)缺點(diǎn),但兩者有以下共同的缺點(diǎn):一是由于它們兒乎都是采用通用微控制器(MCU和DSP)來(lái)實(shí)現(xiàn)電機(jī)控制,由于受CPU速度的限制,以及CPU的多個(gè)進(jìn)程同時(shí)處理
標(biāo)簽: CPLD ARM 運(yùn)動(dòng)控制器
上傳時(shí)間: 2013-10-26
上傳用戶:michael20
隨著數(shù)字電視機(jī)頂盒接收節(jié)目的增加,條件接收顯得越來(lái)越重要,但是在實(shí)際情況下,一個(gè)發(fā)射塔會(huì)供給許多區(qū)域接收節(jié)目,而具體的區(qū)域應(yīng)有具體的區(qū)域限制,智能卡也應(yīng)有區(qū)域性的選擇解擾。本文提出了一種在NIT表中添加描述子以確定具體區(qū)域,解擾該區(qū)域特定節(jié)目的方法,實(shí)際應(yīng)用證明,該方法操作簡(jiǎn)單,修改容易,實(shí)用性較強(qiáng)。
標(biāo)簽: 改進(jìn)型 條件接收 機(jī)頂盒
上傳時(shí)間: 2013-12-18
上傳用戶:JIMMYCB001
“車(chē)聯(lián)網(wǎng)技術(shù)”的興起,大量傳感技術(shù)得到應(yīng)用,受無(wú)線傳輸設(shè)備與傳感器體積限制,信息只能單向傳遞,缺少與被感知設(shè)備間交互。提出一種通過(guò)BOA技術(shù)遠(yuǎn)程感知交通設(shè)備中部件訪問(wèn)的雙向交互技術(shù),配合虛擬獨(dú)立地址技術(shù)可以達(dá)到部件分組獨(dú)立控制。這樣BOA通過(guò)CAN總線集成可以對(duì)設(shè)備整體進(jìn)行全部部件監(jiān)控和更多的優(yōu)化操作,達(dá)到更大范圍內(nèi)的遠(yuǎn)程參數(shù)獲取與監(jiān)控。最后,通過(guò)具有BOA技術(shù)的實(shí)例證明,此種技術(shù)可行。
標(biāo)簽: BOA 車(chē)輛感知網(wǎng)絡(luò) 中的應(yīng)用
上傳時(shí)間: 2013-10-22
上傳用戶:落花無(wú)痕
通過(guò)研究在建設(shè)運(yùn)營(yíng)數(shù)據(jù)網(wǎng)過(guò)程中,利用BGP Community屬性結(jié)合條件路由過(guò)濾技術(shù)實(shí)現(xiàn)路由控制的過(guò)程,提出了在復(fù)雜網(wǎng)絡(luò)環(huán)境以及其它可用技術(shù)受限制的條件下實(shí)現(xiàn)MPLS VPN邏輯網(wǎng)絡(luò)結(jié)構(gòu)的一種新方法,該方案的實(shí)施,使得專(zhuān)用網(wǎng)具有更高的安全性和可擴(kuò)展性。
標(biāo)簽: MPLS VPN 邏輯 上傳時(shí)間: 2013-11-23
上傳用戶:農(nóng)藥鋒6
在現(xiàn)代通信系統(tǒng)中,電話語(yǔ)音的頻帶被限制在300 Hz~4 kHz的范圍內(nèi),帶來(lái)了語(yǔ)音可懂度和自然度的降低。為了在不增加額外成本的前提下提高語(yǔ)音的可懂度和自然度,進(jìn)行了電話語(yǔ)音頻帶擴(kuò)展的研究。提出了一種改進(jìn)的基于碼本映射的語(yǔ)音帶寬擴(kuò)展算法:在碼本映射的過(guò)程中,使用加權(quán)系數(shù)來(lái)得到映射碼本。客觀測(cè)試結(jié)果表明,用此算法得到的寬帶語(yǔ)音的譜失真度比用一般的碼本映射降低至少2%。主觀測(cè)試結(jié)果表明,用此算法得到的寬帶語(yǔ)音具有更好的可懂度和自然度。 Abstract: In modern communication systems, the bandwidth of telephone speech is limited from 300Hz to 4 kHz, which reduces the intelligibility and naturalness of speech. Telephone speech bandwidth extension is researched to get wideband speech and to improve its intelligibility and naturalness, without increasing extra costs. This paper put forward an improved algorithm of speech bandwidth extension based on codebook mapping. In the process of codebook mapping, weighted coefficients were used to get mapping codebook. Objective tests show that spectral distortion of wideband speech obtained by this algorithm reduces at least 2%, comparing to conditional codebook mapping. Subjective tests show that the wideband speech obtained by this algorithm has better intelligibility and naturalness.
標(biāo)簽: 映射 帶寬 擴(kuò)展 語(yǔ)音
上傳時(shí)間: 2014-12-29
上傳用戶:15501536189
雙絞線(TP:Twisted Pairwire)是綜合布線工程中最常用的一種傳輸介質(zhì)。雙絞線由兩根具有絕緣保護(hù)層的銅導(dǎo)線組成。把兩根絕緣的銅導(dǎo)線按一定密度互相絞在一起,可降低信號(hào)干擾的程度,每一根導(dǎo)線在傳輸中輻射的電波會(huì)被另一根線上發(fā)出的電波抵消。雙絞線一般由兩根22~26號(hào)絕緣銅導(dǎo)線相互纏繞而成。如果把一對(duì)或多對(duì)雙絞線放在一個(gè)絕緣套管中便成了雙絞線電纜。在雙絞線電纜(也稱(chēng)雙扭線電纜)內(nèi),不同線對(duì)具有不同的扭絞長(zhǎng)度,一般地說(shuō),扭絞長(zhǎng)度在38.1cm至14cm內(nèi),按逆時(shí)針?lè)较蚺そg,相臨線對(duì)的扭絞長(zhǎng)度在12.7cm以上。與其他傳輸介質(zhì)相比,雙絞線在傳輸距離、信道寬度和數(shù)據(jù)傳輸速度等方面均受到一定限制,但價(jià)格較為低廉。目前,雙絞線可分為非屏蔽雙絞線(UTP:Unshilded Twisted Pair)和屏蔽雙絞線(STP:Shielded Twisted Pair)。雖然雙絞線主要是用來(lái)傳輸模擬聲音信息的,但同樣適用于數(shù)字信號(hào)的傳輸,特別適用于較短距離的信息傳輸。在傳輸期間,信號(hào)的衰減比較大,并且產(chǎn)生波形畸變。采用雙絞線的局域網(wǎng)的帶寬取決于所用導(dǎo)線的質(zhì)量、長(zhǎng)度及傳輸技術(shù)。只要精心選擇和安裝雙絞線,就可以在有限距離內(nèi)達(dá)到每秒幾百萬(wàn)位的可靠傳輸率。當(dāng)距離很短,并且采用特殊的電子傳輸技術(shù)時(shí),傳輸率可達(dá)100Mbps~155Mbps。由于利用雙絞線傳輸信息時(shí)要向周?chē)?信息很容易被竊聽(tīng),因此要花費(fèi)額外的代價(jià)加以屏蔽。屏蔽雙絞線電纜的外層由鋁泊包裹,以減小幅射,但并不能完全消除輻射。屏蔽雙絞線價(jià)格相對(duì)較高,安裝時(shí)要比非屏蔽雙絞線電纜困難。類(lèi)似于同軸電纜,它必須配有支持屏蔽功能的特殊連結(jié)器和相應(yīng)的安裝技術(shù)。但它有較高的傳輸速率,100米內(nèi)可達(dá)到155Mbps。
上傳時(shí)間: 2013-11-05
上傳用戶:pwcsoft
無(wú)論是自動(dòng)應(yīng)答機(jī)、護(hù)照/身份驗(yàn)證設(shè)備,或者是便利店內(nèi)的銷(xiāo)售點(diǎn)終端,都有一些重要信息,例如口令、個(gè)人身份識(shí)別號(hào)(PIN)、密鑰和專(zhuān)有加密算法等,需要特別保護(hù)以防失竊。金融服務(wù)領(lǐng)域采用了各種精細(xì)的策略和程序來(lái)保護(hù)硬件和軟件。因此,對(duì)于金融交易系統(tǒng)的設(shè)計(jì)者來(lái)講,在他設(shè)計(jì)一個(gè)每年要處理數(shù)十億美元業(yè)務(wù)的設(shè)備時(shí),必將面臨嚴(yán)峻挑戰(zhàn)。為確保可信度,一個(gè)支付系統(tǒng)必須具有端到端的安全性。中央銀行的服務(wù)器通常放置在一個(gè)嚴(yán)格限制進(jìn)入的建筑物內(nèi),周?chē)哂袊?yán)密的保護(hù),但是遠(yuǎn)端的支付終端位于公共場(chǎng)所,很容易遭受竊賊侵襲。盡管也可以將微控制器用保護(hù)外殼封閉起來(lái),并附以防盜系統(tǒng),一個(gè)有預(yù)謀的攻擊者仍然可以切斷電源后突破防盜系統(tǒng)。外殼可以被打開(kāi),如果將外殼與微控制器的入侵響應(yīng)加密邊界相聯(lián)結(jié),對(duì)于安全信息來(lái)講就增加了一道保護(hù)屏障。為了實(shí)現(xiàn)真正的安全性,支付系統(tǒng)應(yīng)該將入侵響應(yīng)技術(shù)建立在芯片內(nèi)部,并使用可以信賴的運(yùn)算內(nèi)核。這樣,執(zhí)行運(yùn)算的芯片在發(fā)生入侵事件時(shí)就可以迅速刪除密鑰、程序和數(shù)據(jù)存儲(chǔ)器,實(shí)現(xiàn)對(duì)加密邊界的保護(hù)1。安全微控制器最有效的防護(hù)措施就是,在發(fā)現(xiàn)入侵時(shí)迅速擦除存儲(chǔ)器內(nèi)容。DS5250安全型高速微控制器就是一個(gè)很好的典范,它不僅可以擦除存儲(chǔ)器內(nèi)容,而且還是一個(gè)帶有SRAM程序和數(shù)據(jù)存儲(chǔ)器的廉價(jià)的嵌入式系統(tǒng)。物理存儲(chǔ)器的信心保證多數(shù)嵌入式系統(tǒng)采用的是通用計(jì)算機(jī),而這些計(jì)算機(jī)在設(shè)計(jì)時(shí)考慮更多的是靈活性和調(diào)試的便利性。這些優(yōu)點(diǎn)常常又會(huì)因引入安全缺口而成為其缺陷2。竊賊的首個(gè)攻擊點(diǎn)通常是微控制器的物理存儲(chǔ)器,因此,對(duì)于支付終端來(lái)講,采用最好的存儲(chǔ)技術(shù)尤其顯得重要。利用唾手可得的邏輯分析儀,例如Hewlett-Packard的HP16500B,很容易監(jiān)視到地址和數(shù)據(jù)總線上的電信號(hào),它可能會(huì)暴露存儲(chǔ)器的內(nèi)容和私有數(shù)據(jù),例如密鑰。防止這種竊聽(tīng)手段最重要的兩個(gè)對(duì)策是,在存儲(chǔ)器總線上采用強(qiáng)有力的加密措施,以及選擇在沒(méi)有電源時(shí)也能迅速擦除的存儲(chǔ)技術(shù)。有些嵌入式系統(tǒng)試圖采用帶內(nèi)部浮置柵存儲(chǔ)器(例如EPROM或閃存)的微控制器來(lái)獲得安全性。最佳的存儲(chǔ)技術(shù)應(yīng)該能夠擦除其內(nèi)容,防止泄密。但紫外可擦除的EPROM不能用電子手段去擦除,需要在紫外燈光下照射數(shù)分鐘才可擦除其內(nèi)容,這就增加了它的脆弱性。閃存或EEPROM要求處理器保持工作,并且電源電壓在規(guī)定的工作范圍之內(nèi),方可成功完成擦除。浮置柵存儲(chǔ)技術(shù)對(duì)于安全性應(yīng)用來(lái)講是很壞的選擇,當(dāng)電源移走后,它們的狀態(tài)會(huì)無(wú)限期地保持,給竊賊以無(wú)限長(zhǎng)的時(shí)間來(lái)找尋敏感數(shù)據(jù)。更好的辦法是采用象SRAM這樣的存儲(chǔ)技術(shù),當(dāng)電源被移走或入侵監(jiān)測(cè)電路被觸發(fā)時(shí)以下述動(dòng)作之一響應(yīng):• 當(dāng)電源被移走后存儲(chǔ)器復(fù)零。• 入侵監(jiān)測(cè)電路在數(shù)納秒內(nèi)擦除內(nèi)部存儲(chǔ)器和密鑰。• 外部存儲(chǔ)器在應(yīng)用軟件的控制下以不足100ns的寫(xiě)時(shí)間進(jìn)行擦除。
上傳時(shí)間: 2013-11-14
上傳用戶:dick_sh
蟲(chóng)蟲(chóng)下載站版權(quán)所有 京ICP備2021023401號(hào)-1