单片机课程
外部脉冲计数器
目录
摘要:单片机是一种集成在
芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。本课程设计的指导思想是控制单片机实现从0到99的计数功能,其结果显示在两位一体的共阳极数码管上。
关键词:脉冲计数器 数码管 单片机
本设计基于单片机技术原理,以单片机芯片STC89C52作为核心控制器,通过硬件电路的制作以及软件程序的编制,设计制作出一个计数器,包括以下功能:输出脉冲,按下键就开始计数,并将数值显示在两位一体的共阳极数码管上。
1课
原理
PCB板上设置开始计数按键和清零按键,以上按键与89C52单片机的P1口连接,通过查询按键是否被按下来判断进行计数或者清零。若按下计数健,则单片机控制两位一体的共阳极数码管显示从00开始的数字,按下一次,则数字加一,一次类推;若按下清零键,则程序返回程序开始处,并且数码管显示00。
2 硬件及软件设计
2.1 硬件系统
2.1.1 硬件系统设计
此设计是在单片机最小系统的基础上进行开发和拓展,增加了按键电路和和数码管显示电路,由于单片机输出电流不足以驱动数码管发光,所以数码管需要驱动电路。我们采用了三极管对数码管电流进行放大,使电流大小达到
值。 2.1.2 单元电路设计
基本框架如下图2.1
开
始
按
键 数码管 89C52单片机 清零按键 显示 控制 加
一
按
键
2.1基本框架
SEL1
1JDB91627384954.7kR11
2P3VCC142C00Q91
vccVCC5
PP25440CCPC-RXPC-TX0112110Q9465317126118vcc01-+DpVV7SEG-2abcdefghNVCCGR1INR2IN39867412T1OUTT2OUT0000000000000000R104.7k11111111DS232A-NR1OUTT2INC1+C1-C2+C2-T1INR2OUT123456781RRRRRRRRU20134519SEL2111DB0DB1DB2DB3DB4DB5DB6DB7PP1444VCCCC0011
RXDTXDDB0DB1DB2DB3DB4DB5DB6DB7TXDRXD92987654321234567800010333333332222222242113
DNP00P01P02P03P04P05P06P07P20P21P22P23P24P25P26P27VCCGPSENP30/ RXDP31/ TXDALE/ PROG
P10P11P12P13P14P15P16P17P32/ INT0P33/ INT1P34/ T0P35/ T1EA/VppXTAL1XTAL2RST/VpdP36/ WRP37/ RD89C52AT89S5X123456784518991131123671111VCCR10DTTWRINT1INT0P10P11SEL1SEL2SPEAKP12P13VCCC1010UF/16V12311.0592MHzXTALVCC4K35021RSTP1KEYK0R121PP6700C3C3
VCC
211234SSW-PBSSW-PBSSW-PBSSW-PB2PDC5V
图2.2 计数器原理图
图2.3 计数器PCB图
1(STC89C52芯片 89C52STC89C52RC芯片包括: 8k字节139P10P00238P11P01Flash,512字节RAM, 32位I/O口337P12P02436P13P03线,看门狗定时器,两个数据指针,535P14P04634三个16位定时器/计数器,一个6向P15P05733P16P06832量2级中断结构,全双工串行口, 片P17P07
1221内晶振及时钟电路。STC89C52RC芯片P32/ INT0P201322P33/ INT1P2123可降至0Hz静态逻辑操作,时钟频率P221424P34/ T0P2315250-80MHz,支持2种软件可选择节电P35/ T1P2426P253127模式。空闲模式下,CPU停止工作,EA/VppP2628P27允许RAM、定时器/计数器、串口、中18XTAL21940XTAL1VCC断继续工作。掉电保护方式下,RAM20GND910RST/VpdP30/ RXD
被保存,振荡器被冻结, 单片11P31/ TXD1630P36/ WRALE/ PROG机一切工作停止,直到下一个中断或1729P37/ RDPSEN硬件复位为止。8位微控制器8K字节AT89S5X
在系统可编程。芯片如图2.4所示。
图2.4 STC89C52芯片 2(按键电路
K1键为启动键,K2键为清零键,K3键为计数键,通过按钮的连接,实现开始、计数清零功能,连接电路如图2.5所示。
REP110k
54321
VCC
S1P10
S2P11
P12S3
P13S4
图2.5 按键电路
3(复位电路
单片机的第9脚RST为硬件复位端,只要将该端持续4个机器周期的高电平即可实现复位,复位后单片机的各状态都恢复到初始化状态,其电路图如图2.6
所示:
R1RST
10K
RST
C3
10UF/16V
KEY
VCC
图2.6复位电路
4(晶振电路
单片机必须在时钟的驱动下才能工作。在单片机内部有一个时钟振荡电路,
只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决
定单片机的工作速度。时钟电路如下图2.7所示。
XTAL2
C01
230pF
XTAL
11.0592MHz
C02
130pFXTAL1
图2.7 晶振电路
5(数码管显示电路
选用的是两位一体的共阳数码管,将P0口分别接数码管的八段发光二极管,将电源VCC端口接经数码管位选三极管,构成显示电路。电路图如图2.8所示
7SEG-2
3R1100a9R2100b8R3100c6R4100d7R5100e4R6100f1R7100g2R8100hpvccvcc
051Q2
R10R119012Q1SEL2SEL1
90124.7k4.7kVCC
图2.8 数码管显示电路
6.电平转换与PC机接口电路
电平转换电路,实现芯片与PC机的电压相匹配,同时实现与PC机之间的连接。电路图如图2.9所示
VCCU1116C1+VCC
C1C232104P104PC1-V+46C3J1C2+V-C5104P1C4104P6515104PC2-GND2
7RXD1214PC-RXR1OUTT1OUT1073T2INT2OUT8TXD1113PC-TXT1INR1IN4899R2INR2OUT5DS232A-N
DB9
图2.9电平转换与PC机接口电路
2.2 软件系统
2.2.1 软件系统分析
1.单片机机器接口设计;
2.数码管显示电路设计,两位数码管显示;
3.按键取值电路设计,K1,K2,K3 分别控制计数器的开始,清零和加一。
2.2.2 流程图
外部脉冲计数器的软件流程图如图2.10
注:K1键是启动键;K2键是复位键;K3键是外部脉冲键。
K1键接P0口;K2键接P1口;K3键P2口.
N K1按下?
Y
R0,R1清零
Y K2按下?
N
N K3按下?
Y
#DPTR?DPTR
N Y R0?9?
R0加一 R0清零
显示 N Y R1?9?
R1加一
显示
图2.10 外部脉冲计数器的流程图
2.2.3 程序
汇编语言源程序:
ORG 0000H
LJMP START
ORG 0100H
START: JB P1.0 , START ;检查K1是否按下
LCALL DELAY1 ;消除抖动
JB P1.0,START
MOV R0,#0 ;个位清零
MOV R1,#0 ;十位清零
MOV DPTR,#DTAB ;表格首地址赋给DPTR,为后面显示做准备
JISHU: JNB P1.1,D3 ;检查K2否按下 ,如果按下则复位
LCALL DISPLAY
JB P1.2,JISHU ;检查有没脉冲
LCALL DELAY1 ;消除抖动
JB P1.2,JISHU ;确认有脉冲
MOV DPTR,#DTAB ;表格首地址赋给DPTR,为后面显示做准备
CJNE R0,#9H,SMALL ;判断个位是否等于9,等于9则跳到SAMLL
SMALL: JNC BIG ;判断是否大于9,大于9则跳到BIG
INC R0
LCALL DISPLAY
AJMP JISHU
BIG: MOV R0,#00H ;个位清零
CJNE R1,#9H,D1 ;判断十位是否等于9 D1: JNC D3 ;判断是否大于9,大于9 则跳到D3
INC R1
AJMP JISHU
D3: MOV R0,#0 ;个位清零
MOV R1,#0 ;十位清零
AJMP JISHU ;循环计数
DISPLAY:CLR A ;显示程序
CLR P1.4
MOV A,R0
MOVC A,@A+DPTR
MOV P0,A
LCALL DELAY
SETB P1.4
CLR P1.5
CLR A
MOV A,R1
MOVC A,@A+DPTR
MOV P0,A
LCALL DELAY
SETB P1.5
JNB P1.1,LOOP
JNB P1.2,LOOP
AJMP DISPLAY LOOP: RET
DTAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H
DELAY: MOV R7,#012H ;短延时子程序 DEL1: MOV R6,#0FFH DEL2: DJNZ R6,DEL2
DJNZ R7,DEL1
RET
DELAY1: MOV R7,#06FH ;长延时子程序 DEL3: MOV R6,#0FFH DEL4: DJNZ R6,DEL4
DJNZ R7,DEL3
RET
END
3实习心得
4 参考文献
[1] 张毅刚 单片机原理及应用 高等教育出版社
[2] 吴炳胜 80C51 单片机原理与应用技术 冶金工业出版社 [3] 邹久明 80C51 单片机实用技术 北京航空航天大学出版社 [4] 孙俊逸 单片机原理及应用 清华大学出版社
[5] 张大明 单片微机控制应用技术实操指导书机 械工业出版社 [6] 胡汉才 单片机原理及其接口技术 清华大学出版社