基于51单片机的无线信号编解码技术研究 (1)
()*+,*&-%./ 0 单 片 机 实 现 了 一 种 以 软 件 方 式 对 传 输 数
据编解码的方法$
. 现有的编解码技术
./. 硬 件 编 解 码 技 术
目 前 有 多 种 用 于 编 码 和 解 码 的 专 用 芯 片 ! 1)66%6W
1)6646 是 比 较 常 用 的 一 种 $ 在 通 常 的 使 用 中 ! 一 般 采 用 + 位 地 址 码 和 " 位 数 据 码 ! 这 时 编 码 芯 片 1)66%6 和 解 码 芯 片 1)6646 的 第 - X+ 脚 为 地 址 设 定 脚 $ 有 三 种 状 态 可 供 选 择 % 悬 空 & 接 正 电 源 和 接 地 ! 2+ 为 % &%- ! 所 以 地 址 编 码 不 重 复 度 为 % &%- 组 ! 只 有 发 射 端 1)66%6 和 接 收 端 1)6646 的 地 址 编 码 完 全 相 同 时 ! 才 能 配 对 使 用 $ 当 编 码 启 动 端 )Y 接 低 电 平 时 ! 1)66%6 就 将 从 数 据 输 入 端 /$ X /2 输 入 的 数 据 经 过 编 码 后 从 /ZL) 引 脚 串 行 输 出 [ -\ ! 数 据帧 的高 + 位 为地 址 !低 " 位 为数 据 !发 送 时 以 先 高 位 & 后低位的顺序逐次发送$ 每 一帧 发送 " 次 !每帧 数据中 间 由 同 步 码 隔 开 $ 1)6646 只 有 在 连 续 6 次 检 测 到 相 同 的 地 址 码 和 数 据 码 时 才 会 把 数 据 码 中 的 ’- ( 驱 动 相 应 的 -$-
同步位D , D D , , D , 图 D 脉冲 ( 间隙编码
?@AB9C, 及 ?@AB9CD
输出高电平脉冲 延时 5,," 定时器中断
S ?@AB9C,Q,
输出低电平脉 冲延时 +,"
G T ?@AB9CDQD ) T
3
?@AB9C,Q, ) 3 T
?@AB9C,QD 3
输出高电平脉 冲延时 ),," 第 # 位数 据 !D )
中 图 分 类 号 ! )12%+ 文献标识码! 3 文 章 编 号 ! -%4"5446$76$--’$& 5$$,65$2
!"# $#%#&$’" () *+$#,#%% %+-./, 0.1(2+.- /.2 201(2+.- 301".(,(-+0% 4/%02 (. 56 789
89:;< /=>?:; ! (9:@ 1A;<B:;
初始化定时器 # 开始
# 改进的编解码技术
#"! 软 件 编 码 原 理 及 程 序 流 程
编 码 就 是 用 不 同 形 式 的 码 型 来 表 示 二 进 制 的 &- ’ 和 &, ’ " 本 文 采 用 的 编 码 方 式 为 脉 冲 ( 间 隙 编 码 ! 即 在 下 一 脉 冲 前 的 暂 停 持 续 时 间 ! 表 示 二 进 制 符 号 &- ’ ! 而 下 一 脉 冲 前 的 暂 停 持 续 时 间 *! 表 示 二 进 制 符 号 & , ’ # /% ! 脉 冲(间隙编码如图 - 所示" 发送端 的信 号分 为同步 信 号#数据信号以及校 验 和 信 号 !无 线 发 射 电 路 如图 * 所 示 " 经 过 编 码 后 的 信 号 由 单 片 机 的 &-0+ 引 脚 输 出 到 无 线发射 模块 !然后 无线发 射模 块 将 基 带 信 号 经 高 频 载 波 电 路调 制后!通 过天 线向空 间辐 射"
7*@CC=<= @B *@DE?F=G (HA=;H= :;I )=H9;@C@<J ! K?9:; L;AM=GNAFJ @B (HA=;H= :;I )=H9;@C@<J ! K?9:; "2$$%& ! *9A;:’ !"#$%&’$ ! (@D= IAN:IM:;F:<=N :G= B@?;I! N?H9 :N BAO=I B@GD @B BG:D= :;I : NADEC=O H9=HP@?F Q:JR SF AN :CN@ 9:GI F@ H9:;<= F9= FG:;NDANNA@; NE==IR (@ : ;=Q N@BFQ:G= =;H@IA;< :;I I=H@IA;< D=F9@I T:N=I @; ()*+,*&-%./ 0 NA;<C= 5H9AE DAHG@H@DE?F=G AN EG@E@N=IR )9= FAD=G AN ?N=I F@ =;H@I=U :;I T@F9 F9= E=GAE9=G:C A;F=GG?EF :;I F9= FAD=G :G= ?N=I F@ I=H@I=R )9= FAD=G QACC NF:GF F@ Q@GP Q9=; : GANA;< 5=I<= @B F9= E?CN= NA<;:C G=H=AM=I AN I=F=HF=I! :;I AF QACC NF@E Q@GPA;< Q9=; : B:CCA;< 5=I<= AN I=F=HF=IR )9= B:CCA;<5=I<= QACC <=;=G:F= F9= E=GAE9=G:C A;F=GG?EF :F F9= N:D= FAD=R )9= M:C?= @B F9= H@?;F=G G=<ANF=GN QACC T= ?N=I F@ I=H@I=R SF AN EG@M=I F9:F F9AN D=F9@I 9:N BC=OATC= B@GD @B BG:D= :;I IAM=GN= H9=HP@?F Q:JNR )9= H@NF @B F9= QAG=C=NN H@DD?;AH:FA@; NJNF=D AN :CN@ IADA;AN9=IR SF AN BAF B@G F9= QAG=C=NN H@;FG@C! I:F: :HV?ANAFA@; :;I FG@?TC= :C:GDR ()* +,%-# ! =;H@IA;< " I=H@IA;<" FAD=G " E=GAE9=G:C A;F=GG?EF 随着微电子#计算机信息技术的迅速发展!由单片 机和无线传输模块组成的无 线数 据通 信系统 在石 油 #电 力#水文#冶金#安防等行业的无线控制#数据 采集#故 障报警等诸多领域中得到越来越广泛的应用$ 而数据的 编解码对于无线传输可靠性的影响举足轻重$ 目前编解 码方式主要有硬件编解码和软件编解码两种$ 本文在对 已有硬件及软件编解码技术 研究的 基础 上 !设计 并通 过
()*+,*&-%./0 单 片 机 实 现 的 软 件 编 解 码 方 法 # 该 方 法 通 过 定 时 器 的 延 时 来 实 现 对 数 字 信 号 的 编 码 $
通过外 部中断 与定时 器相结 合的 方式进 行解码 !即利用 接收 到的脉 冲信号 的上升 沿启 动定时 器工作 ! 下降沿 停止定 时器工 作并触 发外 部中断 !然后读 取计数 寄存 器的值 并识别 数据# 实 验证 明!该方 法的 数据帧格式及校验方式灵活多变 !而且可 以降低 无线传 输系 统的成 本!适用 于无线 控制 %数据采 集" 故障报警等多种无线数据通信场合& 关键词 ! 编码$解码$定时器$外部中断
D, DD 5, *H
无线发射电路
软件编码程序流程图如图 . 所示!采用定时器 , 工 作 在 方 式 - ! 即 -= 位 定 时 器 工 作 方 式 ! 根 据 不 同 的 输 出 脉 冲 宽 度 需 求 向 计 数 寄 存 器 "7, 和 ">, 中 装 入 不 同 的 初 始 值 " 标 志 位 ?@AB9C, 用 来 区 分 高 电 平 脉 冲 和 低 电 平 脉 冲 ! 当 标 志 位 ?@AB9C, 为 , 时 输 出 两 个 数 据 位 之 间 的 低 电 平 脉 冲 ! 不 为 , 时 输 出 高 电 平 脉 冲 " 标 志 位 ?@AB9CD 用 来 区 分 数 据 位 和 同 步 位 ! 当 ?@AB9CD 为 , 时 输 出 数 据 位 高 电 平脉冲!为 D 时输出 同步 位高 电平脉 冲 " 在 发送的 过程 中 !每 发送一 个字 节 !就将 该字 节累 加到校 验 和 中 !当 所 有的数据发送完后就发送校验和"
&"$$’$ (&")*+* 芯 片 功 耗 低 # 外 部 元 器 件 少 # 工 作 电
压范围宽" 但这两个芯片在应用中必须对地址统一编 码!配对 使用 !而且需 要 通 过 改 变 硬 件 电 路 才 能 重 新 设 置芯片地址 $该编码芯 片的帧 格式 是固定 的 !不 能随 意 改动!而且编码的脉冲宽度需要调 节外 接振荡 电阻 大小 才能改变" 这些都给用户的使用带来了极大的不便"
输出高电平脉 冲延时 D,,"
?@AB9C,Q)
输出高电平脉 冲延时 5,,"
在发送端对数据进行编码时! 由于对发送的数据 位#位 数的 判断以 及校 验和 的 生 成 所 产 生 的 延 迟 时 间 不 超 过 +1" ! 其 中 " 为 机 器 周 期 ! 因 此 ! 定 义 -11" 的 高 电 平 脉 冲 代 表 & - ’ ! 而 $11" 的 高 电 平 脉 冲 代 表 & 1 ’ " 在 接 收 端 进 行 解 码 时 ! 由 23"- 引 脚 上 的 下 降 沿 触 发 中 断 并 停止定时器计数!进 而识 别数 据信号 !此过 程中断 服务 程 序 的 延 迟 时 间 不 超 过 41" " 因 此 ! 设 置 数 据 位 之 间 的 低 电 平 脉 冲 宽 度 为 +1" " 为 了 不 与 数 据 信 号 混 淆 ! 将 同 步 位 定 义 为 511" 的 高 电 平 脉 冲 " 本 实 验 采 用 的 石 英 晶 体 的 晶 振 频 率 为 -* 678 ! 因 此 一 个 机 器 周 期 为 - !9 ! 故一 个字节的传输速率最快为 4 ::* ;<9 !最慢为 . +,. ;<9 "
基于51单片机的无线报警器的设计毕业论文(设计)开题报告_(1)名师教案与资料
附件6:
本科毕业论文(设计)开题报告
题目:基于51单片机的无线报警器的设计
院系:培工院电子系
专业:电子信息科学与技术
班级:电信121
姓名:张财
指导教师:___________________________
申报日期:___________________________
开题报告填写要求
1.开题报告作为毕业论文(设计)答辩委员会对学生答辩资格审查的依据材料之一。
此报告应在指导教师指导下,由学生在毕业论文(设计)工作前期内完成,经指导教师签署意见审查后生效。
2.开题报告内容必须用黑墨水笔工整书写,按教务处统一设计的电子文档标准格式打印,禁止打印在其它纸上后剪贴,完成后应及时交给指导教师签署意见。
3.学生查阅资料的参考文献应在3篇及以上(不包括辞典、手册),开题报告的字数要在1000字以上。
4.有关年月日等日期的填写,应当按照国标GB/T 7408—94《数据元和交换格式、信息交换、日期和时间表示法》规定的要求,一律用阿拉伯数字书写。
如“2004年9月26日”或“2004-09-26”。
毕业论文(设计)开题报告
毕业论文(设计)开题报告
毕业论文(设计)开题报告。
51单片机无线遥控应用教程
编码输出端(正常时为低电平)
表 1:编码电路 PT2262 管脚功能表
名称 管脚
说明
A0-A11 1-8、10-13
地址管脚,用于进行地址编码,可置为“0”,“1”,“f” (悬空),必须与 2262 一致,否则不解码
地址或数据管脚,当做为数据管脚时,只有在地址码与
D0-D5
7-8、10-13
2262 一致,数据管脚才能输出与 2262 数据端对应的高 电平,否则输出为低电平,锁存型只有在接收到下一数
PT2262 和接收端 PT2272 的地址编码完全相同,才能配对使用,遥控模块的生产
厂家为了便于生产管理,出厂时遥控模块的 PT2262 和 PT2272 的八位地址编码端
全部悬空,这样用户可以很方便选择各种编码状态,用户如果想改变地址编码,
只要将 PT2262 和 PT2272 的 1~8 脚设置相同即可,例如将发射机的 PT2262 的第
遥控发射器工作电压为 DC 12V(电池供电) ,尺寸(mm): 58*39*14 ,工作频率:315MHz , 工作电流(mA):13 编码类型: 固定码(板上焊盘跳接设置) 应用说明:与各类型带解码功能的 接收模块联合使用,解码输出后进行相应控制,如采用单片机进行读取接收并解码数据然后控制 相应的灯或电源开关。
编码芯片 PT2262 发出的编码信号由地址码、数据码、同步码组成一个完整 的码字。解码芯片 PT2272 接收到信号后,其地址码经过两次比较核对后,VT 脚 才输出高电平,与此同时相应的数据脚也输出高电平。PT2262 每次发射时至少 发射 4 组字码,因为无线发射的特点,第一组字码非常容易受零电平干扰,往往 会产生误码,所以 2272 只有在连续两次检测到相同的地址码加数据码才会把数 据码中的“1”驱动相应的数据输出端为高电平和驱动 VT 端同步为高电平。当发 射机没有按键按下时,PT2262 不接通电源,其 17 脚为低电平,所以 315MHz 的 高频发射电路不工作,当有按键按下时,PT2262 得电工作,其第 17 脚输出经调 制的串行数据信号,当 17 脚为高电平期间 315MHz 的高频发射电路起振并发射等 幅高频信号,当 17 脚为低平期间 315MHz 的高频发射电路停止振荡,所以高频发 射电路完全收控于 PT2262 的 17 脚输出的数字信号,从而对高频电路完成幅度键 控(ASK 调制)相当于调制度为 100%的调幅。
51单片机编码控制315无线模块传送指令
无线电编码程序设计思想该项目利用单通道无线电实现了多路遥控功能。
遥控距离100m左右。
单通道无线电路若想实现多路遥控,必须对无线电进行编码,该项目利用单片机进行编解码,实现了16路无线电控制。
在进行无线电编码前必须先定义一个协议规则。
现定义如下:下降沿:1ms的高电平,随后500us的低电平。
起始位:4ms的高电平,随后4ms的低电平。
数据1:2ms的高电平,随后500us的低电平。
数据0:1ms的高电平,随后500us的低电平。
结束位:4ms的低电平。
以上就是通信协议规则,只要无线电收发双方都遵循该协议规则,则实现对小车的多路控制将非常容易。
//发射模块c程序#include<reg52.h>#define uchar unsigned charsbit key0=P3^4;sbit key1=P3^5;sbit key2=P3^6;sbit key3=P3^7;sbit TX=P2^0;uchar m;void v0();void v1();void v2();void v3();void delay_315();void main(){uchar i;bit dong=0; //开定时器0中断TMOD=0X01;TH0=(65536-100)/256;TL0=(65536-100)%256;EA=1;ET0=1;TR0=1;TX=0;while(1) //发送指令0{if(key0==0){delay_315();while(key0==0){v3();v2();v0();v0();v0();m=0;while(m<40);}dong=1;}if(key1==0) //发送指令1{delay_315();while(key1==0){v3();v2();v0();v0();v1();m=0;while(m<40);}dong=1;}if(key2==0){delay_315();while(key2==0){v3();v2();v0();v1();v0();m=0;while(m<40);}dong=1;}if(key3==0){delay_315();while(key3==0){v3();v2();v0();v1();v1();m=0;while(m<40);}dong=1;}if(dong==1){dong=0;for(i=0;i<5;i++){v3();v2();v1();v0();v0();m=0;while(m<40);} }}}void timer0() interrupt 1{TH0=(65536-100)/256;TL0=(65536-100)%256;m++;TF0=0;}void v0() // 1MS高电平500us低电平{m=0;while(m<10)TX=1;m=0;while(m<5)TX=0;}void v1() // 2MS高电平500us低电平{m=0;while(m<20)TX=1;m=0;while(m<5)TX=0;}void v2() // 4MS高电平4ms低电平{m=0;while(m<40)TX=1;m=0;while(m<40)TX=0;}void v3() // 1MS高电平500us低电平{m=0;while(m<10)TX=1;m=0;while(m<5)TX=0;}void delay_315(){uchar i,j;for(i=0;i<10;i++)for(j=0;j<110;j++);}//接收程序#include"reg52.h"#define uchar unsigned charsbit RX=P3^3;sbit red0=P0^0;sbit red1=P0^1;sbit red2=P0^2;sbit red3=P0^3;sbit red4=P0^4;uchar m;bit n;void main(){uchar a,b,c,p,x,y; //定义存取的数据TMOD=0X01;TH0=(65536-100)/256; //开定时器0TL0=(65536-100)%256;EA=1;ET0=1;TR0=1;EX1=1;IT1=1;P0=0XFF;p=5;x=0;while(1){if(n==1){while(RX==0); //读取协议下降沿m=0;EX1=0;while(RX==1);if(m>35&&m<45) //读取协议起始位高电平{m=0;while(RX==0);if(m>35&&m<45) //读取协议起始位低电平{m=0;while(RX==1); //读取数据1if(m>5&&m<15)a=0;if(m>15&&m<25)a=4;while(RX==0);m=0;while(RX==1); //读取数据2if(m>5&&m<15)b=0;if(m>15&&m<25)b=2;while(RX==0);m=0;while(RX==1); //读取数据3if(m>5&&m<15)c=0;if(m>15&&m<25)c=1;while(RX==0);m=0;p=a+b+c;x++;if(x==1)y=p;if(x==2) //连续收到两次数据才进入匹配{x=0;if(y==p){switch(p){case 0:red0=0;red1=1;red2=1;red3=1;red4=1;break;case 1:red0=1;red1=0;red2=1;red3=1;red4=1;break;case 2:red0=1;red1=1;red2=0;red3=1;red4=1;break;case 3:red0=1;red1=1;red2=1;red3=0;red4=1;break;case 4:red0=1;red1=1;red2=1;red3=1;red4=0;break;}}}}}}}}void INT_1() interrupt 2{n=1;}void timer0() interrupt 1{TH0=(65536-100)/256;TL0=(65536-100)%256;m++;TF0=0;}。
51单片机编码
51单片机编码单片机编码技术是现代电子信息技术中的重要组成部分。
作为微控制器的核心,单片机编码通过将输入的数据信息转换为特定的编码方式,实现各种功能和应用。
本文将从基本概念、编码原理和应用实例等方面,详细介绍51单片机编码相关内容。
1. 51单片机编码的基本概念51单片机编码是指使用8051系列单片机进行程序设计和编码的过程。
它采用汇编语言或高级语言编写程序代码,并将其转化为机器码,通过单片机的指令集执行相应的操作。
由于其成熟的硬件平台和丰富的软件资源,51单片机编码广泛应用于各种嵌入式系统、控制系统等领域。
2. 51单片机编码的原理51单片机编码的原理主要包括指令集、寄存器、数据存储器、输入输出端口等组成部分。
指令集是单片机内部存储的一组机器指令,通过不同的指令实现对数据的处理和控制。
寄存器用于存储临时数据和程序状态等信息,提供给CPU进行运算和控制。
数据存储器则用于存储程序代码和数据,包括内部RAM和外部ROM等。
输入输出端口是单片机与外部设备进行交互的接口,通过读取输入端口的状态和向输出端口写入数据,实现与外部环境的通信。
3. 51单片机编码的应用实例3.1 系统控制应用51单片机编码广泛应用于各种系统控制应用中,如智能家居、工业自动化、交通信号控制等。
通过编写相应的控制程序代码,将输入的传感器信号处理后,控制相关的执行机构进行动作。
例如,通过读取温度传感器的数据,控制空调的开关和温度调节,实现智能环境控制。
3.2 嵌入式系统应用嵌入式系统是指将计算能力嵌入到各种设备和系统中,实现特定功能的计算系统。
51单片机编码在嵌入式系统中有广泛的应用,如智能手机、电视、汽车电子等。
通过编写嵌入式软件程序,控制和管理功耗、资源调度、外设驱动等,实现嵌入式系统的各项功能。
3.3 通信系统应用51单片机编码在通信系统中也有着重要的应用。
例如,通过编写相应的通信协议和驱动程序,实现与外部设备的数据交换和通信。
基于51单片机315MHz无线收发模块调试程序
315Mhz 无线通信程序原理:第一块单片机p1.0 口输出脉冲方波提供给无线发射模块,无线发射模块将信号以电磁波的形式传到无线接收模块。
无线接收模块会根据这个电磁波还原出脉冲方波提供给第二块单片机,第二块单片机进行进一步的解算处理。
通信协议:根据这个原理和315模块的特性。
我决定以900us 高电平和2000us 底电平表示1;450us 高电平和2000us 低电平表示0。
而8个1或0组成一个字节。
为了防止误码,所以在每个字节的前面加一个2ms 高电平和2ms 低电平的起始码。
每个5S 发送一个字符,一个字符发送20 遍*******************************//****************************315Mhz 无线通信程序发送程序11.0592M 晶振 1 机器周期=1.0851us定时器产生2MS 定时TH0=0XF8;TL0=0XCD;900us 定时TH0=0XFC;TL0=0XC3;450us 定时TH0=0XFE;TL0=0X61;*******************************/#include<reg52.h>#include "intrins.h"#define uint unsigned int#define uchar unsigned charsbit WXSEND=P1^0;uchar timedata[8]={0xfe,0x61,0xfc,0xc3,0xf8,0xcd,0xea,0x66};// 450us, 900us,2MS,6ms/*************************************11.0592MHZ 下500 毫秒延时,还准***************************************/void delay500ms(uint i)uint j;uchar k;while(i--){for(j=0;j<750;j++)for(k=0;k<200;k++);}}void time0init(){TMOD=0x01;//}void sendset(uchar senddata);// 发送数据程序void sendstartbit();// 数据发送起始信号2ms 高电平和2ms 低电平的起始码void sendlowbit();// 发送低电平void sendhighbit();// 发送高电平void main(){uchar senddata,i;time0init();// 定时器初始化senddata=0x55;while(1) {for(i=0;i<20;i++){sendset(senddata);// 发送数据程序}delay500ms(10);senddata++;}}// 发送数据程序void sendset(uchar senddata){uchar i,sendbit;sendstartbit();// 发送开始信号for(i=0;i<8;i++){sendbit=senddata&0x80;if(sendbit==0)sendlowbit(); // 发送低电平else sendhighbit();// 发送高电平senddata=senddata<<1;}// 数据发送起始信号6ms 高电平和2ms 低电平的起始码void sendstartbit(){WXSEND=1;TH0=timedata[4];TL0=timedata[5];TR0=1;while(TF0==0);TR0=0;TF0=0;TH0=timedata[4];TL0=timedata[5];WXSEND=0;TR0=1;while(TF0==0);TR0=0;TF0=0;}void sendlowbit() // 发送低电平{WXSEND=1;TH0=timedata[0];TL0=timedata[1];TR0=1;while(TF0==0);TR0=0;TF0=0;TH0=timedata[4];TL0=timedata[5];WXSEND=0;TR0=1;while(TF0==0);TR0=0;TF0=0;}void发送高电平sendhighbit()//{WXSEND=1;TH0=timedata[2];TL0=timedata[3];TR0=1;while(TF0==0);TR0=0;TF0=0;TH0=timedata[4];TL0=timedata[5];WXSEND=0;TR0=1;while(TF0==0);TR0=0;TF0=0;}/****************************315Mhz 无线通信程序接收程序11.0592M 晶振 1 机器周期=1.0851us用中断0 边沿触发中断,开启接收程序由于接收模块平时大部分时间是低电平,有信号时是高电平,而中断以,0 是负边沿触发,所硬件电路中接收模块的信号输出端经过非门后接到单片机P3.2接收到数据,用串口传到上位机的串口调试软件显示*******************************/#include<reg52.h>#include "intrins.h" #define uint unsigned int#define uchar unsigned char sbit WXrecep=P3^2;//uchar code timedata[6]={0xfe,0x61,0xfc,0xc3,0xf8,0xcd};// 450us,900us,2MS uchar wxrecepda;void time0init(){TMOD=0x21;// 定时器0TH0=0;TL0=0;//TMOD=0x20;/*TMOD:timer1,mode2,8-bitreload*/TH1=0xFD;/*TH1 11.0592MHz*/TL1=0XFD;EA=1;EX0=1;ET0=1;IE0=0;}void uartinit(){SCON=0x50;/*SCON: 模式1,8-bitUART, 使能接收*/ TR1=1;/*TR1:timer1run*/void receivewx();// 接收子程序void main(){time0init();// 定时器初始化uartinit();while(1) ;}void receivewx()// 接收子程序{uint i;uchar j,recedata;while(WXrecep==0);TR0=0;i=TH0*256+TL0;TH0=0;TL0=0;if((i>=1800)&&(i<=1890)){ recedata=0;for(j=0;j<8;j++){while(WXrecep==1);TR0=1;while(WXrecep==0);TR0=0;i=TH0*256+TL0;if((i>=390)&&(i<=450)) recedata=recedata&0xfe;else if((i>=800)&&(i<=860)) recedata=recedata|0x01;recedata=recedata<<1;TH0=0;TL0=0;}wxrecepda=recedata>>1 ;SBUF=wxrecepda;while(TI==0);TI=0;}}void wxrecint() interrupt 0{TH0=0;TL0=0;TR0=1;EX0=0;receivewx();EX0=1;}。
基于51单片机的无线遥控技术
摘要:本文讲解了基于51单片机的无线遥控技术。
关键词:51单片机 无线遥控技术在无线遥控应用领域,P T 2272和P T2262为应用最为广泛,使用最为简单的无线编码解码芯片。
其中2272为解码芯片,2262为编码芯片。
如图1、2所示,P T2262/P T2272是台湾普城公司生产的一种C M O S工艺制造的低功耗低价位通用编解码芯片。
主要用于无线遥控发射电路。
编码芯片P T2262发出的编码信号由地址码、数据码、同步码组成一个完整的传输信号,解码芯片P T2272接到信号后,其地址码经过两次比较核对后,V T脚输出高电平,与此同时相应的数据脚也输出高电平,如果遥控器一直按住按键,编码芯片也会连续发射。
当遥控器没有按键按下时,P T2262不接通电源,其17脚为低电平;当有按键按下时,PT2262 工作,其第17 脚输出串行信号。
PT2272解码芯片有不同的后缀,表示不同的功能,有L4/M4/L6/M6之分,其中L表示锁存输出,M表示非锁存(点动)输出,后缀的6和4表示有几路并行的控制通道,当采用4路并行数据点动输出时(P T2272-M4),对应的地址编码应该是8位,如果采用6路的并行数据点动输出时(P T2272-M6),对应的地址编码应该是6位。
除了编码解码芯片的地址码相同才可以配对使用外,还需要它们对应的振荡电阻大小匹配,图1、2中的16脚和15脚使用时所连接的电阻为相应的振荡电阻。
下面以无线遥控小车为例介绍一下51单片机构成的多路控制遥控器,如图3所示,想实现复杂的遥控信号传输,在发射端必须进行单片机的程序控制才能进行复杂的按钮输出,本例分为8种情况的按钮输出,分别为前进、后退、左转、右转、前进加左转、前进加右转、后退加左转及后退加右转,需要注意的是单片机使用的晶振为4M H Z,否则将影响信号传输的稳定性。
其汇编程序为:S1 EQU P1.0;前进S2 EQU P1.1;左转S3 EQU P1.2;右转S4 EQU P1.3;后退TE EQU P3.0ORG 0000H JMP MAIN1ORG 0030H;****************MAIN1: MOV B,#0;MAIN: MOV A,P1;ANL A,#0FH ; CJNE A,B,L0 ; JMP MAIN;****************L0: CJNE A,#00001110B,L1 ;CALL Q1 L1: CJNE A,#00000111B,L2 ;CALL Q2 L2: CJNE A,#00001101B,L3 ;CALL Q3L3: CJNE A,#00001011B,L4 ;CALL Q4 L4: CJNE A,#00001100B,L5 CALL Q5 L5: CJNE A,#00001010B,L6 CALL Q6 L6: CJNE A,#00000101B,L7 CALL Q7 L7: CJ N E A,#00000011B,L8CALL Q8L8: JMP MAIN;****************Q1: MOV P3,#01 CALL FS MOV B,#00001110B RET Q2: M OV P3,#02 CALL FS MOV B,#00000111B RET Q3: MOV P3,#03 CALL FS MOV B,#00001101B RET Q4: MOV P3,#04 CALL FS MOV B,#00001011B RETQ5: M OV P3,#05CALL FS MOV B,#00001100B RET Q6: M OV P3,#06 CALL FS MOV B,#00001010B RET Q7: MOV P3,#07 CALL FS MOV B,#00000101B RET Q8: M OV P3,#08 CALL FS MOV B,#00000011B RET;****************FS: SETB TE CLR TE RETEND图3:遥控器原理图在遥控接收端,控制小车的2个电机,一个电机的正反转决定小车的前进或后退,另一个电机的正反转决定小车的左转或右转,实现的功能与遥控端相对应,分别为前进、后退、左转、右转、前进的同时左转或右转及后退的同时左转或右转。
基于51单片机的信号发生器设计报告
基于51单片机的信号发生器设计报告二零一四年十二月十一日摘要根据题目要求以及结合实际情况,本文采用一种以AT89C51单片机为核心所构成的波形发生器,可产生方波、三角波、正弦波、锯齿波等多种波形,波形的频率可用程序改变,并可根据需要选择单极性输出或双极性输出,具有线路简单、结构紧凑、性能优越等特点。
本设计经过测试,性能和各项指标基本满足题目要求。
关键词:信号发生器 DAC0832芯片 LM358运放 89C51芯片目录摘要...................................................................... 目录...................................................................... 第一章绪论.................................................................1.1单片机概述...........................................................1.2信号发生器的概述和分类..............................................1.3问题重述及要求....................................................... 第二章方案的设计与选择...................................................2.1方案的比较...........................................................2.2设计原理 .............................................................2.3设计思想 .............................................................2.4实际功能 ............................................................. 第三章硬件设计............................................................3.1硬件原理框图.........................................................3.2主控电路 .............................................................3.3数、模转换电路.......................................................3.4按键接口电路.........................................................3.5时钟电路 .............................................................3.6显示电路 ............................................................. 第四章软件设计............................................................4.1程序流程图........................................................... 参考文献.................................................................... 附录1 电路原理图 .......................................................... 附录2 源程序............................................................... 附录3 器件清单......................................................第一章 绪论1.1 单片机概述单片机(Single chip microcomputer )是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU 、随机存储器RAM 、只读存储器ROM 、多种I/O 口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D 转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。
基于51单片机的无线电子密码锁课程设计
单片机课程设计报告书课题名称基于89C51单片机无线电子密码锁的设计姓 名刘武 学 号131220330 学 院通信与电子工程学院 专 业电子信息工程 指导教师祝秋香 讲师2015年 12月20日※※※※※※※※※ ※※ ※※ ※※ ※※※※※※※※※2013级电子信息工程专业单片机课程设计基于89C51单片机无线电子密码锁的设计1 设计目的(1)了解MCS-51单片机使用方法和熟悉蓝牙模块;(2)掌握AT89C51芯片的使用方法及蓝牙模块的连接与使用;(3)熟悉单片机程序仿真软件Proteus的使用;(4)了解MCS-51单片机开发板工作原理以及芯片的组合;(5)熟悉无线电子密码锁的设计及实现。
2设计思路2.1 选择设计电路设计51单片机与蓝牙连接的电路。
2.2 所选设计电路的原因(1)由于无线电子密码锁的设计需要用到蓝牙模块,用到的单片机资源并不是很多,而51单片机的资源有8位CPU、4KB的ROM、128B的RAM、2个16位定时/计数器、4组8位的I/O、1个串口和5个中断源,可以更有效率的利用到51单片机的资源。
(2)可现实无线功能的模块有:蓝牙模块、无线模块、红外遥控模块,因为相对之下,蓝牙模块更容易实现,更容易操作,最后选择蓝牙模块实现手机远程控制。
(3)为了提高效率,可以利用51单片机开发板的硬件,用LED灯模拟密码锁的开关,当LED灯亮起时代表锁已经开启,熄灭则代表密码锁被关闭。
应用在实际中可用继电器替代LED的亮灭去控制强电开关。
3 设计过程3.1 设计总框图无线电子密码锁分为两个主要功能模块:51单片机模块,蓝牙实现模块。
这两个模块共同工作完成本电路的功能实现。
其中利用AT89C51芯片来实现51单片机模块功能,完成数码管、发光二极管的实现,同时利用HC06蓝牙模块来实现手机远程控制功能。
其设计总框图如图.1所示:图1 总体方框图3.2 单元模块设计3.2.1. 总电路其设计的总电路如图2所示:图2 总电路图其工作原理如下:通过在51单片机开发板对AT89C52芯片写入程序,建立单片机与蓝牙模块之间的串口通信,并通过手机输入指令输入到蓝牙模块之中,通过程序利用单片机串口将蓝牙与51单片机进行通信,并控制单片机的引脚,从而控制外围电路的LED灯的亮灭和数码管的功能实现。
基于51单片机的无线通信设计
内容提要无线遥控是指利用无线电波、红外线、超声波等作为载体,不用导线,而在空间传输,实现对以家用电器为代表的中小型电器的遥控方法,主要有无线电遥控和红外线遥控。
红外光波的波长远小于无线电波的波长,因此红外线遥控信号不会影响其它家用电器和邻近的无线电设备;另外,红外线遥控不具有无线电遥控那样穿透障碍物去控制被控对象的能力,在设计家用电器的红外线遥控器时,不必要像无线电遥控那样,每套发射器和接收器要有不同的遥控频率或编码,否则,就会隔墙控制或干扰邻居的家用电器,所有同类产品的红外线遥控器,可以有相同的遥控频率或编码,而不会出现遥控信号“串门”的情况,这对于大批量生产以及在家用电器上普及红外线遥控提供了极大的方便。
本设计由通用红外遥控编码芯片SC9012构建红外发射系统,由89C51单片机和一体化红外接收头构建红外接收系统。
关键词红外线遥控;红外线发射;红外线接收;单片机主要内容一、课程设计的目的目前,单片机已广泛应用到国民经济建设和日常生活的许多领域,成为测控技术现代化必不可少的重要工具。
1、进一步熟悉和掌握单片机的结构及工作原理。
2、掌握单片机的接口技术及相关外围芯片的外特性,控制方法。
3、通过课程设计,掌握以单片机核心的电路设计的基本方法和技术,了解有关电路参数的计算方法。
4、通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
5、通过完成一个包括电路设计和程序开发的完整过程,使学生了解开发一单片机应用系统的全过程,为今后从事相应的工作打下基础。
二、设计过程2.1 红外线遥控系统结构红外线遥控系统是由发射端和接收端两部分组成,如图C.1和C.2所示。
红外线遥控系统是由发射端和接收端两部分组成,红外线发射端就是红外遥控器,主要包括键盘、编码调制芯片、红外线发射LED。
当按下某一按键后,遥控器上的编码调制芯片便进行编码,并结合载波电路的载波信号而成为合成信号,再经红外线发射二极管,将红外线信号发射出去。
(完整版)基于51单片机的无线数据收发系统设计(带电路图和代码)
1 引言伴随着短距离、低功率无线数据传输技术的成熟,无线数据传输被越来越多地应用到新的领域。
与有线通信方式相比,无线通信以其不需铺设明线,使用便捷等一系列优点,在现代通信领域占重要地位。
但以往的无线产品存在范围和方向上的局限。
例如,一些无线产品在使用时,无法将信息反馈给控制者;还有一些无线产品不能很好地显示参数或状态信息,如果能在系统中增加一块小型液晶显示电路,产品不仅能向用户显示其状态或状态的改变,而且可以大大降低成本。
正如人们所发现的,只要建立双向无线通信-双工通信并且选择成本低的收发芯片,就会出现许多新应用。
本次设计主要是利用无线收发电路,加上单片机控制与液晶显示制成一套完整的数据收发系统。
考虑到目前市场上的一些需求,设计的主要要求是方案成本低,体积小,低功耗,集成度高,尽量无需调外部元件,传输时间短,接口简单。
nRF401是国外最新推出的单片无线收发一体芯片,它在一个20脚的芯片中包括了高频发射、高频接收、PLL合成、FSK调制、多频道切换等功能,并且外围元件少,便于设计生产,功耗极低,集成度高,是目前集成度较高的无线数传产品,它为低速率低成本的无线技术提出了解决方案。
2 无线数据收发系统2.1 系统组成无线数据传输系统有点对点,点对多点和多点对多点三种。
本系统由于实际应用的需要,接收器和数据终端之间的数据传输通过nRF401进行,构成点对点无线数据传输系统。
整个系统中,两数据终端之间的无线通信采用433MHz的频段作为载波频率,收发通过串口通信。
无线数据收发系统可以分为无线收发控制电路、单片机控制电路、显示电路和按键电路四部分组成,系统原理如图2-1所示:图2-1 无线数据收发系统原理图2.2 实现过程当我们需要发送数据时,使用按键来输入所需发送的信息。
按键与单片机AT89S52的P3.2-P3.5口相接,单片机的 P1.0口控制信息的发送与接收,并且TXD 端与收发器输入端相连,通过TXD将数据传入收发器,收发器接收到数据后,通过FSK调制,将信号发送出去;接收端的收发器通过解调,将载波信号转换为数字信号,完成信息传输过程;收发器的输出端通过RXD端将数字信号输入到单片机;单片机将数据传送到显示器,这样就完成了一次数据发送与接收并显示的过程。
