三種方法讀取鍵值 使用者設(shè)計(jì)行列鍵盤介面,一般常採用三種方法讀取鍵值。 中斷式 在鍵盤按下時(shí)產(chǎn)生一個(gè)外部中斷通知CPU,並由中斷處理程式通過不同位址讀資料線上的狀態(tài)判斷哪個(gè)按鍵被按下。 本實(shí)驗(yàn)採用中斷式實(shí)現(xiàn)使用者鍵盤介面。 掃描法 對(duì)鍵盤上的某一行送低電位,其他為高電位,然後讀取列值,若列值中有一位是低,表明該行與低電位對(duì)應(yīng)列的鍵被按下。否則掃描下一行。 反轉(zhuǎn)法 先將所有行掃描線輸出低電位,讀列值,若列值有一位是低表明有鍵按下;接著所有列掃描線輸出低電位,再讀行值。 根據(jù)讀到的值組合就可以查表得到鍵碼。4x4鍵盤按4行4列組成如圖電路結(jié)構(gòu)。按鍵按下將會(huì)使行列連成通路,這也是見的使用者鍵盤設(shè)計(jì)電路。 //-----------4X4鍵盤程序--------------// 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) //按鍵是否放開 { 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; //返回按下的鍵盤碼 } } else return 17; //沒有按鍵按下 }
上傳時(shí)間: 2013-11-12
上傳用戶:a673761058
半導(dǎo)體的產(chǎn)品很多,應(yīng)用的場(chǎng)合非常廣泛,圖一是常見的幾種半導(dǎo)體元件外型。半導(dǎo)體元件一般是以接腳形式或外型來劃分類別,圖一中不同類別的英文縮寫名稱原文為 PDID:Plastic Dual Inline Package SOP:Small Outline Package SOJ:Small Outline J-Lead Package PLCC:Plastic Leaded Chip Carrier QFP:Quad Flat Package PGA:Pin Grid Array BGA:Ball Grid Array 雖然半導(dǎo)體元件的外型種類很多,在電路板上常用的組裝方式有二種,一種是插入電路板的銲孔或腳座,如PDIP、PGA,另一種是貼附在電路板表面的銲墊上,如SOP、SOJ、PLCC、QFP、BGA。 從半導(dǎo)體元件的外觀,只看到從包覆的膠體或陶瓷中伸出的接腳,而半導(dǎo)體元件真正的的核心,是包覆在膠體或陶瓷內(nèi)一片非常小的晶片,透過伸出的接腳與外部做資訊傳輸。圖二是一片EPROM元件,從上方的玻璃窗可看到內(nèi)部的晶片,圖三是以顯微鏡將內(nèi)部的晶片放大,可以看到晶片以多條銲線連接四周的接腳,這些接腳向外延伸並穿出膠體,成為晶片與外界通訊的道路。請(qǐng)注意圖三中有一條銲線從中斷裂,那是使用不當(dāng)引發(fā)過電流而燒毀,致使晶片失去功能,這也是一般晶片遭到損毀而失效的原因之一。 圖四是常見的LED,也就是發(fā)光二極體,其內(nèi)部也是一顆晶片,圖五是以顯微鏡正視LED的頂端,可從透明的膠體中隱約的看到一片方型的晶片及一條金色的銲線,若以LED二支接腳的極性來做分別,晶片是貼附在負(fù)極的腳上,經(jīng)由銲線連接正極的腳。當(dāng)LED通過正向電流時(shí),晶片會(huì)發(fā)光而使LED發(fā)亮,如圖六所示。 半導(dǎo)體元件的製作分成兩段的製造程序,前一段是先製造元件的核心─晶片,稱為晶圓製造;後一段是將晶中片加以封裝成最後產(chǎn)品,稱為IC封裝製程,又可細(xì)分成晶圓切割、黏晶、銲線、封膠、印字、剪切成型等加工步驟,在本章節(jié)中將簡介這兩段的製造程序。
上傳時(shí)間: 2013-11-04
上傳用戶:372825274
在分析傳統(tǒng)的鏈路——狀態(tài)算法的基礎(chǔ)上,提出了一種優(yōu)化的衛(wèi)星通信星際路由算法。 該算法能夠找出任意兩顆衛(wèi)星間通信的最佳路徑集合,同時(shí)能夠在鏈路質(zhì)量容許的情況下,盡量 避免通信鏈路切換的發(fā)生,從而較大地提高了系統(tǒng)性能。
上傳時(shí)間: 2014-01-13
上傳用戶:leehom61
LVDS技術(shù): 低電壓差分訊號(hào)(LVDS)在對(duì)訊號(hào)完整性、低抖動(dòng)及共模特性要求較高的系統(tǒng)中得到了廣泛的應(yīng)用。本文針對(duì)LVDS與其他幾種介面標(biāo)準(zhǔn)之間的連接,對(duì)幾種典型的LVDS介面電路進(jìn)行了討論
上傳時(shí)間: 2014-01-13
上傳用戶:stvnash
這次把真正的把源程序公開了,而且還有詳細(xì)的原理教程,希望大家?guī)兔Π阉龅母茫С值钠骷唷? 這個(gè)下載線電路是我做過的中最穩(wěn)定的,成功率很高。你也可以直接使用現(xiàn)有的下載線或者Atmel的原版下 載線。Easy 51Pro串行編程器也支持AT89C2051了。《Easy 51Pro的製作及使用說明》中有詳細(xì)介紹。 有何問題或者發(fā)現(xiàn)了BUG請(qǐng)?jiān)谶@裡給我留言: http://enkj.com/gbook/guestbook.asp?user=digiboy
上傳時(shí)間: 2013-12-12
上傳用戶:xieguodong1234
本文是以數(shù)位訊號(hào)處理器DSP(Digital Singal Processor)之核心架構(gòu)為主體的數(shù)位式溫度控制器開發(fā),而其主要分為硬體電路與軟體程式兩部分來完成。而就硬體電路來看分為量測(cè)電路模組、DSP周邊電路及RS232通訊模組、輸出模組三個(gè)部分,其中在輸出上可分為電流輸出、電壓輸出以及binary command給加熱驅(qū)動(dòng)裝置, RS232 除了可以與PC聯(lián)絡(luò)外也可以與具有CPU的熱能驅(qū)動(dòng)器做命令傳輸。在計(jì)畫中分析現(xiàn)有工業(yè)用加熱驅(qū)動(dòng)裝置和溫度曲線的關(guān)係,並瞭解其控制情況。軟體方面即是溫控器之中央處理器程式,亦即DSP控制程式,其中包括控制理論、感測(cè)器線性轉(zhuǎn)換程式、I/O介面及通訊協(xié)定相關(guān)程式。在控制法則上,提出一個(gè)新的加熱體描述模型,然後以前饋控制為主並輔以PID控制,得到不錯(cuò)的控制結(jié)果。
標(biāo)簽: Processor Digital Singal DSP
上傳時(shí)間: 2013-12-24
上傳用戶:zjf3110
理想的放大器 目前,廠商在線性IC研發(fā)上都有重大的突破。使IC型運(yùn)算放大器的特性和理想相當(dāng)接近。尤其在低頻操作下,OP Amp電路的工作情形實(shí)在太像一個(gè)理想放大器,幾乎與理論的推測(cè)完全相符。→理想的放大器該具備什麼特性?
標(biāo)簽: 算放大器原理
上傳時(shí)間: 2016-07-16
上傳用戶:WALTER
在現(xiàn)代信息戰(zhàn)中,隨著電子對(duì)抗技術(shù)和裝備的不斷發(fā)展,戰(zhàn)場(chǎng)的電磁環(huán)境更加惡劣,通信的電子戰(zhàn)日益激烈。這就限制了無線電通信在某些特殊的戰(zhàn)術(shù)背景下的應(yīng)用。為了保證通信鏈路的安全順暢,研究各種適用于軍事通信的抗干擾、抗偵收、抗測(cè)向技術(shù)和尋求適應(yīng)于這些特定的環(huán)境下新的通信方式就顯得十分必要。超聲波語音通信就是在這樣的背景下提出來的。本文首先概略的介紹了AM調(diào)制、采樣定理、直接數(shù)字頻率合成等相關(guān)的基礎(chǔ)理論;接著結(jié)合課題的具體要求,提出了基于DDS的基本原理,依托FPGA與單片機(jī)相結(jié)合的硬件平臺(tái)來實(shí)現(xiàn)AM數(shù)字調(diào)幅的方案。設(shè)計(jì)中將軟件無線電的思想滲透其中,將原來運(yùn)用模擬器件構(gòu)建的電路都通過軟件編程的方法來實(shí)現(xiàn),增加了系統(tǒng)的靈活性。其次,對(duì)整個(gè)系統(tǒng)的硬、軟件設(shè)計(jì)進(jìn)行了詳細(xì)的敘述;系統(tǒng)的硬件電路由AM調(diào)制電路和功放電路組成,其中,M調(diào)制電路包括模擬部分、數(shù)字部分、電源部分,它主要完成語音信號(hào)與載波信號(hào)的數(shù)字調(diào)幅功能;功放電路是單獨(dú)的一塊電路板,它主要對(duì)調(diào)幅信號(hào)進(jìn)行功率放大以驅(qū)動(dòng)換能器,從而以超聲波的形式將信息發(fā)出。而且,還詳細(xì)分析了各部分硬件電路的設(shè)計(jì)和工作過程,并給出了相應(yīng)的電路圖。系統(tǒng)的軟件設(shè)計(jì)包括有兩個(gè)方面內(nèi)容,一方面是單片機(jī)的軟件設(shè)計(jì),它主要利用IAR Embeded Workbench開發(fā)環(huán)境,完成系統(tǒng)的界面顯示及各種調(diào)幅參數(shù)的設(shè)置;另一方面是FPGA軟件的設(shè)計(jì),它主要利用Quartusll開發(fā)軟件,采用VHDL和QuartusII內(nèi)嵌的圖表編輯器的原理圖式圖形輸入法混合編程的方式,編寫了各模塊單元,在FPGA內(nèi)部實(shí)現(xiàn)了調(diào)幅功能。最后,對(duì)調(diào)制系統(tǒng)進(jìn)行測(cè)試,測(cè)試結(jié)果表明系統(tǒng)工作性能穩(wěn)定,基本上達(dá)到了預(yù)期的設(shè)計(jì)要求。
上傳時(shí)間: 2022-06-18
上傳用戶:
卷積碼是廣泛應(yīng)用于衛(wèi)星通信、無線通信等多種通信系統(tǒng)的信道編碼方式。Viterbi算法是卷積碼的最大似然譯碼算法,該算法譯碼性能好、速度快,并且硬件實(shí)現(xiàn)結(jié)構(gòu)比較簡單,是最佳的卷積碼譯碼算法。隨著可編程邏輯技術(shù)的不斷發(fā)展,使用FPGA實(shí)現(xiàn)Viterbi譯碼器的設(shè)計(jì)方法逐漸成為主流。不同通信系統(tǒng)所選用的卷積碼不同,因此設(shè)計(jì)可重配置的Viterbi譯碼器,使其能夠滿足多種通信系統(tǒng)的應(yīng)用需求,具有很重要的現(xiàn)實(shí)意義。 本文設(shè)計(jì)了基于FPGA的高速Viterbi譯碼器。在對(duì)Viterbi譯碼算法深入研究的基礎(chǔ)上,重點(diǎn)研究了Viterbi譯碼器核心組成模塊的電路實(shí)現(xiàn)算法。本設(shè)計(jì)中分支度量計(jì)算模塊采用只計(jì)算可能的分支度量值的方法,節(jié)省了資源;加比選模塊使用全并行結(jié)構(gòu)保證處理速度;幸存路徑管理模塊使用3指針偶算法的流水線結(jié)構(gòu),大大提高了譯碼速度。在Xilinx ISE8.2i環(huán)境下,用VHDL硬件描述語言編寫程序,實(shí)現(xiàn)(2,1,7)卷積碼的Viterbi譯碼器。在(2,1,7)卷積碼譯碼器基礎(chǔ)上,擴(kuò)展了Viterbi譯碼器的通用性,使其能夠?qū)Σ煌木矸e碼譯碼。譯碼器根據(jù)不同的工作模式,可以對(duì)(2,1,7)、(2,1,9)、(3,1,7)和(3,1,9)四種廣泛運(yùn)用的卷積碼譯碼,并且可以修改譯碼深度等改變譯碼器性能的參數(shù)。 本文用Simulink搭建編譯碼系統(tǒng)的通信鏈路,生成測(cè)試Viterbi譯碼器所需的軟判決輸入。使用ModelSim SE6.0對(duì)各種模式的譯碼器進(jìn)行全面仿真驗(yàn)證,Xilinx ISE8.2i時(shí)序分析報(bào)告表明譯碼器布局布線后最高譯碼速度可達(dá)200MHz。在FPGA和DSP組成的硬件平臺(tái)上進(jìn)一步測(cè)試譯碼器,譯碼器運(yùn)行穩(wěn)定可靠。最后,使用Simulink產(chǎn)生的數(shù)據(jù)對(duì)本文設(shè)計(jì)的Viterbi譯碼器的譯碼性能進(jìn)行了分析,仿真結(jié)果表明,在同等條件下,本文設(shè)計(jì)的Viterbi譯碼器與Simulink中的Viterbi譯碼器模塊的譯碼性能相當(dāng)。
上傳時(shí)間: 2013-06-24
上傳用戶:myworkpost
隨著現(xiàn)代DSP、FPGA等數(shù)字芯片的信號(hào)處理能力不斷提高,基于軟件無線電技術(shù)的現(xiàn)代通信與信息處理系統(tǒng)也得到了更為廣泛的應(yīng)用。軟件無線電的基本思想是以一個(gè)通用、標(biāo)準(zhǔn)、模塊化的硬件系統(tǒng)作為其應(yīng)用平臺(tái),把盡可能多的無線及個(gè)人通信和信號(hào)處理的功能用軟件來實(shí)現(xiàn),從而將無線通信新系統(tǒng)、新產(chǎn)品的開發(fā)逐步轉(zhuǎn)移到軟件上來。另一方面,現(xiàn)代信號(hào)處理系統(tǒng)對(duì)數(shù)據(jù)的處理速度、處理精度和動(dòng)態(tài)范圍的要求也越來越高,需要每秒完成幾千萬到幾百億次運(yùn)算。因此研制具備高速實(shí)時(shí)信號(hào)處理能力的通用硬件平臺(tái)越來越受到業(yè)界的重視。 @@ 目前的高速實(shí)時(shí)信號(hào)處理系統(tǒng)一般均采用DSP+FPGA的架構(gòu),其中DSP主要負(fù)責(zé)完成系統(tǒng)通信和基帶信號(hào)處理算法,而FPGA主要完成信號(hào)預(yù)處理等前端算法,并提供系統(tǒng)常用的各種外部接口邏輯。本文的主要工作就在于完成通用型高速實(shí)時(shí)信號(hào)處理系統(tǒng)的FPGA軟件設(shè)計(jì)。 @@ 本文提出了一種基于多DSP與FPGA的通用高速實(shí)時(shí)信號(hào)處理系統(tǒng)的架構(gòu)。綜合考慮各方面因素,作者選擇使用兩片ADSP-TS201浮點(diǎn)DSP以混合耦合模型構(gòu)成系統(tǒng)信號(hào)處理核心;以Xilinx公司最新的高性能FPGA Virtex-5系列的XC5VLX50T提供系統(tǒng)所需的各種接口,包括與ADSP-TS201的高速Linkport接口以及SPI、UART、SPORT等常用外設(shè)接口。此外,作者還選擇了ADSP-BF533定點(diǎn)DSP加入系統(tǒng)當(dāng)中以擴(kuò)展系統(tǒng)音視頻信號(hào)處理能力,體現(xiàn)系統(tǒng)的通用性。 @@ 基于FPGA的嵌入式系統(tǒng)設(shè)計(jì)正逐漸成為現(xiàn)代FPGA應(yīng)用的一個(gè)熱點(diǎn)。結(jié)合課題需要,作者以Xilinx公司的MicroBlze軟核處理器為核心在Virtex-5片內(nèi)設(shè)計(jì)了一個(gè)嵌入式系統(tǒng),完成了對(duì)CF卡、DDR2 SDRAM存儲(chǔ)器的讀寫控制,并利用片內(nèi)集成的三態(tài)以太網(wǎng)MAC硬核模塊,實(shí)現(xiàn)了系統(tǒng)與上位PC機(jī)之間的以太網(wǎng)通信鏈路。此外,為擴(kuò)展系統(tǒng)功能,適應(yīng)未來可能的軟件升級(jí),進(jìn)一步提高系統(tǒng)的通用性,還將嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-II移植到MicroBlaze處理器上。 @@ 最后,作者介紹了基于Xilinx RocketIO GTP收發(fā)器的高速串行傳輸設(shè)計(jì)的關(guān)鍵技術(shù)和基本的設(shè)計(jì)方法,充分體現(xiàn)了目前高速實(shí)時(shí)信號(hào)處理系統(tǒng)的發(fā)展要求和趨勢(shì)。 @@關(guān)鍵詞:高速實(shí)時(shí)信號(hào)處理;FPGA;Virtex-5;嵌入式系統(tǒng);MicroBlaze
標(biāo)簽: FPGA 實(shí)時(shí)信號(hào) 處理系統(tǒng)
上傳時(shí)間: 2013-05-17
上傳用戶:wangchong
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1