数电实验报告发光二极管走马灯电路设计与实现
- 格式:doc
- 大小:117.50 KB
- 文档页数:6
跑马灯实验报告姓名:班级:跑马灯实验报告试验目的1.学习8031内部计数器的使用和编程方法。
2.进一步掌握中断处理程序的编程方法。
3.学习端口的输入输出操作。
实验原理1、软件流程图:2.程序设计内容我们可以运用输出端口指令MOV P1,A 或MOV P1,#DATA ,只要给累加器值或常数值,然后执行上述的指令,即可达到输出控制的动作。
3、硬件连接图:4.软件清单ADR EQU 8000HORG 0000HLJMP STARTORG 001BHLJMP OT1ORG 00F0HSTART:MOV TMOD,#10HMOV TL1,#0B0HMOV TH1,#3CHSETB EASETB ET1MOV R2,#14HMOV R3,#00HSETB TR1SJMP $OT1:CLR TR1CLR EAMOV TH1,#3CHMOV TL1,#0B0HDJNZ R2,BACKNEXT:MOV R2,#14HMOV DPTR,#0200hMOV A,R3MOVC A,@A+DPTRMOV DPTR,#ADRMOVX @DPTR,AINC R3CJNE R3,#08H,BACKSJMP ROUNDBACK:SETB EASETB TR1RETIROUND:MOV R3,#00HSJMP BACKORG 0200HDB 05H,0AH,50H,0A0H,55H,0AAH,0FFH,00H END5.C语言源程序#include <AT89X51.H>unsigned char i;unsigned char temp;unsigned char a,b;void delay(void){unsigned char m,n,s;for(m=20;m>0;m--)for(n=20;n>0;n--)for(s=248;s>0;s--);}void main(void){while(1){temp=0xfe;P1=temp;delay();for(i=1;i<8;i++){a=temp<<i;b=temp>>(8-i);P1=a|b;delay();}for(i=1;i<8;i++){a=temp>>i;b=temp<<(8-i);P1=a|b;delay();}}}功能说明由8031内部定时器1,按方式1工作,即作为16位定时器使用每0.05秒钟T1溢出中断一次。
北京邮电大学实验报告实验名称:发光二级管走马灯电路的设计与实现目录一.实验目的 (3)二.实验所用仪器及元器件 (3)三.实验任务要求 (3)四.实验设计思路及过程 (3)1.设计思路 (3)2.VHDL代码 (3)五.VHDL代码分析 (4)六.仿真波形及分析 (6)1.仿真波形 (6)2. 波形分析 (7)七.故障及问题分析 (7)八.本实验总结与结论 (7)九.参考文献 (7)一.实验目的1.进一步了解时序电路描述方法;2.熟悉状态机的设计方法。
二.实验所用仪器及元器件1.计算机;2.直流稳压电源;3.数字系统与逻辑设计实验开发板。
三.实验任务要求设计并实现一个控制8个发光二极管亮灭的电路,仿真验证其功能,并下载到实验板测试。
1. 单点移动模式:一个点在8个发光二极管上来回的亮2. 幕布式:从中间两个点,同时向两边依次点亮直到全亮,然后再向中间点灭,依次往复。
四.实验设计思路及过程1. 设计思路定义一个控制端口,实现两种走马灯的转换。
自定义两种新的数据类型,一种含8个变量,代表幕布式移动的8种情况;另一种含13个变量,代表单点移动的13种状态。
2.过程说明:走马灯控制:en为控制端,en=0时实现单点式移动,en=1时实现幕布式移动。
单点式移动:自定义了一种数据类型one point,13个变量代表了走马灯的13种状态,高电平代表灯亮,低电平代表灯灭。
幕布式移动:自定义了一种数据类型film,8个变量代表了走马灯的8种状态,高电平代表灯亮,低电平代表灯灭。
时钟:clk为时钟信号,实际下载到实验班上测试时,加上了50MHZ的分频器。
异步复位:reset为异步复位端,高电平有效,复位至全0状态。
五. VHDL代码library ieee;use ieee.std_logic_1164.all;entity lamp is --定义实体lamp,输入端时钟clk,控制信port(clk_in,reset:in std_logic;号en,输出端口8个,代表8个LED灯light:out std_logic_vector(7 downto 0);en:in std_logic);end lamp; --结束定义architecture a of lamp is --定义结构体aTYPE film is(s0,s1,s2,s3,s4,s5,s6,s7); --定义数据类型film,onepoint TYPE onepoint is(s0,s1,s2,s3,s4,s5,s6,s7,s00,s01,s02,s03,s04,s05);signal state1:onepoint; --定义信号state1,state,并指定数据类型signal state:film;begin --开始结构体的描述语句process(a,clk_in,reset) --进程语句begin --开始if(reset='1') then light<="00000000";elsif(rising_edge(clk)) thenif a='0' then --单点式case state1 is --事件state1的相关描述when s0=>state1<=s1;light<="10000000";when s1=>state1<=s2;light<="01000000";when s2=>state1<=s3;light<="00100000";when s3=>state1<=s4;light<="00010000";when s4=>state1<=s5;light<="00001000";when s5=>state1<=s6;light<="00000100";when s6=>state1<=s7;light<="00000010";when s7=>state1<=s00;light<="00000001";when s00=>state1<=s01;light<="00000010";when s01=>state1<=s02;light<="00000100";when s02=>state1<=s03;light<="00001000";when s03=>state1<=s04;light<="00010000";when s04=>state1<=s05;light<="00100000";when s05=>state1<=s0;light<="01000000";end case;else --幕布式,实现原理同单点移动case state iswhen s0=>state<=s1;light<="00011000";when s1=>state<=s2;light<="00111100";when s2=>state<=s3;light<="01111110";when s3=>state<=s4;light<="11111111";when s4=>state<=s5;light<="01111110";when s5=>state<=s6;light<="00111100";when s6=>state<=s7;light<="00011000";when s7=>state<=s0;light<="00000000";end case;end if;end if;end process;end arch_L1; --结束六.仿真波形及分析1.仿真波形(1)单点移动式(2)幕布式2. 波形分析(1)单点移动式由图可以看出,当en为0时程序实现单点移动功能,具体表现为,light[7]开始亮,之后依次为light[6], light[5], light[4], light[3], light[2], light[1], light[0],然后light[1]也开始亮,往回依此类推,实现了功能要求(2)幕布式由图可以看出,当en为1时,如,先是中间的两个灯light[4], light[5]亮,下一下阶段是light[3, light[4], light[5], light[6]亮,接下来是light[2], light[3], light[4], light5], light[6], light[7]亮,最后全亮,接着light[2], light[3], light[4], light5], light[6], light[7]亮,继而循环下去,从而实现功能。
一、实验背景随着科技的不断发展,电子技术在我们的日常生活中扮演着越来越重要的角色。
作为电子信息工程专业的学生,掌握电子电路的设计与制作技能是必不可少的。
本实训旨在通过制作跑马灯,让学生了解基本电子元件的原理和电路设计方法,提高学生的动手能力和创新思维。
二、实验目的1. 熟悉电子元件的使用方法和电路原理。
2. 掌握电路图的绘制和实际电路的制作。
3. 理解跑马灯的工作原理,并能够进行简单的故障排除。
4. 培养学生的团队协作能力和实践创新能力。
三、实验内容1. 基本跑马灯电路制作(1)材料准备:8个发光二极管(LED)、1个按键(K1)、1个电阻、1个面包板、1个电源、连接线等。
(2)电路连接:根据图1电路图,将LED按照顺序连接到面包板上,确保每个LED的正负极正确连接。
将按键K1连接到电路中,并设置合适的电阻以限制电流。
(3)程序编写:使用C语言或汇编语言编写程序,实现LED的顺序点亮和熄灭,模拟跑马灯效果。
2. 键控跑马灯电路制作(1)材料准备:8个发光二极管(LED)、2个按键(K1、K2)、1个电阻、1个面包板、1个电源、连接线等。
(2)电路连接:在基本跑马灯电路的基础上,增加按键K2。
按下K1时,LED按正序点亮;按下K2时,LED按倒序点亮。
(3)程序编写:在原有程序的基础上,增加按键判断逻辑,实现按键控制LED点亮顺序的功能。
3. 多功能跑马灯电路制作(1)材料准备:8个发光二极管(LED)、3个按键(K1、K2、K3)、1个电阻、1个面包板、1个电源、连接线等。
(2)电路连接:在键控跑马灯电路的基础上,增加按键K3。
按下K1时,LED按正序点亮;按下K2时,LED按倒序点亮;按下K3时,LED全部熄灭。
(3)程序编写:在原有程序的基础上,增加按键判断逻辑,实现按键控制LED点亮顺序和熄灭的功能。
四、实验结果与分析1. 成功制作出基本跑马灯电路,实现了LED的顺序点亮和熄灭。
2. 成功制作出键控跑马灯电路,实现了按键控制LED点亮顺序的功能。
电子系统综合设计报告学号 201009120229 姓名李文海年级专业 2010级电子信息工程(二) 指导教师刘怀强学院理学院走马灯实验论文--《嵌入式系统技术》1、实验目的1、学会dp-51pro实验仪监控程序下载、动态调试等联机调试功能的使用;2、理解和学会单片机并口的作为通用i/o的使用;3、理解和学会单片机外部中断的使用;4、了解单片机定时器/计数器的应用。
2、实验设备z pc 机、arm 仿真器、2440 实验箱、串口线。
3、实验内容z 熟悉 arm 开发环境的建立。
z 使用 arm 汇编和 c 语言设置 gpio 口的相应寄存器。
z 编写跑马灯程序。
5、实验原理走马灯实验是一个硬件实验,因此要求使用dp-51pro 单片机综合仿真实验仪进行硬件仿真,首先要求先进行软件仿真,排除软件语法错误,保证关键程序段的正确。
然后连接仿真仪,下载监控程序,进行主机与实验箱联机仿真。
为了使单独编译的 c 语言程序和汇编程序之间能够相互调用,必须为子程序间的调用规定一定的规则。
atpcs ,即 arm , thumb 过程调用标准(arm/thumb procedure callstandard),是 arm 程序和 thumb 程序中子程序调用的基本规则,它规定了一些子程序间调用的基本规则,如子程序调用过程中的寄存器的使用规则,堆栈的使用规则,参数的传递规则等。
下面结合实际介绍几种 atpcs 规则,如果读者想了解更多的规则,可以查看相关的书籍。
1.基本 atpcs 基本 atpcs 规定了在子程序调用时的一些基本规则,包括下面 3 方面的内容:(1)各寄存器的使用规则及其相应的名称。
(2)数据栈的使用规则。
(3)参数传递的规则。
相对于其它类型的 atpcs,满足基本 atpcs 的程序的执行速度更快,所占用的内存更少。
但是它不能提供以下的支持: arm 程序和 thumb 程序相互调用,数据以及代码的位置无关的支持,子程序的可重入性,数据栈检查的支持。
跑马灯实验报告
实验目的,通过搭建一个简单的跑马灯电路,了解电子元件的基本原理和电路的工作方式。
实验器材,LED灯、电阻、导线、电池、开关、面包板。
实验步骤:
1. 将LED灯的正极与电池的正极通过导线连接起来,负极与电阻连接,然后再将电阻的另一端与电池的负极连接。
2. 将开关连接到电路中,使得可以通过开关控制电路的通断。
3. 将整个电路搭建在面包板上,确保连接牢固。
4. 打开开关,观察LED灯的亮灭情况。
实验结果:
经过搭建和观察,我们发现当开关闭合时,LED灯会亮起;当开关断开时,LED灯会熄灭。
通过不断地开合开关,我们可以看到LED灯会不断地亮灭,就像跑马灯一样在不同的位置闪烁。
实验分析:
跑马灯实验的原理是利用开关控制电路的通断,从而控制LED灯的亮灭。
当开关闭合时,电路闭合,电流可以流通,LED灯就会亮起;当开关断开时,电路断开,电流无法流通,LED灯就会熄灭。
通过不断地开合开关,就可以实现LED 灯的频繁闪烁,呈现出跑马灯的效果。
实验总结:
通过这个简单的跑马灯实验,我们了解了电子元件的基本原理和电路的工作方式。
同时,我们也体会到了实验中的观察和分析的重要性。
在今后的学习中,我们将进一步深入学习电子电路的知识,探索更多有趣的实验和应用。
以上就是本次跑马灯实验的实验报告,希望对大家有所帮助。
实验报告一:实验名称跑马灯电路二:实验目的(1)掌握proteus软件的使用方法;(2)调试跑马灯电路的汇编语言;(3)绘制跑马灯原理图,实现电路的实现;三:实验要求跑马灯电路,即实现p1口上的8个发光二极管循环闪亮的电路。
四:实验仪器计算机,keil c51软件,proteus软件。
五:参考程序ORG 0000H ;程序入口AJMP MAIN ;转主程序ORG 30HMAIN:MOV R2,#16 ;将16送给R2MOV A,#0FEH ;将0FEH送给累加器ALOOP:MOV P1,A ;循环,将累加器A的值送给p1LCALL D1 ;长调子程序D1RL A ;累加器循环左移DJNZ R2,LOOP ;R2减1非0则转移到LOOPD1: MOV R4,#10 ;将10送给R4D2: MOV R5,#100 ;将100送给R5D3: MOV R6,#249 ;将249送给R6DJNZ R6,$ ;R6减1不为0,则原地等待DJNZ R5,D3 ;R5减1不为0,则转到D3DJNZ R4,D2 ;R4减1不为0,则转到D2RET ;返回主程序END六:试验步骤(1)进入keil c51系统的操作环境,并建立一个工程,输入汇编程序,对程序进行编译和链接:(2):调试无误后运行程序并检查运行结果,检查正确后生成hex文件:(3):在软件proteus中,绘制电路图,找到此实验需要用到的主要元器件及其符号:1:单片机AT89C51;2:电阻RES 10k;3:电容 CAP 30uF;4:晶振 CRYSTAL ;5;排阻 RESPACK-8;6:开关 BUTTON;7:发光二级管 LED;(4)绘制电路仿真图,然后将生成的hex文件下载到AT89C51中,并开始仿真,结果如下:七:实验结果程序仿真完成后,发光二级管会有规律的从左向右循环闪亮,直到时间结束后才会停下。
学号14142200277序号19单片机原理与接口技术实验报告实验项目序号一实验项目名称跑马灯实验姓名卢志雄专业电子信息工程班级电信14-2BF完成时间 2016年4月2日一、实验内容实验内容为3项,其中第1、2项必做。
1、基本的流水灯。
根据图1电路,编写一段程序,使8个发光二极管D1、D2、D3、D4、D5、D6、D7、D8顺序(正序)点亮:先点亮D1,再点亮D2、D3……D8、D1……,循环点亮。
每点亮一个LED,采用软件延时一段时间。
2、简单键控的流水灯。
不按键,按正序点亮流水灯;按下K1不松手,按倒序点亮流水灯,即先点亮D8,再顺序点亮D7、D6……D1、D8……。
松手后,又按正序点亮流水灯。
3、键控的流水灯。
上电,不点亮LED,按一下K1键,按正序点亮流水灯。
按一下K2键,按倒序点亮流水灯,按一下K3键,全部关闭LED。
二、电路原理图图1 跑马灯实验电路原理图三、程序流程图图2 简单键控的流水灯程序流程图四、源程序1、基本的流水灯#include<reg51.h>#define uint unsigned int#define uchar unsigned charvoid delay( j ) //延时函数data uint j;{ data uint i;while(j--)for(i=0;i<250;i++);}void main( ) //主函数{ data uchar a;a=1; //保证只有一个点亮while(1) //不断循环{ P2=~a; //低电平点亮a=a<<1; //左移一位,右补0if(a==0)a=1; //全0delay(2250);} //流动点亮延时}2、简单键控的流水灯#include<reg51.h>#define uchar unsigned char #define uint unsigned int void delay(uint i){ uchar t;while(i--){for(t=0;t<120;t++);}}void main(){ data uchar a;a=1;while(P2==0xff){ P0=~a;a=a<<1;if(a==0)a=1;delay(250);}while(P2==0xfe){ P0=~a;a=a>>1;if(a==0)a=128;delay(250);}}3、键控的流水灯#include<reg51.h>#define uchar unsigned char #define uint unsigned int void delay(uint i){ uchar t;data uchar b=0xfb;while(i--){ if(P2==0xfe) b=0xfe;if(P2==0xfd) b=0xfd;if(P2==0xfb) b=0xfb;for(t=0;t<120;t++);}}void main(){ data uchar a;a=1;while(P2==0xfe){ P0=~a;a=a<<1;if(a==0)a=1;delay(250);while(P2==0xff){P0=~a;a=a<<1;if(a==0)a=1;delay(250);}}while(P2==0xfd){ P0=~a;a=a>>1;if(a==0)a=128;delay(250);while(P2==0xff){ P0=~a;a=a>>1;if(a==0)a=128;delay(250);}}while(P2==0xfb){ P0=0xff;}}五、实验结果1、基本的流水灯基本流水灯仿真图2、简单键控的流水灯简单键控的流水灯仿真图3、键控的流水灯键控的流水灯仿真图六、思考题回答1、采用I/O口作为输出口时要考虑哪些因素?为什么实验装置中LED要串联一个电阻?答:电压的大小(包括它能感知的最小电压作为高电平),电流的驱动能力等,同时也要要考虑它是否要加上拉电阻。
实验报告跑马灯实验报告:跑马灯引言:跑马灯作为一种常见的室内装饰和广告展示工具,广泛应用于商场、剧院、车站等公共场所。
本实验旨在探究跑马灯的工作原理和设计过程,并通过实际搭建跑马灯模型进行验证。
一、跑马灯的工作原理跑马灯是通过一组灯泡或LED灯组成的,它们按照一定的顺序依次亮灭,从而形成连续的动态效果。
跑马灯的工作原理主要包括电路控制和程序设计两个方面。
1. 电路控制:跑马灯的电路控制是通过继电器或集成电路实现的。
继电器是一种电磁开关,通过控制电磁铁的通断来控制灯泡的亮灭。
而集成电路则是通过逻辑门和计时器等元件实现灯泡的顺序控制。
2. 程序设计:跑马灯的程序设计是通过编写一段简单的代码来实现的。
在代码中,通过控制灯泡或LED灯的亮灭时间和顺序来实现跑马灯效果。
常见的程序设计语言如C、Python等都可以用来编写跑马灯的代码。
二、跑马灯的设计过程跑马灯的设计过程包括灯泡或LED灯的选型、电路设计、程序编写和外壳制作等步骤。
1. 灯泡或LED灯的选型:在跑马灯的设计中,选择合适的灯泡或LED灯是非常重要的。
灯泡的亮度、寿命和能耗等指标需要进行综合考虑。
而LED灯则具有节能、寿命长和颜色丰富等优点,因此在现代跑马灯设计中更加常见。
2. 电路设计:电路设计是跑马灯设计中的关键环节。
在电路设计中,需要考虑灯泡或LED灯的亮灭顺序、时间间隔和电源供应等因素。
通过合理的电路设计,可以实现跑马灯的稳定运行和灯泡的长寿命。
3. 程序编写:程序编写是跑马灯设计中的另一个重要环节。
通过编写一段简单的代码,可以控制灯泡或LED灯的亮灭顺序和时间间隔。
程序编写需要考虑灯泡或LED灯的数量和控制方式等因素,以实现预期的跑马灯效果。
4. 外壳制作:外壳制作是跑马灯设计中的最后一步。
通过设计和制作合适的外壳,可以保护电路和灯泡或LED灯,同时也可以增加跑马灯的美观性。
外壳的材料可以选择塑料、金属或木材等,根据实际需要进行选择。
可编辑修改精选全文完整版实验一跑马灯实验一、实验内容1、基本的流水灯根据图1电路,编写一段程序,使8个发光二极管D1、D2、D3、D4、D5、D6、D7、D8顺序(正序)点亮:先点亮D1,再点亮D2、D3……D8、D1……,循环点亮。
每点亮一个LED,采用软件延时一段时间。
2、简单键控的流水灯不按键,按正序点亮流水灯;按下K1不松手,按倒序点亮流水灯,即先点亮D8,再顺序点亮D7、D6……D1、D8……。
松手后,又按正序点亮流水灯。
3、键控的流水灯上电,不点亮LED,按一下K1键,按正序点亮流水灯。
按一下K2键,按倒序点亮流水灯,按一下K3键,全部关闭LED。
二、实验方案1、总体方案设计考虑到K4键未被使用,所以将实验内容中的三项合并到一个主函数中:K4键代替实验内容第二项中的K1键;单片机一开机即执行实验内容第一项;K1、K2、K3键实现实验内容第三项。
所用硬件:AT89C52、BUTTON、LED-BLUE、电源输入:P2.0-K1;P2.1-K2;P2.2-K3;P2.3-K4。
低电平有效输出:P0.0~P0.7-D0~D7。
LED组连线采用共阳极,低电平有效软件设计:软件延时采用延时函数delay(t),可调整延迟时间:void delay(uint t){uint i;while(t--)for(i=0;i<1000;i++){if(P2!=oldK&&P2!=K[0])break;//按下了其他键退出循环}}由于涉及到按键变化所以要设置一个变量oldK保留按键键值,要在延时程序中检测是否按键,当按键后立即设置oldK的值。
按键判断采用在while循环中利用条件语句判断P2的值然后执行该键对应的代码段,达到相应的响应。
为了让K4键的效果优化,即状态变化从当前已亮灯开始顺序点亮或逆序点亮,利用全局变量n来记录灯号,利用算法即可实现。
主要算法:1、全局变量的定义:uchar D[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0X7f};//单个LED亮uchar AllOff=0xff;//LED全灭uchar AllOn=0x00;//LED全亮uchar K[]={0xff,0xfe,0xfd,0xfb,0xf7};//按键开关uchar oldK;//记录已按键int n;2、顺序、逆序点亮流水灯:void forward(){for(n=0;n<=7;n++){out=D[n];delay(15);if(P2!=oldK&&P2!=K[0])break;}out=AllOff;}void backward(){for(n=7;n>=0;n--){out=D[n];delay(15);if(P2!=oldK&&P2!=K[0])break;}out=AllOff;}3、实验内容第二项流水灯灯亮顺序变换:void hold(){n=8;while(1){if(P2==K[4]){//一直按着K4键,逆序点亮跑马灯oldK=K[4];if(n==-1)n=7; //D0灯亮后点亮D7while(n>=0){out=D[n];n--;if(delay4(15))break;}}if(P2==K[0]){//未按下K4键,一直正序点亮跑马灯oldK=K[0];if(n==8)n=0;//D7灯亮后点亮D0while(n<=7){out=D[n];n++;if(delay4(15))break;}}if(P2!=K[4]&&P2!=K[0]){//按下了其他键,退出hold函数break;}}}4、对应实验内容第一项,开机顺序点亮流水灯:while(1){//开机即正序点亮流水灯forward();if(P2!=K[0]){break;}}2、实验原理图图2-1 实验原理图3、程序流程图图2-2 程序流程图三、源程序#include"reg51.h"#define uchar unsigned char#define uint unsigned int#define out P0uchar D[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0X7f};//单个LED亮uchar AllOff=0xff;//LED全灭uchar AllOn=0x00;//LED全亮uchar K[]={0xff,0xfe,0xfd,0xfb,0xf7};//按键开关uchar oldK;//记录已按键int n;//记录当前亮的灯号void delay(uint t){uint i;while(t--)for(i=0;i<1000;i++){if(P2!=oldK&&P2!=K[0])break;//按下了其他键退出循环}}void delay10ms(){uint i;for(i=0;i<10000;i++);}void forward(){for(n=0;n<=7;n++){out=D[n];delay(15);if(P2!=oldK&&P2!=K[0])break;}out=AllOff;}void backward(){for(n=7;n>=0;n--){out=D[n];delay(15);if(P2!=oldK&&P2!=K[0])break;}out=AllOff;}int delay4(uint t){uint i;while(t--)for(i=0;i<1000;i++){if(P2!=oldK){ //按键变化退出循环return 1;}}return 0;}void hold(){n=8;while(1){if(P2==K[4]){//一直按着K4键,逆序点亮跑马灯oldK=K[4];if(n==-1)n=7; //D0灯亮后点亮D7while(n>=0){n--;if(delay4(15))break;}}if(P2==K[0]){//未按下K4键,一直正序点亮跑马灯oldK=K[0];if(n==8)n=0;//D7灯亮后点亮D0while(n<=7){out=D[n];n++;if(delay4(15))break;}}if(P2!=K[4]&&P2!=K[0]){//按下了其他键,退出hold函数break;}}}void main(){oldK=K[0];while(1){//开机即正序点亮流水灯forward();if(P2!=K[0]){break;}}while(1){out=AllOff;if((P2&0x0f)!=0x0f){//检测有键按下delay10ms();//延时10ms再去检测//P2.0_K1键按下正序点亮流水灯if(P2==K[1]){oldK=K[1];while(1){forward();if(P2!=K[1]&&P2!=K[0]){//按下了其他键,退出break;}}}//P2.1_K2键按下逆序点亮流水灯if(P2==K[2]){while(1){backward();if(P2!=K[2]&&P2!=K[0]){//按下了其他键,退出break;}}}//P2.2_K3键按下关闭全部LEDif(P2==K[3]){oldK=K[3];out=AllOff;}//P2.3_K4键按下长按逆序点亮流水灯,不按正序点亮流水灯,直到其他键按下停止if(P2==K[4]){hold();}}}}四、实验结果1、基本的流水灯:开机后即重复顺序点亮流水灯,等待其他按键。
LED跑马灯实验初学者可先动手做下面的实验:发光二极管轮流点亮的实验,也就是通常所说的跑马灯实验,首先让我们来完成必须的硬件部分,我们需要焊接上8个发光二极管和8个限流电阻,可以参考下面的原理图和实物图像进行操作,需要注意的是LED是有极性的,引脚长的为正极,引脚短的为负极,负极和电阻一侧连接,如果接错那么相应的那一路可能在实验中不会点亮了,在焊接前要看仔细哦 D2D7D4D3D1D6D5D8R7R2R3R4R5R6R1R812345678STC89C51RC VCC +5V 下面我们来完成软件编程设计,这里我们没有采用高深的编程技巧,而是用了最笨、最直接的向端口送数的办法来实现,一来程序比较简单,没必要玩深沉,而且初学者看起来直观易懂。
ORG 0000H START:MOV P1,#01111111B;最下面的LED点亮 LCALL DELAY;延时1秒 MOV P1,#10111111B;最下面第二个的LED点亮 LCALL DELAY;延时1秒 MOV P1,#11011111B;最下面第三个的LED点亮 (以下省略) LCALL DELAY MOV P1,#11101111B LCALL DELAY MOV P1,#11110111B LCALL DELAY MOV P1,#11111011B LCALL DELAY MOV P1,#11111101B LCALL DELAY MOV P1,#11111110B LCALL DELAY MOV P1,#11111111B;完成第一次循环点亮,延时约0.25秒 AJMP START;反复循环 ;延时子程序,12M晶振延时约250毫秒 DELAY: MOV R4,#2 L3: MOV R2 ,#250 L1: MOV R3 ,#250 L2: DJNZ R3 ,L2 DJNZ R2 ,L1 DJNZ R4 ,L3 RET END 如何精确计算延时子程序的执行时间? 汇编语言的一大优势就是能够精确控制程序的执行时间,这在编写一些对时序要求严格的外围器件驱动时由为重要! ;延时子程序,12M晶振延时约253毫秒 DELAY: MOV R4,#2------执行1个机器周期,耗时1微秒 L3: MOV R2 ,#250---执行1个机器周期,耗时1微秒 L1: MOV R3 ,#251---执行1个机器周期,耗时1微秒 L2: DJNZ R3 ,L2---执行2个机器周期,反复执行251次(2x251)=502微秒) DJNZ R2 ,L1-----执行2个机器周期,反复执行250次(1+502+2)*250=126250微秒) DJNZ R4 ,L3-----执行2个机器周期,反复执行2次 (1+1+502+126250+2)*2=253512微秒) RET delay 加上第一条总共延时1+253512=253513微秒 。
装……订……线基于FPGA的跑马灯电路的设计一、实验目的1、进一步熟悉MAXPLUS II、Multisim或QUARTUS II等电子开发工具的基本使用方法。
2、掌握使用移位寄存器、计数器、译码器等集成电路进行综合电路设计方法3、运用图解法设计跑马灯电路,并进行电路仿真。
二、实验内容实验题目:设计一个跑马灯电路。
要求输出8个LED灯从左到右逐个点亮,然后再从右到左逐个点亮,循环。
首先根据题目要求设计一下电路的实现方法,利用加法计数器(74LS161)和74LS138(3-8译码器)可实现8个LED灯从左到右逐个点亮的单向循环,实际电路如下图:而要完成实验的要求,需将计数器74161的输出信号变为000到111的加计数,再由111到000的减计数,然后循环。
实现实验题目的方法有两种:1、将计数器74LS161的输出端QA、QB、QC分别与QD异或,经过异或门输入到74LS138的A、B、C端,其数据符合题目的数据要求。
可以实现8个LED灯从左到右逐个点亮,然后再从右到左逐个点亮,循环。
但第1个灯和第8个灯显示的时间长度是其它灯的2倍。
Electronics Workbench 实验图12、使用可逆计数器74LS191来完成电路的计数部分,利用可逆计数器74LS191的加减计数控制端U/D′,U/D′输入低电平时计数器为加法计数器,U/D′输入高电平时计数器为减法计数器。
当计数器74LS191加计数到7(0111)时,通过与门取出信号,经过或门使D触发器输出由原来的低装……订……线电平反转为高电平,通过加减控制端U/D′,使计数器由加法计数变为减法计数。
当计数器74LS191减计数到0(0000)时,借位输出端产生信号,经过或门使D触发器输出由原来的高电平反转为低电平,通过加减控制端U/D′,使计数器由减法计数变为加法计数。
计数器输出信号为0000到0111的加计数,再由0111到0000的减计数,不断循环。
山西大学数字电子技术基于硬件设计的跑马灯电路系别:电力工程系班级:电本1254班姓名:所谓伊人学号:12322454**一、实验目的1. 熟悉NE555定时器,计数器CD4017的逻辑特性。
2. 熟悉NE555构成多谐振荡器原理。
3. 设计跑马灯电路并利用Multisim软件仿真电路。
二、实验要求1. 知道NE555、CD4017的管脚排列顺序。
2. 利用NE555构成多谐振荡器。
3. 知道电阻的主要参数及其标注方法。
(见实验指导书116页)。
4. 知道电容器的主要作用。
(见实验指导书122页)。
5. 了解有关焊接的知识。
三、实验器材电路板1块。
电容:1μF(1个)。
集成芯片:NE555(1个)、CD4017(1个)。
电阻:22KΏ、1KΏ、500Ώ各一个。
二极管:IN4148(8个)、发光二极管(10个)。
(自行提供)电池:5V四、电路的安装1.555用来定时,用它产生某种方波,相当于有的时钟信号2.4017是个十进制计数器,按照时钟信号从10个口依次输出1.检查集成芯片NE555,CD4017的安装位置有无错误.2. 检查电解电容的极性有无错误;3. 检查二极管IN4148及发光二极管的安装方向有无错误;4. 检查各个电阻的安装是否有误。
5. 检查有无虚焊。
五、电路的调试1. 电路焊接好后,先将电路板正负端接到直流电压5V及地线处,观察发光二极管是否变亮。
2. 适当改变电位器阻值,观察其对CD4017循环周期(发功二极管依次循环一周)的影响。
3. 利用秒表记录CD4017一个合适循环周期的时间。
(分别测量电阻最大时、最小时、合适时的周期)附录1.跑马灯电路图分析电路输出图像2. CD4017的相关资料CD4017是5位Johnson计数器,具有10个译码输出端,CP,CR,INH输入端,时钟输入端的斯密特触发器具有脉冲整形功能,对输入时钟脉冲上升和下降时间无限制。
其引脚排列如下引出端功能符号:进位脉冲输出 CP:时钟输入端CR:清除端(CR接低电位时,开始计数。
北京邮电大学数字电路与逻辑设计实验实验报告实验名称:发光二极管走马灯电路设计与实现学院:班级:姓名:学号:任课老师:实验日期:成绩:一.实验名称和实验任务要求实验名称:发光二极管走马灯电路设计与实现实验目的:⑴进一步了解时序电路描述方法;⑵熟悉状态机的设计方法。
实验任务要求:设计并实现一个控制8个发光二极管亮灭的电路,仿真验证其功能,并下载到实验板测试。
⑴单点移动模式:一个点在8个发光二极管上来回的亮;⑵幕布式:从中间两个点,同时向两边依次点亮直至全亮,然后再向中间点灭,依次往复。
二.设计思路和过程设计实现过程:⑴设计的电路拥有两种功能,所以设定d_in控制输出实现两种功能,规定当d_in=0时,实现单点移动模式;当d_in=1时,实现幕布式。
同时,时序电路中钟控是必不可少的,所以引入clk_in来实现钟控。
最终需输出在实验板上的8个发光二极管上验证,所以输出f需设定为8端口输出,如:f:out std_logic_vector(7 downto 0)。
⑵单点移动模式的实现:来一个时钟沿,实现一次变化。
单点移动模式需实现发光二极管来回亮,所以需定义一个16变量的数据类型。
利用CASE-WHEN语句实现状态的转移。
状态转移。
⑶幕布式的实现:需实现发光二极管从中间两个点,同时向两边依次点亮直至全亮,然后再向中间点灭,往复。
需要8变量数据类型,利用单点式中信号类型定义给状态转移。
状态转移需满足:三.VHDL程序发光二极管走马灯电路VHDL程序:四.仿真波形图发光二极管走马灯电路的仿真波形图:五.仿真波形图分析⑴单点移动模式功能的仿真波形图分析:由波形可见,当控制信号d_in=0时,输出的8个端口依次出现正脉冲,波形呈现阶梯状,代表一个发光的点在8个发光二极管上来回的亮,实现了功能要求;⑵幕布式功能的仿真波形图的分析:当控制信号d_in=1时,输出的8个端口出现正脉冲的时间与脉冲的长度呈现“中间宽,两头窄”的形状,先是中间的两个灯亮,接下来是中间四个灯亮,接下来是中间六个灯亮,两旁两个灯不亮,最后全亮,接着中间六个灯亮,两旁两个灯不亮,继而循环下去,实现了幕布式的点灯方式。
跑马灯实验报告实验目的,通过搭建一个简易的跑马灯电路,了解电路的基本原理和运作方式,加深对电子电路的理解。
实验器材,LED灯、电阻、导线、电池、开关、面包板。
实验步骤:1. 将面包板上的LED灯、电阻、开关、电池依次连接起来,注意连接的顺序和方向。
2. 确保连接无误后,打开开关,观察LED灯的亮灭情况。
3. 如果LED灯正常亮起,可以尝试将多个LED灯连接在一起,形成跑马灯效果。
4. 通过调整电阻的阻值,观察LED灯的亮度变化,体会电阻在电路中的作用。
实验结果:经过实验,我们成功搭建了一个简易的跑马灯电路。
当打开开关时,LED灯依次亮起,形成了跑马灯效果。
通过调整电阻的阻值,我们发现LED灯的亮度会有所变化,这说明电阻在电路中起到了调节电流的作用。
实验结果符合我们的预期,并且加深了我们对电子电路原理的理解。
实验分析:跑马灯电路是一种简单的序列灯光控制电路,通过合理连接LED灯和电阻,可以实现灯光的顺序亮起和熄灭。
在实验过程中,我们需要注意LED灯的正负极连接方向,以及电阻的阻值选择,这些都会影响到电路的正常运作。
同时,电池的电压也会对LED灯的亮度产生影响,需要合理选择电池的电压等级。
实验总结:通过本次实验,我们对跑马灯电路有了更深入的了解,同时也加深了对电子电路原理的理解。
在今后的学习和实践中,我们将更加注重电路的搭建和调试,不断提高自己的实验操作能力和电子电路设计水平。
希望通过不断的实践和学习,我们能够掌握更多的电子电路知识,为将来的创新和发明打下坚实的基础。
实验感想:本次实验让我更加深入地了解了电子电路的原理和运作方式,也增强了我对电子学科的兴趣。
通过动手搭建电路,我不仅学到了知识,还培养了实践能力和动手能力。
希望在今后的学习中,能够继续保持对电子学科的热爱,不断提高自己的技能和能力。
led跑马灯实验报告
LED跑马灯实验报告
引言
LED跑马灯是一种常见的电子产品,它能够以特定的频率闪烁,产生视觉上的连续移动效果。
在本次实验中,我们将利用LED灯和一些基本的电子元件,设计并搭建一个LED跑马灯,并通过实验验证其工作原理和效果。
实验目的
1.了解LED跑马灯的工作原理
2.掌握LED跑马灯的搭建方法
3.观察LED跑马灯的闪烁效果
实验材料
1. LED灯
2. 电阻
3. 电容
4. 电路连接线
5. 电源
实验步骤
1. 按照电路图连接LED灯、电阻和电容
2. 将电路连接至电源
3. 观察LED跑马灯的闪烁效果
实验结果
通过实验我们成功搭建了一个LED跑马灯,并观察到了其连续移动的效果。
LED灯以一定的频率闪烁,产生了视觉上的连续移动效果,符合LED跑马灯的工作原理。
实验结论
LED跑马灯是一种基于LED灯的电子产品,通过LED灯的频繁闪烁,产生了视觉上的连续移动效果。
通过本次实验,我们了解了LED跑马灯的工作原理,掌握了LED跑马灯的搭建方法,并观察到了LED跑马灯的闪烁效果。
这些都为我们进一步了解和应用LED跑马灯提供了基础。
总结
LED跑马灯作为一种常见的电子产品,在日常生活中有着广泛的应用。
通过本次实验,我们对LED跑马灯有了更深入的了解,也为我们今后的学习和实践提供了基础。
希望通过今后的学习和实践,我们能够更好地掌握LED跑马灯的原理和应用,为我们的日常生活和工作带来更多的便利。
一、实训目的1. 熟悉单片机的硬件结构和基本工作原理;2. 掌握单片机编程方法,实现跑马灯功能;3. 提高实际操作能力和问题解决能力。
二、实训内容1. 跑马灯电路设计;2. 单片机编程实现跑马灯功能;3. 跑马灯功能测试与调试。
三、实训原理跑马灯是一种常见的电子玩具,主要由单片机、LED灯、按键等组成。
通过单片机控制LED灯的亮灭,实现跑马灯效果。
本实训采用AT89C51单片机作为核心控制单元,通过编程实现跑马灯功能。
四、实训步骤1. 跑马灯电路设计(1)硬件选型:选用AT89C51单片机作为核心控制单元,8个LED灯作为显示单元,2个按键作为控制单元。
(2)电路连接:将AT89C51单片机的P1口与LED灯的正极相连,LED灯的负极通过限流电阻连接到地。
将两个按键分别连接到单片机的P3.0和P3.1口。
2. 单片机编程实现跑马灯功能(1)初始化:设置P1口为输出端口,P3.0和P3.1口为输入端口。
(2)跑马灯程序编写:```c#include <reg51.h>#define LED P1void delay(unsigned int t) {unsigned int i, j;for (i = 0; i < t; i++)for (j = 0; j < 1275; j++); }void main() {unsigned char i = 0;while (1) {LED = 0x01; // 点亮LED1delay(500);LED = 0x02; // 点亮LED2delay(500);LED = 0x04; // 点亮LED3delay(500);LED = 0x08; // 点亮LED4delay(500);LED = 0x10; // 点亮LED5delay(500);LED = 0x20; // 点亮LED6delay(500);LED = 0x40; // 点亮LED7delay(500);LED = 0x80; // 点亮LED8delay(500);for (i = 0; i < 8; i++) {LED = ~(0x01 << i); // 倒序点亮LEDdelay(500);}}}```3. 跑马灯功能测试与调试(1)测试:将编写好的程序烧录到AT89C51单片机中,观察LED灯的跑马灯效果。
走马灯的设计与实现一实验目的通过走马灯的设计与制作,深入了解与掌握利用可编程8255A进行开关量控制的原理与方法。
二实验要求1.产生8种彩灯(8位LED)的走马灯花样;2.键控(或拨码开关控制)发光实验。
键控是在键盘上定义8个数字键(0~7),每按1个数字键,使LED的1位发光,按Q或q键,停止发光。
拨码开关控制,是通过改变各位开关,来进行控制, 使LED的1位发光,按Q或q键,停止发光。
三实验内容1.进行走马灯的系统电路硬件设计,画出电路原理图;2.安装或焊接元器件;3.进行走马灯的控制程序设计(采用ASM语言);4.系统联调,提交一个符合上述3种要求的走马灯的作品。
四实验原理8255A是一种通过可编程并行I/O接口芯片。
广泛用于几乎所有系列的微机系统中,8255A具有三个带锁存或缓冲的数据端口,可与外设并行进行数据交换,8255A有多种操作方式,通用性较强,可为CPU与外设之间提供输入/输出通道。
8255A和各端口内具有中断控制逻辑,在外设与CPU之间可用中断方式进行信息交换,使用条件传输方式时可用“联络”线进行控制。
在实验中,我们运用8255为CPU与外设之间提供输入输出输出通道来实现对走马灯花样变换的控制。
走马灯驱动模块电路原理如图1所示。
模块包括8个LED彩灯、两个74LS04、和两个个排阻。
用LED可以观测在不同按键输入下,走马灯花样的变化效果。
如图1所示我们利用软件输入信号,通过8255端口扩展芯片和74LS04芯片,调节输出端口的电平变化,来控制共阳极的LED灯的亮与灭,实现走马灯花样变化。
图1 走马灯驱动模块电路原理图五试验设备1.PC兼容机2.Windows 98以上3.MFID多功能微机实验平台(含PCI总线驱动板)4.MFPCI98集成开发环境5.面包板或外设功能模块板6.安装或焊接工具六元器件清单元器件清单如表1所示。
表1 实验元器件清单七实验步骤7.1硬件连线根据图1的实验原电路图,走马灯电路结构电路接线如图2所示。
单片机跑马灯实验报告(二)引言概述:单片机跑马灯实验是一种常见的数字电路实验,也是学习单片机基础应用的重要内容。
本实验旨在通过控制单片机的IO口输出来实现多个LED灯的顺序闪烁,从而模拟跑马灯的效果。
本报告将从硬件组成、电路连接、程序设计、实验步骤和实验结果等方面进行详细阐述。
正文:1. 硬件组成:- 单片机 (例如STC89C52)- 电源 (5V 直流电源)- 电阻 (用于限流)- LED灯 (多个,不同颜色)- 连接线等2. 电路连接:- 连接单片机的引脚与LED灯、电阻等。
一般使用IO口输出来控制LED灯的开关状态,通过改变输出电平来控制灯的亮灭。
具体的连接方式可以根据单片机的datasheet或者开发板的示意图来确定。
3. 程序设计:- 使用C语言编写程序,通过编写程序控制单片机的IO口输出来实现LED灯的顺序闪烁。
基本的程序框架包括引入头文件、定义引脚、设置IO口状态、延时函数和主函数等。
4. 实验步骤:- 硬件连接完毕后,将程序通过编译、烧录等操作下载到单片机中。
- 运行程序,观察LED灯按照设定的顺序是否闪烁,是否达到跑马灯的效果。
- 可以通过改变程序中的一些参数,如延时时间、顺序等,来观察结果的变化。
5. 实验结果:- 根据实验步骤操作后,观察实验效果是否与预期相符。
- 分析实验结果,检查是否有异常情况,如LED灯不亮、顺序错误等,进行排查和修改。
- 还可进行一些扩展实验,如控制节奏变化、增加LED灯数量等。
总结:通过本次实验,我们成功实现了单片机跑马灯的效果,掌握了基本的硬件连接和程序设计方法。
在实验过程中,我们深入了解了单片机的IO口控制和LED灯驱动原理等知识。
通过不断练习和实验,我们能够熟练掌握单片机应用开发的基础技能,为日后深入学习和应用打下了良好的基础。
电子技术课程设计报告学院:电气与电子工程学院专业班级:电信11-2学生姓名:徐凯指导教师:完成时间:2013. 7.5成绩:彩灯设计报告一. 设计要求设计一个16位跑马灯电路,由发光二极管显示,其中有一个二极管不发光从低位到高位依次循环跑遍。
主要芯片:同步计数器(74LS161n)、两片译码器(74LS138n)、发光二极管16个,其他门电路、元件任选。
设计的作用、目的熟悉掌握同步计数器74ls161,译码器74ls138的功能和用法,能在实际工程中得以应用,如这次试验中用于循环计数跑马,就是合理有效的运用了74LS161,74LS138的功能。
二.设计的具体实现1.系统概述1.用161芯片的计数功能做成0000到1111的计时电路。
两个时能段接高电平,由进位端经非门接反馈清零端,用反馈清零的功能实现环形计数,置数端接高电平。
2.用两片138并联组成4-16线的译码器。
3.用接成的4-16线译码器将163计数的过程译码,两片138的输出端分别接16个发光LED晶体管。
4.当电路工作时,计时电路从0000记到1110,译码电路将其翻译到38的输出端来控制哪位的LED是不亮的,从零到十五位循环。
2.单元电路设计(或仿真)与分析3线-8线译码器74LS138的功能表<74ls138功能表>无论从逻辑图还是功能表我们都可以看到74LS138的八个输出管脚,任何时刻要么全为高电平1—芯片处于不工作状态,要么只有一个为低电平0,其余7个输出管脚全为高电平1。
如果出现两个输出管脚在同一个时间为0的情况,说明该芯片已经损坏。
当附加控制门的输出为高电平(S=1)时,可由逻辑图写出<74ls138逻辑图>由上式可以看出,在同一个时间又是这三个变量的全部最小项的译码输出,所以也把这种译码器叫做最小项译码器。
71LS138有三个附加的控制端、和。
当、时,输出为高电平(S=1),译码器处于工作状态。
北京邮电大学
数字电路与逻辑设计实验
实验报告
实验名称:发光二极管走马灯电路设计与实现
学院:
班级:
姓名:
学号:
任课老师:
实验日期:
成绩:
一.实验名称和实验任务要求
实验名称:发光二极管走马灯电路设计与实现
实验目的:⑴进一步了解时序电路描述方法;
⑵熟悉状态机的设计方法。
实验任务要求:
设计并实现一个控制8个发光二极管亮灭的电路,仿真验证其功能,并下载到实验板测试。
⑴单点移动模式:一个点在8个发光二极管上来回的亮;
⑵幕布式:从中间两个点,同时向两边依次点亮直至全亮,然后
再向中间点灭,依次往复。
二.设计思路和过程
设计实现过程:⑴设计的电路拥有两种功能,所以设定d_in控制
输出实现两种功能,规定当d_in=0时,实现单
点移动模式;当d_in=1时,实现幕布式。
同时,
时序电路中钟控是必不可少的,所以引入clk_in
来实现钟控。
最终需输出在实验板上的8个发光
二极管上验证,所以输出f需设定为8端口输出,
如:f:out std_logic_vector(7 downto 0)。
⑵单点移动模式的实现:来一个时钟沿,实现一次
变化。
单点移动模式需实现发光二极管来回亮,
所以需定义一个16变量的数据类型。
利用
CASE-WHEN语句实现状态的转移。
状态转移。
⑶幕布式的实现:需实现发光二极管从中间两个点,
同时向两边依次点亮直至全亮,然后再向中间点
灭,往复。
需要8变量数据类型,利用单点式中
信号类型定义给状态转移。
状态转移需满足:
三.VHDL程序
发光二极管走马灯电路VHDL程序:
四.仿真波形图
发光二极管走马灯电路的仿真波形图:
五.仿真波形图分析
⑴单点移动模式功能的仿真波形图分析:
由波形可见,当控制信号d_in=0时,输出的8个端口依次出现正脉冲,波形呈现阶梯状,代表一个发光的点在8个发光二极管上来回的亮,实现了功能要求;
⑵幕布式功能的仿真波形图的分析:
当控制信号d_in=1时,输出的8个端口出现正脉冲的时间与
脉冲的长度呈现“中间宽,两头窄”的形状,先是中间的两个灯亮,接下来是中间四个灯亮,接下来是中间六个灯亮,两旁两个灯不亮,最后全亮,接着中间六个灯亮,两旁两个灯不亮,继而循环下去,实现了幕布式的点灯方式。
由图可知,该电路实现了要求的逻辑。
六.故障及问题分析
⑴开始设计时想到用计数器实现,导致全用case语句实现当设计电路,但是仿真是发现:不论是单点移动式还是幕布式只能实现单方向的移动,而无法进行反方向的移动。
最后,查阅书籍决定改为引入类型定义语句,利用类型第一语句来完成实验,所以引进了16个信号数据类型进行状态转移。
⑵电路拥有两个功能,不能同时将这两个功能实现,所以需引进控制信号来控制功能的实现。
⑶引入时钟,控制状态的变化,此次的时钟的周期不用分频器来分频,利用实验板上先用的低频率时钟,可以实现发光二极管的状态变化。
⑷实验的程序设计基本上问题不大,主要是要熟练掌握IF-THEN, CASE-WHEN语句等。
七.总结和结论
这学期的数字电路与逻辑设计实验在这一周结束了。
这学期学了一门新课程,接触了关于课程的实验,我发现理论联系实际,实验验证理论的方法令人感到很满足。
每次做实验都会期待这次的电路设计自己会做出一个什么东西出来。
实验课结束了,回顾这几周的实验,
现在的我可以很高兴的说:现在自己已经基本上掌握了数字电路的设计了。
这几周的数字逻辑电路设计实验,我明白了一个重要的道理:进行实验,理论分析是十分重要的一环,只有逻辑分析透彻无误了,才能用语言进行描述,进而用硬件实现。
这几次实验让我对VHDL这样一门硬件描述语言有了更加深刻的认识。
同时,我也明白了做任何实验之前预习的要求是极为重要的。
做好预习工作,不仅可以减少实验课上应无知而浪费的时间,还可以更深入的明白仿真实验所蕴含的原理。
总的来说,数字逻辑电路与设计实验课对我的帮助真的很大。
我更加深刻的理解了理论课上老师所教授的知识,同时对于自己能够将理论知识运用到实验中感到十分高兴,相信下学期的数字逻辑电路与设计实验将会带给我更多新奇与经验。