欢迎来到一句话经典语录网
我要投稿 投诉建议
当前位置:一句话经典语录 > 心得体会 > 学eda的心得体会

学eda的心得体会

时间:2019-08-24 16:23

EDA课程设计心得体会

心得体会通过这次课程设计,让我更加深刻了解课本知识,和以往对知识的疏忽得以补充,在设计过程中遇到一些模糊的公式和专业用语,比如说经济刮板运输机及皮带运输的选择,在选择选择刮板皮带运输选型时,在使用手册时,有的数据很难查出,但是这些问题经过这次设计,都一一得以解决,我相信这本书中还有很多我为搞清楚的问题,但是这次的课程设计给我相当的基础知识,为我以后工作打下了严实的基础。

虽然这次课程是那么短暂的2周时间,我感觉到这些天我的所学胜过我这一学期所学,这次任务原则上是设计,其实就是一次大的作业,是让我对课本知识的巩固和对基本公式的熟悉和应用,计算力学和运动学及预选电动机过程中的那些繁琐的数据,使我做事的耐心和仔细程度得以提高。

课程设计是培训学生运用本专业所学的理论知识和专业知识来分析解决实际问题的重要教学环节,是对三年所学知识的复习和巩固。

同样,也促使了同学们的相互探讨,相互学习。

因此,我们必须认真、谨慎、踏实、一步一步的完成设计。

如果时间可以重来,我可能会认真的去学习和研究,也可能会自己独立的完成一个项目,我相信无论是谁看到自己做出的成果时心里一定会很兴奋。

此次设计让我明白了一个很深刻的道理:

电子设计选修课心得体会

国脉的

EDA课程设计:彩灯控制器

以前做的设计,粘贴时图出来考一下,记得给一.设计目的1、学习EDA开发软件和MAX+plus Ⅱ的使用,熟悉可编程逻辑器件的使用,通过制作来了解彩灯控制系统。

2、进一步掌握数字电路课程所学的知识。

3、了解数字电路设计的一般思路,进一步解决和分析问题。

4、培养自己的编程和谨慎的学习态度二、.设计题目内容和要求(1)课题内容: 用EDA技术设计一个彩灯控制器,使彩灯(LED管)能连续发出三种以上不同的花型(自拟);随着彩灯显示图案的变化,发出不同的音响声。

要求使用7段数码管显示当前显示的花型,如第一种花型显示A1,第二种花型显示b2,第三种花型显示C3(2)主要任务:完成该系统的硬件和软件的设计,并利用实验箱制作出实物演示,调试好后并能实际运用(指导教师提供制作所需的器件),最后就课程设计本身提交一篇课程设计报告。

三、总体方案设计与选择1 总体方案的设计 方案一:电路分为三个部分:彩灯花型模块、声音模块,时钟模块。

用时钟控制声音和花型,整体使用相同的变量与信号,主体框图如下; 图三—1-1方案一的的流程图方案二:电路分为五个模块:分频器模块、16进制计数器、4进制计数器,4选1选择器、彩灯控制器。

其中彩灯控制器是用来输出不同的花样,彩灯控制器的输出则是用一个16进制的计数器来控制,扬声器的输出时用不同的频率来控制,所以用了一个集成分频器来使输入的频率被分为几种不同的频率,不同频率的选择性的输出则是用一个4选一的选择器来控制。

整体框图如下: 图三—1-2方案二的流程图2、方案的选择 方案一是将融合在一起,原理思路简单,元件种类使用少,但是在编程时要使用同一变量和信号,这样就会给编程带来很大的困难,另外中间单元连线较多,不容易检查,门电路使用较多,电路的抗干扰能力会下降。

方案二将彩灯花型控制与声音控制分开,各单元电路只实现一种功能,电路设计模块化,且编程时将工作量分开,出现错误时较容易检查,连线较少且容易组装和调试。

结合两个方案的优缺点,我选择容易编程、组装和调试的方案二。

四、模块电路的设计 1、分频器模块设计要求显示不同的彩灯的时候要伴随不同的音乐,所以设计分频器来用不同的频率控制不同的音乐输出。

模块说明:Rst:输入信号 复位信号 用来复位分频器的输出使输出为“0”,及没有音乐输出。

Clk:输入信号 模块的功能即为分频输入的频率信号。

Clk_4、clk8、clk_12、clk_16:输出信号 即为分频模块对输入信号clk的分频,分别为1\\\/4分频输出、1\\\/8分频输出、1\\\/12分频输出、1\\\/16分频输出。

不同的频率会发出不同的声音。

如图 图四-1分频器电路图 2、16进制计数器16进制模块用来控制彩灯输出模块,即确定彩灯控制器的不同的输出。

