版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGE0-
??課程設(shè)計(jì)(報(bào)告)任務(wù)書(理工科類)Ⅰ、課程設(shè)計(jì)(報(bào)告)題目:Ⅱ、課程設(shè)計(jì)(論文)工作內(nèi)容一、課程設(shè)計(jì)目標(biāo)1.培育綜合運(yùn)用知識(shí)和獨(dú)立開展實(shí)踐創(chuàng)新的能力;2.把PS/2的傳輸協(xié)議理解的更透徹一些;3.將VerilogHDL語(yǔ)言運(yùn)用的更加?jì)故?。二、討論方法及手段?yīng)用1。將任務(wù)分成若干模塊,查閱相關(guān)論文資料,分模塊調(diào)試和完成任務(wù);2.學(xué)習(xí)PS2鍵盤協(xié)議;3。分模塊實(shí)驗(yàn)箱調(diào)試。三、課程設(shè)計(jì)預(yù)期效果1.完成實(shí)驗(yàn)環(huán)境搭建;2.以通用的PS2鍵盤為輸入,設(shè)計(jì)一個(gè)能夠識(shí)別PS2鍵盤輸入編碼的電路,并把鍵值通過數(shù)碼管顯示;3。至少能夠識(shí)別0~9的數(shù)字鍵。同學(xué)姓名:吳韜專業(yè)班級(jí):09級(jí)自動(dòng)化摘要PS/2鍵盤是一種常用的計(jì)算機(jī)輸入設(shè)備,只需稍加改動(dòng),便可很便利的應(yīng)用在各種嵌入式系統(tǒng)中.本文提出了一種利用FPGA來設(shè)計(jì)PS/2接口的方法,結(jié)果表明此方法有容易實(shí)現(xiàn)模塊化和移植性強(qiáng)的特點(diǎn)。【關(guān)鍵詞】PS/2接口嵌入式系統(tǒng)FPGAABSTRACTPS/2keyboardisageneralinputofcomputesystem.Itcanbeeasilyequippedwithvariousembeddedsystems。ThispaperdescribesanewmethodtodesignPS/2interfacewithFPGA。Theresultindicatesthatthedesignhasthefeaturesofeasymodularizationandpowerfultransplantablecapability?!綤eywords】PS/2interface;embeddedsystem;FPGA第一章系統(tǒng)設(shè)計(jì)第一節(jié)課題目標(biāo)及總體方案鍵盤作為嵌入式系統(tǒng)的一種最常用人機(jī)接口設(shè)備,在嵌入式系統(tǒng)中有著相當(dāng)廣泛的應(yīng)用。但開發(fā)者一般均采納自行設(shè)計(jì)的簡(jiǎn)易矩陣鍵盤,這類鍵盤僅僅是按行、列排列起來的矩陣開關(guān),往往需要單獨(dú)設(shè)計(jì)并制作,通用性不強(qiáng)。當(dāng)需要較多的按鍵時(shí),則會(huì)占用較多的I/O端口,在軟件上則要進(jìn)行上電復(fù)位按鍵掃描及通信處理,而且還要加上按鍵的去抖動(dòng)處理,增大了系統(tǒng)的軟硬件開銷。而PS/2鍵盤,內(nèi)嵌自動(dòng)去除按鍵抖動(dòng)的設(shè)計(jì),自動(dòng)地識(shí)別鍵的按下與釋放,軟硬件可發(fā)簡(jiǎn)便,價(jià)格廉價(jià),穩(wěn)定牢靠,將PS/2鍵盤作為嵌入式系統(tǒng)的輸入設(shè)備已經(jīng)成為可行的方案。而目前關(guān)于PS/2鍵盤掌握的應(yīng)用大部分采納單片機(jī)掌握,與單片機(jī)相比,F(xiàn)PGA具有比單片機(jī)更加靈敏,集成度更高,容易移植等特點(diǎn)。本文在分析PS/2協(xié)議和PS/2鍵盤工作原理與特點(diǎn)的基礎(chǔ)上,給出了在ALTERACyclone系列EPIC6Q240C8上對(duì)PS/2鍵盤接口的實(shí)現(xiàn)方法。其次節(jié)PS/2接口協(xié)議簡(jiǎn)介PS/2物理特性PS/2設(shè)備接口用于很多現(xiàn)代的鼠標(biāo)和鍵盤,它最初由IBM開發(fā),最常見的為6腳mini-DIN,其引腳結(jié)構(gòu)和外形如圖1所示。圖1PS/2硬件接口外形圖PS/2設(shè)備有主從之分,現(xiàn)在廣泛使用的PS/2鍵盤鼠標(biāo)均工作在從設(shè)備方式下。PS/2接口的時(shí)鐘與數(shù)據(jù)線都是集電極開路結(jié)構(gòu),必須外接上拉電阻,一般上拉電阻設(shè)置在主設(shè)備中,主從設(shè)備之間的數(shù)據(jù)通信采納雙向同步方式傳輸,時(shí)鐘信號(hào)一般由從設(shè)備產(chǎn)生。二、數(shù)據(jù)包的結(jié)構(gòu)鍵盤的狀態(tài)每轉(zhuǎn)變一次,鍵盤至少會(huì)發(fā)出三個(gè)字節(jié)的數(shù)據(jù)包,在有鍵按下時(shí)會(huì)向主機(jī)發(fā)送該鍵的通碼(MakeCode),當(dāng)鍵釋放時(shí)發(fā)送斷碼(BreakCode)。例如:鍵“A”的通碼為0x1C,鍵“A”的斷碼為:0xF0,0x1C,因此當(dāng)要傳送鍵“A”時(shí),鍵盤發(fā)送的數(shù)據(jù)包的代碼是:0x1C,0xF0,0x1C。接口的時(shí)序規(guī)律PS/2協(xié)議是一種雙向半雙工串行通信協(xié)議,時(shí)鐘信號(hào)由鍵盤產(chǎn)生,最大時(shí)鐘頻率為33kHz,推舉頻率在15kHz.通信兩端通過Clock同步,通過Data交換數(shù)據(jù),任何一方如果想禁止另一方通信時(shí),只需將Clock拉到低電平.其傳輸時(shí)序依據(jù)傳輸?shù)姆较虿煌譃榘l(fā)送和接收兩個(gè)不同時(shí)序規(guī)律,圖2是從鍵盤到主機(jī)的時(shí)序圖.其中:Start:起始位,總為‘0’(低電平)Data0~Data7:8位數(shù)據(jù)位(低位在前,高位在后)Parity:奇偶校驗(yàn)位(為奇校驗(yàn))Stop:停止位,總為‘1'(高電平)當(dāng)鍵盤要向主機(jī)通信時(shí),鍵盤總是首先檢查時(shí)鐘線是否為高電平,如果不是則表明是主機(jī)正在通信,必須緩沖要發(fā)送的數(shù)據(jù)直到重新獲得總線的掌握權(quán)(鍵盤有16個(gè)字節(jié)的緩沖區(qū)),即等到時(shí)鐘線是高電平才能發(fā)送數(shù)據(jù)。而且從鍵盤到主機(jī)的數(shù)據(jù)只能在時(shí)鐘的下降沿時(shí)才能被讀取。當(dāng)主機(jī)到鍵盤進(jìn)行通信時(shí),主機(jī)會(huì)首先把時(shí)鐘線和數(shù)據(jù)線設(shè)置為“懇求發(fā)送”狀態(tài)。簡(jiǎn)略方式為:首先下拉時(shí)鐘線至少100μs來抑制通信,然后下拉數(shù)據(jù)線“懇求發(fā)送",最后釋放時(shí)鐘.在此過程中,鍵盤在不超過10μs的間隔內(nèi)就會(huì)檢查這個(gè)狀態(tài)。當(dāng)鍵盤檢查到這個(gè)狀態(tài)時(shí),就開頭產(chǎn)生時(shí)鐘。和鍵盤發(fā)送的數(shù)據(jù)讀取方式不一樣,主機(jī)發(fā)送的數(shù)據(jù)必須在時(shí)鐘的上升沿讀取.結(jié)果與商量第一節(jié)PS/2接口的規(guī)律仿真本次設(shè)計(jì)采納了自上而下的模塊設(shè)計(jì)方法,考慮需要設(shè)計(jì)以下幾部分模塊:串并轉(zhuǎn)換模塊,分揀接收模塊,掌握模塊,封裝發(fā)送模塊等。這幾部分的規(guī)律關(guān)系如圖3所示:串并轉(zhuǎn)換模塊主要是接收和發(fā)送傳輸數(shù)據(jù),能夠把串行數(shù)據(jù)轉(zhuǎn)變成所需要的并行數(shù)據(jù)。分揀接收模塊功能是把串并轉(zhuǎn)換模塊傳過來的數(shù)據(jù)包依據(jù)肯定的要求進(jìn)行分揀提取,從而得到有用的信息。掌握模塊是設(shè)計(jì)的核心,PS/2接口是半雙工串行總線,因此其發(fā)送和接收不能同時(shí)進(jìn)行,需要掌握模塊對(duì)其時(shí)序進(jìn)行嚴(yán)格的掌握。掌握模塊負(fù)責(zé)協(xié)調(diào)整個(gè)設(shè)計(jì)的全過程,在本設(shè)計(jì)中采納了狀態(tài)機(jī)的設(shè)計(jì)思路。封裝發(fā)送模塊和分揀接收模塊類似,只不過是把要傳送的命令數(shù)據(jù)轉(zhuǎn)變成PS/2協(xié)議要求的發(fā)送數(shù)據(jù)包的格式.整個(gè)設(shè)計(jì)的流程圖如圖4所示:當(dāng)系統(tǒng)上電或復(fù)位時(shí),主設(shè)備首先向鍵盤發(fā)送初始化信號(hào),在得到鍵盤的應(yīng)答信號(hào)后,系統(tǒng)進(jìn)入到了總線空閑狀態(tài),可以進(jìn)行數(shù)據(jù)的發(fā)送和接收,但主設(shè)備擁有更高的優(yōu)先級(jí),正處在接收狀態(tài)時(shí)如果得到發(fā)送懇求,會(huì)中斷數(shù)據(jù)接收,直接進(jìn)入數(shù)據(jù)發(fā)送狀態(tài)。其次節(jié)硬件驗(yàn)證硬件驗(yàn)證在JH-FPGA0233實(shí)驗(yàn)箱實(shí)現(xiàn),在系統(tǒng)中用到復(fù)位電路,電源電路,FPGA芯片,程序下載電路,PS/2接口電路,數(shù)碼顯示電路等。選取Cyclone系列EPIC6Q240C8型FPGA器件進(jìn)行綜合,將綜合后的配置文件下載到開發(fā)板之后,系統(tǒng)上電,PS/2設(shè)備初始化后在實(shí)驗(yàn)箱正確觀察到了鍵盤的輸入。圖5(接收數(shù)字,顯示ASCII碼) 圖6(接收字母,顯示ASCII碼)?心得體會(huì)課程設(shè)計(jì)完成了,在這個(gè)過程中我學(xué)到了很多東西。首先FPGA的硬件驗(yàn)證表明,設(shè)計(jì)的各個(gè)模塊成功地實(shí)現(xiàn)了復(fù)位后的數(shù)據(jù)傳送過程,達(dá)到了預(yù)期的目標(biāo)。VerilogHDL語(yǔ)言的通用性決定了其具有移植性強(qiáng)的特點(diǎn),對(duì)實(shí)際的應(yīng)用具有肯定的參考價(jià)值.本文作者創(chuàng)新點(diǎn):本文所作的討論是在利用單片機(jī)實(shí)現(xiàn)PS/2接口的基礎(chǔ)上,重新用FPGA實(shí)現(xiàn)了對(duì)PS/2接口的掌握。該方法較傳統(tǒng)的單片機(jī)實(shí)現(xiàn)方法具有實(shí)現(xiàn)簡(jiǎn)潔,移植性強(qiáng),便于集成等特點(diǎn)。?參考文獻(xiàn)[1]張琴,向先波,徐國(guó)華.PS/2鍵盤在基于PIC單片機(jī)的遠(yuǎn)程多溫度點(diǎn)巡檢 ?系統(tǒng)中的應(yīng)用機(jī)械與電子,2006(8):40-42。[2]苗新法,王秀華.PS/2鍵盤在嵌入式系統(tǒng)中的應(yīng)用討論[J].蘭州交通??高校學(xué)報(bào)(自然科學(xué)版),2007(1).[3]劉勇,王玉晶,曲斌,于洋.一種嵌入式PC非標(biāo)準(zhǔn)鍵盤的設(shè)計(jì)?附錄程序:/`timescale1ns/1psmoduleps2(clk,rst_n,ps2_clk,ps2_data,ps2_byte);inputclk,rst_n,ps2_clk,ps2_data;output[7:0]ps2_byte;//2?×????μ??regps2_clk0,ps2_clk1,ps2_clk2;wireneg_ps2_clk;always@(posedgeclkornegedgerst_n)if(!rst_n)beginps2_clk0〈=1'b0;ps2_clk1<=1’b0;ps2_clk2<=1'b0;endelsebeginps2_clk0<=ps2_clk;ps2_clk1<=ps2_clk0;ps2_clk2<=ps2_clk1;endassignneg_ps2_clk=ps2_clk2&~ps2_clk1;//°′??ê±Dò??DDè?êyreg[7:0]ps2_byte_r;//ouputps2_byte??ó|μ???′??÷±?á?reg[7:0]temp_dat(yī)a;//êy???o3?±?á?reg[3:0]num;always@(posedgeclkornegedgerst_n)if(!rst_n)begintemp_dat(yī)a<=8'b0;num<=1'b0;endelseif(neg_ps2_clk)//μ±???μ??ê±£?3?·¢ê??tbegincase(num)4'd0:num<=num+1;//?aê?×′ì?4’d1:beginnum<=num+1;temp_data[0]〈=ps2_data;end4'd2:beginnum<=num+1;temp_data[1]〈=ps2_dat(yī)a;end4'd3:beginnum<=num+1;temp_dat(yī)a[2]〈=ps2_dat(yī)a;end4'd4:beginnum〈=num+1;temp_data[3]<=ps2_data;end4’d5:beginnum<=num+1;temp_data[4]<=ps2_data;end4'd6:beginnum<=num+1;temp_data[5]<=ps2_data;end4'd7:beginnum<=num+1;temp_data[6]〈=ps2_data;end4'd8:beginnum〈=num+1;temp_data[7]〈=ps2_dat(yī)a;end4'd9:num<=num+1;4'd10:num〈=0;default:;endcasee(cuò)nd//?ì2aê?·??éê?regkey_f0;always@(posedgeclkornegedgerst_n)if(!rst_n)key_f0〈=0;elseif(num==4’d10)//??′?íêò???×??úμ?êy?Ybeginif(temp_dat(yī)a==8'hf0)key_f0<=1;elsebeginif(!key_f0)//??ps2_byte_r<=temp_data;else//??key_f0<=0;endend//?ò3???ó|μ?ASCII??reg[7:0]ps2_asc;always@(ps2_byte_r)case(ps2_byte_r)8’h15:ps2_asc〈=8'h51;//Q8’h1d:ps2_asc<=8'h57;//W8'h24:ps2_asc<=8'h45;//E8'h2d:ps2_asc<=8'h52;//R8'h2c:ps2_asc〈=8'h54;//T8'h35:ps2_asc〈=8’h59;//Y8’h3c:ps2_asc〈=8'h55;//U8’h43:ps2_asc<=8'h49;//I8'h44:ps2_asc〈=8'h4f;//O8'h4d:ps2_asc<=8’h50;//P8'h1c:ps2_asc〈=8'h41;//A8'h1b:ps2_asc〈=8'h53;//S8'h23:ps2_asc<=8'h44;//D8'h2b:ps2_asc〈=8'h46;//F8'h34:ps2_asc〈=8'h47;//G8'h33:ps2_asc〈=8'h48;//H8'h3b:ps2_asc〈=8’h4a;//J8'h42:ps2_asc<=8’h4b;//K8’h4b:ps2_asc<=8’h4c;//L8’h1a:ps2_asc<=8'h5a;//Z8'h22:ps2_asc<=8'h58;//X8'h21:ps2_asc<=8’h43;//C8'h2a:ps2_asc<=8'h56;//V8’h32:ps2_asc<=8'h42;//B8’h31:ps2_asc<=8'h4e;//N8’h3a:ps2_asc<=8'h4d;//Mendcase//????ó|μ?ASCII???í3?assignps2_byte=ps2_asc;endmodule//////////////////////////////////////////////////////////////////////////////////moduledigitron(clk,rst_n,sm_cs1,sm_cs2,sm_cs3,sm_cs4,sm_db,ps2_byte);inputclk,rst_n;input[7:0]ps2_byte;outputsm_cs1,sm_cs2,sm_cs3,sm_cs4;output[6:0]sm_db;//??êy£?2^24=16*10^6;?′16*10^6*20ns=0.32s=320msreg[19:0]cnt;always@(posedgeclkornegedgerst_n)if(!rst_n)cnt<=25'b0;elsecnt〈=cnt+1’b1;reg[3:0]shi,ge;always@(posedgeclkornegedgerst_n)if(!rst_n)beginshi<=4’d0;ge<=4'd0;endelseif(cnt==19'hf_ffff)beginshi<=ps2_byte/16;ge<=ps2_byte%16;endparameterseg0=7’hc0,seg1=7’hf9,seg2=7’ha4,seg3=7'hb0,seg4=7'h99,seg5=7'h92,seg6=7'h82,seg7=7'hf8,seg8=7'h80,seg9=7’h90,sega=7'h88,segb=7'h83,segc=7’hc6,segd=7'ha1,sege=7’h86,segf=7’h8e;//segf=7'hff;reg[3:0]num;reg[6:0]sm_dbr;always@(num)case(num)4'h0:sm_dbr<=seg0;4’h1:sm_dbr〈=seg1;4'h2:sm_dbr〈=seg2;4'h3:sm_dbr<=seg3;4'h4:sm_dbr〈=seg4;4'h5:sm_dbr<=seg5;4'h6:sm_dbr<=seg6;4’h7:sm_dbr〈=seg7;4’h8:sm_dbr<=seg8;4'h9:sm_dbr〈=seg9;4’hA:sm_dbr〈=sega;4'hB:sm_dbr<=segb;4’hC:sm_dbr<=segc;4'hD:sm_dbr〈=segd;4'hE:sm_dbr<=sege;4'hF:sm_dbr<=segf;default:;endcaseassignsm_db=sm_dbr;regsm_cs2_r,sm_cs1_r;always@(clkorshiorge)beginif(cnt[19])beginsm_cs2_r=0;sm_cs1_r=1;
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年版文印室全權(quán)承包合同樣本版B版
- 2024民房買賣合同:城市住宅小區(qū)民房產(chǎn)權(quán)交易范本12篇
- 2024年環(huán)保管家技術(shù)服務(wù)全面合作協(xié)議
- 2025版專業(yè)打印設(shè)備年度維保及備件供應(yīng)合同3篇
- 福建省南平市外屯中學(xué)高一化學(xué)測(cè)試題含解析
- 業(yè)務(wù)員與公司合作協(xié)議書
- 2024橋涵施工勞務(wù)合同
- 2024-2025學(xué)年初升高銜接-文言句式(判斷句)說課稿
- 旅途迎風(fēng):業(yè)務(wù)全紀(jì)實(shí)
- 科技數(shù)碼:融資與未來
- 少先隊(duì)活動(dòng)課《民族團(tuán)結(jié)一家親-同心共筑中國(guó)夢(mèng)》課件
- 2023年江西南昌大學(xué)保衛(wèi)部(處)招聘考試真題
- 六年級(jí)語(yǔ)文下冊(cè) 期末復(fù)習(xí)非連續(xù)性文本閱讀專項(xiàng)訓(xùn)練(一)(含答案)(部編版)
- 展會(huì)活動(dòng)防疫工作方案
- 肝性腦病的護(hù)理課件-
- 2024年銀行考試-支付清算系統(tǒng)參與者考試近5年真題附答案
- 2024年丟失物品索償協(xié)議書模板
- 建筑物拆除場(chǎng)地清理垃圾外運(yùn)施工方案
- 網(wǎng)絡(luò)信息安全知識(shí)考試參考題庫(kù)300題(含各題型)
- 《UML系統(tǒng)分析與設(shè)計(jì)教程(第2版)》全套教學(xué)課件
- 內(nèi)部調(diào)查與舉報(bào)制度
評(píng)論
0/150
提交評(píng)論