目录(非自动生成)、正文、致谢、参考文献、附录 联系客服

发布时间 : 星期日 文章目录(非自动生成)、正文、致谢、参考文献、附录更新完毕开始阅读

杭州电子科技大学本科毕业设计

图4-8 2051单片机及其外围电路图

4.4.2 电路原理

(1)编码器的输出通过2051 P1口的低6位(高2位接地为逻辑0)输入。 (2)选用11.0592 MHz的晶振构成单片机的时钟,这样在串口工作方式1下可得到准确的9600bps的串行波特率,方便计算机的接收。

(3)单片机接有复位开关按钮。

(4)实现打靶和信号采集传送的同步化。

由于采用单片机的外部中断0(INT0)作为数据串行传送的使能端,且INT0设为下降的跳变沿有效。使能开关(激光枪的开关)一端接地,另一端接INT0,又经上拉电阻接到电源,这样当开关按下时,便有下降沿的跳变信号输入INT0,产生中断。

同时,开关又要同步控制激光枪的发射。因此开关又接激光头的负端,从而控制激光头负端的接地,只有当开关按下时,激光头两端才有工作电压。

这样,同一个开关既控制单片机的中断,又同时控制激光枪的发射,从而达到打靶和信号采集传送这两个“动作”的同步化。 4.4.3 AT89C2051单片机[12]

AT89C2051单片机是AT89C51的简化型号,其指令系统和内部RAM均与AT89C51相同。不同的是它的内部ROM为2k,而89C51为4k,而且2051比89C51少了P0和P2输入/输出口以及外部ROM、RAM的扩展端,因此在引脚上2051只有20个脚。AT89C2051单片机主要适用于较为简单的微控制系统。在本系统中,用到AT89C2051的6个外部I/O口,一个外部中断和串行输出口。

12

杭州电子科技大学本科毕业设计

图4-9 2051信号引脚图

4.5 电平转换

在不同的数字系统中,其电平标准是不同的。该系统中就包括了TTL电平标准和RS-232电平标准,要实现两个标准的正常通信,必须进行电平转换。该系统采用使用简单的MAX232CPE芯片。

一片MAX232CPE芯片可完成2路TTL/CMOS ~ RS-232的电平转换和2路RS-232 ~ TTL/CMOS的电平转换。实际电路中只有一路单片机的TXD串口输出,不进行RXD串口输入。因此,选用引脚11接2051 TXD串口输出;而对应的14脚则接到计算机的串口输入端。

图4-10 MAX232CPE芯片内部结构

13

杭州电子科技大学本科毕业设计

5 软件设计

5.1 总体方案

该系统的信号检测与数据传送部分,涉及的软件部分较少。主要是2051单片机数据串行通信及通信协议的程序设计。

对于2051的程序设计[12],由于所需实现的功能较简单,采用汇编的形式。编译器采用Keil 7.02b。该编译器是51系列单片机程序设计的常用工具,既可用汇编,也支持C语言编译。同时具有完善的调试功能。

5.2 程序流图

读取P1口值

延时200ms 中断服务程序 初始参数设置 等待中断 发送数据帧 清中断标志 中断返回 图5-1 串行发送流程图

5.3 模块说明

14

杭州电子科技大学本科毕业设计

(1)主程序:

MAIN:

MOV SP,#0X60 ;堆栈初始化 CALL INIT ;各寄存器参数设置 MOV 40H,#0x01 ;打靶次数置1 AJMP $ ;等待中断 (2)初始化程序:

INIT:

MOV TMOD,#0X21;波特率发生器 MOV TL1,#0XFD ;波特率 9600bps MOV TH1,#0XFD

CLR ET1 ;禁止timer1

SETB PT1 ;时钟1 优先级:高 MOV SCON,#0x40;串口工作模式1,SM2=0,REN=0 MOV PCON,#0 ;波特率 9600bps SETB EA ;中断允许 CLR PS ;关闭串口中断 CLR ES ;串口优先级:低

SETB EX0 ;开外部中断INT0 SETB IT0 ;下降沿有效 CLR PX0 ;INT0 优先级:低 SETB TR1 ;时钟1 开始计数 RET

(3)中断服务程序:

_INT0: ;ISR中断服务程序 NOP

CALL DELAY_2MS ;同步延时 MOV P1,#0xff ;读P1口前先置1 MOV A,P1 ;读P1口 CALL INT0_SEND RET

(4)数据帧传送子程序:

标志位SYNC #0x30 表5-1 数据帧格式

打靶次数 打靶成绩 TIMES RESULT 校验位CHECKSUM TIMES+RESULT 例:30 02 15 17 (十六进制)

15