工业控制 | 能源技术 | 汽车电子 | 通信网络 | 安防监控 | 智能电网 | 移动手持 | 无线技术 | 家用电器 | 数字广播 | 消费电子 | 应用软件 | 其他方案

电路设计->光电电路图->其他光电实用电路图->给单片机添加“无线ISP”功能

给单片机添加“无线ISP”功能

作者:dolphin时间:2016-09-20

  单片机的ISP技术是指当芯片焊按在电路板上以后,可以直接通过串口将程序下载到芯片中,而不需要焊下芯片插入编程器进行芯片程序的烧写,这大大方便了单片机系统软件的升级和更新。近年来,ISP技术得到了广泛的应用。

  在工业无线遥控、点对多点无线组网、无线现场总线、自动化数据采集系统以及水、气、热、电等居民计量表具无线远传自动抄表系统中,需要采用无线数传模块进行无线数据传输。利用无线串行数据传输和ISP技术结合,可以实现单片机系统程序无线下载和升级,其硬件结构如右图所示。

  无线串行数据传输模块简介目前市面上常见的无线串行数据传输模块如附表所示,本文采用其中的HAC-LM-96模块,其外形如下左图所示。

  该模块的典型特点是:

  ●低功率发射,标准发射功率500inWt载频频率433MHz。

  ●高抗干扰能力和低误码率。基于GFSK的调制方式,采用高效前向纠错信道编码技术,提高了数据抗突发干扰和随机干扰的能力,在信道误码率为lo-3时,可得到实际误码率10-5_10-6,●传输距离远。在视距情况下,天线高度2m,可靠传输距离可达2000m(BER--.10-3@9600bps),4500m(BER=10-3@1200bps),‘●多信道。HAC-LM标准配置提供8个信道,如果用户需要,可扩展到16/32信道。满足用户多种通信组合方式。

  ●双串口,3种接口方式。HAC一LM提供2个串口3种接口方式,COMI为TTL电平UART接口。COM2由用户自定义为标准的RS-232/RS一  ●高可靠性,体积小、重量轻)采用单片射频集成电路及单片MCU,外围电路少,可靠性高,故障率低。

  无线ISP实现(无线ISP在压力测试系统中的应用)本文采用PHILIPSLPC900系列单片机来实现无线ISP功能,该系列单片机是PHILIPS公司推出的一款高性能、微功耗、51内核的微处理器。提供ISP和ICP(在电路编程)多种下载调试模式。

  LPC900系列单片机ISP技术的应用条件:

  ●搭建一个可靠的串口(如右图所示);

  ●确保您的ISP驻留代码没有被破坏;

  ●确保芯片的引导向量正确;

  ●不能擦除芯片最后一个扇区(包含ISP驻留代码);

  ●不能更改芯片的引导向量(保证其为出厂默认配置),

●加密时不能勾上“禁止IAP/ISP编程操作”。

485接口(用户只需要拔插1位短路器再上电即可定义)。

  ●低功耗及休眠功能。+5V供电,接收电流40mA,发射电流400mA。

  上图是无线ISP的一个应用实例,供大家参考。在该应用中,使用LPC935单片机作为控制核心。U1为LDO芯片LT-1117(3. 3V)产生LPC935 的工作电压t U5为LDO芯片 LT一1117(5V)产生其余芯片的工作电压1 U2为有源晶振,输出频率为 11.O592MHz(注意该晶振的频率不可随意更换,否则通信的波特率得不到保证,可能出现通信不正常的现象); U3为广州周立功单片机公司开发的动态扫描驱动芯片 7289,用于该电路的显示控制输出。J5为LPC935单片机与LM-96的连接端口,其中P1.0和P1.1分别是LPC935的TXD和RXD踹。J2连接该电路的电源输入端,在笔者的应用中要求使用电池供电,所以我选择了可充电电池作为工作电源,在其他应用中,可以灵活选择电源。LPC935具有片内A/D,使用分压电阻R1和R2作为该电路的电池电压监控,IF的电容作为系统的掉电保护,当单片机检测到电池电压有异常时,IF的电容可以提供系统有足够的时间进行数据的及时保护和处理。

  压力测试系统功能介绍:应用于大型机械设备的安装过程中,检测机体对安装地面的压力分布情况,确定设备是否安放平街。该压力测试系统实现对压力传感器输出信号的检测和检测数据的传输,同时可以使用无线ISP功能实现系统的自动参数调整和升级。

  压力测试系统工作过程:包含压力的检测和显示、压力数据的无线传输过程和系统的无线ISP升级过程。

  压力的检测和显示过程:外部压力传感器的输出信号从J4输入,通过差动放大器AD620实现压力信号的差动放大,从AD620的6脚输出。AD620的 6脚输出信号接入LPC935的26脚(LPC935内部A/D转换器的输入踹)进行A/D转换,经过单片机内部的数据计算得到实际的压力值,利用 7289驱动数码管进行压力数据的实时显示,具体的程序见本期配刊光盘。

  压力数据的无线传输过程和系统的无线ISP升级过程:利用LPC935单片机的串口通过J5连接无线数据传输模块LM-96实现压力数据的无线传输和系统的无线ISP升级。使用LM一96时,把它当作单片机的普通串口即可,没有特殊要求。具体的程序见本期配刊光盘。

  右图是LM-96与单片机系统连接示意图。在笔者应用中,由于使用ITL电平方式进行通信,所以选择LM-96的3 脚、4 脚的输出端口 s 如果使用RS232接口方式,则需要选择LM-96的6脚、7脚的输出端口。

  该电路的制作实物如下图所示,因该应用要求电路体积较小,设计时采用了贴片元件。如果没有体积大小的特别要求,读者可以使用直插元件,这样电路的安装和调试相对简单-些。

  软件设计该电路详细的软件流程见下图,源程序见本期配刊光盘,其实现过程采用中断方式进行。PC机的上位机程序可参照下位机的流程实现。

  调试该应用的调试分为硬件调试和软件调试两部分:

  硬件调试:在电源输入端加7.2V电压,利用万用表检测两个LDO电源芯片的输出电压是否正常(分别为3.3V和5.OV)。再使用示波器观察有源晶振是否有11.O592MHz的信号输出供CPU使用。如果没有11.O592MHz的输出信号,可能是有源晶振损坏或焊接不良(笔者在实际应用中,经常遇到这种情况)。

  软件调试:该应用程序量比较大,所以大家在软件设计中,应尽量利用电路中的数码管进行程序运行状态的提示,以便我们能比较好地了解单片机的执行状态。

  在笔者给出的程序清单中,已经有详细的LED驱动代码程序函数voidIg7289iddata(uchar com,uchar dat),大家在调试程序时可以直接使用。对于无线ISP 的驱动代码程序函数void isp-b00t(),大家可以参照流程图和源程序中的注释进行分析并使用。若你有技术方面不明白的地方,可发E-mail 至Ig@scetc . net与笔者联系。



评论

技术专区