《基于单片机与CPLD的无线控制系统.pdf》由会员分享,可在线阅读,更多相关《基于单片机与CPLD的无线控制系统.pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、I 臣蠢|圈医一墅丑塞董;墨王望苎丑亘堡呈兰旦笪垂垡壁趔丞筮基于单片机与C P L D 的无线控制系统张九宾,张丕状,杜坤坤(中北大学信息与通信工程学院山西太原0 3 0 0 5 1)摘要:介绍一种基于单片机与C P L D 结合的传感器网络节点的无线控制系统。节点中单片机对无线命令进行译码,并对外围子模块进行控制,C P L D 扩展控制系统的并行I 0 端口、S P I 串行接口等,从而根据系统需要可扩展无线传感网络节点的外围功能模块。采用单片机与C P L D 模块化设计方法,降低了设计成本,方便电路的多次改进,为传感器网络节点在不同场合的应用提供了一种通用的方法。关键词:单片机I 0
2、端口扩展;C P L D;控制节点;S P I 串行接口扩展中图分类号:T P 3 0 2 1文献标识码:B文章编号:1 0 0 4 3 7 3 X(2 0 0 9)0 1 0 9 4 一0 3W i r e l e s sC o n t r o lS y s t e mB a s e do nS i n g l eC h i pC o m p u t e ra n dC P L DZ HA N GJ i u b i n,Z HA N GP i z h u a n g,D UK u n k u n(S c h o o lo fI n f o r m a t i o na n dC o m m
3、u n i c a t i o nE n g i n e e r i n g t N o a hU n i v e r s i t yo fC h i n a,T a i y u a n,0 3 0 0 5 1 C h i n a)A b s t r a c t:Aw i r e l e s sc o n t r o ls y s t e mo fs e n s o rn e t w o r kn o d e sw i t ht h ec o m b i n a t i o no fs i n g l ec h i pc o m p u t e ra n dC P L Di si n t r
4、o d u c e d I nt h en o d e,s i n g l ec h i pc o m p u t e rd e c o d e st h ew i r e l e s sc o m m a n d sa n dc o n t r o l se x p a n s i o nm o d u l e s,C P L De x p a n d sc o h t r o ls y s t e mp a r a l l e lI Op o r t sa n ds e r i a lS P Ip o r t s,t h es y s t e mc a ne x p a n dp e r
5、i p h e r yf u n c t i o nm o d u l e sa c c o r d i n gt on e e d T h ew a yo fm o d u l ed e s i g nw i t ht h ec o m b i n a t i o no fs i n g l ec h i pc o m p u t e ra n dC P L Dc a nl o wc o s tp r i c e,f a c i l i t a t et h ec i r c u i ts e v e r a lt i m e st oi m p r o v ea n dp r o v i
6、d eac o m m o nm e t h o df o rt h es e n s o rn e t w o r kn o d e si nt h ea p p l i c a t i o no fd i f f e r e n to c c a s i o n s K e y w o r d s:s i n g l ec h i pc o m p u t e rI 0e x p a n s i o n;C P L D;c o n t r o ln o d e;S P Is e r i a li n t e r f a c ee x p a n s i o n0 引言自单片机引入我国以来,
7、相关产品的普及促使单片机的应用设计日益广泛。传统的单片机控制系统由单片机以及外围扩展芯片组成,但是这些外围芯片一般具有接线重复性高、体积大等缺点。可编程逻辑宏单元或逻辑块之间的相互连线在同一封装内,受外界干扰影响小,电磁兼容(E M C)性能好。对设计者来说,C P L D 器件最大的优点在于可现场编程,改变逻辑关系时,无需更改外部线路板,只需用图形语言程序或硬件描述语言程序来改变电路,生成下载编辑软件,通过下载电缆输入C P L D 器件即可,非常方便,特别有利于新品试制,大大缩短了开发周期。使用C P L D 和单片机结合构成其外围电路可以减少系统芯片数量,缩小系统体积,提高系统可靠性。1
8、 控制系统该系统是一个无线传感器网络节点的控制系统,它用于控制无线模块接收主站发送过来的信息,单片机读收稿日期:2 0 0 8 0 6 2 8基金项目:国家自然科学基金资助项目(6 0 6 0 2 0 4 1)9 4取这些数据并译码后,根据译码结果控制各功能子模块,如无线模块控制、温度采集控制、电源管理控制、时间统一信号控制等功能,共需要2 8 个输出控制I 0 口,1 3 个输入控制I 0 口,扩展I O 端口分配8 个。各外围模块通过S P I 串行标准接1:1 的扩展与单片机和C P L D 进行通信,并完成数据传输控制功能。各外围模块只需接受M C U 的控制命令,即可独立完成外围模块
9、各自的功能:无线模块的收发、数据采集A D 转换、时间统一记录、电源管理等。同时预留单片机通过U S A R T 的串口输出,另外,还需要此系统具有很好的扩展性,通过扩展外围模块来增加节点不同的功能。系统设计要求如图1 所示。图1系统设计要求根据设计要求,单片机系统要8b 的U A R T 串行输出以及S P I 串行输入输出,同时为了完成各种控制功万方数据能,单片机必须至少扩展7 个I o 端口。如果使用传统的扩展方法,在输出速率要求不高的情况下,并行接口通常使用8 2 5 5 传统的微处理器接口芯片来扩展。但是,这些芯片都是4 0 脚D I P 封装,体积庞大,并且每片最多只能扩展3 个8
10、bI O 端口,还要考虑8 2 5 5中A,B,C 口是作为输入口还是输出口。当需要的控制端口较多时,不得不用多个这种专用芯片。这时需重复连接多片8 2 5 5 的8 位数据线、单片机读写信号线、A L E,C S(片选)和,A。信号线,增加了单片机硬件、软件的设计难度,也就造成电路复杂、控制不便、可靠性降低,而且增大了电路的功耗、体积和重量。同时接口芯片提供的端口数未必与实际需要的端口数相等,不能根据实际情况分配I O 端口的数量,容易造成芯片部分资源的浪费。而C P L D 具有丰富的可编程I O 引脚,并且由于其在系统可编程的特点,设计者能够自己定义器件的内部逻辑和管脚,扩展电路也具有可
11、编程设计的特点,方便电路的多次改进,降低了设计成本。2 单片机与C P L DA V R 单片机,采用精简指令集C P U(R I S C),具有高性能,处理速度快(1M I P S M H z),成本低,包括F L A S H 程序存储器、看门狗、E 2 P R O M、同异步串口、S P I、A D C、定时器计数器,众多的中断系统,集成多种功能,具有低功耗抗干扰的休眠模式。复杂可编程逻辑器件(C o m p l e xP r o g r a m m a b l eL o g i cD e v i c e,C P L D)是一种半定制的专用集成电路(A p p l i c a t i o
12、nS p e c i f i cI n t e g r a t e dC i r c u i t,A S I C)。其芯片上按一定排列方式集成了大量的门和触发器等基本逻辑元件。通过软件编程可以实现这些元件的连接,从而使之完成某个逻辑电路或系统的功能,成为一个可在实际电子系统中使用的A S I C。目前,最大的两家C P L D F P G A 生产厂商分别是A L T E R A 以及X i l i n x。该系统使用的X i l i n x 的X C 2 C 2 5 6 属于X i l i n x 公司的C o o l r u n n e r 2 系列,包含2 5 6 个宏单元,最大用户I
13、0 管脚有1 0 0 个。3系统硬件连接组成以及工作过程使用C P L D 代替单片机的外围接口芯片,与A V R单片机构成的控制系统相连如图2 所示。系统的主要部分仅需要2 片集成电路,A V R 单片机系列A T m e g a l 6 2 和X C 2 C 2 5 6。单片机与C P L D 之间的接口是通过单片机的地址数据复用总线(P O R T A 端口)以及读写控制I 0 口(W R,R D,A L E)与C P L D 的I 0 口相连来进行数据、状态的传输。在单片机中对扩展的I 0 端口进行统编址,通过C 语言可以方便地访问I 0 端口,单片机要往数据端E l 或控制端口输出信
14、息,必须先把地址送到地址总线上,将确定的控制信息送到控制总线上,再把数据信息送到数据总线上。经过C P L D 的内部逻辑进行地址:数据锁存,并译码以获得扩展的端口号,从而获得对各个外部功能子模块的控制信号,端口号C O M。,C O M z,C O M 3,C O M 4,C O M 5,C O M。,C O M,分别是无线模块控制、时间统一控制、数据采集控制、电源管理控制、片选选择控制、状态选择以及可扩展模块控制等的控制端口,而且通过控制片选端口号(C O M;端口),可以对各个功能子模块进行S P I 串行数据的传输,从而达到对S P I 串行标准接口的扩展。斗 =鸯控制信号线数据地址线
15、图2 硬件连接示意图通过选择不同的I O 端口可以控制读取、写入各外围处理模块的数据。要读取某一外围处理模块的数据,必须先读取状态选择端口C O M。的状态信息,状态选择R D Y(数据准备好)就绪时,通过向此处理模块控制端口C O M 写入控制信息来控制子模块的工作模式,再通过写片选端口C O M。来选择子模块,从而启动S P I实现读取子模块的数据。与此对应,写入数据也需要读取状态信息,再控制某一子模块的工作模式,选择片选信号,启动S P I 写,就可以实现写人数据的功能。4C P L D 软件设计采用X i l i n x 公司的C P L D 开发软件X i l i n xI S E
16、完成系统的软件设计,X i l i n xI S E 支持原理图输入、H D L语言输入、状态图输入和混合输入等输入方法。其中H D L 语言中的V H D L 硬件描述语言,与具体的工艺技术和器件无关,易于共享和复用,具有多层次描述系统硬件功能的能力。在设计中,C P L D 需要实现的功能为地址译码端口9 5万方数据_ 巨墨冒墨E 一墅丑塞墨;圣王望丘丑墨堡呈生旦鱼丞垡鳖型丕蕴以及控制不同端口的电路设计,用V H D L 语言对进行编程编译,然后采用元件例化的方法得到电路结构如图3 所示。d r)图3C P L D 生成的电路结构图C P L D 中所设计的程序片断:a d d rc o
17、d e a d r rC S a d r rC S a d r rC S a d r rc s a d r rc s a d r rc s a d r re s 一”1 1 1 1 1 1 1 1 1 1 1 1”Ie n dc a s e Ie n dp r o c e s sp 2,一一无线模块模式控制电路P:p r o c e s s(a d r rc s(2),P Ai(2d o w n t oO)b e g i ni f(a d r rc s(2)e v e n ta n da d r rc s(2)一7 07)t h e nw i r e l e s sm a n a g e d=
18、P Ai(2d o w n t oO)#e n di f;e n dp r o c e s sP,一一片选不同的功能模块通过扩展S P I 与单片机通信P:p r o c e s s(S SP I N,a d r rc s(4),P Ai(2d o w n t o0),e s a d-图4C P L D 功能仿真结果5 单片机软件设计A V R 单片机固化程序采用I C C 语言编写,并使用模块化的设计方法,分为初始化程序、预定义子程序、主程序、无线收发控制程序、各功能模块控制程序、读功能子模块的子程序、配置功能子模块程序、超时程序等。模块化设计使软件更加灵活,便于调用和移植,并且在错误发生的
19、时候,可以很快找到错误,极大地提高了系统的可靠性和稳定性。单片机中要对扩展的不同I O 端口分配相对应的不同的内存地址。例如:要对扩展的电源管理I 0 端口分配单片机所映射的内存地址为O x 2 0 0 0。可以写成:#d e f i n eP O W E R A D D R(*(u n s i g n e dc h a r*)0 x 2 0 0 0)。单片机主要完成系统的控制功能,在实现输出控制接口时需要与C P L D 配合,提供C P L D 需要的数据和地址及控制线。当需要某一组输出工作时,在单片机中用C 语言对宏变量对应的地址进行赋值,“W R”或“R D”同时就被拉低,C P L
20、D 通过这组信号判断选择并且使能某一组输出工作,并将输出控制代码从单片机经过C P L D 的相应端口输出,完成控制功能。例如对电源管理单片机中定义的I O 端口对应的内存地址为:#d e f i n eP O W E R A D D R(*(u n s i g n e dc h a r*)0 x 2 0 0 0),当用C 语言写下P O w E RA D D R=0 x 1 2时,就会在C P L D 的8 个i o 口输出相应的控制信息“0 0 0 1 0 0 1 0”,从而对各功能模块进行供电或断电。b e g i ni f(a d r r _ e s(4)e V e n ta n da
21、 d r r c s(4)=0 )t h e nc s a d d r S S S S S S S S =”1 1 1 1 1 1 1 1”Ie n dc a s e;e l s eS S 0 即温度没有达到设定值,且T c 1,则令E,=IE,El,即对温度P I D 调节来说,误差E,输入为零,这时温度P I D 则停止调节,让温度自动上升,达到设定值。反之亦然。4 结语针对洁净手术室的控制要求,建立了以S 7 2 2 4 P L C 作为控制核心和T D 4 0 0 C 作为人机界面的控制系统。通过该系统满足了手术室对温湿度控制要求,最大程度地避免了过冲现象,提高了整个系统的可控性和稳定
22、性。参考文献 1 蔡行健,鲁炜,朱震忠,等深入浅出s 7 2 0 0P L C M 北京:中国科学技术出版社,2 0 0 4 2 目军,周志霞,S i e m e n ss 7 2 0 0 在中央空调控制系统中的应用E J 电子机械工程,2 0 0 5,2 3(1):6 3 6 4 3 西门子(中国)有限责任公司深入浅出西门子s 7 2 0 0P L C M 北京:北京航空航天大学出版社,2 0 0 5 4 朱莹,沈晋明手术室净化空调系统的模式及比较 J 洁净与空调技术,1 9 9 9(4):9 1 5 5 3 刘瑞霞,王玲,王永新洁净室的温湿度控制设计口 自动化仪表,2 0 0 5,2 6(
23、8):1 9 2 1 6 李小遐,杨云,刘瑞霞洁净室的温湿度控制系统 J 计算机系统应用,2 0 0 4(1 0):4 9 5 1 7 刘晓红,张国山一种利用标准化死区时间修正P I D 参数的新方法 J 山东大学学报:工学版,2 0 0 5,3 5(4):3 5 3 8 8 F o n g C h w e eT,S i r i s e n aHR S e l f t u n i n gP I DC o n t r o l l e r sf o rD e a dT i m eP r o c e s s e s 刀I n d u s t r i a lE l e c t r o n i c s,
24、I E E ET r a n s a c t i o n so n,1 9 8 8:】1 9 1 2 5 9 付冬梅实用P I D 的几种改进方法 J 自动化博览,1 9 9 7(1):1 1 1 2 1 0 辛季龄,王保辉,刘玉林大滞后温度智能控制系统的研究与实现 J 南京航空航天大学学报,1 9 9 3(8):4 6 4 4 6 9 作者简介张国铭男,1 9 8 2 年出生,安徽合肥人,硕士研究生。主要研究方向为机器人控制与机器人导航。朱劲男,1 9 5 8 年出生,副教授,硕士生导师。主要研究方向为机器人控制与智能控制。(上接第9 6 页)参考文献 1 李彬,萧德云,张正芳基于单片机和C
25、 P L D 的智能I 0 模块设计 J 计算机工程与应用,2 0 0 6,4 2(3 6):6 6 6 9 2 何立民单片机高级教程应用与设计 M 北京:北京航空航天大学出版社,2 0 0 3 3 赵鑫,蒋亮,齐兆群,等V H D L 与数字电路设计 M 北京:机械工业出版社,2 0 0 5 4 罗苑棠C P L D F P G A 常用模块与综合系统设计实例精讲 M 北京:电子工业出版社,2 0 0 7 5 李庆,亓科,于敬芬基于C P L D 与单片机的多路高精度数据采集系统设计 J 海军工程大学学报,2 0 0 7,1 9(3):6 2-6 5 6 沈周义,许克滨采用C P I。D 增
26、强单片机P 8 9 C 6 6 9 外部设备扩展能力r j 现代电子技术,2 0 0 7,3 0(1 3):6 3 6 5 7 程耕国,刘涛C P L D 扩展5 1 单片机寻址范围 刀微计算机信息,2 0 0 6,2 2(5 Z):1 8 5 1 8 6,1 0 8 蔡锦元C P L D 器件在单片机控制器中的使用口 现代电子技术,2 0 0 6,2 9(2 2):1 3 9 沈文,E a g l el e e,詹卫前A V R 单片机C 语言开发入门指导 M 北京:清华大学出版社,2 0 0 7 1 0 杨美刚,李小文S P I 接口及其在数据交换中的应用 J 通信技术,2 0 0 7(1
27、 1):3 8 5 3 8 7 作者简介张九宾男,1 9 8 1 年出生,山西运城人,现就读于中北大学信息与通信工程学院,硕士研究生。张丕状男,1 9 6 5 年出生,教授,博士,硕士生导师。中北大学信息与通信工程学院信息工程系副主任,中北大学山西省无损检测中心青年骨干。主要从事信号信息处理、数据采集测试工作。杜坤坤女,1 9 8 3 年出生,山东聊城人,现就读于中北大学信息与通信工程学院,硕士研究生。1 0 0坝代电子技市(半月刊)欢迥刊登广告0 2 9-8 5 3 9 3 3 7 6万方数据基于单片机与CPLD的无线控制系统基于单片机与CPLD的无线控制系统作者:张九宾,张丕状,杜坤坤,Z
28、HANG Jiubin,ZHANG Pizhuang,DU Kunkun作者单位:中北大学,信息与通信工程学院,山西,太原,030051刊名:现代电子技术英文刊名:MODERN ELECTRONICS TECHNIQUE年,卷(期):2009,32(1)被引用次数:0次 参考文献(10条)参考文献(10条)1.李彬.萧德云.张正芳 基于单片机和CPLD的智能I/O模块设计期刊论文-计算机工程与应用 2006(36)2.何立民 单片机高级教程-应用与设计 20033.赵鑫.蒋亮.齐兆群 VHDL与数字电路设计 20054.罗苑棠 CPLD/FPGA常用模块与综合系统设计实例精讲 20075.李庆.亓科.于敬芬 基于CPLD与单片机的多路高精度数据采集系统设计期刊论文-海军工程大学学报 2007(03)6.沈周义.许克滨 采用CPLD增强单片机P89C669外部设备扩展能力期刊论文-现代电子技术 2007(13)7.程耕国.刘涛 CPLD扩展51单片机寻址范围期刊论文-微计算机信息 2006(z)8.蔡锦元 CPLD器件在单片机控制器中的使用期刊论文-现代电子技术 2006(22)9.沈文.Eagle lee.詹卫前 AVR单片机C语言开发入门指导 200710.杨美刚.李小文 SPI接口及其在数据交换中的应用期刊论文-通信技术 2007(11)本文链接:http:/