




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、CPLD/FPGA課程設(shè)計(jì)報(bào)告題目:RS-232 串口通信設(shè)計(jì)院 (系):信息科學(xué)與工程學(xué)院專(zhuān)業(yè)班級(jí):通信工程 11學(xué)生姓名:詹文魁學(xué)號(hào):指導(dǎo)教師:吳莉老師2014 年 06 月 09日至 2014 年 6月 20日華中科技大學(xué)武昌分校制RS-232串口通信設(shè)計(jì)課程設(shè)計(jì)任務(wù)書(shū)一、設(shè)計(jì)(調(diào)查報(bào)告 / 論文)題目RS-232 串口通信設(shè)計(jì)二、設(shè)計(jì)(調(diào)查報(bào)告 / 論文)主要內(nèi)容下述設(shè)計(jì)內(nèi)容需由學(xué)生個(gè)人獨(dú)立完成:1理解電路原理圖與工作過(guò)程;2掌握 RS-232 電氣特性;3掌握 RS-232 通信原理及串口通信數(shù)據(jù)格式,并編程完成串行數(shù)據(jù)的發(fā)送、接收和顯示;4能正確處理編程與調(diào)試過(guò)程中所遇到的問(wèn)題。三
2、、原始資料1. 通信與電子系統(tǒng)實(shí)驗(yàn)指導(dǎo)書(shū);2. CPLD/FPGA 實(shí)驗(yàn)箱。四、要求的設(shè)計(jì)(調(diào)查/ 論文)成果1程序結(jié)構(gòu)合理,語(yǔ)言簡(jiǎn)潔,格式規(guī)范,注釋詳細(xì);2. 掌握 RS-232 的工作機(jī)制與原理;3.格式為: 1位起始位, 8 位數(shù)據(jù)位, 1 位停止位,無(wú)奇偶校驗(yàn)位,波特率設(shè)定為300Baud。能與計(jì)算機(jī)正常通信;4.按要求完成課程設(shè)計(jì)報(bào)告,格式符合學(xué)校規(guī)范標(biāo)準(zhǔn),字?jǐn)?shù)不少于2000 字。五、進(jìn)程安排第 1 天選題,課題講解;第 2-3 天 課題分析,完成設(shè)計(jì)方案;第 4-6 天 軟件編程;第 7-8 天 軟件調(diào)試,故障排查;第 9 天結(jié)果驗(yàn)收,評(píng)分;第 10 天撰寫(xiě)課設(shè)報(bào)告。六、主要參考資
3、料1 陳曦 . 通信與電子系統(tǒng)實(shí)驗(yàn)指導(dǎo)書(shū) , 武漢 : 華中科技大學(xué)武昌分校 .2 譚會(huì)生 .EDA 技術(shù)及應(yīng)用 , 西安:西安電子科技大學(xué)出版社 ,2010.3 潘松,黃繼業(yè) .EDA 技術(shù)與 VHDL,北京 : 清華大學(xué)出版社 ,2009.指導(dǎo)教師(簽名):20年月日目錄1. 程 的目的42. 程 目描述和要求43. 程 告內(nèi)容43.1 方案及基本原理43.2 件 73.3 144. 155. 參考 料 16附 程序清 171. 課程設(shè)計(jì)的目的:(1)學(xué)習(xí) RS-232串口通信數(shù)據(jù)結(jié)構(gòu),并編程完成串行數(shù)據(jù)的接收和顯示。( 2)掌握 RS-232 的工作機(jī)制與原理。( 3)熟練掌握 Quar
4、tus2 軟件的使用。( 4)了解 CPLD/FPGA實(shí)驗(yàn)箱。2. 課程設(shè)計(jì)題目描述和要求 :( 1)課程設(shè)計(jì)題目:基于 FPGA的串口通信程序設(shè)計(jì)。( 2)課程設(shè)計(jì)要求:下述設(shè)計(jì)內(nèi)容需由學(xué)生個(gè)人獨(dú)立完成:1 理解電路原理圖與工作過(guò)程;2 掌握 RS-232 電氣特性;3 掌握 RS-232 通信原理及串口通信數(shù)據(jù)格式,并編程完成串行數(shù)據(jù)的接收和顯示;4 能正確處理編程與調(diào)試過(guò)程中所遇到的問(wèn)題 ;5. 在 FPGA中構(gòu)造一個(gè)異步串行通信控制模塊,完成 PC機(jī)發(fā)送的接收,并設(shè)計(jì)顯示模塊,完成接收數(shù)據(jù)的顯示( 3)要求的設(shè)計(jì)成果:1 程序結(jié)構(gòu)合理,語(yǔ)言簡(jiǎn)潔,格式規(guī)范,注釋詳細(xì);2. 掌握 RS-2
5、32 的工作機(jī)制與原理;3. 格式為: 1 位起始位, 8 位數(shù)據(jù)位, 1 位停止位,無(wú)奇偶校驗(yàn)位,波特率設(shè)定為 300Baud。能與計(jì)算機(jī)正常通信;4. 按要求完成課程設(shè)計(jì)報(bào)告,格式符合學(xué)校規(guī)范標(biāo)準(zhǔn),字?jǐn)?shù)不少于2000 字。3. 課程設(shè)計(jì)報(bào)告內(nèi)容:3.1課程設(shè)計(jì)方案及基本原理:設(shè)計(jì)方案:利用實(shí)驗(yàn)箱上的 MAX232芯片控制通過(guò)適當(dāng)分頻 (分頻的目的是為了達(dá)到要求的波特率,控制數(shù)據(jù)傳輸速率)的串行輸入信號(hào),并將其轉(zhuǎn)換為并行信號(hào)并通過(guò)實(shí)驗(yàn)箱上的數(shù)碼管的后兩位顯示從計(jì)算機(jī)中傳輸出來(lái)的 16 進(jìn)制數(shù)。例如在計(jì)算機(jī)端輸入( FF)則會(huì)在試驗(yàn)箱上看到( 000000FF)的顯示圖示。基本原理:RS-32
6、3C標(biāo)準(zhǔn)是美國(guó) EIA( 電子工業(yè)聯(lián)合會(huì))與 BELL等公司一起開(kāi)發(fā)的 1969 年公布的通信協(xié)議。它適合于數(shù)據(jù)傳輸速率在 020000b/s 范圍內(nèi)的通信。這個(gè)標(biāo)準(zhǔn)對(duì)串行通信接口的有關(guān)問(wèn)題,如信號(hào)線(xiàn)功能、電器特性都作了明確規(guī)定。EIA-RS-232C中 +3V+15V之間的電平為 0,-3V-15V 的電平為 1;與 TTL以高低電平表示邏輯狀態(tài)的規(guī)定不同。 因此,為了能夠同計(jì)算機(jī)接口或終端的TTL器件連接,必須在 EIA-RS-232C 與 TTL 電路之間進(jìn)行電平和邏輯關(guān)系的變換。實(shí)現(xiàn)這種變換的方法可用分立元件,也可用集成電路芯片。目前較為廣泛地使用集成電路轉(zhuǎn)換器件,如MC1488、SN
7、75150芯片可完成 TTL 電平到 EIA 電平的轉(zhuǎn)換,而MC1489、SN75154可實(shí)現(xiàn)EIA 電平到 TTL電平的轉(zhuǎn)換。 MAX232芯片可完成 TTL EIA 雙向電平轉(zhuǎn)換。1. 串口通信 :( 1)什么是串口通信:串口是計(jì)算機(jī)上一種非常通用設(shè)備通信的協(xié)議。大多數(shù)計(jì)算機(jī)包含兩個(gè)基于RS232的串口。串口同時(shí)也是儀器儀表設(shè)備通用的通信協(xié)議;很多GPIB兼容的設(shè)備也帶有 RS-232 口。同時(shí),串口通信協(xié)議也可以用于獲取遠(yuǎn)程采集設(shè)備的數(shù)據(jù)。串行接口( Serial port)又稱(chēng)“串口”,主要用于串行式逐位數(shù)據(jù)傳輸。常見(jiàn)的有一般電腦應(yīng)用的 RS-232(使用 25 針或 9 針連接器)和
8、工業(yè)電腦應(yīng)用的半雙 RS-485 與全雙工 RS-422。( 2)串口接口規(guī)格:串行接口按電氣標(biāo)準(zhǔn)及協(xié)議來(lái)分,包括 RS-232-C、 RS-422、RS485、 USB等。 RS-232-C 、RS-422與 RS-485標(biāo)準(zhǔn)只對(duì)接口的電氣特性做出規(guī)定,不涉及接插件、電纜或協(xié)議。 USB是近幾年發(fā)展起來(lái)的新型接口標(biāo)準(zhǔn),主要應(yīng)用于高速數(shù)據(jù)傳輸領(lǐng)域。( 3)串口通信原理:串口通信的概念非常簡(jiǎn)單, 串口按位(bit )發(fā)送和接收字節(jié)。盡管比按字節(jié)(byte )的并行通信慢, 但是串口可以在使用一根線(xiàn)發(fā)送數(shù)據(jù)的同時(shí)用另一根線(xiàn)接收數(shù)據(jù)。它很簡(jiǎn)單并且能夠?qū)崿F(xiàn)遠(yuǎn)距離通信。比如 IEEE488 定義并行通行
9、狀態(tài)時(shí),規(guī)定設(shè)備線(xiàn)總長(zhǎng)不得超過(guò) 20 米,并且任意兩個(gè)設(shè)備間的長(zhǎng)度不得超過(guò) 2 米;而對(duì)于串口而言,長(zhǎng)度可達(dá) 1200 米。典型地,串口用于 ASCII 碼字符的傳輸。通信使用 3 根線(xiàn)完成:(1)地線(xiàn),(2)發(fā)送,(3)接收。由于串口通信是異步的,端口能夠在一根線(xiàn)上發(fā)送數(shù)據(jù)同時(shí)在另一根線(xiàn)上接收數(shù)據(jù)。其他線(xiàn)用于握手,但是不是必須的。2.RS232 芯片( 1)電氣特性:EIA-RS-232C對(duì)電器特性、邏輯電平和各種信號(hào)線(xiàn)功能都作了規(guī)定。在 TxD和 RxD上:邏輯 1(MARK)=-3V-15V邏輯 0(SPACE)=+3 15V在 RTS、CTS、 DSR、DTR和 DCD等控制線(xiàn)上:信號(hào)
10、有效(接通, ON狀態(tài),正電壓) +3V+15V信號(hào)無(wú)效(斷開(kāi), OFF狀態(tài),負(fù)電壓) =-3V-15( 2)RS232接口定義:(3)RS232 平 :( 4)RS232數(shù)據(jù) 格式:串行通信中, 路空 , 路的 TTL 平 是高, 反向 RS232的 平 是低。一個(gè)數(shù)據(jù)的開(kāi)始 RS232 路 高 平, 束 RS232 低 平。數(shù)據(jù) 是從低位向高位一位一位的 。示波器 數(shù) ,左 是數(shù)據(jù)的低位。例如, 于 16 制數(shù)據(jù) 55H和aaH,當(dāng)采用 8 位數(shù)據(jù)位、 1 位停位 位停止位 : 55H=01010101B,高低位倒序后 10101010B,加入一個(gè)起始位 0,一個(gè)停止位 1,55H的數(shù)據(jù)格
11、式 0101010101。aaH=10101010B,高低位倒序后 01010101B,加入一個(gè)起始位 0,一個(gè)停止位 1,aaH的數(shù)據(jù)格式 : 0010101011( 5)RS232通信 程:I:開(kāi)始通信 ,信號(hào) 空 ( ) , 當(dāng) 到由到的跳 ,開(kāi)始 “接收 ” 數(shù)。II : 當(dāng) 到 8 個(gè) , 入信號(hào) 行 ,若仍 低 平, 確 是“起始位”,而不是干 信號(hào)。III : 接收端 到起始位后,隔 16 個(gè)接收 , 入信號(hào) 一次,把 的 作 D0位數(shù)據(jù)。若 1, 作 數(shù)據(jù)位 1;若 0,作 數(shù)據(jù)位 0。IV : 再隔 16 個(gè)接收 , 入信號(hào) 一次,把 的 作 D1位數(shù)據(jù)。直到全部數(shù)據(jù)位都 入
12、。V: 校 位 P(如果有的 )。. ,VI : 接收到 定的數(shù)據(jù)位個(gè)數(shù)和校 位后, 通信接口 路希望收到停止位S(邏輯1) ,若此 未收到 明出 了 在狀 寄存器中置“ ” 志若沒(méi)若此 未收到 1, 明出 了 ,在狀 寄存器中置“ ” 志。若沒(méi)有 , 全部數(shù)據(jù)位 行奇偶校 ,無(wú)校 ,把數(shù)據(jù)位從移位寄存器中送數(shù)據(jù) 入寄存器。若校 ,在狀 寄存器中置奇偶 志。VII : 本幀信息全部接收完把 路上出 的高 平作 空 位。VIII : 當(dāng)信號(hào)再次 低 ,開(kāi)始 入下一 的 。3.2 軟件設(shè)計(jì)( 1)Quartus 頂層設(shè)計(jì)如上圖所示,整個(gè)頂層設(shè)計(jì)可以分為 4 個(gè)部分,(1)鎖相環(huán);作用是將輸入的系統(tǒng)
13、時(shí)鐘信號(hào) ( 系統(tǒng)時(shí)鐘 50MHZ)轉(zhuǎn)換為 12MHZ的 sysclk 時(shí)鐘,在進(jìn)入 RS232前先進(jìn)行第一次分頻彌補(bǔ) RS232自身分頻不足的特點(diǎn)。(2)核心模塊 RS232;作用是將計(jì)算機(jī)輸入的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)便于給后方的顯示模塊處理。 ( 3)分頻模塊;作用是給顯示模塊提供所需的時(shí)鐘,由于顯示模塊的本質(zhì)是一個(gè)個(gè)顯示,所以為了能同時(shí)顯示故將輸入頻率調(diào)至 1KHz以上讓人眼無(wú)法一個(gè)個(gè)識(shí)別形成同時(shí)顯示的效果。 ( 4)顯示模塊;作用是將輸入的并行信號(hào)( 8 位)分成 4 位一組,即兩組進(jìn)行處理后在試驗(yàn)箱的數(shù)碼管上顯示。 (1-1) 模塊一分析:從上圖可以看出: 1.inclk=50MHz
14、 2.DC=50% 3.Ratio=12/25 ,從而可以得出outclk=50MHz*12/25=24MHz,再通過(guò) D觸發(fā)器 2 分頻后得到 12MHz的輸出系統(tǒng)時(shí)鐘來(lái)彌補(bǔ) RS232模塊分頻不足的缺點(diǎn)。 (1-2) 模塊二分析:上圖所示的為RS232 集成模塊, 經(jīng) VHDL 編譯生成的模塊文件。輸入為 sysclk=12MHz ,rxd=計(jì)算機(jī)輸入的串行數(shù)據(jù)串,disp 為 8 位的并行數(shù)據(jù)段。程序 1:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity rs232 isport
15、(sysclk:instd_logic;rxd:instd_logic;disp:out std_logic_vector(7 downto 0);end rs232;分析:定義實(shí)體。輸入信號(hào),輸入時(shí)鐘信號(hào)為邏輯信號(hào),輸出信號(hào)高位為 7。architecture behv of rs232 issignal b: std_logic_vector(9 downto 0);signal r: std_logic_vector(3 downto 0);signal j: std_logic_vector(15 downto 0);signal frxd,gt,gtclr,cclk,gate:std
16、_logic;begingate=gt and cclk;disp(7 downto 0)=b(8 downto 1);將串行數(shù)據(jù)段的frxd=not rxd;1-8disp 為 8 位矢量信號(hào),低位為位數(shù)據(jù)位從b 中取出至于disp0中。分析:定義機(jī)構(gòu)體。先定義可信號(hào)b, r , j 。其中的 b 作為數(shù)據(jù)轉(zhuǎn)移的臨時(shí)載體。R, j 分別作為后續(xù)程序的計(jì)數(shù)單元,其中需要注意的是j 的位數(shù)控制,因?yàn)楫?dāng)需要控制波特率的時(shí)候,由于輸入的 sysclk是固定的12MHz的系統(tǒng)時(shí)鐘信號(hào)無(wú)法改變,故能改變的只有RS232中的分頻系數(shù),但由于分頻的系數(shù)的改變,于是j 作為計(jì)數(shù)信號(hào)其值也將隨之改變。s1:pr
17、ocess(sysclk,gt)beginif gt=0 then j0);elsif sysclkevent and sysclk=1 thenif j=1001110001000000 then j0);else j=j+1;end if;end if;end process;分析:s1 的段碼作用是用來(lái)計(jì)數(shù), 所記數(shù)為 RS232的分頻系數(shù), 上述代碼中的 10011100010 為 40000,通過(guò)計(jì)算 12M/1250=9600,故可以得知波特率為 9600b/s 。通過(guò)改變 j 的值可以很方便的來(lái)設(shè)置所需要的波特率。s2:process(j)beginif j=111001 the
18、n cclk=1;else cclk=0;end if;end process;分析:s2 的段碼作用是當(dāng) j 計(jì)數(shù)到一定數(shù)值的時(shí)候產(chǎn)生一個(gè)脈沖,從而實(shí)現(xiàn)分頻的作用。其中的設(shè)定關(guān)系到分頻的占空比,只需要 j 的值在分頻系數(shù)之內(nèi)即可產(chǎn)生分頻的效果。j 值s3:process(gate,gtclr)beginif gtclr=1 then r=0000;elsif gateevent and gate=1 thenr=r+1;end if;end process;s4:process(gate,r)beginif r=1010 then gtclr=not gate;elsegtclr=0;end
19、 if;end process;分析: s3, s4 段碼的作用是計(jì)數(shù)從0-10 ,即計(jì)數(shù)輸入數(shù)據(jù)段的10 位, 0- 起始位, 1-8- 數(shù)據(jù)位, 9-終止位。s5:process(gate,rxd,b)beginif gateevent and gate=1 thenb(9 downto 0)=rxd&b(9 downto 1);將 b 的后9 位并上rxd的第一位組合成新的信號(hào)b。end if;end process;分析: s5 段碼的作用是,將號(hào) b 中,然后再通過(guò)的s6:process(frxd,gtclr)beginrxd 的輸入信號(hào)通過(guò)移位寄存的方法將RXD中的數(shù)據(jù)一一取出移動(dòng)
20、到信b 的移位從而將rxd 中的數(shù)據(jù)段完整的轉(zhuǎn)移到信號(hào)b 中保存。if gtclr=1 then gt=0;elsif frxdevent and frxd=1 thengt=1;end if;end process;end behv;分析: s6 的段碼的作用是用于判斷起始位,gt 做為標(biāo)志位,當(dāng)已經(jīng)確定為開(kāi)始時(shí),將gt的值置 1。(1-3) 模塊三分析:分析:從上圖可以看出其作用是作為分頻,將50MHz的輸入信號(hào)先通過(guò)PIN1MHZ模塊將50MHZ分為 1Mhz ,再將 1MHZ 的信號(hào)輸入到下一個(gè)分頻信號(hào)中分為頻率為:7812HZ , 31250HZ , 125kHZ , 500kHZ
21、的信號(hào)。1HZ ,488HZ ,1953HZ ,程序 1:PIN1hzLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY PIN1MHZ ISPORT(CLKIN:IN STD_LOGIC;CLKOUT:OUT STD_LOGIC);END PIN1MHZ;ARCHITECTURE A OF PIN1MHZ ISBEGINPROCESS(CLKIN)VARIABLE CNTTEMP:INTEGER RANGE 0 TO 49;BEGINIF CLKIN=1 AND CLKIN EVENT
22、 THENIF CNTTEMP=49 THEN CNTTEMP:=0;ELSEIF CNTTEMP25 THEN CLKOUT=1;ELSECLKOUT=0;END IF;CNTTEMP:=CNTTEMP+1;END IF ;END IF;END PROCESS;END A;分析:上述程序段中可以知道,使用變量VARIABLE做為計(jì)數(shù),從 0-49 剛好為 50 個(gè)數(shù),當(dāng)小于 25 的時(shí)候賦值為 1,其余為 0,使得將 50MHZ處理為 1MHZ。當(dāng)取值大于或等于 50 時(shí)復(fù)位為 0。從而達(dá)到分頻的目的。程序 2:library ieee;use ieee.std_logic_1164.all
23、;use ieee.std_logic_unsigned.all;entity cnt isport(clk:in std_logic;freq1:out std_logic;freq488:out std_logic;freq1953:out std_logic;freq7812:out std_logic;freq31250:out std_logic;freq125k:out std_logic;freq500k:out std_logic);end cnt;architecture behv of cnt issignal temp:std_logic_vector(19 downto
24、 0);beginprocess(clk)beginif clk event and clk=1 thenif temp=11110100001000111111 thentemp=00000000000000000000;elsetemp=temp+1;end if;end if;end process;freq1=temp(19);freq488=temp(10);freq1953=temp(8);freq7812=temp(6);freq31250=temp(4);freq125k=temp(2);freq500k=temp(0);end behv;分析:程序 2 的設(shè)計(jì)思路同樣是使用計(jì)
25、數(shù),但和程序 1 的計(jì)數(shù)不完全相同,數(shù)由 16 進(jìn)制表示, 4 為 2 進(jìn)制組成 1 位 16 進(jìn)制,所以從第 0 位開(kāi)始可以計(jì)數(shù) 2 位,第一位可以計(jì)數(shù) 4 位,第二位可以計(jì)數(shù) 8 位,依次可以得出計(jì)數(shù)量為 2 的 n+1 次方個(gè)數(shù),從而達(dá)到同時(shí)計(jì)數(shù)多個(gè)的目的從而產(chǎn)生多個(gè)時(shí)鐘信號(hào)。(1-4) 模塊四分析:分析:顯示模塊由兩部分組成, 74138 的表面作用是譯碼將輸入的 sel 信號(hào)翻譯出來(lái)并選中制定的數(shù)碼管。其實(shí)質(zhì)作用是由輸入的信號(hào)( 0-7 計(jì)數(shù)為 8 的計(jì)數(shù)信號(hào)輸入) ,來(lái)控制數(shù)碼管的片選。而 display 的作用是來(lái)實(shí)現(xiàn)片選,將 RS232 輸出的并行信號(hào)的兩部分(每部分 4 位組
26、成一個(gè)16 進(jìn)制數(shù))進(jìn)行處理來(lái)實(shí)現(xiàn)段選。分析:上圖為display 模塊的細(xì)節(jié)圖。rxd 中的信號(hào)分為兩組輸入,分別進(jìn)入muxer組。其余的組全部拉低,達(dá)到出去最低兩位顯示,其余為顯示全0 的目的,的第 0 組和第 1cnt8 為 0-7 的計(jì)數(shù),作用是控制 muxer 進(jìn)入 led 程序的順序,而 led 是為了實(shí)現(xiàn)段選,點(diǎn)亮數(shù)碼管的特定位來(lái)顯示輸入數(shù)值。程序 1.library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt8 isport(clk:in std_logic;q:out
27、std_logic_vector(2 downto 0);end cnt8;architecture behv of cnt8 issignal temp:std_logic_vector(2 downto 0);beginprocess(clk)beginif clk event and clk=1 thenif temp=111 thentemp=000;elsetemp=temp+1;end if;end if;end process;qdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdout=0000000
28、;end case;end process;end behv;分析:程序 led 是完成段顯,將輸入的數(shù)值0-15 翻譯成對(duì)應(yīng)的數(shù)碼管編碼。(1-5) 接收模塊分析:程序 rsSedn 作為接受模塊,用于將 232 中發(fā)送的數(shù)據(jù)再次回寫(xiě)到到串口助手的接收端內(nèi)!要是程序完全正常的話(huà)發(fā)送什么就會(huì)在接收窗口接收到什么。3.3 問(wèn)題 :如何真正的實(shí)現(xiàn)發(fā)送和接受同步, 并且發(fā)送的和接收的完全一樣?發(fā)送和接收波特率怎么弄?答:接收和顯示的已經(jīng)做出來(lái)了,但是發(fā)送的4. 總結(jié):參考文獻(xiàn)1 通信與電子系統(tǒng)實(shí)驗(yàn)指導(dǎo)書(shū) . 武漢:華中科技大學(xué)武昌分校 .2 潘松 .EDA技術(shù)與 VHDL.北京:清華大學(xué)出版社, 2
29、009.3 朱運(yùn)利 .EDA技術(shù)應(yīng)用 ( 第二版 ). 北京:電子工業(yè)出版社, 2007.4 王行 .EDA技術(shù)入門(mén)與提高 . 西安:西安電子科技大學(xué)出版社, 2009.5 李莉 . 電子設(shè)計(jì)自動(dòng)化( EDA) . 北京:中國(guó)電力出版社, 2009.附錄 程序清單:程序 1:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity rs232 isport(sysclk:instd_logic;rxd:instd_logic;disp:out std_logic_vector(7 downto
30、 0);end rs232;architecture behv of rs232 issignal b: std_logic_vector(9 downto 0);signal r: std_logic_vector(3 downto 0);signal j: std_logic_vector(15 downto 0);signal frxd,gt,gtclr,cclk,gate:std_logic;begingate=gt and cclk;disp(7 downto 0)=b(8 downto 1);frxd=not rxd;s1:process(sysclk,gt)beginif gt=
31、0 then j0);elsif sysclkevent and sysclk=1 thenif j=1001110001000000 then j0);else j=j+1;end if;end if;end process;s2:process(j)beginif j=111001 then cclk=1;else cclk=0;end if;end process;s3:process(gate,gtclr)beginif gtclr=1 then r=0000;elsif gateevent and gate=1 thenr=r+1;end if;end process;s4:proc
32、ess(gate,r)beginif r=1010 then gtclr=not gate;elsegtclr=0;end if;end process;s5:process(gate,rxd,b)beginif gateevent and gate=1 thenb(9 downto 0)=rxd&b(9 downto 1);end if;end process;s6:process(frxd,gtclr)beginif gtclr=1 then gt=0;elsif frxdevent and frxd=1 thengt=1;end if;end process;end behv;程序 2:
33、LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY PIN1MHZ ISPORT(CLKIN:IN STD_LOGIC;CLKOUT:OUT STD_LOGIC);END PIN1MHZ;ARCHITECTURE A OF PIN1MHZ ISBEGINPROCESS(CLKIN)VARIABLE CNTTEMP:INTEGER RANGE 0 TO 49;BEGINIF CLKIN=1 AND CLKIN EVENT THENIF CNTTEMP=49 THEN CNTTEMP:=0;
34、ELSEIF CNTTEMP25 THEN CLKOUT=1;ELSECLKOUT=0;END IF;CNTTEMP:=CNTTEMP+1;END IF ;END IF;END PROCESS;END A;程序 3:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt isport(clk:in std_logic;freq1:out std_logic;freq488:out std_logic;freq1953:out std_logic;freq7812:out std_lo
35、gic;freq31250:out std_logic;freq125k:out std_logic;freq500k:out std_logic);end cnt;architecture behv of cnt issignal temp:std_logic_vector(19 downto 0);beginprocess(clk)beginif clk event and clk=1 thenif temp=11110100001000111111 thentemp=00000000000000000000;elsetemp=temp+1;end if;end if;end proces
36、s;freq1=temp(19);freq488=temp(10);freq1953=temp(8);freq7812=temp(6);freq31250=temp(4);freq125k=temp(2);freq500kdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdout=0000000;end case;end process;end behv;程序 5:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt8 isport(clk:in std_logic;q:out std_logic_vector(2 downto 0);end cnt8;archite
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- T-ZSM 0060-2024“領(lǐng)跑者”評(píng)價(jià)技術(shù)要求 微型往復(fù)活塞空氣壓縮機(jī)
- 二零二五年度競(jìng)業(yè)禁止期限及競(jìng)業(yè)限制解除后的競(jìng)業(yè)禁止責(zé)任及賠償執(zhí)行及監(jiān)督合同
- 二零二五年度金融衍生品合同印花稅稅率變動(dòng)與市場(chǎng)創(chuàng)新
- 二零二五年度手房過(guò)戶(hù)二手房交易中介服務(wù)合同協(xié)議
- 二零二五年度智慧能源合伙經(jīng)營(yíng)股權(quán)協(xié)議書(shū)
- 二零二五年度文藝演出宣傳推廣合作協(xié)議
- 2025年度智能債權(quán)轉(zhuǎn)讓服務(wù)合同不可適用借款合同解析
- 2025年度生態(tài)魚(yú)塘資源租賃管理合同
- 二零二五年度商鋪?zhàn)赓U糾紛解決機(jī)制合同
- 二零二五年度跨區(qū)域集體合同-XX行業(yè)職工勞動(dòng)條件提升協(xié)議
- 近三年投標(biāo)沒(méi)有發(fā)生過(guò)重大質(zhì)量安全事故的書(shū)面聲明范文
- 《工程熱力學(xué)》(第四版)全冊(cè)配套完整課件
- 2024時(shí)事政治考試題庫(kù)(100題)
- 2024年司法考試真題及答案
- 膽總管切開(kāi)取石T管引流術(shù)護(hù)理查房參考課件
- YYT 1814-2022 外科植入物 合成不可吸收補(bǔ)片 疝修補(bǔ)補(bǔ)片
- 工程機(jī)械設(shè)備綜合保險(xiǎn)
- 中圖版高中地理選擇性必修1第3章第1節(jié)常見(jiàn)天氣現(xiàn)象及成因課件
- 2024年時(shí)政必考試題庫(kù)(名師系列)
- 獸醫(yī)檢驗(yàn)題庫(kù)與答案
- 第三章 環(huán)境污染物在體內(nèi)的生物轉(zhuǎn)運(yùn)和生物轉(zhuǎn)化課件
評(píng)論
0/150
提交評(píng)論