Rst:输入信号 复位信号 用来复位16进制使其输出为“00000”,即彩灯不亮。

Clk1:输入信号 用来给模块提供工作频率。

Count_out[3..0]:输出信号 即为16进制计数器的输出,此输出信号作为彩灯的输入信号。

如图四-2 图四-2 16进制计数器电路图3、4进制计数器模块4进制计数器作为选择器的输入来控制选择器选择不同的频率作为输出控制扬声器工作。

Clk2:输入信号 来为计数器提供工作频率。

Rst:输入信号 复位信号 使计数器的输出为“00”。

如图四-3 图四-3 4进制计数器电路图4、4选1选择器模块Rst:输入信号复位信号使选择器的输出为“0”。

In1、in2、in3、in4:输入信号接分频器的输出。

Inp[1..0]:输入信号接4进制计数器的输出用来控制选择器的选择不同的输入选择不同的输出。

Output2:输出信号直接接扬声器即输出的是不同的频率来控制扬声器播放声音如图四—4 图四—4 4选1选择器电路图5、彩灯控制模块 彩灯控制采用的模式6来进行显示。

图四—5—1模式6结构图彩灯控制模块用来直接控制彩灯的输出,使彩灯表现出不同的花样。

Rst:输入信号 使彩灯控制模块的输出为“00000000”,即让彩灯无输出。

Input[4..0]:输入信号 不同的输入使彩灯控制模块有不同的输出即彩灯显示出不同的花样。

Output3[7..0]:输出信号 直接与数码管相连来控制数码管。

