找回密码
 注册
关于网站域名变更的通知
查看: 379|回复: 1
打印 上一主题 下一主题

[毕业设计] 基于单片机的多路信号异步采集技术

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-4-24 09:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

$ N/ X% I" t+ Z! c摘要:本文介绍了一种利用软件定时器在AT87C51单片机上实现多路信号异步采集的实用技术。详细描述了采集系统的硬
$ V2 n6 M; d# R1 c9 ^件结构、软件流程和通讯机制。. U# R  n+ n- P$ ]% E+ L8 @
关键字:单片机;软件定时器;异步信号采集9 w3 `1 B3 v+ |
引言
1 x! V% J0 @2 m9 G$ A. a在单片机上实现多路信号异步采集的方法通常2 N( h; B2 m9 {5 d7 h5 f; {
有两种:一种是通过外加硬件定时器来实现,即,每个! ^: Z' P" c( @- d/ A6 N
异步信号通道对应- -个定时器,当定时时间到达时,引
" Q7 A6 c3 T& @- ^% K发外部中断,CPU对相应的信号进行-一次采样。这种/ o$ q. v& C# O: p
方法虽然可以保证信号采集的高速性和实时性,但开
' c! y; @1 f7 j. R: C, P发难度大,硬件成本高,而且信号通道的数目受定时% v6 M; M. w& U* x' c7 i
器个数的限制无法随意扩展。另一种方法是软件实现
6 @, E7 L/ c4 d法,这类方法开发周期短、系统成本低、灵活性强,因
# Q- g9 c6 _* C" @0 E2 E此受到设计者们的青睐。在多路信号异步采集系统的3 U# B: N% b6 s7 u$ L1 V/ ]
设计过程中,设计者们不断探索、实践,努力寻求简单0 v2 ]3 [* n: j8 U" l
有效,灵活实用的技术途径。本文笔者在多年的实践
# o# V" y" ~! L过程中,提出了一种利用软件定时器实现多路信号异0 x; g; \% v, R) a" c
步采集的有效方法。
% }6 A/ N* Z; k+ F1硬件结构及工作原理
5 h* {2 @: E$ j1 ^/ L7 g( K: ^多路信号异步采集系统的硬件平台(即,采集器)2 a8 b0 I$ F" L/ H- c+ Y
主要由模拟选择开关、采样保持电路、A/D转换器、通
/ Q! k; X' T% m1 ^# I7 N- ]讯电路和微控制器五部分构成。模拟选择开关由单片' B8 ~; j2 H+ n; V
机控制,负责选通需要采样的信号通道。采样保持电
5 H2 J9 \" z/ w+ f1 L路负责对所选信号的模拟量电压值进行采样,采样的
& h5 l5 m2 u- d* b1 O( O8 x' p+ X% E: g  H触发信号由控制器通过P3.0引脚给出。A/D转换器负
/ t& T" {, Q+ d; e) o责对采样到的信号进行数字转换,转换后的值通过数7 I2 I: i: f& ]" P  |5 z
据总线P0被控制器读入,先存放在该信号通道对应! }% ^. }# U/ ^% B/ D
的缓冲区内,随后由微控制器通过485通讯线送往上
- O( t# N7 D3 a% D$ c位机。通讯电路由解码芯片和485适配器构成,解码
" ^; ^% B2 z9 h9 o9 p0 s) m1 N器用来识别和解析上位机发送的呼叫命令,当接收码
) N% R9 A, G1 u; W3 V2 W7 K. W+ Q. T3 ~" Q( n) \
的地址和本地码一致时,将接收到的数据送至P1口,$ r) r: U1 n! ~2 Y4 K5 I
同时向CPU发出接收中断,启动数据传输。具体结构
- v! ~/ l1 c' [+ A6 }2 l原理如图1所示。(本文以8路信号异步采集为例)5 n& |' Z  f$ ^2 s$ |( b' p* \
解码器UM2758-108. [# f5 W6 s  L
图1硬件原理图
7 @# ^* B: h# B/ h" u1 b' O3 w2软件定时器设计
0 l- y  I6 u2 e# W: Y1 V1 w9 ^为了实现多路信号的异步采集,系统为每个信号
- K* I7 r# F- p- J0 k/ u$ c通道配备一个特定 的软件定时器。软件定时器靠CPU0 \8 S! N' O4 ~! E
内部定时器T0的周期性中断来驱动。具体操作办法
& M% i; b3 ?: y5 w如下:
5 r+ m  @6 w- N# z首先在87C51处理器的内存中建立一个固定的
- S. y# a' A6 z  b" {- x软件定时器参数表,参数表为每个软件定配备3个对* H# I4 T) I. N! R5 d
应的内部参数。参数1用来供用户设置软件定时器的! E4 ~- E7 f7 k# R% F* G; b# Z
定时值,参数2用来保存软件定时器的计时值,该值
1 Q5 A/ i( l8 E& W: t+ C在定时中断产生时,由中断程序进行累加。这样软件+ `, M- z. X2 @, Q2 f) L
定时器的实际计时时间就等于定时中断周期和参数2
. e! I" D0 n# I3 Y$ V# u- f- s9 l的乘积。主程序不断的循环扫描软件定时器的计时9 e5 `& k4 P; D7 I
值,当该值达到设定值时,就对其对应的信号通道进* I8 r" R; Y: \# b
行一次采样,同时对计时值进行清零,使其重新开始
" m$ l& s& s' `( R计时。参数3用来存储软件定时器所对应的信号通道' D1 B7 f; p( a0 l
的采样地址,以便CPU进行采样操作。
4 i! ^0 v. G6 A, O软件定时器参数表:- f/ O7 ]! U+ \$ H3 [) i
, u5 ^8 I$ R0 }

7 D$ x, B- G$ q5 Z
7 B( }2 O- _. }) {! J附件下载:
游客,如果您要查看本帖隐藏内容请回复
! p9 p; e& z- z6 f
' Y+ q1 ~6 i6 `- J

该用户从未签到

2#
发表于 2020-4-24 11:17 | 只看该作者
A/D转换器负责对采样到的信号进行数字转换
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-28 08:38 , Processed in 0.109375 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表