




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
多费率电能表中基于单片机串行口红外通信的设计与原理分析来源:/Code/51DPJ/115325.html 摘要:利用单片机的串行口、定时器/计数器T0、定时器/计数器T1、红外发射管和红外接收管等简单的软硬件就可靠地实现了多费率电能表的红外通信功能。本设计详细介绍了串行口红外通信的软硬件设计方法,并给出了具体的电路原理图、波形图和51单片机程序。关键词: 红外通信 串行接口 电能表 SSU7301单片机0 引言 多费率电能表是我国目前节约用电和计划用电政策下不可缺少的电能计量产品,多费率电能表的通信接口一般兼有红外接口和RS485接口。红外通信具有直观、操作简便、可靠性高等优点,是电能表中使用最为普遍的一种通信方式,是电能表和掌机之间实现抄表、编程、校时、数据管理等功能的有效手段。采用新茂单片机SSU7301(51系列)、*光电子公司的红外发射管SE303和红外接收管PIC12043,以及单片机串行口、2个定时器/计数器可以有效地实现红外通信功能。1 红外通信原理红外通信是利用波长为900nm1000nm的红外波作为信息的载体,发射装置把二进制信号经过高频调制后发送出去,接收装置把接收的红外高频信号进行解调为原来信息的一种通信传输方式。其中调制方式有脉宽调制(通过改变脉冲宽度调制信号PWM)和脉时调制(通过改变脉冲串之间时间间隔调制信号PPM)两种,本文采用PPM脉时调制方式。2 串行口红外通信硬件设计 多费率电能表的红外发射和红外接收电路主要包括新茂单片机SSU7301、*光电子公司的红外发射管SE303和红外接收管PIC12043,以及驱动三极管8550、电阻和电容,红外通信硬件原理图见图1。2.1 红外发射硬件设计红外发射是利用单片机SSU7301的串行数据发送口TXD(P3.1)控制驱动三极管BG1进行二进制数据“0”和“1”的传输(数据由串行发送缓冲器SBUF中送出),以及利用P3.4口控制驱动三极管BG2进行高频38.4kHz调制(高频驱动信号由定时器/计数器T0的方式2自动重装模式产生),从而可靠地实现了红外发射管D1在传输数据“0”时进行高频红外发射和数据“1”时被截止的发射功能。状态关系见表1,波形见图2。2.2 红外接收硬件设计红外接收是利用红接收管PIC12034收到高频信号输出低电平确定为数据“0”,而没收到高频信号输出高电平确定为数据“1”的方式经过解调,把数据通过单片机SSU7301的串行数据接收口RXD(P3.0)进行串行方式接收(接收数据存储在串行口缓冲器SBUF中)。3 红外通信软件设计DL/T645-1997多功能电能表通信中规定电能表的红外载波频率为38kHz1kHz;初始速率为1200 bps;通信的字节格式为8位二进制码D0D7,传输时加上一个起始位(0),一个偶校验位P和一个停止位(1),共11位,传输时先传低位,后传高位,传输序列见图3。根据以上要求,本设计中红外载波频率采用38.4kHz,波特率为1200bps,串行口采用模式3为9位异步通信方式,加1位起始位和1位结束位,传送一个字节数据为11位。3.1 红外载波和定时器/计数器T0设置红外载波频率f2为38.4kHz,当定时器/计数器T0模式控制器TMOD中C/T=0和M1M0=10时,SSU7301的定时器/计数器T0设置成模式2方式。此时,TL0和TH0预置成1个可以自动重装的8位的定时器/计数器。用软件将TL0和TH0预置相同的初值后,当TL0计数值增1溢出时,一方面使TF0置1,申请中断;另一方面产生的溢出脉冲将TH0的数据值自动打入到TL0中去,不需要用软件对TL0重新置初值。系统的晶振f1为11.0592MHz,则TL0和TH0的初值计算如下:f2=38.4kHz 得T=1/f2=1/38.4k2610-6=26 s所以高频调制反转的周期TC=T/2=26/2=13s即定时器/计数器T0的初值TL0=TH0=28-(TCf1)/12=256-(1310-611.0592106)/12=256-11.9808244=0F4H在定时器/计数器T0的中断服务程序中只用两条指令即可实现高频调制,即 CPL P3.4和RETI。3.2 串行口和定时器/计数器T1波特率发生器设置串行口采用模式3为9位异步通信方式,波特率为1200bps。由串行口控制寄存器SCON的操作模式选择位SM0、SM1都置1设置为模式3,当定时器/计数器T1模式控制器TMOD中C/T=0和M1M0=10时,SSU7301的定时器/计数器T1设置成模式2方式作为波特率发生器,其波特率表示为:波特率=(T1的溢出率)/ n当SMOD=0时,n=32;当SMOD=1时,n=16,(本设计中SMOD=0)则波特率=(T1的溢出率)2SMOD / 32T1的溢出率=(f1/12)/(28-T1初值)得:波特率=(T1的溢出率)2SMOD / 32 =(f1/12)/(28- T1初值) 2SMOD / 32得:定时器/计数器T1初值TL1=TH1=28-(f12SMOD )/(1232波特率) =256-(11.0592106)/( 12321200) =256-24=232=0E8H3.3 程序设计根据以上两点参数的设置,51系列单片机SSU7301的汇编语言程序设计如下:;以下为参数设置程序MOV TMOD, #22H ;定时器/计数器T0方式2自动重装模式用于PWM38.4KHZ调;制用 , 定时器/计数器T1方式2自动重装模式用于串行口通讯波特率发生器MOV TH1,#0E8H ;波特率1200时,定时器/计数器T1自动重装初值MOV TL1,#0E8H MOV TH0,#0F4H ;38.4KHz高频频调制时, 定时器/计数器T0自动重装初值MOV TL0,#0F4HSETB ET0 ; 定时器/计数器T0溢出中断允许位SETB TR1 ; 定时器/计数器T1开始定时控制位SETB TR0 ; 定时器/计数器T0 开始定时控制位 MOV PCON,#00H ;SMOD为0不倍增模式MOV SCON,#0D0H ;串行口设置为模式3,允许接收SETB ES ;串行口允许中断SETB EA ;开总中断允许位;以下为定时器/计数器T0中断溢出服务程序 ORG 000BH; 定时器/计数器T0中断入口地址T0SERVE:CPL P3.4 ; 定时器/计数器T0定时取反P3.4口进行高频调制RETI ;中断返回;以下为串行口中断服务程序,以接收一个字节数据为例,多字节以此类推ORG 0023H;串行口中断入口地址SENDSERVE:NOPNOP MOV A,SBUF ;把接收缓冲器的数据送到A寄存器 ;进行数据处理及其它功能操作RETI ;中断返回;以下为串行口发送程序,以发送一个字节数据为例, 多字节以此类推COMSEND: MOV A,#DATAH ;把数据送到A寄存器MOV C,P ;根据A中数据产生的偶校验位送到进位标志位MOV TB8,C ;送偶校验位到发送的第9位数据MOV SBUF,A ;送数据到发送缓冲器JNB TI,$ ;以查询方式等待发送结束CLR TI ;清发送中断标志位 ;继续发送或其它功能操作RET 子程序返回4 结束语本设计的最大特点在于省略了脉
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大学拓展训练课心得体会
- 期货从业资格之《期货基础知识》高分题库含答案详解(能力提升)
- 别墅外墙装修的合同范本
- 乡镇房门面出售合同范本
- 卤菜销售厂家供货合同范本
- icp托管商资质及合同协议
- 高价回收钢厂铁渣合同范本
- 制袋机设备出售合同范本
- 期货从业资格之《期货法律法规》强化训练模考卷附答案详解(精练)
- 小儿手足口病培训课件
- 宏图煤矿防突设计2025.9.8
- 2024年西藏贡觉县卫生系统招聘考试(护理学专业知识)题含答案
- 奇瑞购销协议书范本
- 国家卫健委十八项制度医疗
- 境外常驻人员管理办法
- 2025年天猫国际母婴分龄营养白皮书-智篆文化
- 制酸基础技能培训手册
- 2025年初中语文名著阅读《红星照耀中国》每日一练含答案
- 第四届全国会计知识大赛模拟题库及答案
- 室颤疑难病例讨论
- 大班健康冬天里的运动
评论
0/150
提交评论