




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、/* 315Mhz无线通信程序(chngx) 原理(yunl): 第一块单片机p1.0口输出(shch)脉冲方波提供给无线发射模块, 无线发射模块将信号以电磁波的形式传到无线接收模块。 无线接收模块会根据这个电磁波还原出脉冲方波提供给第二块单片机, 第二块单片机进行进一步的解算处理。 通信协议: 根据这个原理和模块的特性。 我决定以900us高电平和2000us底电平表示; 450us高电平和 2000us低电平表示。 而个或组成一个字节。为了防止误码, 所以在每个字节的前面加一个2ms高电平和2ms低电平的起始码。每个5S发送(f sn)一个字符,一个字符发送20遍 */ /* 315Mhz
2、无线通信程序(chngx) 发送程序 11.0592M晶振 1机器(j q)周期=1.0851us 定时器产生2MS定时 TH0=0XF8;TL0=0XCD; 900us定时 TH0=0XFC;TL0=0XC3; 450us定时 TH0=0XFE;TL0=0X61; */#include #include intrins.h #define uint unsigned int #define uchar unsigned char sbit WXSEND=P10; uchar timedata8=0 xfe,0 x61,0 xfc,0 xc3,0 xf8,0 xcd,0 xea,0 x66;/
3、 450us, 900us,2MS,6ms /* 11.0592MHZ 下500毫秒延时,还准 */ void delay500ms(uint i) uint j; uchar k; while(i-) for(j=0;j750;j+) for(k=0;k200;k+); void time0init() TMOD=0 x01;/ void sendset(uchar senddata);/发送数据程序(chngx) void sendstartbit();/数据(shj)发送起始信号2ms高电平和2ms低电平的起始码 void sendlowbit();/发送(f sn)低电平 void s
4、endhighbit();/发送高电平 void main() uchar senddata,i; time0init();/定时器初始化 senddata=0 x55; while(1) for(i=0;i20;i+) sendset(senddata);/发送数据程序(chngx) delay500ms(10); senddata+; /发送数据程序(chngx) void sendset(uchar senddata) uchar i,sendbit; sendstartbit();/发送开始(kish)信号 for(i=0;i8;i+) sendbit=senddata&0 x80;
5、if(sendbit=0)sendlowbit(); /发送低电平 else sendhighbit();/发送高电平 senddata=senddata1; /数据发送(f sn)起始信号6ms高电平和2ms低电平的起始码 void sendstartbit() WXSEND=1; TH0=timedata4; TL0=timedata5; TR0=1; while(TF0=0); TR0=0; TF0=0; TH0=timedata4; TL0=timedata5; WXSEND=0; TR0=1; while(TF0=0); TR0=0; TF0=0; void sendlowbit()
6、 /发送(f sn)低电平 WXSEND=1; TH0=timedata0; TL0=timedata1; TR0=1; while(TF0=0); TR0=0; TF0=0; TH0=timedata4; TL0=timedata5; WXSEND=0; TR0=1; while(TF0=0); TR0=0; TF0=0; void sendhighbit()/发送(f sn)高电平 WXSEND=1; TH0=timedata2; TL0=timedata3; TR0=1; while(TF0=0); TR0=0; TF0=0; TH0=timedata4; TL0=timedata5;
7、WXSEND=0; TR0=1; while(TF0=0); TR0=0; TF0=0; /* 315Mhz无线通信程序(chngx) 接收(jishu)程序 11.0592M晶振 1机器周期=1.0851us 用中断0边沿触发中断,开启接收(jishu)程序由于接收模块平时大部分时间是低电平,有信号时是高电平,而中断0是负边沿触发,所以,硬件电路中接收模块的信号输出端经过非门后接到单片机P3.2接收到数据,用串口传到上位机的串口调试软件显示*/#include#includeintrins.h#defineuintunsignedint#defineucharunsignedcharsbit
8、WXrecep=P32;/ucharcodetimedata6=0 xfe,0 x61,0 xfc,0 xc3,0 xf8,0 xcd;/450us,900us,2MSucharwxrecepda;voidtime0init()TMOD=0 x21;/定时器0TH0=0;TL0=0;/TMOD=0 x20;/*TMOD:timer1,mode2,8-bitreload*/TH1=0 xFD;/*TH1 11.0592MHz*/TL1=0XFD;EA=1;EX0=1;ET0=1;IE0=0;voiduartinit()SCON=0 x50;/*SCON:模式1,8-bitUART,使能接收*/T
9、R1=1;/*TR1:timer1run*/voidreceivewx();/接收子程序voidmain()time0init();/定时器初始化uartinit();while(1);voidreceivewx()/接收(jishu)子程序uinti;ucharj,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=390)&(i=800)&(i=860) recedata=recedata|0 x01; recedata=recedata1;SBUF=wxrecepda;while(TI=0);TI=0;voidwxrecint()interrupt0TH0=0;TL0=0;TR0=1;EX0=0;receivewx();EX0=1;内容总结(1)/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 儿子满月酒的微信邀请函
- 保险公司工作人员年终工作总结
- 会计电算化的实习自我鉴定
- 中药药代动力学研究-洞察及研究
- PSO算法优化模糊神经网络在直齿锥齿轮混沌控制中的应用研究
- 人力资源部门经理竞岗发言稿
- 数学思维训练乐园
- 支气管哮喘个案护理
- 皮肤肿瘤的治疗及护理
- 2025届湖南省醴陵一中、攸县一中物理高一下期末质量跟踪监视试题含解析
- 2024年全球及中国神经康复外骨骼机器人行业头部企业市场占有率及排名调研报告
- 某镇“十五五”发展规划编制思路
- 江苏省连云港市2024-2025学年高二年级上册期末调研考试物理试题(选修)解析版
- 免疫初中试题及答案
- 宏观经济学 试题及答案
- GB/T 23454-2025石材台面板
- 科研单位科研诚信自查报告及整改措施
- 加工碎石合作协议书
- 地板拆除合同协议书
- 2024年河南省方城县事业单位公开招聘教师岗笔试题带答案
- 创新中职学校德育工作的实践与反思
评论
0/150
提交评论