单片机系统中的数码管秒表仿真研究
2016-02-20宗素兰李文艺张翠侠曹吉花
宗素兰,李文艺,张翠侠,曹吉花
(1.宿州学院 煤矿机械与电子工程研究中心,安徽 宿州 234000; 2.宿州学院 机械与电子工程学院,安徽 宿州 234000)
单片机系统中的数码管秒表仿真研究
宗素兰1,2,李文艺1,2,张翠侠2,曹吉花2
(1.宿州学院 煤矿机械与电子工程研究中心,安徽 宿州 234000; 2.宿州学院 机械与电子工程学院,安徽 宿州 234000)
给出了单片机数码管秒表的原理框图,分析了数码管秒表的设计思路。采用PROTEUS软件绘制出了单片机数码管秒表仿真原理电路图,编写出完整的汇编语言源程序。运用PROTEUS 和KEIL软件加载程序,对单片机系统实现数码管秒表的过程进行了仿真。仿真结果表明,设计的数码管秒表能实现和真实秒表一样的显示效果。
单片机;数码管;秒表;仿真
秒表作为一种常用的计时仪器目前已广泛应用于人们的生产领域,由于电子秒表具有显示直观,计时方便等优点,已经取代了传统的机械秒表[1]。电子秒表的仿真可以在不做出实物的情况下就能动态直观地看出和真实秒表一样的显示效果。采用数码管作为显示器件的秒表具有显示亮度高的优点,即使在户外也能非常容易的看清楚所显示的信息。
1 原理框图
数码管秒表的原理框图如图1所示。
图1 系统原理框图
从图1可以看出,设计思路非常简单。整个数码管秒表的系统框图由电源电路、按键电路、晶振电路、复位电路、单片机、数码管组成。电源电路负责给整个系统供电,复位电路使单片机进入初始化状态[2],数码管用于秒表信息的显示。单片机内部各部分能正常、有序地工作是以时钟信号为基础的。晶振电路的作用就是为单片机系统提供时钟信号。晶振的作用在单片机系统中是至关重要的,可以说没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序代码,单片机就无法工作[3]
2 程序设计
采用汇编语言来完成显示程序的编写,完整的汇编语言源程序如下:
ORG 0
LJMP START
ORG 0003H ;外部中断0中断入口地址
LJMP INT00
ORG 000BH;定时器0中断入口地址
LJMP MBIAO
ORG 0100H
START:
MOV TMOD,#01H;设置T0为方式1定时模式
MOV TH0,#3CH;计数初值为3CB0H,即15536
MOV TL0,#0B0H
SETB TR0
SETB ET0
SETB EX0
SETB IT0
SETB EA
MOV DPTR,#TABLE
MOV R0,#00H
MOV R2,#00H
S1:MOV P1,#3FH;设置3个数码管的显示初值均为0
MOV P0,#3FH
MOV P2,#3FH
S2:MOV R1,#10
MOV A,R0
MOV B,R1
DIV AB
MOVC A,@A+DPTR
MOV P0,A
MOV A,B
MOVC A,@A+DPTR
MOV P1,A
MOV A,R2
MOVC A,@A+DPTR
MOV P2,A
LJMP S2
MBIAO:定时器0中断服务程序,每0.1秒中断1次
PUSH ACC
PUSH B
MOV TH0,#3CH
MOV TL0,#0B0H
INC R0
CJNE R0,#99,EXIT
MOV R0,#00H
INC R2
CJNE R2,#10,EXIT
MOV R2,#00H
EXIT: POP B
POP ACC
RETI
INT00:
PUSH ACC;外部中断0中断服务程序
PUSH B
CPL TR0
POP B
POP ACC
RETI
TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
END
3 数码管秒表仿真
3.1 仿真图中元器件的选取
图2 Proteus 软件“Schematic Capture”界面
打开proteus软件,进入“Schematic Capture”模式,在出现的界面上点击“P”,出现“Pick Devices”对话框,如上图2所示。在“Key Words”下面的输入框中输入相应器件的英文名称即可找到相应的器件,如开关输入“SWITCH”,按键输入“BUTTON”,七段数码管输入“7SEG”,然后根据共阴还是共阳,以及需要的颜色再具体选择。排阻输入“RESPACK”等等。如不知对应名称,也可以这样输入,如数码管属于显示器件,输入“DISPLAY”,然后所有的显示器件都会出现,从中选择即可。
3.2 仿真过程
选择好所有的元器件之后,按照原理连线,搭建出仿真原理图如图3所示。
图3 系统仿真原理图 图4 系统仿真效果图
运用keil软件,加载上节中的汇编语言源程序,生成后缀为“HEX”的文件。双击原理图中的单片机,把生成的“HEX”文件加载进去,可得仿真效果图如图4所示。
图中的最右边的数码管显示的数字是不停变化的,仿真截图时只能截取某一瞬时值。图中“暂停”键的作用是每按一次该功能键,即停在当前时间,再按一次恢复计时。
[1]雷跃荣,詹旭,杜玲艳.基于单片机的智能秒表设计[J].四川理工学院学报(自然科学版),2010,23(5):602-604.
[2]宗素兰,张翠侠,罗会祥,等. 洗衣机控制系统的设计与仿真[J].蚌埠学院学报,2016,5(1):4-9.
[3]深圳松季电子. 单片机晶振的必要性和作用[EB/OL].[2013-12-12].http://wenku.baidu.com/link?url=bZ6cYzMHwK7R3p8mzxgwTbcNZluS78Wnpm-_DkZqFqs4r6WESGnvBzUuKN23AaVcAkItxZe6cCx HgDYaa9O9xVEjL-PIBJWeijRv4QwOZ1y
[责任编辑:江雪]
The Simulation Research of Digital-tube Stopwatch in MCU System
ZONG Su-lan1,2,LI Wen-yi1,2,ZHANG Cui-xia2, CAO Ji-hua2
( 1.Suzhou University Machinery and Electronic Engineering Research Center of Coal Mining,Suzhou 234000,China;2. School of Machinery and Electronic Engineering, Suzhou University, Suzhou 234000, China)
Absract:The schematic diagram of digital tube stopwatch was given in this paper, and the design proposal of the stopwatch was analyzed. Using Proteus software to draw the circuit simulation diagram of the stopwatch, and writing out the source codes written by assembly language. The realization process of digital tube stopwatch was simulated by using Proteus and KEIL software loading program to MCU system.The simulation results showed that the designed digital stopwatch could realize the same demonstration effect as the real stopwatch.
MCU;Simulation;Stopwatch;Digital tube
2016-06-11
安徽省高等学校自然科学研究重点项目(KJ2015A200);宿州学院煤矿机械与电子工程研究中心开放课题资助项目( 2015ykf22,2015ykf24)
宗素兰,女,主要从事电子工程研究。
TP368.2
A
1671-5330(2016)05-0099-03