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

[毕业设计] 一种基于AT89C52的简易通用逻辑控制器设计

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
& O. L: k* d. E# r  k
摘要:介绍了一种以AT89C52单片机为核心、Keil C51为开发工具的简易通用逻辑控制器。介绍了逻辑控制器的结构体系,
5 M$ S9 O- U$ X9 S$ A* J5 s并鲶出了该系统软硬件设计要点。& ^+ R5 l5 b. y3 j4 Q9 q
关键词:单片机;逻辑控制;Keil C51
1 [' Q5 f: e! Q& s) l/ K随着控制技术的发展,逻辑控制器应运而生。它能更经济、/ W! }% j0 R6 f" L- ^0 Z
更快逮、更灵活地解决简单开关量控制任务,可以替代常规定时
8 L) ]7 X7 W) ^4 Z, T/ [/ I9 C5 C器、继电器、时钟和接触器所实现的功能。具有代表性的产品是
' R! ]! C6 V' {) ~6 K西门子(Siemens)公司的通用逻辑控制模块LOGO!。由于逻辑控
0 a! V# J! B" _. C0 j制器功能强大,具有很多优势,目前已被广泛地应用到各种电气6 N) U# ~- U" X$ x$ w* x
控制场合。( m5 |; r1 b( S( x* `
然而,在一般的小规模电气控制应用中,若采用较多逻辑功
/ X' J; f' a% W5 b能的控制器,性价比不高。同时.51系列单片机具有体积小、价
9 l' [' u4 h( c2 b格低、功能强、可靠性高和使用方便的特点,能够很容易地开发3 e! M+ w  D0 z. r
各种基于单片机的智能化控制系统。基于这样的背景和纺织企5 a$ H% j* K) T+ Y5 t( T0 d! u. z
业电气控制的实际需要,本文介绍-种用AT89C52实现的简易
6 ~0 f4 x  h. ?/ l; v& A& Z# I/ M通用逻辑控制器,可实现与、或、非、与非、或非和异或6种基本
/ K: I2 ^  V7 ^5 s: ~. w& J逻辑功能,以及接通延时、断电延时和RS触发器3种特殊逻辑/ ~9 M4 D. l7 ]! q" O
功能,还可以用这些逻辑功能组合成复合逻辑功能,这些功能
+ F% \4 e$ q. Z, x) W可以较好地满足- -般电气控制场合的要求。
! z$ R' q: X  v6 S+ u) w1系统概述
) @, ], h* P! V/ k- B+ r该逻辑控制器的输人部分有8个按键,8点数字量输人,输
- B. z1 @" d8 d! @出部分有8点继电器输出,6个八段数码管,每个继电器的连续0 q5 P& C7 A  h9 g% P' d6 J
电流为10A。核心部分是系统内部的100个三人一出的功能块,
9 d- z* ]& s6 u. o, n每个功能块能通过键盘设定可实现上述的9种逻辑功能中的任. J" {0 S6 L3 X; `7 n* j" b. H
意一种。此外,不同的功能块还能组合成一个逻辑块组,并能实.$ L+ `) t% `1 s' s2 F; ]
现逻辑块组的整体功能。  K$ J  K5 l( K3 s: w" R, J- @
对功能块的设定通过键盘和显示共同来完成。首先指定要
3 S( m) ~4 l# Y. Z被编辑的功能块号,接眷确定该功能块的功能(即所实现的逻
; s' X/ h8 ?# l2 b辑),一旦功能确定,其输入端的个数与类型便可确定。然后通过.
# ]$ n% ^. \% r$ Q- _+ |0 J按键选择其输人端,输人端来源可以是某个功能块的输出(用
- z" q) p+ J# v# NPXX表示),可以是直接的数字量输人(用IX表示),或是固定的; B/ M6 }  G) \9 e( v) p# O) V
高电平(用H表示)与低电平(用L表示),还可以是为空(用NC表
/ ~8 l6 ?8 Y) `  N& W示)即什么都不接.空输人端的逻辑取决于该功能块要实现的逻
8 N  i; g% l, `1 E4 g/ S辑。见表1中的几个例子。: @2 j) J& L$ N& `1 D/ |1 ]6 w( `
编辑完一个功能块后,需要保存数据才能进行下一个功
% ?: S' C) o; s6 W: d+ ?3 e( U+ D
' P0 K' f6 ]' E2 K0 B* J% q能块的编辑。显示部分则密切配合按键,显示内容取决于按键
7 h# D* P) H- k状态。功能块编辑完毕后,还需通过按键对系统输出进行编
. P3 Q3 U  Q: l辑,系统输出的来源有:某个功能块的输出(同样用PXX表示),# Z2 L& _$ z; Z" D( `( L+ g1 U, `* T
直接的数字量输人(IX),固定的高电平(H)与低电平(L),还可以0 r: v8 r* {. [2 E- g9 a  ^
是为空(NC),在逻辑上低电平和空是一-致的,继电器不动作。确+ k" j3 J! F  j4 N/ v) V! ?, ?, X
定输出后,同样需要保存数据,重新上电后,还能运行前次输; |& \# o6 c+ O; h9 J; F3 T0 k3 ]
人的逻辑功能。同时,在运行逻辑功能以前,系统具有监控和$ n4 g+ H# A; F1 y' d3 h
修改参数的功能。
4 o6 k# x$ p: _& Z$ w6 \& ~, E表1几种逻辑功能的规定) Y  b$ ]/ C& U* A
本系统中,逻辑运行涉及到大量的数据处理,因此数据结构
6 U" F% J! E' }的安排关系到程序设计的繁简。考虑到一个功能块有五个参数,
, h- q6 P- w/ O7 V5 C& x即功能代号、三个输人和一个输出,为了方便起见,功能块的参
; B' a; S* F: C5 H2 x% p数数据安排使用结构数组。而-一个功能块的某输入端有可能来* A2 i' ?& b$ d# p. ?9 M8 z
自于另一个功能块的输出,在结构数组某一元素的成员用到另: J1 S  ?" F' E$ ~3 M% q
一元素的成员,处理起来比较复杂,因此没有把功能块的输出放
& [, i- K: @, B人结构中,功能块的输出采用单独的数组。为了实现数据的掉电( o  ]" W( _# }
保护,同时在EEPROM中开辟对应的功能块镜像数组和输出镜
8 G* M8 D6 ]# R8 G, x: p像数组。而输人由外部决定,不需要在EEPROM中保存。" {" ^+ d" L( U4 {
由于C51能提供复杂的数据类型(数组结构等)和专门针
3 \# i9 p/ w+ q3 k& K' X& ]0 A对8051单片机的data、idata、pdata、xdata .code等存储类型,极
8 j* {. _4 F, r( e3 T大地增强了程序处理能力和灵活性。另外它提供常用的标准函
- Y, G% Q& W( w3 Z5 I
( ^0 r1 a6 l/ C/ r! D& x
9 G* c. N$ Z8 k' e1 E$ t* S2 U0 X% b+ }
附件下载:
游客,如果您要查看本帖隐藏内容请回复
% C9 @* ^% }5 N, |) I

1 v4 }0 I2 d, k' H; T

该用户从未签到

2#
发表于 2020-4-10 09:27 | 只看该作者
在一般的小规模电气控制应用中,若采用较多逻辑功能的控制器,性价比不高
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-31 09:44 , Processed in 0.156250 second(s), 27 queries , Gzip On.

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

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

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