多路数据采集文档格式.docx
《多路数据采集文档格式.docx》由会员分享,可在线阅读,更多相关《多路数据采集文档格式.docx(31页珍藏版)》请在冰豆网上搜索。
![多路数据采集文档格式.docx](https://file1.bdocx.com/fileroot1/2023-1/23/d2e729d5-45c4-44eb-9c25-97149661b94a/d2e729d5-45c4-44eb-9c25-97149661b94a1.gif)
以单片机为核心,通过各种控制电路进行控制。
在外设电路中,设置了时钟电路和复位电路。
外围电路将采集到的数据经过A/D转换后,送给单片机P0口。
单片机将P0口中接收到的数据进行存储,整理、变换后,从P1口送出。
送出的数据经过锁存芯片进行锁存,最后由LED显示。
LED至少需要4个。
切换通道的实现是根据外部中断源来实现的。
本课题采用的是中断源
INT1。
中断信号的产生,是通过按纽开关开关来做的。
将八路开关通过一个或非门,再与中断源INT1相连。
检测中断信号是通过软件来实现的。
一旦出现了中断信号,程序就会优先执行中断相关的程序。
第3章系统的硬件设计
3.1单片机的选择
根据初步确定的方案,和满足设计的要求,本课题选用Inter公司生
产的MCS—8051单片机。
它与其他单片机对比主要有如下优点:
1、片内程序存储器采用闪速存储器,使得程序写入更加方便;
2、它的体积小,会使整个硬件体积变小;
3、良好的性能保证了设计的成功。
3.2MCS-51单片机的管脚及其功能
MCSI片机都采用40引脚的双列直插封装方式。
图3—1为引脚排列图,40条引脚说明如下:
1、主电源引脚Vss和Vcc
1Vss接地
2Vcc正常操作时为+5伏电源
2、外接晶振引脚XTAL1和XTAL2
1XTAL1内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。
当采用外部振荡器时,此引脚接地。
2XTAL2内部振荡电路反相放大器的输出端。
是外接晶体的另一端。
当采用外部振荡器时,此引脚接外部振荡源。
3、控制或与其它电源复用引脚
RST/VPDALE/PROG,PSEN和
EA/Vpp
①RST/VPD当振荡器运行时,在此引脚上出现两个机器周期的高电平
1
2
~3
~4
35
26
7
28
9
10
11
12
13
14
15
16
17
18
19
20
P1.0j
VCC
P1.1
P0.0
P1.2
P0.1
P1.3
P0.2
P1.4
P0.3
P1.5
P0.4
P1.6
P0.5
P1.71
;
P0.6
RST/VPD7
P0.7
RXDP3.01
LEA/VPP
TXDP3.15
ALE/PROG
INT0P3.28
>
PSEN
INT1P3.31
P2.7
T0P3.40
P2.6
T1P3.5
P2.5
WRP3.6
P2.4
RDP3.7
P2.3
XTAL2
P2.2
XTAL1
P2.1
VSS
P2.0
39
38
37
36
34
33
32
31
30
29
27
25
24
23
22
21
40
图3—18051引脚排列图
(由低到高跳变),将使单片机复位在Vcc掉电期间,此引脚可接上备用电源,由VPD向内部提供备用电源,以保持内部RAM中的数据。
2ALE/PROG正常操作时为ALE功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ALE引脚以不变的频率(振荡器频率的1)周期性地发出正脉冲信号。
因此,它可用作对外输出的时钟,或用于
6
定时目的。
但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲,ALE端可以驱动(吸收或输出电流)八个LSTTL电路。
对于EPRO型
单片机,在EPROMS程期间,此引脚接收编程脉冲(PROG功能)。
3PSEN外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,PSEN在每个机器周期内两次有效。
PSEN同样可以驱动八LSTTL输入。
4EA/Vpp、EA/Vpp为内部程序存储器和外部程序存储器选择
端。
当EA/Vpp为高电平时,访问内部程序存储器,当EA/Vpp为低电平时,贝肪问外部程序存储器。
对于EPROM型单片机,在EPROMS程期间,此引脚上加21伏EPROM编程电源(Vpp)。
4、输入/输出引脚P0.0-P0.7,P1.0-P1.7,P2.0-P2.7,P3.0-P3.7。
1P0口(P0.0-P0.7)是一个8位漏极开路型双向I/O口,在访
问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸
收电流的方式驱动八个LSTTL负载。
2P1口(P1.0-P1.7)是一个带有内部提升电阻的8位准双向I/O口。
能驱动(吸收或输出电流)四个LSTTL负载。
。
3P2口(P2.0-P2.7)是一个带有内部提升电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。
P2口可以驱动(吸收或输出电流)四个LSTTL负载。
4P3口(P3.0-P3.7)是一个带有内部提升电阻的8位准双向I/O口。
P3口还用于第二功能请参看表2-1
表3-1P3口的第二功能
端口功能
第二功能
P3.0
RXD
---串行输入(数据接收)口
P3.1
TXD-
-串行输出(数据发送)口
P3.2
INI0-
—外部中断0输入线
P3.3
INT1-
—外部中断1输入线
P3.4
T0-
--定时器0外部输入
P3.5
T1-
--定时器1外部输入
P3.6
WR——
外部数据存储器写选通信号输出
P3.7
RD
外部数据存储器读选通信号输入
3.3单片机端口的分配
表3—2单片机端口的分配
I/O端口分配
作用
方式
P0.0~~P0.7
接收A/D转换的数据
输入
P1.0~~P1.7
送数据到锁存器中
输出
控制LED1的位选端
控制LED2的位选端
控制LED3的位选端
控制LED4的位选端
接收外部中断信号
WR---外部数据存储器写选通信号输出
RD---外部数据存储器读选通信号输入
3.4时钟电路设计
单片机工作的时间基准是由时钟电路提供的。
在单片机XTAL1和XTAL2两个管脚,接一只晶振及两只电容就构成了单片机的时钟电路。
电路中,电容器C1和电容器C2对振荡频率有微调的作用。
他们的值通常取30PF。
石英晶体取12MHZ。
其中的电路图如图3—2所示。
图3—2时钟电路
3.5复位电路的设计
单片机的RST管脚为主机提供了一个外部复位信号输入端口。
复位
信号是高电平有效,高电平有效的持续时间为2个机器周期以上。
单片机的复位方式由上电自动复位和手动复位两种。
电阻、电容器件的参考值为:
R仁200欧
R2=1000欧
C3=22UF
8051
COMPCWUT_I
如图3—3
图3—3复位电路图
3.6数据采集电路的设计
数据采集电路由A/D0809模数转换器、74LS373缓冲器、两个JK触
发器组成。
]f
r
ia
4
JtEiTT
ft
■■TF
TFT
I
:
l
ii
mu
1J
L
7T
I:
I?
MO
PLI
M.1
Mlto
血
畑
tm
I1.*
j
H7LDCKiWTmiE
rl.1
ALE
AB&
T
Ul&
A
Err
比冑
口
■
J
模拟信号的采集是由A/D0809转换来负责的。
当他采集完数据之后向
单片机发出信号,当单片机接收到该信号之后,就从A/D0809中获取
具体米集的方式有三种:
一是查询,二是中断,三是延时等待。
本次米用
延时等待。
具体的语句为:
MOV@DPTR,A
MOVA,@DPTR
3.7显示电路的设计
3.7.1LED介绍
单片机应用系统中,通常都需要进行人机对话。
这
包括人对应用系统的状态干预与数据输入,以及应用
系统向人们显示运行状态与运行结果等。
显示器、键盘电路就是用于完成人机对话活动的人机通道。
常用的LED数码管显示器由7个发光二极管组成7段LED显示器,其排列形状如图3—4所示。
此外Dp用于显示小数点。
通过7个发光二极管亮暗的不同组合,可以显示多种数字、字母以及其他符号。
图3—4LED图
e
dp
LED共有两种接法。
一种是共阴极;
一种是共阳极。
3.7.2LED的驱动电路
驱动电路有四个LED显示器、74LS244锁存器、8051单片机组成。
显示采用动态显示。
其中显示信号从8051单片机的P1口输出,经过74LS244锁存。
74LS的输入端口是与8051的P1口相连的。
它的输出端口是与4个LED显示器的段控位相连接的。
也就是说它控制着四个显示器的段码。
那么LED的位控制是由哪个端口控制的呢?
在设计中我采用的是用P2口
的前四位来进行输出控制的。
图3—7显示电路
3.7.3字型码的定义
由于系统LED显示使用的是共阴极的显示器,而显示器不能直接识别十进制和别的进制。
因此需要将数据转换为与十进制对应的数据来进行显示,如表3—3。
表3—3LED显示器十六进制数的字形代码
显示字符
共阴极段
码
共阳极段码
共阴极段码
共极段码
3FH
C0H
8
7FH
80H
06H
F9H
6FH
90H
5BH
A4H
77H
88H
3
4FH
B0H
b
7CH
83H
66H
99H
C
39H
C6H
5
6DH
92H
rd
5EH
A1H
7DH
82H
E
79H
86H
07H
F8H
F
71H
8EH
在本课题中,它的对应码为:
3FH、06H5BH4FH66H6DH7DH07H7FH6FH
3.8通道切换电路的设计
人们切换是通过按键来确定的,选择自己所要显示的通道。
选择信号
图3—8通道切换电路图
第4章系统的软件设计
4.1总程序流程图
W转换并送到70H-77H
A/D转换并送到7DH-77H
―1选择单通遒供通匚
通道选择
选择披测通
道,并确定存
移动指针指
将指宦地址內容转换
将指定地址內容转换
指定内容送到显
指定內容迸到显
4.2各子程序设计
4.2.1A/D转换子程序
TEST:
MOVR0,#70H
;
定义米集数据存储器位
置
MOVR5,#08
通道循环参数
MOVDPTR,#0CFA0H
数据指向端口地址
LOOP:
MOVX@DPTR,A
MOV
R4,#8FH
延时子程序
LOOP11:
DJNZ
R4,LOOP11
R4,#0FH
LOOP22:
R4,LOOP22
MOVXA,@DPTR
MOV@R0,A
把米集数据送到指定位置
INCR0
INCDPTR
MOV7BH,R5
DJNZR5,LOOP
移动存储位置;
移动指针
判定采集八通道
4.2.2
八路开关选择控制子程序
LPP:
MOVA,P3
米集开关信号
MOVR2,#0FFH
初始化
RLA
PP:
RRA
右移
INCR2
ANLA,#0EFH
信号位置判定
CJNEA,#0,PP
转移判定
MOVA,R2
MOV7BH,A
数据采集通道号存储
ADDA,#70H
数据地址传送
MOVR1,A
423二进制转换BCD码子程序
TUNBCD:
MOVA,@R1
MOVB,#51
DIVAB
MOV7AH,A
MOVA,
CLRF0
SUBBA,#10
MULAB
JBFO,LOOP2
ADDA,#5
LOOP2:
MOV79H,A
MOVA,B
255/51=5.0
个位数存储
小数点后第一位
4.2.5八路循环显示控制子程序
DISP2:
MOVSP,#60H
LP:
MOVR5,#50
ACALLDIS
DJNZR5,LP
MOVR6,#0F4H
DL1:
MOVR7,#0A9HDL2:
DJNZR7,DL2
DJNZR6,DL1
INCR1
INC7BH
DJNZR3,XUNHUAN
设置调用显示次数,使显示稳定
调用显示模块
延时
通道信号送入寄存器循环调用
4.2.6显示子程序
DIS:
MOVR0,#78H
送入数据存储地址
MOVR4,#0FEH
MOVR2,#04H
DIS2:
MOVDPTR,#TAB
MOVA,@R0
MOVCA,@A+DPTR
CJNER2,#2,QQ
ADDA,#80H
位扫描信号
数据位数送入
数码管表首地址
对应字符调用
小数点处理
QQ:
MOVDPTR,#0CFA8H
MOVA,R4
MOVP1,A
LCALLDAYINCR0
MOVR4,A
DJNZR2,DIS2
RET
采集数据地址
采集位信号
延时调用
地址移位
位信号移位
判断结束
4.2.7延时子程序
DAY:
MOVR6,#04H
D1;
D2:
MOVR7,#248
NOP
DJNZR7,D2
DJNZR6,D1
第5章运行与调试
系统的调试和运行,先将编写好的程序写成源程序文件,然后经过汇编后生成目标文件,用仿真实验台进行调试。
(1)系统启动后,显示器处于数据循环采集状态。
从0通道到7通道
循环显示数据。
具体显示数据结果如下:
04.58,10.26,23.58,34.58,45.00,52.65,64.96,71.95
(2)当切换按纽按下时,系统就响应相应的中断程序,显示出该单通道的数据。
如按下0按纽,就立即出现04.58
(3)当复位按键SA按下时,系统返回到初始状态。
第6章总结
经过将近两周的单片机课程设计,终于完成了我的多路数据采集系统的设计,虽然没有完全达到设计要求,但从心底里说,还是高兴的,毕竟从这次设计中学到了不少的知识,高兴之余不得不深思呀!
在本次设计的过程中,我发现很多的问题,虽然以前还做过这样的设计但这次设计真的让我长进了很多,单片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,虽然以前写过几次程序,但我觉的写
好一个程序并不是一件简单的事,举个例子,以前写的那几次,数据加减时,我用的都是BCD码,这一次,我全部用的都是16进制的数直接加减,显示处理时在用除法去删分,感觉效果比较好,有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论有些东西是很难理解的,更谈不上掌握。
在本次设计中,我认识最深的是硬件的作用和单片机在我们生活中的作用感。
其中对A/D0809的认识,7LS244的认识、单片机接口的认识。
在设计中,我翻阅了各方面的资料,从多方面查询他们的功能。
从其中我
学到单片机接口的知识,和它对各类事情的控制。
同时也被它强大的微处理能力所震撼。
我想,随着社会的发展,单片机必将成为人类社会不可缺少的重要科技之一。
我们应该努力学习单片机知识,为社会作出贡献。
最后我要感谢含辛茹苦、默默支持我的指导老师们,特别要感谢周向红老师。
这两周以来,她不持辛苦,时时刻刻监督、指导着我,让我从其中学到了许多的知识。
真的很感谢她。
我今天的成功离不开老师的功劳。
我一定要在今后认真的学习来报答老师的栽培。
参考文献
1、《单片机应用系统设计》何立民编北航出版社
2、《单片机原理及应用》王迎旭主编机械工业出版社
3、《51系列单片机设计实例》楼然苗等编北航出版社
4、《51单片机应用系统开发典型实例》戴家等编中国电力出版社
5、《单片微型计算机原理及接口技术》陈光东等编
附录
A系统原理图
jIIJklI
卜tJjLfkht
LISKI
*i■-1
di1
a|jL
n
aM>
・
w,5
!
■p
|M■
MX
III4
1■
1*
1J4
l・J
j|
■:
1
1*•
B、程序清单
ORG0000H
MAIN:
MOVA,P2
JZMAIN1
MAIN2
MAIN1:
LCALLTEST
MOVP3,#0FFHLCALLLPP