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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
2 P6 M: O) S" v# Z" @( {
摘要:本文介绍了一种利用软件定时器在AT87C51单片机上实现多路信号异步采集的实用技术。详细描述了采集系统的硬5 e& \3 \6 D- G1 l9 _; ^: z
件结构、软件流程和通讯机制。  e& }6 ?: {8 i9 L
关键字:单片机;软件定时器;异步信号采集; z( O4 h2 y& Q+ l3 v) O3 Q; f, \
引言4 J3 |& `5 r! c) D- V: V- a- V
在单片机上实现多路信号异步采集的方法通常
; m, O( H2 E* |+ D/ }  b( w有两种:一种是通过外加硬件定时器来实现,即,每个
! B+ H9 }: i" g( ?7 z$ @% x0 k7 L异步信号通道对应- -个定时器,当定时时间到达时,引
* \& G$ R! |! _" k2 W: j发外部中断,CPU对相应的信号进行-一次采样。这种
/ |2 ]5 |+ k# X+ k+ r方法虽然可以保证信号采集的高速性和实时性,但开
; B" {, G* ~+ B+ _7 m  c8 R; ^2 j发难度大,硬件成本高,而且信号通道的数目受定时, s4 N* L& |" m1 F
器个数的限制无法随意扩展。另一种方法是软件实现2 b$ O7 }9 c$ V" w3 |" M' P' m  r
法,这类方法开发周期短、系统成本低、灵活性强,因
9 U( c1 Z9 M/ m3 F9 A) `此受到设计者们的青睐。在多路信号异步采集系统的1 O% ~7 M- b4 H9 @
设计过程中,设计者们不断探索、实践,努力寻求简单
& I6 J& I8 F5 {5 C. J$ H5 o有效,灵活实用的技术途径。本文笔者在多年的实践5 L' N8 q7 Q6 Y' B: m+ G
过程中,提出了一种利用软件定时器实现多路信号异$ p7 M, z+ l2 p/ m# D8 U) M0 P
步采集的有效方法。
. Y& f1 S' g1 u7 Y& \$ Z" d& e4 i8 a1硬件结构及工作原理
  F# g3 g" z5 q( ], K( K' z多路信号异步采集系统的硬件平台(即,采集器)' ^& \2 n; h3 D) [5 A
主要由模拟选择开关、采样保持电路、A/D转换器、通0 s; H8 W' v0 ^- P3 ]
讯电路和微控制器五部分构成。模拟选择开关由单片6 a. k, B9 g3 |' b
机控制,负责选通需要采样的信号通道。采样保持电2 g: ?+ B5 ]6 L, l4 B# ^/ v
路负责对所选信号的模拟量电压值进行采样,采样的: g' i5 H; y' q4 ~+ B6 R7 ^/ S
触发信号由控制器通过P3.0引脚给出。A/D转换器负
: Z% \. ?$ e2 c" H, n. F2 k- h责对采样到的信号进行数字转换,转换后的值通过数" O6 B* [* U, ?# q  E8 d
据总线P0被控制器读入,先存放在该信号通道对应
1 @* s% a9 V" v的缓冲区内,随后由微控制器通过485通讯线送往上% h. {1 Y% J4 N
位机。通讯电路由解码芯片和485适配器构成,解码
, Z' S- E& r; F& D器用来识别和解析上位机发送的呼叫命令,当接收码
4 s& i4 B6 i' q; u
2 l) \/ E. w* X1 U的地址和本地码一致时,将接收到的数据送至P1口,
4 c: r" c! m/ E) E" c同时向CPU发出接收中断,启动数据传输。具体结构. Q' _% J1 ~( W; Y0 Y; Z& l+ |  U
原理如图1所示。(本文以8路信号异步采集为例)& Z3 E0 v: t5 u4 i8 x7 O2 P" c
解码器UM2758-108* ~# w/ h% `, L  U7 ?( ?. J; m2 O4 I
图1硬件原理图1 |0 K8 ^3 h& u0 M0 }
2软件定时器设计
) L, `1 B2 w7 x/ E; ~) B7 ?; b为了实现多路信号的异步采集,系统为每个信号0 m, \: w# k2 e: d* Y
通道配备一个特定 的软件定时器。软件定时器靠CPU8 W2 s9 h$ _- a! D
内部定时器T0的周期性中断来驱动。具体操作办法
7 c0 \  y2 o9 s7 v3 Y  T$ @) a如下:9 R* Z$ A: K+ Y, n1 q% P$ j: f
首先在87C51处理器的内存中建立一个固定的
/ l4 C% W8 l" n1 a* M软件定时器参数表,参数表为每个软件定配备3个对+ D& H3 }3 _: H: Q4 N. _& V
应的内部参数。参数1用来供用户设置软件定时器的
- C3 W$ K& |/ Y& z定时值,参数2用来保存软件定时器的计时值,该值2 R" c3 _5 h0 L. a
在定时中断产生时,由中断程序进行累加。这样软件
$ p  |2 v) v- g6 y9 b# r: t" b定时器的实际计时时间就等于定时中断周期和参数20 j1 v! M: m# ~, u7 P' M9 V) p8 I- l
的乘积。主程序不断的循环扫描软件定时器的计时
$ T4 ?8 I1 m& z值,当该值达到设定值时,就对其对应的信号通道进
! d1 C! R3 f% k行一次采样,同时对计时值进行清零,使其重新开始
4 n* K% z; S6 A4 k' N& z0 ~9 f3 D: ^" \计时。参数3用来存储软件定时器所对应的信号通道4 L( u- a! @1 ?( B' e3 G1 k
的采样地址,以便CPU进行采样操作。
  [$ T  K/ e: k' u  y" i软件定时器参数表:
3 a' i7 \% n0 z1 \0 Q" x7 O9 H' C+ p; |' R, J5 l
3 y/ m5 n6 z: J6 K% ?
2 x1 O, ?# _' ~5 E, r1 ~) I
附件下载:
游客,如果您要查看本帖隐藏内容请回复
, X" S/ g3 D7 x. j
9 O+ ~4 X+ T' A; ?: r/ n. |

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-4 11:29 , Processed in 0.078125 second(s), 27 queries , Gzip On.

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

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

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