如图四—5—2图四-5-2 彩灯控制电路图五、EDA设计与仿真1、源程序:----------------------------------------------分频器模块-----------------------------------------LIBRARYieee;USEieee.std_logic_1164.all;ENTITYfenpinqi IS PORT ( clk2,rst :IN std_logic; clk_12,clk_4,clk_16,clk_8 : OUT std_logic );ENDfenpinqi;ARCHITECTUREcd OF fenpinqi ISbeginp1:process(clk2,rst) variable a:integer range 0 to 20; begin if rst='1' then clk_4<='0'; ----- 复位信号控制部分 else if clk2'event and clk2='1'then if a>=3 then a:=0; clk_4<='1'; else a:=a+1; clk_4<='0'; end if; end if; end if;endprocess p1;p2:process(clk2,rst) variable b:integer range 0 to 20; begin if rst='1' then clk_16<='0'; ----- 复位信号控制部分 else if clk2'event and clk2='1'then if b>=15 then b:=0; clk_16<='1'; else b:=b+1; clk_16<='0'; end if; end if; end if;endprocess p2;p3:process(clk2,rst) variable c:integer range 0 to 20; begin if rst='1' then clk_8<='0'; ----- 复位信号控制部分 else if clk2'event and clk2='1'then if c>=7 then c:=0; clk_8<='1'; else c:=c+1; clk_8<='0'; end if; end if; end if;endprocess p3;p4:process(clk2,rst) variable d:integer range 0 to 40; begin if rst='1' then clk_12<='0'; ----- 复位信号控制部分 else if clk2'event and clk2='1'then if d>=11 then d:=0; clk_12<='1'; else d:=d+1; clk_12<='0'; end if; end if; end if;endprocess p4;endcd;----------------------------------------------4选1选择器---------------------------------------LIBRARYieee;USEieee.std_logic_1164.all;ENTITYxzq4_1 IS PORT ( rst:in std_logic; inp:in integer range 0 to 3; in1,in2,in3,in4 : In std_logic; output2 :OUT std_logic );ENDxzq4_1;ARCHITECTUREa OF xzq4_1 ISBEGIN PROCESS (rst,inp) BEGIN if(rst='1') then output2<='0'; else case inp is when 0=>output2<=in1; when 1=>output2<=in2; when 2=>output2<=in3; when 3=>output2<=in4; when others=>null; end case; end if; END PROCESS; ENDa;-------------------------------------------彩灯控制模块----------------------------------------LIBRARYieee;USEieee.std_logic_1164.all;ENTITYcaideng IS PORT ( input :IN INTEGER RANGE0 TO 15; rst:in std_logic; output3 :OUT std_logic_vector(7 downto 0); sm :out std_logic_vector(6 downto 0) );ENDcaideng;ARCHITECTUREa OF caideng ISBEGIN PROCESS (input) BEGIN if rst='1' thenoutput3<=00000000;sm<=0000000; else case input is when 0=>output3<=00111000;sm<=0000110; when1=>output3<=00001111;sm<=0000110; when2=>output3<=00111110;sm<=0000110; when3=>output3<=01111111;sm<=0000110;when4=>output3<=01011011;sm<=1011011;when5=>output3<=01110110;sm<=1011011; when6=>output3<=00001111;sm<=1011011; when7=>output3<=01111111;sm<=1011011;when8=>output3<=01101101;sm<=1001111; when9=>output3<=00000111;sm<=1001111; when10=>output3<=01110111;sm<=1001111; when11=>output3<=01111011;sm<=1001111; when12=>output3<=00111000;sm<=1100110; when13=>output3<=00111111;sm<=1100110; when14=>output3<=00111110;sm<=1100110; when 15=>output3<=01111001;sm<=1100110; when others=>null; end case; end if; end process; end a;--------------------------------------------16进制计数器模块-----------------------------------LIBRARYieee;USEieee.std_logic_1164.all;ENTITYcounter_16 IS PORT ( clk,rst :IN std_logic; count_out :OUT INTEGER RANGE0 TO 15);ENDcounter_16;ARCHITECTUREa OF counter_16 IS BEGIN PROCESS (rst,clk) variable temp:integer range 0 to 16; BEGIN IF rst='1' THEN temp:=0; ELSIF (clk'event and clk='1') THEN temp:=temp+1; if(temp=15) then temp:=0; end if; END IF; count_out<=temp; END PROCESS; ENDa;-------------------------------4进制计数器模块----------------------------------LIBRARYieee;USEieee.std_logic_1164.all;ENTITYcounter_4 IS PORT ( clk,rst :IN std_logic; count_out :OUT integer range 0 to 3 );ENDcounter_4;ARCHITECTUREa OF counter_4 IS BEGIN PROCESS (rst,clk) variable temp:integer range 0 to 16; BEGIN IF rst='1' THEN temp:=0; ELSIF (clk'event and clk='1') THEN temp:=temp+1; if(temp=4) then temp:=0; end if; END IF; count_out<=temp; END PROCESS; ENDa;-------------------------------------------主程序----------------------------------LIBRARYieee;USEieee.std_logic_1164.all;ENTITYproject IS PORT (clk1,rst,clk2: IN std_logic; Out1: OUT std_logic_vector(7 downto 0); Out2 :out std_logic_vector(6 downto0); Out3: OUT std_logic);ENDproject;ARCHITECTUREstruct OF project ISCOMPONENT counter_16 IS PORT(clk,rst : IN std_logic; count_out : OUT integer range 0 to 15 );ENDCOMPONENT;COMPONENT fenpinqi IS PORT(clk2,rst : IN std_logic; clk_12,clk_4,clk_16,clk_8 : OUT std_logic); END COMPONENT ;COMPONENT counter_4 IS PORT(clk,rst :IN std_logic; count_out :OUT integer range 0 to 3 );ENDCOMPONENT;COMPONENT xzq4_1 IS PORT ( rst:in std_logic; inp:in integer range 0 to 3; in1,in2,in3,in4 : In std_logic; output2 :OUT std_logic );ENDCOMPONENT;COMPONENT caideng IS PORT ( input: IN INTEGER RANGE 0 TO 15; rst:in std_logic; output3 :OUT std_logic_vector(7 downto 0); sm :out std_logic_vector(6 downto 0) );ENDCOMPONENT;SIGNALu: integer range 0 to 15; SIGNALw: integer range 0 to 3; SIGNALv1,v2,v3,v4: std_logic; BEGINU1:counter_16PORT MAP(clk1,rst,u);U2:fenpinqiPORT MAP(clk2,rst, v1,v2,v3,v4);U3:counter_4PORT MAP(v3,rst,w);U4:xzq4_1 PORT MAP(rst,w, v1,v2,v3,v4,out3);U5:caidengPORT MAP(u,rst,out1,out2);ENDstruct;2、彩灯控制器仿真结果及数据分析分析:如上图,clk1控制的是彩灯模块,clk2控制的是声音模块,当rst为高电平是输出全为0,ck1每出现四个高电平,花型发生一次变化,out2分别显示1、2、3、4,out1显示不同的花型,out3发出声音,如图脉冲数不同表示发出的声音不同,但是声音与花型相比有一定的延迟。

六、硬件实现1、引脚锁定图2、硬件仿真图显示第一组花型之一显示第二组花型之一显示第三组花型之一显示的第四组花型之一七、总体电路整个系统就是各个分模块组成来实现最后的彩灯控制功能,系统又两个时钟来控制一个是控制16进制计数器即控制彩灯控制模块来实现彩灯的不同输出,另一个时钟为分频器的输入来进行分频处理,最后用来控制扬声器发出不同的音乐,为了使效果明显尽量达到要求分频处理的时钟的频率比实现彩灯控制的时钟频率要高。

