版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
4.1實(shí)驗(yàn)開發(fā)板的主要電路資源
4.2實(shí)驗(yàn)開發(fā)板上的開關(guān)、發(fā)光二極管和按鍵
4.3液晶顯示屏
4.4VGA顯示接口
4.5RS-232串行接口
4.6PS/2鍵盤接口
4.7數(shù)/模轉(zhuǎn)換電路
4.8模/數(shù)轉(zhuǎn)換電路
4.9CPLD芯片XC2C64A
4.10存儲(chǔ)器電路
第4章Spartan-3E實(shí)驗(yàn)開發(fā)板
4.1實(shí)驗(yàn)開發(fā)板的主要電路資源
實(shí)驗(yàn)開發(fā)板的核心FPGA芯片是XILINX公司的Spartan-3E系列的XC3S500E-4FG320C芯片。該FPGA芯片的規(guī)模為50萬(wàn)門,共有320個(gè)管腳,其中有232個(gè)管腳可以由用戶自己定義。該芯片還包含兩個(gè)XILINX公司的可編程芯片,一個(gè)是CoolRunner-Ⅱ系列的CPLD芯片XC2C64A-5VQ44C,該芯片共有64個(gè)宏單元,每個(gè)宏單元由乘積項(xiàng)和觸發(fā)器組成,可以實(shí)現(xiàn)組合邏輯和時(shí)序邏輯功能;另一個(gè)是XILINX公司的串行接口存儲(chǔ)器XCF04S-VO20C,可以用于保存FPGA芯片的配置信息。除了上述XILINX公司的可編程芯片之外,還包含以下幾種主要芯片、電子元件和其它電路資源:
(1)?2行16字符液晶顯示屏。
(2)?8個(gè)發(fā)光二極管。
(3)?PS/2鼠標(biāo)/鍵盤接口電路。
(4)?2個(gè)RS-232串行接口,實(shí)驗(yàn)開發(fā)板可以通過(guò)此接口與計(jì)算機(jī)的串行接口進(jìn)行通信。
(5)?50MHz時(shí)鐘電路,時(shí)鐘信號(hào)接在XC3S500E的C9管腳上,也預(yù)留了外接時(shí)鐘信號(hào)的接口。
(6)基于USB的FPGA/CPLD下載接口電路。
(7)撥動(dòng)開關(guān)和帶有按鍵的旋轉(zhuǎn)開關(guān)。
(8)串行16M位閃存,16M字節(jié)(128M位)閃存(16位數(shù)據(jù)線),64M字節(jié)(512M位)DDRSDRAM(16位數(shù)據(jù)線)。
(9)?VGA顯示接口電路。
(10)?4個(gè)撥動(dòng)開關(guān),4個(gè)按鍵。
(11)?2輸入串行模/數(shù)轉(zhuǎn)換器(ADC)。
(12)?4通道串行數(shù)/模轉(zhuǎn)換器(DAC)。
(13)以太網(wǎng)接口電路。
該實(shí)驗(yàn)開發(fā)板如圖4-1所示。圖4-1實(shí)驗(yàn)開發(fā)板4.2實(shí)驗(yàn)開發(fā)板上的開關(guān)、發(fā)光二極管和按鍵
1.撥動(dòng)開關(guān)
實(shí)驗(yàn)開發(fā)板上設(shè)置了四個(gè)撥動(dòng)開關(guān),如圖4-2所示。
圖4-2中四個(gè)撥動(dòng)開關(guān)所處的位置是接地的位置。
四個(gè)撥動(dòng)開關(guān)有三個(gè)觸點(diǎn),其中兩個(gè)分別接地和電源
(3.3V)電壓,其電路如圖4-3所示。圖4-2四個(gè)撥動(dòng)開關(guān)圖4-3四個(gè)撥動(dòng)開關(guān)的連線圖
2.帶有按鍵的旋轉(zhuǎn)開關(guān)
實(shí)驗(yàn)開發(fā)板設(shè)置了帶有按鍵的旋轉(zhuǎn)開關(guān),如圖4-4所示。
帶有按鍵的旋轉(zhuǎn)開關(guān)分為按鍵和旋轉(zhuǎn)開關(guān)兩部分,按鍵電路如圖4-5所示。圖4-4帶按鍵的旋轉(zhuǎn)開關(guān)圖4-5按鍵電路旋轉(zhuǎn)開關(guān)電路如圖4-6所示。由于開關(guān)A和開關(guān)B的一個(gè)觸點(diǎn)接地,另外兩個(gè)分別接FPGA的I/O管腳,因此應(yīng)該定義FPGA的I/O管腳為帶有上拉電阻的輸入管腳。
旋轉(zhuǎn)開關(guān)能夠順時(shí)針和反時(shí)針旋轉(zhuǎn),一圈設(shè)置了20個(gè)相對(duì)穩(wěn)定的位置,當(dāng)開關(guān)處于這20個(gè)相對(duì)穩(wěn)定的位置時(shí),開關(guān)A和開關(guān)B均處于閉合狀態(tài)。旋轉(zhuǎn)時(shí),其中一個(gè)開關(guān)比另一個(gè)開關(guān)先處于打開的狀態(tài),當(dāng)順時(shí)針旋轉(zhuǎn)時(shí)信號(hào)A和信號(hào)B的波形如圖4-7所示。
圖4-6旋轉(zhuǎn)開關(guān)電路
圖4-7順時(shí)針旋轉(zhuǎn)時(shí)的波形由于任何機(jī)械觸點(diǎn)接觸時(shí)都存在抖動(dòng)現(xiàn)象,抖動(dòng)現(xiàn)象有可能導(dǎo)致錯(cuò)誤判斷旋轉(zhuǎn)開關(guān)的旋轉(zhuǎn)方向,一般開關(guān)的機(jī)械閉合時(shí)間為2ms,因此,為了正確地獲取旋轉(zhuǎn)開關(guān)的旋轉(zhuǎn)方向,必須采取消除抖動(dòng)的措施。
3.發(fā)光二極管
實(shí)驗(yàn)開發(fā)板上設(shè)置了八個(gè)發(fā)光二極管LED,如圖4-8所示。圖4-8八個(gè)發(fā)光二極管八個(gè)發(fā)光二極管的電路如圖4-9所示。發(fā)光二極管的陰極接地,陽(yáng)極通過(guò)390Ω的限流電阻接到FPGA的I/O管腳上,要點(diǎn)亮一個(gè)發(fā)光二極管LED,相應(yīng)的FPGA的I/O管腳應(yīng)該輸出高電平。圖4-9八個(gè)發(fā)光二極管電路
4.按鍵
實(shí)驗(yàn)開發(fā)板的四個(gè)按鍵電路如圖4-10所示。
按鍵開關(guān)的一個(gè)觸點(diǎn)接3.3V電源,另一個(gè)觸點(diǎn)接FPGA的I/O管腳。當(dāng)需要使用這些按鍵時(shí),為了得到非懸空的電平,應(yīng)該定義該FPGA的I/O管腳為帶有下拉電阻的輸入管腳。圖4-10按鍵電路
4.3液?晶?顯?示?屏
實(shí)驗(yàn)開發(fā)板上設(shè)置了一個(gè)2行16字符液晶顯示屏LCD,液晶顯示屏包含一個(gè)SitronixST7066U圖形控制芯片,雖然液晶顯示屏控制芯片支持8位和4位數(shù)據(jù)總線與其它控制芯片的兩種通信模式,但是為了使FPGA芯片能夠連接更多的其它外圍芯片,節(jié)約FPGA芯片的I/O管腳資源,盡可能少占用FPGA芯片的管腳,通常采用與StrataFlash存儲(chǔ)器芯片共用FPGA的I/O管腳的方法。
FPGA芯片僅通過(guò)4位數(shù)據(jù)信號(hào)線和3位控制信號(hào)線與LCD控制芯片進(jìn)行通信。寫入數(shù)據(jù)時(shí),分兩次輸入到LCD控制芯片中,高4位先送,低4位后送,如圖4-11所示。為了防止FPGA芯片I/O管腳驅(qū)動(dòng)多個(gè)負(fù)載,導(dǎo)致負(fù)載過(guò)重的現(xiàn)象,在連接SrtataFlsahI/O管腳的數(shù)據(jù)總線上串入了390Ω電阻。圖4-11FPGA與液晶顯示屏LCD的接口電路接口信號(hào)說(shuō)明見表4-1。表4-1接口信號(hào)說(shuō)明4.3.1液晶顯示屏控制芯片
控制芯片內(nèi)部有三組存儲(chǔ)器,分別為顯示數(shù)據(jù)存儲(chǔ)器(DDRAM)、字符發(fā)生器存儲(chǔ)器(CGROM)和字符產(chǎn)生器存儲(chǔ)器(CGRAM)。
1.DDRAM
數(shù)據(jù)存儲(chǔ)器DDRAM存儲(chǔ)了需要顯示的字符編碼,存儲(chǔ)在DDRAM中的字符編碼與保存在CGROM只讀存儲(chǔ)器中的具體字符位圖或存放在CGRAM隨機(jī)存儲(chǔ)器中用戶自定義的字符位圖相對(duì)應(yīng)。
液晶顯示屏LCD分2行顯示字符,每一行顯示16個(gè)字符,兩行共32個(gè)字符,顯示的字符位置與數(shù)據(jù)存儲(chǔ)器DDRAM的地址相對(duì)應(yīng)。圖4-12給出了顯示器32位字符位置的默認(rèn)地址。圖4-1232位字符位置的默認(rèn)地址數(shù)據(jù)存儲(chǔ)器DDRAM的存儲(chǔ)空間為2×40,液晶顯示屏第一行顯示字符存儲(chǔ)在地址0X00~0X0F之間,0X10~0X27和0X50~0X67之間的地址用來(lái)存儲(chǔ)其它非顯示數(shù)據(jù);第二行的字符存儲(chǔ)在地址0X40~0X4F之間,0X50~0X67之間的地址用來(lái)存儲(chǔ)其它不顯示的數(shù)據(jù)。
執(zhí)行左移指令時(shí),顯示內(nèi)容左移,如圖4-13所示。
執(zhí)行右移指令時(shí),顯示內(nèi)容右移,如圖4-14所示。圖4-13顯示內(nèi)容左移圖4-14顯示內(nèi)容右移
2.CGROM
字符發(fā)生只讀存儲(chǔ)器CGROM保存的是已經(jīng)定義好的具體字符的字體位圖,如圖4-15所示。
對(duì)應(yīng)字符的編碼存儲(chǔ)在DDRAM中,每個(gè)字符的位置與CGROM的位置按順序?qū)?yīng),其中英文字符存儲(chǔ)在CGROM相應(yīng)的ASCII編碼地址中。例如,要在液晶顯示屏LCD的第一行和第一個(gè)字符位置上顯示字符“F”,該字所對(duì)應(yīng)的編碼為46H,把編碼46H寫到DDRAM中對(duì)應(yīng)的位置“00H”中。
如果要顯示自定義字符和圖形,控制芯片在DDRAM中保留的00H與0X07H地址用于存放自定義的字符編碼,而自定義字符位圖存儲(chǔ)在CGRAM中。圖4-15CGROM
3.CGRAM
字符產(chǎn)生器存儲(chǔ)器CGRAM為使用者提供了8位的自編字符位圖。每個(gè)自定義字符位由8行位圖的5個(gè)點(diǎn)組成,如圖4-16所示。
在向CGRAM讀或?qū)懼?,需初始化CGRAM的地址計(jì)數(shù)器。
圖4-16表示產(chǎn)生一個(gè)西洋跳棋盤圖形位圖時(shí)如何確定各地址和數(shù)據(jù)。該自定義字符存儲(chǔ)在第四個(gè)CGRAM字符位置中,對(duì)應(yīng)的DDRAM的位置是0X03。寫自定義字符時(shí),使用設(shè)置CGRAM地址命令初始化CGRAM地址。前三行(A5~A3)的地址位對(duì)應(yīng)自定義字符位位置,后三行(A2~A0)的地址位對(duì)應(yīng)字符地址的行地址,寫數(shù)據(jù)到CGRAM或DDRAM命令用來(lái)寫每個(gè)字符位行。“1”表示點(diǎn)亮,“0”表示熄滅。只有低5位的數(shù)據(jù)被用到,高3位的數(shù)據(jù)為無(wú)關(guān)項(xiàng)。第8行的數(shù)據(jù)位一般為0,一般對(duì)應(yīng)光標(biāo)的位置。圖4-16CGRAM的一個(gè)圖形位圖
4.3.2液晶顯示屏控制芯片的控制字
為了使液晶顯示屏顯示需要顯示的字符,需要按照規(guī)定的順序?qū)⒖刂谱謱懙揭壕э@示屏控制芯片中,液晶顯示屏控制芯片的控制字見表4-2。表4-2液晶顯示屏控制芯片的控制字如果LCD_E使能信號(hào)為低,則所有其它輸入LCD信號(hào)都不起作用。
液晶顯示屏控制芯片的控制字功能如下:
(1)清屏。指令格式如下:
清屏指令使指針返回到原始位置(最左上角),寫一個(gè)空白內(nèi)容(ASCII/ANSI字符編碼為0X20)給所有的DDRAM地址。地址計(jì)數(shù)器置0,清除所有的選擇設(shè)置。I/D控制位置1(地址自動(dòng)增加模式),執(zhí)行時(shí)間需要82μs~1.64ms。
(2)返回。指令格式如下:
返回指令使光標(biāo)和光標(biāo)位置的字符回到原始位置(最左上角),DDRAM的內(nèi)容不受影響,執(zhí)行時(shí)間需要40μs~1.6ms。
(3)設(shè)置輸入模式。指令格式如下:
設(shè)置光標(biāo)移動(dòng)的方向,并指定整體顯示是否移動(dòng)。其中數(shù)據(jù)位DB1(I/D)設(shè)置為1時(shí)是增量模式(地址計(jì)數(shù)器AC自動(dòng)加1);DB1(I/D)設(shè)置為0時(shí)是減量模式(地址計(jì)數(shù)器AC自動(dòng)減1)。數(shù)據(jù)位DB0(S)設(shè)置為1時(shí)顯示全部左移(I/D=1)或右移(I/D=0);DB0(S)設(shè)置為0時(shí)顯示不移動(dòng),光標(biāo)移動(dòng)。
例如,當(dāng)I/D=1和S=1時(shí),寫數(shù)據(jù)給CGRAM(DDRAM)或從CGRAM(DDRAM)讀數(shù)據(jù)后,顯示內(nèi)容左移,光標(biāo)不移動(dòng)。(4)顯示開關(guān)控制。指令格式如下:
D:顯示控制。D=1時(shí)顯示開;D=0時(shí)顯示關(guān)。
C:光標(biāo)控制。C=1時(shí)打開光標(biāo)顯示;D=0時(shí)關(guān)閉光標(biāo)顯示。
B:閃爍控制。B=1時(shí)光標(biāo)閃爍;B=0時(shí)光標(biāo)不閃爍。(5)光標(biāo)和顯示移位。指令格式如下:
光標(biāo)和顯示移位控制字說(shuō)明見表4-3。
表4-3光標(biāo)和顯示移位控制字說(shuō)明
(6)功能設(shè)置。設(shè)置數(shù)據(jù)傳輸接口總線寬度、單行顯示或雙行顯示方式等。
指令格式如下:
DL:設(shè)置數(shù)據(jù)接口數(shù)據(jù)線位數(shù)。DL=1時(shí),采用8位數(shù)據(jù)總線DB7~DB0;DL=0時(shí),采用4位數(shù)據(jù)總線DB7~DB4,不使用DB3~DB0。須分兩次傳輸操作才能完成8位數(shù)據(jù)的傳輸。
N:設(shè)置顯示行。N=1時(shí),雙行顯示;N=0時(shí),單行顯示。
F:設(shè)置顯示字形大小。F=1時(shí),大小為5×10點(diǎn)陣;F=0時(shí),大小為5×7點(diǎn)陣。
(7)設(shè)置CGRAM地址。指令格式如下:
CGRAM地址指針設(shè)置范圍為0~63。
(8)設(shè)置DDRAM地址。指令格式如下:
設(shè)置DDRAM地址,當(dāng)設(shè)置為單行顯示模式時(shí),地址范圍為00H~4FH;當(dāng)設(shè)置為雙行顯示模式時(shí),第一行的地址范圍為00H~27H,第二行的地址范圍為40H~67H。(9)讀忙標(biāo)志BF和地址計(jì)數(shù)器AC的值。指令格式如下:
當(dāng)BF=1時(shí),表示忙,此時(shí)不接受命令和數(shù)據(jù)。
AC表示地址計(jì)數(shù)器AC的值。
(10)寫數(shù)據(jù)給CGRAM或DDRAM。指令格式如下:
如果該命令在設(shè)置DDRAM地址命令之后,則寫數(shù)據(jù)給DDRAM;如果該命令在設(shè)置CGRAM地址命令之后,則寫數(shù)據(jù)給CGRAM。根據(jù)設(shè)置模式,在寫操作之后,地址自動(dòng)加1或自動(dòng)減1。
(11)從CGRAM或DDRAM讀數(shù)據(jù)。指令格式如下:
如果該命令在設(shè)置DDRAM地址命令之后,則從DDRAM讀數(shù)據(jù);如果該命令在設(shè)置CGRAM地址命令之后,則從CGRAM讀數(shù)據(jù)。4.3.3液晶顯示屏控制芯片的工作時(shí)序
如果采用4位數(shù)據(jù)總線DB7~DB4,液晶顯示屏控制芯片的寫操作時(shí)序如圖4-17所示,其中時(shí)鐘信號(hào)CLOCK的頻率為50MHz。寄存器選擇信號(hào)(LCD_RS)和讀/寫控制信號(hào)(LCD_RW)必須至少穩(wěn)定40ns后,才能使能信號(hào)LCD_E轉(zhuǎn)向高電平。使能信號(hào)必須保留高電平230ns或更長(zhǎng)時(shí)間,也就是等于或超過(guò)12個(gè)時(shí)鐘周期(50MHz)。圖4-17采用4位數(shù)據(jù)總線時(shí)輸入命令和數(shù)據(jù)的時(shí)序圖在實(shí)際使用中,LCD_RW信號(hào)可以置為低電平,可以不從顯示屏讀取數(shù)據(jù),按照規(guī)定的時(shí)序?qū)⒅噶顚懭胍壕э@示屏控制芯片中。
所有的命令和數(shù)據(jù)均以8位形式傳送給字符顯示屏控制芯片,采用4位數(shù)據(jù)總線傳輸時(shí),每一次8位傳送操作必須分兩次4位傳輸操作才能完成,先傳送高4位,再傳送低4位,其間隔時(shí)間至少1μs,時(shí)序如圖4-18所示。圖4-18輸入命令和數(shù)據(jù)時(shí)序圖完成一個(gè)8位的傳輸操作后,與下一次傳輸操作的時(shí)間間隔至少要超過(guò)40μs。而在傳輸清屏指令之后,與下一次傳輸操作的時(shí)間間隔至少要超過(guò)1.64ms。
上電后,必須向液晶顯示屏控制芯片傳送初始化命令。由于接通電源后,液晶顯示屏控制芯片默認(rèn)為第一次寫數(shù)據(jù)操作是8位數(shù)據(jù)傳輸,而實(shí)驗(yàn)開發(fā)板上的液晶顯示屏控制芯片的DB3~DB0沒有連接,僅連接了4位數(shù)據(jù)總線DB7~DB4,這就需要重復(fù)寫入功能控制字0X3后再寫入采用4位數(shù)據(jù)總線傳輸方式,傳輸功能設(shè)置控制字中的DL=0,以及寫入功能控制字0X2。初始化步驟如下:
(1)電源接通后,等待15ms以上,當(dāng)時(shí)鐘頻率為50MHz時(shí),15ms就等于750000個(gè)時(shí)鐘周期。
(2)傳送控制字SF_D<11:8>=0x3,數(shù)據(jù)穩(wěn)定后,LCD_E變成高電平,并且保持高電平12個(gè)時(shí)鐘周期。
(3)等待4.1ms或更長(zhǎng)時(shí)間,當(dāng)時(shí)鐘為50MHz時(shí),即為205000個(gè)時(shí)鐘周期。
(4)傳送控制字SF_D<11:8>=0x3,LCD_E變成高電平,并且保持高電平12個(gè)時(shí)鐘周期。
(5)等待100μs或更長(zhǎng)時(shí)間,當(dāng)時(shí)鐘為50MHz時(shí),即為5000個(gè)時(shí)鐘周期。
(6)傳送控制字SF_D<11:8>=0x2,LCD_E保持高電平12個(gè)時(shí)鐘周期。
(7)等待40μs或更長(zhǎng)時(shí)間,當(dāng)時(shí)鐘為50MHz時(shí),即為2000個(gè)時(shí)鐘周期。
(8)傳送功能設(shè)置命令控制字0X28,DL=0時(shí),采用4位數(shù)據(jù)總線DB7~DB4;N=1時(shí),雙行顯示;F=0時(shí),5×7點(diǎn)陣。
(9)傳送模式設(shè)置命令,0X06,設(shè)置顯示屏自動(dòng)增加地址指針。
(10)傳送顯示打開命令,0X0c,打開顯示屏,關(guān)閉光標(biāo)顯示。
(11)等待至少1.64ms(82000個(gè)時(shí)鐘周期)。
初始化完成后,再傳輸指定地址計(jì)數(shù)器地址和顯示的數(shù)據(jù)。當(dāng)?shù)刂酚?jì)數(shù)器配置為自動(dòng)增1和顯示多個(gè)字符時(shí),依次傳輸多個(gè)字符編碼,每個(gè)字符自動(dòng)存儲(chǔ)并顯示在下個(gè)位置。
4.4VGA顯示接口
實(shí)驗(yàn)開發(fā)板上設(shè)置了VGA接口,通過(guò)一個(gè)15針接口連接到計(jì)算機(jī)的顯示器,如圖4-19所示。
實(shí)驗(yàn)開發(fā)板的VGA接口信號(hào)如圖4-20所示。圖4-19實(shí)驗(yàn)開發(fā)板上的VGA接口
圖4-20VGA接口信號(hào)
FPGA通過(guò)一個(gè)270Ω的電阻向顯示器提供5個(gè)驅(qū)動(dòng)信號(hào),其中3個(gè)彩色信號(hào)分別為紅(VGA_RED)、綠(VGA_GREEN)和藍(lán)(VGA_BLU),另外兩個(gè)是同步信號(hào),分別為行同步信號(hào)(VGA_HSYNC)和場(chǎng)同步信號(hào)(VGA_VSYNC)。紅、綠、藍(lán)信號(hào)通過(guò)組合后顯示的顏色如表4-4所示。表4-4紅、綠、藍(lán)信號(hào)組合后顯示的顏色對(duì)于陰極射線管的顯示器,控制電子束打到熒光屏上形成一個(gè)像素點(diǎn),電子束從左到右(稱為水平掃描)和從上到下掃描(垂直掃描),不斷重復(fù)上述過(guò)程,由于掃描的速度比較快,人的眼睛看到的是一整屏圖像,其實(shí)在某一時(shí)刻,只有一個(gè)像素點(diǎn)發(fā)光。
假設(shè)陰極射線管的顯示器為640×480個(gè)像素點(diǎn),顯示器的水平掃描過(guò)程如圖4-21所示。圖4-21行掃描過(guò)程利用實(shí)驗(yàn)開發(fā)板上的資源去控制陰極射線管顯示器顯示需要的文字或圖像,并設(shè)計(jì)出正確的水平和垂直掃描同步脈沖信號(hào)之間相互配合的時(shí)序。
掃描同步信號(hào)的波形和時(shí)間參數(shù)如圖4-22所示。
如果按照每行640個(gè)像素點(diǎn),一幀圖像為480行,顯示一個(gè)像素點(diǎn)的時(shí)間為1/25MHz,像素時(shí)鐘頻率為25MHz,垂直掃描的刷新頻率為60Hz±1Hz,則水平和垂直掃描同步脈沖參數(shù)如表4-5所示。圖4-22掃描同步信號(hào)的波形和時(shí)間參數(shù)表4-5水平和垂直掃描同步脈沖參數(shù)
4.5RS-232串行接口
實(shí)驗(yàn)開發(fā)板上設(shè)置了兩個(gè)RS-232接口,一個(gè)是孔式插座(DCE),另一個(gè)是針式插座(DTE),如圖4-23所示。
實(shí)驗(yàn)開發(fā)板上的兩個(gè)RS-232接口與FPGA的連接如圖
4-24所示。
兩個(gè)RS-232接口通過(guò)一個(gè)接口芯片ST3232(IC2)與FPGA連接,完成FPGA與RS-232接口不同電平之間的轉(zhuǎn)換。圖4-23實(shí)驗(yàn)開發(fā)板上的兩個(gè)RS-232接口
圖4-24實(shí)驗(yàn)開發(fā)板上的兩個(gè)RS-232接口與FPGA的連接
4.6PS/2鍵盤接口
實(shí)驗(yàn)開發(fā)板設(shè)置了一個(gè)PS/2的鼠標(biāo)/鍵盤接口,為標(biāo)準(zhǔn)的6管腳DIN(DeutschesInstitutfuerNorm,該標(biāo)準(zhǔn)是由德國(guó)標(biāo)準(zhǔn)化組織建立的)。連接接口J14如圖4-25所示。
表4-6給出了連接信號(hào),只有連接器的管腳1和5連到FPGA。圖4-25PS/2的鼠標(biāo)/鍵盤接口
表4-6PS/2的鼠標(biāo)/鍵盤接口的連接信號(hào)
PC機(jī)鍵盤采用2線串行總線與主機(jī)進(jìn)行通信,PS/2總線包括時(shí)鐘信號(hào)和數(shù)據(jù)信號(hào),鍵盤和主機(jī)都能夠向?qū)Ψ絺鬏敂?shù)據(jù)。鍵盤采用11位的串行數(shù)據(jù)與主機(jī)進(jìn)行通信,其中包括一個(gè)起始位(總是低電平)、8個(gè)數(shù)據(jù)位(先發(fā)送低位,后發(fā)送高位)、奇偶校驗(yàn)位和停止位(總是高電平),鍵盤允許雙向數(shù)據(jù)交換。
鍵盤采用集電極開路的驅(qū)動(dòng)方式,這樣鍵盤或主機(jī)均可以驅(qū)動(dòng)總線。當(dāng)總線處于空閑狀態(tài)時(shí),數(shù)據(jù)線和時(shí)鐘線均為高電平。
當(dāng)鍵盤向主機(jī)發(fā)送鍵盤的掃描編碼時(shí),傳輸頻率約為20~30kHz,應(yīng)該在時(shí)鐘的下降沿讀取對(duì)應(yīng)的數(shù)據(jù)位,如圖4-26所示。圖4-26發(fā)送鍵盤掃描編碼的時(shí)序圖
PS/2鍵盤采用掃描式編碼來(lái)獲取按鍵的鍵值,每個(gè)按鍵按下時(shí),都會(huì)產(chǎn)生一個(gè)掃描編碼信號(hào)。按鍵的掃描編碼如圖4-27所示。圖4-27鍵盤的掃描編碼例如,按下“A”鍵時(shí),鍵盤通過(guò)時(shí)鐘信號(hào)線PS2_CLK和數(shù)據(jù)信號(hào)線PS2_DATA向主機(jī)發(fā)送一個(gè)十六進(jìn)制碼“1C”。如果按下某一個(gè)鍵不放,鍵盤每隔100ms重復(fù)發(fā)送掃描編碼信號(hào);當(dāng)按鍵釋放后,鍵盤向主機(jī)發(fā)送一個(gè)“F0”。對(duì)于一些擴(kuò)展按鍵,在發(fā)送掃描編碼信號(hào)之前,先發(fā)送一個(gè)“E0”,然后再發(fā)送掃描編碼信號(hào),當(dāng)擴(kuò)展鍵釋放后,再發(fā)送一個(gè)
“E0F0”。
鍵盤或主機(jī)均可以驅(qū)動(dòng)總線,在驅(qū)動(dòng)總線之前,鍵盤會(huì)檢查主機(jī)是否正在發(fā)送數(shù)據(jù)。如果主機(jī)將時(shí)鐘線置為低電平,則需要等待時(shí)鐘線釋放以后鍵盤才能發(fā)送數(shù)據(jù)。
4.7數(shù)/模轉(zhuǎn)換電路
實(shí)驗(yàn)開發(fā)板上設(shè)置了數(shù)/模轉(zhuǎn)換電路,芯片TLC2624為4通道(分別為A、B、C和D通道)12位數(shù)/模轉(zhuǎn)換芯片,如圖
4-28所示。圖4-28實(shí)驗(yàn)開發(fā)板上的數(shù)/模轉(zhuǎn)換芯片數(shù)/模轉(zhuǎn)換芯片TLC2624與FPGA的通信采用串行通信方式,芯片與FPGA的連接如圖4-29所示。
圖4-29中,SPI_MOSI、SPI_MISO和SPI_SCK是與其它芯片共享的串行外部設(shè)備接口總線信號(hào),DAC_CS和DAC_CLR是數(shù)/模轉(zhuǎn)換芯片的控制信號(hào),具體描述如表4-7所示。圖4-29數(shù)/模轉(zhuǎn)換芯片TLC2624與FPGA的連接表4-7連接信號(hào)說(shuō)明控制數(shù)/模轉(zhuǎn)換的時(shí)序圖如圖4-30所示。圖4-30數(shù)/模轉(zhuǎn)換的時(shí)序圖首先FPGA向DAC芯片發(fā)出片選控制DAC_CS信號(hào)有效(DAC_CS為低電平),DAC_CLR異步復(fù)位信號(hào)低電平有效。
FPGA在同步時(shí)鐘的控制下,向DAC芯片發(fā)送串行數(shù)據(jù)(高位在前,低位在后),數(shù)/模轉(zhuǎn)換芯片TLC2624在時(shí)鐘(SPI_SCK)的上升沿捕獲到串行數(shù)據(jù)信號(hào),F(xiàn)PGA提供串行數(shù)據(jù)必需提前4ns以上。DAC芯片在時(shí)鐘(SPI_SCK)的下降沿將接收到的信號(hào)回送。
數(shù)/模轉(zhuǎn)換的數(shù)據(jù)和通道信息均按照已經(jīng)設(shè)定好的通信協(xié)議進(jìn)行,具體通信協(xié)議如圖4-31所示。圖4-31串行通信協(xié)議每進(jìn)行一次轉(zhuǎn)換,F(xiàn)PGA需要向DAC芯片發(fā)送32位串行數(shù)據(jù),這些數(shù)據(jù)中包含了命令控制字、通道地址、需要轉(zhuǎn)換的二進(jìn)制數(shù)據(jù)和無(wú)關(guān)數(shù)據(jù)。由DAC芯片模擬信號(hào)輸出的命令控制字為“0011”。
根據(jù)連接的參考電壓的不同,DAC芯片的4個(gè)通道的輸出電壓也不同。輸出模擬電壓為對(duì)于通道A和B的輸出模擬電壓為
對(duì)于通道C和D的輸出模擬電壓為
4.8模/數(shù)轉(zhuǎn)換電路
實(shí)驗(yàn)開發(fā)板上設(shè)置了模/數(shù)轉(zhuǎn)換電路,包括一個(gè)雙通道的模擬信號(hào)采集電路(由可變?cè)鲆娣糯笃骱湍?數(shù)轉(zhuǎn)換芯片組成),如圖4-32所示。
模/數(shù)轉(zhuǎn)換電路如圖4-33所示,模擬信號(hào)先經(jīng)過(guò)可變?cè)鲆娣糯笃鱈TC6912-1,放大后的信號(hào)輸出到雙通道(Channel0和Channel1)模/數(shù)轉(zhuǎn)換芯片LTC1407A-1。圖4-32實(shí)驗(yàn)開發(fā)板上的模/數(shù)轉(zhuǎn)換芯片位置圖4-33實(shí)驗(yàn)開發(fā)板上的模/數(shù)轉(zhuǎn)換電路模/數(shù)轉(zhuǎn)換芯片LTC1407A-1兩個(gè)通道的反相輸入端電平是一個(gè)固定的電平REF?=1.65V,該電平由電源3.3V分壓得到。LTC1407A-1是14位模/數(shù)轉(zhuǎn)換芯片,輸入信號(hào)電壓范圍為-1.25~+1.25V,中點(diǎn)是參考電壓1.65V,對(duì)應(yīng)輸出一個(gè)14位二進(jìn)制補(bǔ)碼的數(shù)字。因此,對(duì)于輸入到可變?cè)鲆娣糯笃鞯哪M輸入信號(hào)來(lái)說(shuō),對(duì)應(yīng)的模/數(shù)轉(zhuǎn)換芯片輸出的14位數(shù)字D[13:0]的表達(dá)式為
其中,Gain為可變?cè)鲆娣糯笃鞯姆糯蟊稊?shù),VIN為輸入到可變?cè)鲆娣糯笃鞯哪M輸入信號(hào),例如輸入到模/數(shù)轉(zhuǎn)換芯片模擬電壓為+1.25V,則對(duì)應(yīng)的數(shù)字為213=8192。
從VINA和VINB端口輸入的模擬信號(hào)通過(guò)可變?cè)鲆娣糯笃鲗⒛M信號(hào)進(jìn)行放大,改變放大器的增益,為模/數(shù)轉(zhuǎn)換芯片提供合適的輸入信號(hào)電壓,以便提高模/數(shù)轉(zhuǎn)換的精度。
增益可以設(shè)置成多種值,增益的范圍為-1~-100,增益與輸入電壓范圍的關(guān)系如表4-8所示。
可變?cè)鲆娣糯笃髋cFPGA芯片之間的接口信號(hào)如表4-9所示,其中SPI_MOSI、SPI_MISO和SPI_SCK可與其它器件復(fù)用。表4-8增益與輸入電壓范圍的關(guān)系表4-9可變?cè)鲆娣糯笃髋cFPGA芯片之間的接口信號(hào)
FPGA芯片與可變?cè)鲆娣糯笃鞯慕涌谌鐖D4-34所示。當(dāng)FPGA將AMP_CS設(shè)置為低時(shí),SPI總線開始進(jìn)行數(shù)據(jù)傳輸,放大器在SPI_SCK時(shí)鐘信號(hào)的上升沿采集SPI_MOSI的串行數(shù)據(jù),每個(gè)可變?cè)鲆娣糯笃鞯脑鲆嬖O(shè)置成8位的命令字,由2個(gè)4位的部分組成,先發(fā)送最高位??勺?cè)鲆娣糯笃髟赟PI_SCK的下降沿通過(guò)AMP_DOUT輸出串行數(shù)據(jù)。
FPGA芯片與可變?cè)鲆娣糯笃鞯耐ㄐ艜r(shí)序如圖4-35所示。圖4-34FPGA芯片與可變?cè)鲆娣糯笃鞯慕涌趫D4-35FPGA芯片與可變?cè)鲆娣糯笃鞯耐ㄐ艜r(shí)序
FPGA和模/數(shù)轉(zhuǎn)換芯片的接口信號(hào)如表4-10所示,其中SPI_MOSI、SPI_MISO和SPI_SCK與其它器件復(fù)用。
表4-10FPGA與模/數(shù)轉(zhuǎn)換芯片之間的接口信號(hào)
FPGA芯片與模/數(shù)轉(zhuǎn)換芯片的接口如圖4-36所示。當(dāng)AD_CONV信號(hào)有效時(shí),芯片內(nèi)的兩個(gè)模/數(shù)轉(zhuǎn)換器同時(shí)進(jìn)行模/數(shù)轉(zhuǎn)換。
圖4-36FPGA芯片與模/數(shù)轉(zhuǎn)換芯片的接口
FPGA芯片與模/數(shù)轉(zhuǎn)換芯片通信的具體傳輸時(shí)序如圖4-37所示,在AD_CONV信號(hào)的控制下,F(xiàn)PGA芯片從模/數(shù)轉(zhuǎn)換芯片獲得兩個(gè)模/數(shù)轉(zhuǎn)換通道的數(shù)據(jù)。從AD_CONV信號(hào)上升沿開始,經(jīng)過(guò)2個(gè)時(shí)鐘后,開始獲得第0個(gè)通道的模/數(shù)轉(zhuǎn)換數(shù)據(jù);再經(jīng)過(guò)2個(gè)時(shí)鐘后,開始獲得第1個(gè)通道的模/數(shù)轉(zhuǎn)換數(shù)據(jù);直到兩個(gè)通道的模/數(shù)轉(zhuǎn)換數(shù)據(jù)都接收完畢后,再經(jīng)過(guò)2個(gè)時(shí)鐘才能開始獲取下一次數(shù)據(jù)。每獲得一次完整的數(shù)據(jù)共需要34個(gè)時(shí)鐘周期。
模/數(shù)轉(zhuǎn)換芯片在傳輸每個(gè)14位數(shù)據(jù)的前后,輸出數(shù)據(jù)線保留了2個(gè)時(shí)鐘周期的三態(tài)狀態(tài)。模/數(shù)轉(zhuǎn)換芯片將轉(zhuǎn)換后的模擬信號(hào)以14位二進(jìn)制補(bǔ)碼形式輸出。為了有效地利用FPGA的管腳資源,實(shí)驗(yàn)開發(fā)板上的幾個(gè)器件共享SPI總線信號(hào)。當(dāng)FPGA與可編程增益放大器AMP或模/數(shù)轉(zhuǎn)換器ADC進(jìn)行通信時(shí),其它器件盡量不要占用SPI總線的信號(hào),以避免總線沖突。表4-11列出了一些芯片使能控制信號(hào)有效的邏輯值。圖4-37FPGA芯片與模/數(shù)轉(zhuǎn)換芯片的通信時(shí)序表4-11芯片使能控制信號(hào)
4.9CPLD芯片XC2C64A
實(shí)驗(yàn)開發(fā)板上還設(shè)置了一塊CoolRunner-Ⅱ系列的CPLD芯片XC2C64A。該芯片共有64個(gè)宏單元,每個(gè)宏單元由乘積項(xiàng)和觸發(fā)器組成,可以實(shí)現(xiàn)組合邏輯和時(shí)序邏輯功能。FPGA與CPLD芯片XC2C64A的連接如圖4-38所示。實(shí)驗(yàn)開發(fā)板上有若干個(gè)能夠保存FPGA的配置信息的存儲(chǔ)器,XC2C64A芯片完成了FPGA與保存FPGA配置信息的存儲(chǔ)器的相互連接,從而減少了跳線的個(gè)數(shù)。圖4-38FPGA與CPLD芯片XC2C64A的連接
4.10存?儲(chǔ)?器?電
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 四年級(jí)衛(wèi)生管理制度
- 美容店衛(wèi)生監(jiān)督制度
- 衛(wèi)生保健制度制度
- 游泳健身衛(wèi)生制度
- 衛(wèi)生院聘用職工管理制度
- 專柜護(hù)膚品衛(wèi)生管理制度
- 住宿衛(wèi)生十三個(gè)管理制度
- 衛(wèi)生院安全宣傳教育制度
- 社區(qū)衛(wèi)生服中心管理制度
- 美容院?jiǎn)T工衛(wèi)生管理制度
- 山東省濟(jì)南市2025-2026年高三上第一次模擬考試生物+答案
- 2026年廣州中考政治真題變式訓(xùn)練試卷(附答案可下載)
- 鞋子面料知識(shí)
- 北師大版數(shù)學(xué)六年級(jí)下冊(cè)全冊(cè)教學(xué)設(shè)計(jì)及教學(xué)反思
- 行業(yè)協(xié)會(huì)發(fā)展歷史
- 酒店治安防范教育培訓(xùn)安全管理制度
- 北師大版《數(shù)學(xué)》七年級(jí)上冊(cè)知識(shí)點(diǎn)總結(jié)
- 物資管理實(shí)施細(xì)則
- 安全健康與自我管理學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 人教版2019高中英語(yǔ)選擇性必修二(課文語(yǔ)法填空)
- 2022年初會(huì)《經(jīng)濟(jì)法》真題答案
評(píng)論
0/150
提交評(píng)論