gyks01工業(yè)門(mén)控制器如何對(duì)碼?
電動(dòng)卷簾門(mén)遙控器損壞可以更換一個(gè)新的遙控器,有標(biāo)準(zhǔn)的也有非標(biāo)。要使用新更換的電動(dòng)卷簾門(mén)遙控器之前需要對(duì)卷簾門(mén)進(jìn)行對(duì)碼才能正常使用,
嘰歪case0壹工業(yè)門(mén)控制器如何對(duì)嘛,這個(gè)你可以看那個(gè)操作上的說(shuō)明來(lái)對(duì)。
基于FPGA的汽車(chē)尾燈控制器的設(shè)計(jì)
1.1設(shè)計(jì)的目的
本次設(shè)計(jì)的目的就是通過(guò)實(shí)踐深入理解計(jì)算機(jī)組成原理,了解EDA技術(shù)[2]并掌握VHDL硬件描述語(yǔ)言的設(shè)計(jì)方法和思想。以計(jì)算機(jī)組成原理為指導(dǎo),通過(guò)學(xué)習(xí)的VHDL語(yǔ)言結(jié)合電子電路的設(shè)計(jì)知識(shí)理論聯(lián)系實(shí)際,掌握所學(xué)的課程知識(shí)和基本單元電路的綜合設(shè)計(jì)應(yīng)用。通過(guò)對(duì)實(shí)用汽車(chē)尾燈控制器[3]的設(shè)計(jì),鞏固和綜合運(yùn)用所學(xué)知識(shí),提高IC設(shè)計(jì)能力,提高分析、解決計(jì)算機(jī)技術(shù)實(shí)際問(wèn)題的獨(dú)立工作能力。
1.2設(shè)計(jì)的基本內(nèi)容
根據(jù)計(jì)算機(jī)中狀態(tài)機(jī)原理,利用VHDL設(shè)計(jì)汽車(chē)尾燈控制器的各個(gè)模塊,并使用EDA 工具對(duì)各模塊進(jìn)行仿真驗(yàn)證。汽車(chē)尾燈控制器的設(shè)計(jì)分為4個(gè)模塊:時(shí)鐘分頻模塊、汽車(chē)尾燈主控模塊,左邊燈控制模塊和右邊燈控制模塊。把各個(gè)模塊整合后就形成了汽車(chē)尾燈控制器。通過(guò)輸入系統(tǒng)時(shí)鐘信號(hào)和相關(guān)的汽車(chē)控制信號(hào),汽車(chē)尾燈將正確顯示當(dāng)前汽車(chē)的控制狀態(tài)。
1.3 EDA的介紹
1.3.1 EDA技術(shù)的概念
EDA是電子設(shè)計(jì)自動(dòng)化(Electronic Design Automation)的縮寫(xiě),在20世紀(jì)90年代初從計(jì)算機(jī)輔助設(shè)計(jì)(CAD)、計(jì)算機(jī)輔助制造(CAM)、計(jì)算機(jī)輔助測(cè)試(CAT)和計(jì)算機(jī)輔助工程(CAE)的概念發(fā)展而來(lái)的。EDA技術(shù)就是以計(jì)算機(jī)為工具,設(shè)計(jì)者在EDA軟件平臺(tái)上,用硬件描述語(yǔ)言HDL完成設(shè)計(jì)文件,然后由計(jì)算機(jī)自動(dòng)地完成邏輯編譯、化簡(jiǎn)、分割、綜合、優(yōu)化、布局、布線和仿真,直至對(duì)于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。
1.3.2 EDA技術(shù)的特點(diǎn)
利用EDA技術(shù)進(jìn)行電子系統(tǒng)的設(shè)計(jì),具有以下幾個(gè)特點(diǎn):① 用軟件的方式設(shè)計(jì)硬件;② 用軟件方式設(shè)計(jì)的系統(tǒng)到硬件系統(tǒng)的轉(zhuǎn)換是由有關(guān)的開(kāi)發(fā)軟件自動(dòng)完成的;③ 設(shè)計(jì)過(guò)程中可用有關(guān)軟件進(jìn)行各種仿真;④ 系統(tǒng)可現(xiàn)場(chǎng)編程,在線升級(jí);⑤ 整個(gè)系統(tǒng)可集成在一個(gè)芯片上,體積小、功耗低、可靠性高。因此,EDA技術(shù)是現(xiàn)代電子設(shè)計(jì)的發(fā)展趨勢(shì)。
1.3.3 EDA設(shè)計(jì)流程
典型的EDA設(shè)計(jì)流程如下:
1、文本/原理圖編輯與修改。首先利用EDA工具的文本或圖形編輯器將設(shè)計(jì)者的設(shè)計(jì)意圖用文本或圖形方式表達(dá)出來(lái)。
2、編譯。完成設(shè)計(jì)描述后即可通過(guò)編譯器進(jìn)行排錯(cuò)編譯,變成特定的文本格式,為下一步的綜合做準(zhǔn)備。
3、 綜合。將軟件設(shè)計(jì)與硬件的可實(shí)現(xiàn)性掛鉤,是將軟件轉(zhuǎn)化為硬件電路的關(guān)鍵步驟。
4、 行為仿真和功能仿真。利用產(chǎn)生的網(wǎng)表文件進(jìn)行功能仿真,以便了解設(shè)計(jì)描述與設(shè)計(jì)意圖的一致性。
5、適配。利用FPGA/CPLD布局布線適配器將綜合后的網(wǎng)表文件針對(duì)某一具體的目標(biāo)器件進(jìn)行邏輯映射操作,其中包括底層器件配置、邏輯分割、邏輯優(yōu)化、布局布線。適配報(bào)告指明了芯片內(nèi)資源的分配與利用、引腳鎖定、設(shè)計(jì)的布爾方程描述情況。
6、 功能仿真和時(shí)序仿真。
7、 下載。如果以上的所有過(guò)程都沒(méi)有發(fā)現(xiàn)問(wèn)題,就可以將適配器產(chǎn)生的下載文件通過(guò)FPGA/CPLD下載電纜載入目標(biāo)芯片中。
8、 硬件仿真與測(cè)試。
1.4硬件描述語(yǔ)言(VHDL)
1.4.1 VHDL的介紹
VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。除了含有許多具有硬件特征的語(yǔ)句外,VHDL的語(yǔ)言形式和描述風(fēng)格與句法是十分類似于一般的計(jì)算機(jī)高級(jí)語(yǔ)言。VHDL的程序結(jié)構(gòu)特點(diǎn)是將一項(xiàng)工程設(shè)計(jì),或稱設(shè)計(jì)實(shí)體(可以是一個(gè)元件,一個(gè)電路模塊或一個(gè)系統(tǒng))分成外部(或稱可是部分,及端口)和內(nèi)部(或稱不可視部分),既涉及實(shí)體的內(nèi)部功能和算法完成部分。在對(duì)一個(gè)設(shè)計(jì)實(shí)體定義了外部界面后,一旦其內(nèi)部開(kāi)發(fā)完成后,其他的設(shè)計(jì)就可以直接調(diào)用這個(gè)實(shí)體。這種將設(shè)計(jì)實(shí)體分成內(nèi)外部分的概念是VHDL系統(tǒng)設(shè)計(jì)的基本
1.4.2 VHDL語(yǔ)言的特點(diǎn)
1.用VHDL代碼而不是用原理圖進(jìn)行設(shè)計(jì),意味著整個(gè)電路板的模型及性能可用計(jì)算機(jī)模擬進(jìn)行驗(yàn)證。
2.VHDL元件的設(shè)計(jì)與工藝無(wú)關(guān),與工藝獨(dú)立,方便工藝轉(zhuǎn)換。
3.VHDL支持各種設(shè)計(jì)方法,自頂向下、自底向上或者混合的都可以。
4.可以進(jìn)行從系統(tǒng)級(jí)到邏輯級(jí)的描述,即混合描述。
5.VHDL區(qū)別于其他的HDL,已形成標(biāo)準(zhǔn),其代碼在不同的系統(tǒng)中可交換建模。
2.總體設(shè)計(jì)
2.1需求分析
根據(jù)現(xiàn)代交通規(guī)則,汽車(chē)尾燈控制器應(yīng)滿足以下基本要求:
1.汽車(chē)正常使用是指示燈不亮
2.汽車(chē)右轉(zhuǎn)時(shí),右側(cè)的一盞燈亮
3.汽車(chē)左轉(zhuǎn)時(shí),左側(cè)的一盞燈亮
4.汽車(chē)剎車(chē)時(shí),左右兩側(cè)的指示燈同時(shí)亮
5.汽車(chē)夜間行駛時(shí),左右兩側(cè)的指示燈同時(shí)一直亮,供照明使用
2.2汽車(chē)尾燈控制器的工作原理
汽車(chē)尾燈控制器就是一個(gè)狀態(tài)機(jī)的實(shí)例。當(dāng)汽車(chē)正常行駛時(shí)所有指示燈都不亮;當(dāng)汽車(chē)向右轉(zhuǎn)彎時(shí),汽車(chē)右側(cè)的指示燈RD1亮;當(dāng)汽車(chē)向左側(cè)轉(zhuǎn)彎時(shí),汽車(chē)左側(cè)的指示燈LD1亮;當(dāng)汽車(chē)剎車(chē)時(shí),汽車(chē)右側(cè)的指示燈RD2和汽車(chē)左側(cè)的指示燈LD2同時(shí)亮;當(dāng)汽車(chē)在夜間行駛時(shí),汽車(chē)右側(cè)的指示燈RD3和汽車(chē)左側(cè)的指示燈LD3同時(shí)一直亮。通過(guò)設(shè)置系統(tǒng)的輸入信號(hào):系統(tǒng)時(shí)鐘信號(hào)CLK,汽車(chē)左轉(zhuǎn)彎控制信號(hào)LEFT,汽車(chē)右轉(zhuǎn)彎控制信號(hào)RIGHT,剎車(chē)信號(hào)BRAKE,夜間行駛信號(hào)NIGHT和系統(tǒng)的輸出信號(hào):汽車(chē)左側(cè)3盞指示燈LD1、LD2、LD3和汽車(chē)右側(cè)3盞指示燈RD1、RD2、
RD3實(shí)現(xiàn)以上功能。系統(tǒng)的整體組裝設(shè)計(jì)原理如圖3.1所示。
圖2.3整體組裝設(shè)計(jì)原理
2.3 汽車(chē)運(yùn)行狀態(tài)表和總體框圖
汽車(chē)尾燈和汽車(chē)運(yùn)行狀態(tài)表如表1所示。
汽車(chē)尾燈和汽車(chē)運(yùn)行狀態(tài)表1-1
開(kāi)關(guān)控制 汽車(chē)運(yùn)行狀態(tài) 右轉(zhuǎn)尾燈 左轉(zhuǎn)尾燈
S0 S1 S2 R1 R2R3 L1L2L3
0 0 0 正常運(yùn)行 燈滅 燈滅
0 0 1 左轉(zhuǎn)彎 燈滅 按L1L2L3順序循環(huán)點(diǎn)亮
0 1 0 右轉(zhuǎn)彎 按R1R2R3順序循環(huán)點(diǎn)亮 燈滅
0 1 1 臨時(shí)剎車(chē)/檢測(cè) 所有尾燈同時(shí)點(diǎn)亮
1 0 0 倒車(chē) 所有尾燈按照轉(zhuǎn)彎次序點(diǎn)亮
1 0 1 晚上行車(chē)時(shí) R3 ,L3一直點(diǎn)亮
汽車(chē)尾燈控制電路設(shè)計(jì)總體框圖如圖1所示:
圖1 汽車(chē)尾燈控制電路設(shè)計(jì)總體框圖
3.詳細(xì)設(shè)計(jì)
3.1各組成模塊
實(shí)現(xiàn)的主要功能是通過(guò)開(kāi)關(guān)控制從而實(shí)現(xiàn)汽車(chē)尾燈的點(diǎn)亮方式。汽車(chē)尾燈控制器有4個(gè)模塊組成,分別為:時(shí)鐘分頻模塊、汽車(chē)尾燈主控模塊,左邊燈控制模塊和右邊燈控制模塊,以下介紹各模塊的詳細(xì)設(shè)計(jì)。
3.2時(shí)鐘分頻模塊
整個(gè)時(shí)鐘分頻模塊的工作框圖如圖3.2所示。
圖3.2時(shí)鐘分頻模塊工作框圖
時(shí)鐘分頻模塊由VHDL程序來(lái)實(shí)現(xiàn),下面是其中的一段VHDL代碼:
ARCHITECTURE ART OF SZ IS
SIGNAL COUNT:STD_LOGIC_VECTOR(7 DOWNTO 0);
BEGIN
PROCESS(CLK)
BEGIN
IF CLK'EVENT AND CLK = '1'THEN
COUNT <= COUNT + 1;
END IF;
END PROCESS;
CP<= COUNT(3);
END ART;
3.3 汽車(chē)尾燈主控模塊
汽車(chē)尾燈主控模塊工作框圖如圖3.3所示
圖3.3 主控模塊工作框圖
汽車(chē)尾燈主控模塊由VHDL程序來(lái)實(shí)現(xiàn),下面是其中的一段VHDL代碼:
ARCHITECTURE ART OF CTRL IS
BEGIN
NIGHT_LED<=NIGHT;
BRAKE_LED<=BAKE;
PROCESS(LEFT,RIGHT)
VARIABLE TEMP:STD_LOGIC_VECTOR(1 DOWNTO 0);
BEGIN
TEMP:=LEFT & RIGHT;
CASE TEMP IS
WHEN 00 =>LP<='0';RP<='0';LR<='0';
WHEN 01 =>LP<='0';RP<='1';LR<='0';
WHEN 10 =>LP<='1';RP<='0';LR<='0';
WHEN OTHERS=>LP<='0';RP<='0';LR<='1';
END CASE;
END PROCESS;
END ART;
3.4左邊燈控制模塊
左邊燈控制模塊的工作框圖如圖3.4所示。
圖3.4左邊燈控制模塊的工作框圖
左邊燈控制模塊由VHDL程序來(lái)實(shí)現(xiàn),下面是其中的一段VHDL代碼:
ARCHITECTURE ART OF LC IS
BEGIN
LEDB<=BRAKE;
LEDN<=NIGHT;
PROCESS(CLK,LP,LR)
BEGIN
IF CLK'EVENT AND CLK = '1' THEN
IF(LR ='0')THEN
IF(LP = '0')THEN
LEDL<='0';
ELSE
LEDL<='1';
END IF;
ELSE
LEDL <='0';
END IF;
END IF;
END PROCESS;
END ART;
3.5右邊燈控制模塊
右邊燈控制模塊的工作框圖如圖3.5所示
圖3.5 右邊燈控制模塊的工作框圖
右邊燈控制模塊由VHDL程序來(lái)實(shí)現(xiàn),下面是其中的一段VHDL代碼:
ARCHITECTURE ART OF RC IS
BEGIN
LEDB<=BRAKE;
LEDN<=NIGHT;
PROCESS(CLK,RP,LR)
BEGIN
IF CLK'EVENT AND CLK = '1' THEN
IF(LR = '0')THEN
IF(RP = '0')THEN
LEDR <='0';
ELSE
LEDR <= '1';
END IF;
ELSE
LEDR <='0';
END IF;
END IF;
END PROCESS;
END ART;
4.系統(tǒng)仿真與調(diào)試
4.1分頻模塊仿真及分析
分頻模塊由VHDL程序?qū)崿F(xiàn)后,其仿真圖如圖4.1所示
圖4.1 分頻模塊仿真圖
對(duì)其仿真圖進(jìn)行仿真分析:如圖所示,首先生成一個(gè)600ns的時(shí)鐘脈沖,通過(guò)時(shí)鐘分頻把600ns的脈沖分成一個(gè)40ns的脈沖,實(shí)現(xiàn)了信號(hào)同步。
4.2汽車(chē)尾燈主控模塊仿真及分析
汽車(chē)尾燈主控模塊由VHDL程序?qū)崿F(xiàn)后,其仿真圖如圖4.2所示。
圖4.2主控模塊時(shí)序仿真圖
對(duì)時(shí)序仿真圖進(jìn)行分析:RIGHT,LEFT,NIGHT,BRAKE 為輸入信號(hào),RIGHT為1表示右轉(zhuǎn),LEFT為1表示左轉(zhuǎn),NIGHT為1表示夜間行路,BRAKE為1表示剎車(chē)。RP,LP,NIGHT_LED,BRAKE_LED為輸出信號(hào)。如圖所示:當(dāng)RIGHT為1時(shí),產(chǎn)生一個(gè)RP為1的信號(hào)脈沖輸出,當(dāng)LEFT為1時(shí),產(chǎn)生一個(gè)LP為1的信號(hào)脈沖輸出,當(dāng)NIGHT為1時(shí),產(chǎn)生一個(gè)NIGHT_LED為1的信號(hào)脈沖輸出。當(dāng)BRAKE為1時(shí),產(chǎn)生一個(gè)BRAKE_LED為1的信號(hào)脈沖輸出。
4.3左邊燈控制模塊仿真及分析
左邊燈控制模塊由VHDL程序?qū)崿F(xiàn)后,其仿真圖如下圖4.3所示。
對(duì)時(shí)序仿真圖進(jìn)行分析:LP,LR,NIGHT,BRAKE 為輸入信號(hào),LP為1表示左轉(zhuǎn),LR為1表示右轉(zhuǎn),NIGHT為1表示夜間行路,BRAKE為1表示剎車(chē)。LEDL,LEDB,LEDN為輸出信號(hào),表示汽車(chē)左側(cè)的三盞燈。如圖所示:當(dāng)LP為1時(shí),LEDL輸出為1表示左側(cè)燈亮,當(dāng)BRAKE為1時(shí),LEDB輸出為1表示左側(cè)燈亮,當(dāng)NIGHT為1時(shí),LEDN輸出為1表示左側(cè)燈亮。當(dāng)LR為1時(shí),左側(cè)三盞燈輸出均為0。即沒(méi)有燈亮。
圖4.3左邊燈控制模塊時(shí)序仿真圖
4.4右邊燈控制模塊仿真及分析
右邊燈控制模塊由VHDL程序?qū)崿F(xiàn)后,其仿真圖如圖4.4所示。
圖4.4 右邊燈控制模塊時(shí)序仿真圖
對(duì)時(shí)序仿真圖進(jìn)行分析:RP,LR,NIGHT,BRAKE 為輸入信號(hào),LR為1表示左轉(zhuǎn),RP為1表示右轉(zhuǎn),NIGHT為1表示夜間行路,BRAKE為1表示剎車(chē)。LEDR,LEDB,LEDN為輸出信號(hào),表示汽車(chē)右側(cè)的三盞燈。如圖所示:當(dāng)RP為1時(shí),LEDR輸出為1表示右側(cè)燈亮,當(dāng)BRAKE為1時(shí),LEDB輸出為1表示右側(cè)燈亮,當(dāng)NIGHT為1時(shí),LEDN輸出為1表示右側(cè)燈亮。當(dāng)LR為1時(shí),右側(cè)三盞燈輸出均為0。即沒(méi)有燈亮。
4.5整個(gè)系統(tǒng)仿真及分析
按圖2.3組裝系統(tǒng)后的仿真圖如下圖4.5所示。
對(duì)時(shí)序仿真圖進(jìn)行分析:RIGHT,LEFT,NIGHT,BRAKE 為輸入信號(hào),RIGHT為1表示右轉(zhuǎn),LEFT為1表示左轉(zhuǎn),NIGHT為1表示夜間行路,BRAKE為1表示剎車(chē)。RD1,RD2,RD3為輸出信號(hào),表示汽車(chē)右側(cè)的三盞燈。LD1,LD2,LD3為輸出信號(hào),表示汽車(chē)左側(cè)的三盞燈。如圖所示:當(dāng)RIGHT為1時(shí),RD1輸出為1表示右側(cè)燈亮,當(dāng)LEFT為1時(shí),LD1為輸出為1表示左側(cè)燈亮,當(dāng)NIGHT為1時(shí),LD2,RD2輸出均為1,表示左,右兩側(cè)各有一盞燈亮。當(dāng)BRAKE為1時(shí),LD3,RD3輸出均為1,表示左,右兩側(cè)各有一盞燈亮。
圖4.5 整個(gè)系統(tǒng)仿真圖
4.6 總體設(shè)計(jì)電路圖
圖4.6總體設(shè)計(jì)電路圖
總結(jié)
通過(guò)兩星期的緊張工作,最后完成了我的設(shè)計(jì)任務(wù)――汽車(chē)尾燈控制器的設(shè)計(jì)。通過(guò)本次課程設(shè)計(jì)的學(xué)習(xí),我深深的體會(huì)到設(shè)計(jì)課的重要性和目的性。本次設(shè)計(jì)課不僅僅培養(yǎng)了我們實(shí)際操作能力,也培養(yǎng)了我們靈活運(yùn)用課本知識(shí),理論聯(lián)系實(shí)際,獨(dú)立自主的進(jìn)行設(shè)計(jì)的能力。它不僅僅是一個(gè)學(xué)習(xí)新知識(shí)新方法的好機(jī)會(huì),同時(shí)也是對(duì)我所學(xué)知識(shí)的一次綜合的檢驗(yàn)和復(fù)習(xí),使我明白了自己的缺陷所在,從而查漏補(bǔ)缺。希望學(xué)校以后多安排一些類似的實(shí)踐環(huán)節(jié),讓同學(xué)們學(xué)以致用。
在設(shè)計(jì)中要求我要有耐心和毅力,還要細(xì)心,稍有不慎,一個(gè)小小的錯(cuò)誤就會(huì)導(dǎo)致結(jié)果的不正確,而對(duì)錯(cuò)誤的檢查要求我要有足夠的耐心,通過(guò)這次設(shè)計(jì)和設(shè)計(jì)中遇到的問(wèn)題,也積累了一定的經(jīng)驗(yàn),對(duì)以后從事集成電路設(shè)計(jì)工作會(huì)有一定的幫助。在應(yīng)用VHDL的過(guò)程中讓我真正領(lǐng)會(huì)到了其并行運(yùn)行與其他軟件順序執(zhí)行的差別及其在電路設(shè)計(jì)上的優(yōu)越性。用VHDL硬件描述語(yǔ)言的形式來(lái)進(jìn)行數(shù)字系統(tǒng)的設(shè)計(jì)方便靈活,利用EDA軟件進(jìn)行編譯優(yōu)化仿真極大地減少了電路設(shè)計(jì)時(shí)間和可能發(fā)生的錯(cuò)誤,降低了開(kāi)發(fā)成本,這種設(shè)計(jì)方法必將在未來(lái)的數(shù)字系統(tǒng)設(shè)計(jì)中發(fā)揮越來(lái)越重要的作用。
參考文獻(xiàn)
[1] 王愛(ài)英.計(jì)算機(jī)組成與結(jié)構(gòu).北京:清華大學(xué)出版社,2001.2,
[2] 黃仁欣.EDA技術(shù)實(shí)用教程.北京:清華大學(xué)出版社,2006
[3] 曹昕燕,周鳳臣,聶春燕.EDA技術(shù)實(shí)驗(yàn)與課程設(shè)計(jì).北京:清華大學(xué)出版社,2006.5
[4] 楊亦華,延明.數(shù)字電路EDA入門(mén).北京:北京郵電大學(xué)出版社,2003
[5] 彭容修,《數(shù)字電子技術(shù)基礎(chǔ)》, 武漢,武漢理工大學(xué)出版社,2005
[6] 潘松 ,黃繼業(yè)《EDA技術(shù)與VHDL》,北京,清華大學(xué)出版社,2006
你看看這個(gè)能用不?
車(chē)子改維修勒