将各个模块连在一起采用在课程中学到的元件例化,将各个模块的引脚连在一起,使之成为一个整体。

元件例化是VHDL设计实体构自上而下层次化设计的重要途径。

整体电路如图五—1图七—1 整体电路图八、心得体会1、在设计时遇到一些主要问题如下:怎么将各个模块连在一起、开始硬件仿真时总是出现错误,设计方案的选择。

最后我选择了元件例化将各个模块连在一起,仿真时是因为短路帽接错了,当时没有注意,在方案的选择时我们选了实现比较简单的分模块方案2、这次的EDA课程设计我学到得东西很多明白了理论与实践之间的差距,而且对DEA课程有了更深入的理解,尤其是知道了怎么去应用所学的知识,怎么去利用网络实现自己的要求,具体体会如下:(1)要想完成编程就要对DEA知识很熟悉,这样才能加快编程的速度,另外在编程时一定要小心,稍微有一点粗心都会有很多的错误出现,在出现错误后要学会寻找错误原因如名称前后不一、数据类型不同、符号写错等等(2)拿道题目后要注意分析,要学会总体把握,然后再一一一细化、学会将复杂的问题简单化,分析时一定要有一个明确的目标。

(3)要学会理论联系实际,在程序导入到实验箱后,居然不显示结果,认真的检查看看操作是否有错误、试验箱中该短路的是否已用短路帽短路、又重新检查了一下程序,结果发现是短路帽接错了,所以看似很简单的操作自己操作起来可能会有很大的漏洞,所以亲自动手是很重要的。

(4)当自己的只是有限时,要注意运用网络等一切资源,要学会知识的灵活运用在查阅的过程中学到了很多在书本所没有学到的知识,通过查阅相关资料进一步加深了对EDA的了解总的来说,通过这次课程设计不仅锻炼了我们的动手和动脑能力,也使我懂得了理论与实际相结合的重要性,只有理论知识是远远不够的,要把所学的理论知识与实践相结合起来,才能提高自己的实际动手能力和独立思考的能力。

还有最重要的一点就是要有一丝不苟的精神和端正认真的态度,遇到困难后要学会积极的面对。

3、在此设计中声音会有一定的延迟,可以考虑用花型输出信号作为4选1的控制信号九、参考书目:赵伟军,《Protel99se教程》,北京,人民邮电出版社,1996年金西,《VHDL与复杂数字系统设计》,西安,西安电子科技大学出版社,2003汉泽西,《EDA技术及其应用》,北京,北京航空航天大学出版社,2004[4] 黄任,《VHDL入门.解惑.经典实例.经验总结》,北京,北京航空航天大学出版社,2005[5] 李洋,《EDA技术 使用教程》,北京,机械工业出版社,2009[6] 网络资源:EDA课程设计、EDA课程设计—彩灯控制器等

谈谈你对eda技术的理解及感想

考试30分发散思维题,怎么答能得高分

通信编解码器设计,略难,我也在苦逼的想题目当中

译码器的作用

译码器的作用:  译码器在数字系统中有广泛的用途,不仅用于代码的转换、终端的数字显示,还用于数据分配,存贮器寻址和组合控制信号等。

不同的功能可选用不同种类的译码器。

译码:将具有特定含义的二进制代码变换(翻译)成一定的输出信号,以表示二进制代码的原意,这一过程称为译码。

译码是编码的逆过程,即将某个二进制代码翻译成电路的某种状态。

译码器:实现译码功能的组合电路称为译码器。

译码器是一个多输入、多输出的组合逻辑电路。

它的作用是把给定的代码进行“翻译”,变成相应的状态,使输出通道中相应的一路有信号输出。

求一本科生毕业论文致谢,100字左右,简单明了

本论文是在老心指导下完。

老师严谨的治学态度、敏锐的洞察力实的敬业精神,使我受益匪浅,值得我终生学习,感谢老师对我的谆谆教导。

值此,向老师表示诚挚谢意

感谢开题过程中,老师对试验设计提出了宝贵意见

感谢试验过程中,老师给以我热情无私的帮助!感谢本研究室的同学们在试验和论文撰写过程中给予的大力帮助和支持!感谢答辩委员会的各位老师和专家提出的宝贵意见

感谢我的家人在精神和物质上给予的巨大支持和鼓励

声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。联系xxxxxxxx.com

Copyright©2020 一句话经典语录 www.yiyyy.com 版权所有

友情链接

心理测试 图片大全 壁纸图片