第一篇:实验4 计数器加译码器设计和基于LPM宏模块的计数器设计
实验报告
实验名称:
实用数字电子设计基础
计数器加译码器设计和基于LPM宏模块的计数器设计 实验目的:初步掌握Quartus II基于LPM宏模块的设计流程与方法并由此引出基于LPM模块的许多其他实用数字系统的自动设计技术。实验内容:
根据教材175页8.5节的流程,利用Quartus II完成基于LPM宏模块的计数器设计编辑和仿真测试等步骤,给出仿真波形。
在实验系统上硬件测试,验证此设计的功能并进行解说。对于引脚锁定以及硬件下载测试。
计数器加译码器设计
(1)程序输入: dec17s程序:
module dec17s(a,led7s);
input [3:0] a;
output [6:0] led7s;
reg [6:0] led7s;
always @(a)case(a)4'b0000: led7s <= 7'b0111111;4'b0001: led7s <= 7'b0000110;4'b0010: led7s <= 7'b1011011;4'b0011: led7s <= 7'b1001111;4'b0100: led7s <= 7'b1100110;4'b0101: led7s <= 7'b1101101;4'b0110: led7s <= 7'b1111101;4'b0111: led7s <= 7'b0000111;4'b1000: led7s <= 7'b1111111;4'b1001: led7s <= 7'b1101111;4'b1010: led7s <= 7'b1110111;4'b1011: led7s <= 7'b1111100;4'b1100: led7s <= 7'b0111001;4'b1101: led7s <= 7'b1011110;4'b1110: led7s <= 7'b1111001;4'b1111: led7s <= 7'b1110001;default: led7s <= 7'b0000000;endcase endmodule count的程序:
module count(en,clk,clr,cout,outy);input en,clk,clr;output [3:0]outy;output cout;reg [3:0]outy;always @(posedge clk or posedge clr)begin
if(clr)outy<=4'b0000;
else if(en)
begin if(outy==4'b1111)outy<=4'b0000;
else outy<=outy+1'b1;
end
end assign cout=((outy==4'b1111)&en)?1'b1:1'b0;endmodule(2)电路图:
(3)编译:
(4)引脚锁定:
(5)仿真报告:
(6)分析报告:
键3控制使能,键4控制清零,时钟clock0选择4Hz,按下键3,数码管8开始从0开始计数,一直到F,重新开始,继续循环从0开始,按下键4立即清零。
基于LPM宏模块的计数器设计
(1)电路图:
(2)编译:
(3)引脚锁定:
(4)仿真报告:
(5)分析报告:
键3控制使能,键4控制清零,时钟clock0选择4Hz,按下键3,数码管8开始从0开始计数,一直到F,重新开始,继续循环从0开始,按下键4立即清零。
第二篇:加1减1计数器实验说明
各位同学请注意:
计数器的计数结果在数码管上显示,因此我们实现的电路结构为:
计数器模块——>7段数码管显示模块
1.计数器可以对试验箱上的时钟进行计数,也可以采用按键形式,按下去一次记一个数,可以自己选择进行设计。如果用试验箱上的时钟进行计数,需要对原始时钟信号进行分频,试验箱的时钟为48M的时钟,需要分到1HZ的信号来计数,可以自己设计分频器程序,也可以采用网盘中的分频程序模块分频,需要设计分频宽度,采用原理图的输入方式进行设计。
2.在下载加1减1计数器时,做好的计数器的显示是用1位七段数码管来观察的,数码管采用共阳的形式。因此请大家参考第三版教材实验与设计【P153页】7段数码显示译码器设计,编写相应译码程序,注意:教材中给的是共阴管的,实验室是共阳的,需要将0与1颠倒显示。
3.程序设计方法可以采用VHDL的方式:输入端口为计数时钟,输出端口为7段数码管LED7S;采用2进程,其中一个进程为计数器进程,另一个进程为译码进程,译码进程的敏感信号为计数器的输出信号。
4.程序设计也可以采用原理图输入方式,如果用网盘中分频程序,必须采用原理图输入方式。
下载时间为2个班一大节,都在A212下载,一个班一个小时,2个班自己协调一下。
第三篇:单片机课程设计-00-99手动计数器设计
单片机综合实验
题目:00-99手动计数器
班级:10计科一班 姓名:
学号:
设计时间:2013.06.2
目录
一、设计目的:..............................................................................................................................3
二、实验设备和实验平台:...........................................................................................................3
三、实验原理:..............................................................................................................................3
四、设计步骤:..............................................................................................................................4
1.电路设计................................................................................................................................4 2.软件设计................................................................................................................................4 3.实验调试................................................................................................................................5
五、心得体会..................................................................................................................................7
一、设计目的:
利用AT89S51单片机来制作一个手动计数器,在AT89S51单片机的P3.7管脚接一个轻触开关,作为手动计数的按钮,用单片机的P2.0-P2.7接一个共阴数码管,作为00-99计数的个位数显示,用单片机的P0.0-P0.7接一个共阴数码管,作为00-99计数的十位数显示
二、实验设备和实验平台:
EL-MUT-III 型单片机实验箱、8051CPU 模块、Keil uVision2、Proteus 7 Professional
三、实验原理:
1.把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;要求:P0.0/AD0对应着a,P0.1/AD1对应着b,……,P0.7/AD7对应着h。
2.把“单片机系统”区域中的P2.0/A8-P2.7/A15端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个数码管的a-h端口上;
把“单片机系统”区域中的P3.7/RD端口用导线连接到“独立式键盘”区域中的SP1端口上; 1. 程
2.3. 序设计内容
3.单片机对按键的识别的过程处理
单片机对正确识别的按键进行计数,计数满时,又从零开始计数;
单片机对计的数值要进行数码显示,计得的数是十进数,含有十位和个位,我们要把十位和个位拆开分别送出这样的十位和个位数值到对应的数码管上显示。如何拆开十位和个位我们可以把所计得的数值对10求余,即可个位数字,对10整除,即可得到十位数字了。
通过查表方式,分别显示出个位和十位数字。
四、设计步骤: 1.电路设计
2.软件设计
Count EQU 30H
;EQU ——标号赋值伪指令 SP1
BIT P3.7
ORG 0 START: MOV Count,#00H NEXT: MOV A,Count
MOV B,#10
DIV AB
;A除以B,商(存于)A余(下)B
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV P0,A
MOV A,B
MOVC A,@A+DPTR
MOV P2,A WT:
JNB SP1,WT
;SP为0转移 WAIT: JB SP1,WAIT
;SP为1转移
LCALL DELY10MS
JB SP1,WAIT
INC Count
;Count加1 MOV A,Count
CJNE A,#100,NEXT
;累加器与立即数不等转移 LJMP START MOV R6,#20 MOV R7,#248 DJNZ R7,$ DJNZ R6,D1 RET
DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
;0---9 END
DELY10MS: D1:
TABLE:
3.实验调试
运行后,每按一下开关,后面的个位数字就加1,按到9以后再按一下向十位进1.6
五、心得体会
为期两周的单片机课程设计,给我留下了很深刻的印象.这是我第一次从硬件方面接触到单片机.在平时的上课学习中.对于书上所讲的.感觉很抽象.在做课程设计时我们从最简单的实物开始做起.在制作过程中,我们首先是实验设计,设计电路图,然后画出电路流程图,这个大概耗时一周的时间,在这期间,我们花费大量的时间在寻找方法,上网查资料,不断的讨论,每天都研究的很晚,在焊电路片,由于以前有做过.所以没有什么问题.最后就是程序的下载,这个东西我们以前没有接触过,但是进过我们的研究还是终于成功了,我心情万分激。
这次单片机制作对我收获很大.激发了我对单片机的兴趣.接下来我会慢慢的制作更多更复杂的板子.从中发现问题.解决问题.对我单片机的学习是很有帮助的.由于第一次制作单片机电路.还有许多不好的地方.恳请老师指教!
第四篇:西安交通大学数电实验第三次,触发器和计数器设计练习
第 三 次
触发器和计数器设计 练习
姓名:
班级:
学号:
【注意:不要抄袭!!截图给出足够多的信息。】
1.项目名称、文件夹结构及文件。
【注意:】截图把文件夹的信息,所有的文件信息都显示出来为好。
2.原理图。
(1)
触发器的测试原理图【选做】
(2)
计数器电路设计实验的原理图
(3)
基于广义译码器的计数器设计的原理图
寄存器原理图:
ADDER1 VHDL 代码图:
3.仿真结果图。
(1)
触发器的测试的仿真结果图【可以不做】
【请给出仿真结果图,并简短解释】
(2)
计数器电路设计实验的仿真结果图 【请给出仿真结果图,并简短解释】
q0 代表 1,q1 代表 2,q2 代表 4,q3 代表 8,在 clk 第一个上升脉冲沿,q0 置1 表示计数 1。第二个脉冲,q1 置 1,q0 置 0,表示计数 2;第三个脉冲,q1,q0 都置 1,表示计数 3,以此类推。到 11 后进 1,继续循环。
(3)
基于广义译码器的计数器设计的仿真结果图 【请给出仿真结果图,并简短解释】
A[0]代表 1,A[1]代表 2,A[2]代表 4,A[3]代表 8,在 clk 第一个上升脉冲沿,A[0]置 1 表示计数 1。第二个脉冲,A[1]置 1,A[0]置 0,表示计数 2;第三个脉冲,A[1],A[0]都置 1,表示计数 3,以此类推。到 15 后进 1,继续循环。
4.其他。
第五篇:4、《乘加乘减》教学设计
人教版小学数学二年级上册第四单元表内乘法
(一)乘加 乘减
教学目标:
1、让学生在具体情境中通过操作经历知识形成的过程、理解乘加乘减运算的意义。
2、通过讨论、探究学习,使学生知道乘加、乘减的书写与灵活运用,并学会根据情境写出乘加、乘减的算式,感受数学与生活的联系。
教学重难点:
1、学会用含有乘加或乘减的算式解决一些简单的实际问题。
2、了解含有乘加或乘减的算式的运算顺序。
3、能够正确地进行乘加或乘减的运算。
教学过程:
一、切入举偶
1、引入。
小朋友们到公园里见到过哪些娱乐活动?旋转木马大家都做过吧?上面有很多小朋友的。
2、让学生观察画面,提出问题。
有很多旋转木马,有3个旋转木马上都有3个小朋友,有一个旋转木马上只有2个小朋友?我们要怎么算呢?
3、解决问题。算一算:一共有多少小朋友在玩旋转木马呢?算完之后小朋友互相交流计算方法和结果。
二、玩中学
1、在图中你看到的小朋友坐的旋转木马你知道什么? 请你试着做一做。
有3个旋转木马上都有3个小朋友,有一个旋转木马上只有2个小朋友列出算式。
3+3+3+2=11 3+3+3+3-1=11 3×3+2=11 3×4-1=11
2、同一个问题列出了不同的算式,你能读懂这些算式的意思吗?怎样算出11这个得数的呢?
先算乘法,再算加减法。
3、结合图讲讲为什么要先算3×3?
让小朋友们互相讨论探究,结合实际应用中先算乘法。
三、玩中做
在生活中灵活应用乘加乘减。
(1)桌子上有5个盘子,其中4个盘子每个盘子中有3桃子,1个盘子中只有1个桃子,一共是多少个桃子?
列式: 3╳5-2=13(个)3╳4+1=13(个)
(2)教室里一共5排座位每排坐5个小朋友,其中4排都坐满了小朋友,只有一排坐了4个小朋友,一共坐了多少个小朋友
列式: 5╳5-1=24(个)5╳4+4=24(个)
四、全课小结。
要用心观察并发现生活中那么多有趣的数学问题!并且用自己学会的知识解决遇到的问题,你看数学知识的用处多大呀!小朋友们一定要努力学习,学好、学活,你就能用它解决生活中更多的问题了。