




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2013年全国大学生电子设计竞赛红外光通信装置(F题)【本科组】2013年9月6日目录摘要31.系统方案设计 51.1设计任务51.2方案的设计与论证51.2.1红外光通信装置总体方案设计51.2.2单片机模块的选择61.2.3红外发射接收装置模块的选择71.2.4语音采集模块方案的选择72.单元硬件电路设计72.1发射部分电路的设计72.2中转部分电路的设计82.3接收部分电路的设计83.程序设计93.1发射装置程序流程图93.2接收装置程序流程图104.系统测试105理论分析与计算116.结论12参考文献12附录13摘要随着红外技术的发展,红外光通信已经成为越来越普及的无线通信方式。在本次设计作品中,红外光通信装置采用红外光传输及无线工作机制,其组成结构主要包括:红外发射装置、中继转发节点、红外接收装置三部分组成。红外发射装置主要是由声音采集系统经单片机存储后发射,红外接收装置接收到的信息经单片机存储后再经过D/A转换播放。通过采用A/D,D/A转换的方法达到了本次作品设计的目的。在电子消费领域当中,红外产品的使用较为普遍,它多用于简单的近距离控制,如家电、玩具、各种抄表系统、工业控制、娱乐设施等领域。所以,其具有很强的现实意义。关键词:红外 通信 发射 接收 A/D转换 D/A转换AbstractWith the development of infrared, and infrared optical communication has become more and more popular way of wireless communication.This design works, infra-red communication devices use infrared light transmission and wireless working mechanisms, its composition include: infrared emitting device, relay node, an infrared receiver unit is composed of three parts. Infrared Launcher corresponds with sound collection system by single-chip computer memory after the launch, IR receiver receives the information via a single-chip storage, and then after d/a conversion play. Through the use of a/d,d/a conversion way to achieve the purpose of the production design.In the field of consumer electronics, using infrared products are more prevalent, it is used for simple control at close range, such as household appliances, toys, metering systems, industrial control, recreational facilities, and other fields. So, it has a lot of practical significance.Key words: Infrared Communication launch receive A/D conversion D/A conversion1 系统方案设计1.1 设计任务根据命题要求,设计并制作一个红外光通信装置。红外光通信装置利用红外发光管和红外接收模块作为收发器件用来定向传输语音信号,传输距离为2m.传输的语音信号频率范围为3003400HZ,接收的声音应无明显失真。此外,增加一路数字信道,实时传输发射端环境温度,并能在接收端显示。数字信号传输时延不超过10s,温度测量误差不超过,语音信号和数字信号能同时传输。同时,设计并制作一个红外光通信中继转发节点,以改变通信方向90,延长通信距离2m,中继转发节点采用V直流单电源供电,尽量减小转发节点供电电流。1.2 方案的设计与论证.2.1红外光通信装置总体方案设计整套方案主要由红外发射装置、中继转发节点、红外接收装置三部分组成。先把传输进红外发射装置的声音经过放大电路进行放大,然后由STC12C5A08S2单片机自身带有的A/D转换功能把模拟信号转换为数字信号对放大之后的语音进行采集,同时把采集到的数字信号存储到STC12C5A08S2单片机中。然后,经555定时器电路产生38K载波,并利用三极管对单片机中存储的数据和555定时器产生的38K载波进行调制到达中继转发节点,并由1838红外接收头进行解调,接着把解调后的信号编码发送给中继点上的单片机STC11F04E,并由此单片机对其数据进行取反。再由555定时器电路产生38K载波,利用三极管对经单片机取反后的数据和38K载波进行调制,之后到达接收点。到达接收点的信号经STC12C5A08S2进行解码,送给 TLC5615CP芯片构建的D/A转换电路把数字信号转换为模拟信号,最后再将此模拟信号发送给耳机,并由耳机播放。采用此方案的框图如下:单片机发送中继转发节点显示温度音频信号A/D采集单片机存储红外接收装置单片机存储DAC播放温度信号放大系统温度、音频.2.2单片机模块的选择方案一:传统51系列是的单片机,受其结构本身的限制很大,尤其模拟功能部件的增加更显困难,而且运行速度很慢,功耗比较高,抗干扰能力也不是很强。方案二:STM32系列具有一流的外设、低功耗、最大的集成度、简单的结构和易用的工具,是ARM公司的高性能Cortex-M3内核。但我们对此系列的单片机的编程操作不太熟练。方案三:宏晶芯片STC12C5A08S2是增强型的51系统单片机,具有一个时钟,高速、高可靠、宽电压、增加第二复位功能脚和外部掉电检测电路,采用低功耗设计,最重要的是其内部有AD外设和45K的EEPROM,我们可由此进行模数转换和信息存储。 STC11F04E单片机超强抗干扰,超强抗静电,速度快,输入/输出口多,超低功耗,在系统可编程,无需编程器,无需仿真器,可远程升级。由于对于中继点低功耗的要求,所以把此单片机用于中继转发节点。基于我们对各种系列单片机运用的熟练程度和此次作品中所要实现的各项基本功能,我们决定在此方案设计中采用方案三。.2.3红外发射接收装置模块的选择方案一:红外模拟信号。这种方法速度快,能达到实时传输效果。但是,在传输过程中,噪音比较大,容易受干扰。而且,传输的距离也比较近。方案二:红外数字信号。将要发射出去的模拟信号转换成数字信号,将数字信号送给红外发射电路,经该电路的调制转变成红外光信号在空中传输,到达中继转发节点后,转发到红外接收电路,接收电路收到该红外光信号,经过该电路的解调,将此红外光信号还原成可被单片机或其他处理系统处理的信号,由单片机或其他处理系统内部处理得到原来的数据编码。比较方案一和方案二,又考虑到我们对模拟部分的知识和数字部分的知识的掌握程度,我们决定选择方案二。.2.4语音采集模块方案的选择方案一:采用语音编解码芯片。这种方法失真度小,信噪比较低,数据量大。但在数字图像处理中,由于数据量大,算法难度高,因此实时性成为技术难点之一。而且,在传输过程中所运用的1838红外接收头传输信息速度慢,而语音编码解码芯片数据量过大,与后续装置不协调。方案二:采用A/D,D/A转换装置。先把模拟信号转换为数字信号,再经中继转换节点在通信协议的控制下把数字信号转换为模拟信号。比较两种方案,并基于现实的情况,此模块选择方案二。2 单元硬件电路设计2.1 发射部分电路的设计发射部分主要由双运放NE5532组成的放大器、STC12C5A08S2单片机和NE555定时器构建的电路组成。其电路图如图1:图 12.2 中转部分电路的设计中转部分主要由1838红外接收头、STC11F04E单片机NE555定时器、三极管等搭建的电路组成,其电路图如图2:图 22.3 接收部分电路的设计接收部分主要由1838红外接收头、STC12C5A08S2单片机、TLC5615数模转换器、TL431可控精密稳压源等搭建的电路组成。其电路图如图3:图 33程序设计系统程序主要由发射装置程序和接收装置程序两部分组成。系统程序流程图如下所示。开始3.1发射装置程序流程图Y读存储结束?结束初始化采集信号单片机存储存储结束?读存储发送YNN结束Y读存储结束?NNYN 3.2接收装置程序流程图NYNY结束读存储D/A转换结束?接收完成?单片机存储接收初始化开始NYNY4系统测试传输距离测试:传输距离传输情况1m良好2m良好3m良好4m良好中继点电流大小:100MA左右温度误差:1C无发射信号时无噪音800HZ信号输出0.3V有信号时8个LED闪烁,无信号时LED不闪烁5理论分析与计算本系统使用数字信号传输,编码规则自定,具体如下:每串数据有1.5MS高电平,2MS低电平的引导码高电平时间0.5低电平时间0.6MS代表二进制数0高电平时间1.0MS代表二进制数1 传输波形如图: 波形 1 波形 2 波形 36结论本系统功能上和参数上都达到了题目的要求,基本上完成了题目的各项设计。并按照要求完成了其发挥部分,可以精确的显示温度,也可以利用中继点进行转接,但是声音信号传输延时较大。优点:本系统采用数字信号传输数据,能够最大限度的减少干扰且传输距离较长,适用于信息量较少、环境干扰较大的情况传输数据。本系统的不足:由于红外数字信号传输使用38K载波频率,很大程度上限制了数据传输的速度,所以本系统不适合音频等数据量较大的数据传输。所以本系统还有较大的提升空间,如声音信号使用模拟信号传输、温度信号使用数字信号传输能达到声音信号和温度信号实时传输。参考文献1阎石.数字电子技术基础(第五版)M.北京:高等教育出版社,2006.2童诗白,华成英.模拟电子技术基础(第四版)M.北京:高等教育出版社,2006.3黄智伟.全国大学生电子设计竞赛技能训练(第2版)M.北京:北京航空航天大学,2011.4代万辉,陈松方.全国电子设计大赛培训宝典M.北京:北京航空航天大学,2012.5求是科技.8051系列单片机C程序设计完全手册M.北京:人民邮电出版社,2006.6杨欣,王玉凤,刘湘黔.电子设计从零开始M.北京:清华大学出版社2005.附录:源程序/*send message*/ #include STC12C5A60S2.h#include intrins.h#define uchar unsigned char#define uint unsigned chartypedef unsigned char BYTE;typedef unsigned int WORD;uchar code str1=0x28,0xA6,0x4A,0x0E,0x05,0x00,0x00,0x84;/ROM 1uchar code str2=0x28,0xA5,0x86,0x40,0x04,0x00,0x00,0x80;/ROM 2sbit D1=P37;sbit DQ=P33;/*Define ISP/IAP/EEPROM command*/#define CMD_IDLE 0 /Stand-By#define CMD_READ 1 /Byte-Read#define CMD_PROGRAM 2 /Byte-Program#define CMD_ERASE 3 /Sector-Erase/*Define ISP/IAP/EEPROM operation const for IAP_CONTR*/#define ENABLE_IAP 0x80 /if SYSCLK30MHzsfr ADC_DATA = 0XBD;sfr ADC_LOW = 0XBE;sbit CS=P20;sbit SCLK=P21;sbit DIN=P22;sbit left = P10;double j;uchar flag,t;void Delay(BYTE n);void IapIdle();BYTE IapReadByte(WORD addr);void IapProgramByte(WORD addr, BYTE dat);void IapEraseSector(WORD addr);uchar tvalue;/温度值void Delay999ms()/30.000MHzunsigned char i, j, k;_nop_();_nop_();i = 114;j = 226;k = 60;dodowhile (-k); while (-j); while (-i);/*ds1820 */void Delay1us()/30.000MHzunsigned char i;i = 5;while (-i);void Delay10us()/30.000MHzunsigned char i;_nop_();_nop_();i = 72;while (-i);void Delay48us()/30.000MHzunsigned char i, j;i = 2;j = 99;dowhile (-j); while (-i);void Delay700us()/30.000MHzunsigned char i, j;i = 21;j = 106;dowhile (-j); while (-i);void Delay1ms()/30.000MHzunsigned char i, j;i = 30;j = 43;dowhile (-j); while (-i);void rst_Ds18b20()DQ=1;Delay1us();DQ=0;Delay700us();/延迟700usDQ=1;Delay1ms();void writeDs18b20(uchar date)/写数据uchar i;DQ=1;Delay1us();for (i=0;i=1;Delay1us();uchar readDs18b20() /读数据uchar i,date;DQ=1;_nop_();for(i=0;i=1;if(DQ=1)date=date+0x80;Delay48us();return date;void MatchromDs18b20(uchar a) /匹配ROMchar j;writeDs18b20(0x55); /发送匹配ROM命令if(a=1)for(j=0;j8;j+)writeDs18b20(str1j);/发送18B20的序列号,先发送低字节 if(a=2)for(j=0;j4)|(b4);return(tvalue);void DAC(uchar w)/转换,将数据写入芯片 int a; CS=0; for(a=0;a12;a+) SCLK=1; _nop_();_nop_(); if(w&0x80)!=0)/判断写入数据从第一位开始,看是否有数据输入 DIN=1;/将信号1写入芯片中 else DIN=0;/将0写入芯片中_nop_();_nop_();SCLK=0;/开启下一个写入数据w 8; /Set ISP/IAP/EEPROM address high IAP_TRIG = 0x5a; /Send trigger command1 (0x5a) IAP_TRIG = 0xa5; /Send trigger command2 (0xa5) _nop_(); /MCU will hold here until ISP/IAP/EEPROM operation complete dat = IAP_DATA; /Read ISP/IAP/EEPROM data IapIdle(); /Close ISP/IAP/EEPROM function return dat; /Return Flash data/*-Program one byte to ISP/IAP/EEPROM areaInput: addr (ISP/IAP/EEPROM address) dat (ISP/IAP/EEPROM data)Output:-*/void IapProgramByte(WORD addr, BYTE dat) IAP_CONTR = ENABLE_IAP; /Open IAP function, and set wait time IAP_CMD = CMD_PROGRAM; /Set ISP/IAP/EEPROM PROGRAM command IAP_ADDRL = addr; /Set ISP/IAP/EEPROM address low IAP_ADDRH = addr 8; /Set ISP/IAP/EEPROM address high IAP_DATA = dat; /Write ISP/IAP/EEPROM data IAP_TRIG = 0x5a; /Send trigger command1 (0x5a) IAP_TRIG = 0xa5; /Send trigger command2 (0xa5) _nop_(); /MCU will hold here until ISP/IAP/EEPROM operation complete IapIdle();/*-Erase one sector areaInput: addr (ISP/IAP/EEPROM address)Output:-*/void IapEraseSector(WORD addr) IAP_CONTR = ENABLE_IAP; /Open IAP function, and set wait time IAP_CMD = CMD_ERASE; /Set ISP/IAP/EEPROM ERASE command IAP_ADDRL = addr; /Set ISP/IAP/EEPROM address low IAP_ADDRH = addr 8; /Set ISP/IAP/EEPROM address high IAP_TRIG = 0x5a; /Send trigger command1 (0x5a) IAP_TRIG = 0xa5; /Send trigger command2 (0xa5) _nop_(); /MCU will hold here until ISP/IAP/EEPROM operation complete IapIdle();void Delay100us()/30.000MHzunsigned char i, j;i = 3;j = 232;dowhile (-j); while (-i);/*-擦除eeprom-*/void Eraseeeprom()uint i; double a;a=0;for(i = 0; i 90; i+)a = 512+a;IapEraseSector(a); /Erase current sector/*sendmess*/*/*发送红外数据*/void send(uchar date)uchar i;/*发送验证信息*/ TR0=0; TH0 = 0xF1; TL0 = 0x5A; /装入初值设置波延时为1.5msD1 = 1;/发送1.5ms的高电平TR0 = 1;/启动定时器0while(!TF0);/等待TF0 = 0; TH0 = 0xEC; TL0 = 0x78;D1 = 0;/发送2ms的低电平while(!TF0);/等待TF0 = 0;/*发送数据*/for(i=0;i1;TL0 = 0x1E;/设置定时初值 0.5MSTH0 = 0xFB;/设置定时初值TR0=1;D1=1;while(!TF0);TF0=0;D1=0;/*结尾*/TH0 = 0x0EC; /延时2ms TL0 = 0x078;TR0=1;while(!TF0);TF0=0;TR0=0;void sendtem(uchar date)uchar i;/*发送验证信息*/ TR0=0; TH0 = 0xF1; TL0 = 0x5A; /装入初值设置波延时为1.5msD1 = 1;/发送1.5ms的高电平TR0 = 1;/启动定时器0while(!TF0);/等待TF0 = 0; TH0 = 0xE2; TL0 = 0xB4;D1 = 0;/发送3ms的低电平while(!TF0);/等待TF0 = 0;/*发送数据*/for(i=0;i1;TL0 = 0x1E;/设置定时初值 0.5MSTH0 = 0xFB;/设置定时初值TR0=1;D1=1;while(!TF0);TF0=0;D1=0;/*结尾*/TH0 = 0x0EC; /延时2ms TL0 = 0x078;TR0=1;while(!TF0);TF0=0;TR0=0;/*main*/void main()read_temp(2);Delay999ms();/*sendinit*/AUXR &= 0x7F;/定时器时钟12T模式TMOD &= 0xF0;/设置定时器模式TMOD |= 0x01;/设置定时器模式TR0=0;/*/sendtem(read_temp(2);Eraseeeprom(); /擦除EEPROMflag = 0;j =t=0;init(); while (1);void timer1() interrupt 3/send(0x55);TL1 = 0x7A;/设置定时初值TH1 = 0xFE;/设置定时初值ADC_CONTR= 0xe8; Delay7us();/24.000MHzif(flag = 0)IapProgramByte(j, ADC_DATA); /写EEPROMj+; if(j = 46079)flag = 1;j = 0;ADC_CONTR= 0x80;if(flag = 1)while(j!=46079)send(IapReadByte(j);j+;t+;if(t%500)=0)t=0;sendtem(read_temp(2);while(1);/DAC(IapReadByte(j); /读EEPROM并DAC转化/*j+;if(j = 46079)Eraseeeprom(); /擦除EEPROM*/flag = 0;j = 0; -/*receive*/ #include STC12C5A60S2.h#include intrins.h#define uchar unsigned char#define uint unsigned chartypedef unsigned char BYTE;typedef unsigned int WORD;uchar code str=Temperature;/*Define ISP/IAP/EEPROM command*/#define CMD_IDLE 0 /Stand-By#define CMD_READ 1 /Byte-Read#define CMD_PROGRAM 2 /Byte-Program#define CMD_ERASE 3 /Sector-Erase/*Define ISP/IAP/EEPROM operation const for IAP_CONTR*/#define ENABLE_IAP 0x80 /if SYSCLK30MHzsbit CS=P20;sbit SCLK=P21;sbit DIN=P22;sbit re=P32;sbit test=P00;sbit test1=P01;sbit lcden=P34;sbit lcdrs=P35;double LowTime, HighTime;/储存高、低电平的宽度 0-65535uchar mess;uchar tem;double j;uchar flag,ge,shi;void Delay(BYTE n);void IapIdle();BYTE IapReadByte(WORD addr);void IapProgramByte(WORD addr, BYTE dat);void IapEraseSector(WORD addr);/*lcd1602程序*/void Delay4ms()/30.000MHzunsigned char i, j;i = 117;j = 184;dowhile (-j); while (-i);void writeCommend_Lcd(uchar com)/写指令lcdrs=0;P0=com;lcden=1;Delay4ms();lcden=0;Delay4ms();void writeData_Lcd(uchar date)/写数据lcdrs=1;P0=date;lcden=1;Delay4ms();lcden=0;Delay4ms();void init_Lcd()/初始化设置1602uchar i;lcden=0;wr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教室短租合同范本
- 喷漆修复合同范本
- 植树的牧羊人题目及答案
- 脂类代谢大题目及答案
- 2025年1月全国自考刑事侦查学试题及答案解析
- 电竞产业游戏产品创新趋势分析报告及竞技赛事发展
- 小课堂在线教育创新方
- 2025年新村官考试题目及答案
- 2025专四真题及答案
- 2025年审计与法律试题及答案
- 2025西藏日喀则市高级技工学校招聘专业实训指导教师和后勤保障人员20人备考练习题库及答案解析
- GB/T 14491-2025工业用环氧丙烷
- 第2课 原始农业与史前社会 课件(内嵌视频)人教统编2024年版七年级历史上册
- 兵团职工考试试题及答案大全
- 2025年秋季开学第一次全体教师大会上校长精彩讲话:做细一件小事就是做实整个教育
- 开学第一课(课件)-人教PEP版英语三年级上册
- 新生儿蓝光仪使用课件
- 2025-2026学年人教鄂教版(2024)小学科学三年级上册教学计划及进度表
- 手机行业知识培训课件
- 湖北省腾云联盟2026届高三8月联考物理(含答案)
- 2025年高考英语真题完全解读(全国一卷)(真题解读)
评论
0/150
提交评论