随着片内 FLASH ROM 在MCU领域的广泛应用,ISP(In-system programmable)器件发展广泛,而受益于该技术,大量单片机系统在正常工作电压下,能实现软件更新程序存储空间,从而对系统进行升级地功能。智能仪表应用量的增加以及技术的进步,使得人们不断寻找操作人员不到现场就能升级智能仪表的方案。
目前大多数单片机系统智能仪器的远程升级解决方案,需要通过因特网和PC来实现,因特网传输数据,PC的串口作为烧录程序ISP的媒介,这种方案,相对而言,实现成本高,占地大。由于单片机智能仪器运行代码的数据量不大,并不一定需要通过因特网来进行数据传输。当网络内的大批量仪器需要经常进行升级时,这种应用不具优势。
考虑如上因素,如果经由固定电话线网络传输数据,单片机接收数据后,执行ISP自我更新功能步骤,远程升级系统就可以得到简化。智能仪表只需要包含电话线接口及单片机系统,就能完成远程升级的全部硬件架构,系统成本就能大幅下降。华邦新推出的8位MCU W925EP01在功能上能完全支持这种应用,仅MCU + Memory就能构成完整的运行系统的廉价解决方案,为大批量的远程升级系统提供了广阔前景。 W925EP01介绍
W925EP01是一款内核为标准
8051,兼容所有的
8051指令,并集成了所有来话显示(CID)传送及接收所需要的硬件功能的8位的单片机。内含
64KB具有ISP功能的Flash EPROM (APROM),用于存储装载程序的4KB辅助Flash EPROM (LDROM)。可外扩
64KB程序空间,总共APROM (00000H~0FFFFH)和外扩ROM (10000H ~ 1FFFFH),用户可通过P5, P6, P7, A16和使用MOVC指令使用片外存储空间,及片外数据存储器。功耗低,省电模式下运行电流约为50uA,最低工作电流甚至可小于1uA。
所有的内建特性如下所示。
●CPU:内核与
8051系列相容的8位机。
●uC部份: 工作电压可选择范围2.4V至5.5V工作。ISP工作电压从3.3至5.5V。
●CID部分: CID接收 3.0 到 5.5V。
● 双时钟工作模式: 主振4MHz/8MHz时钟主要用在CID及DTMF功能。内建有一RC振荡电路,常用于省电模式下。辅振32768Hz时钟。主振和辅振都可由个别位来控制,达到起振或停止。
●I/O口: 64个 I/O 管脚。
● 电源模式: 一般模式;双时钟模式下辅振运行;闲置模式;停止模式:芯片所有动作都停止,此时功耗可低于1uA。
● 计数器: 2个 13/16-位计数器Timer0 & 定时器1,或8-位可自动重载的计数器。
● 看门狗计数器(WDT): WDT可被规划为系统的监测器。
● 中断: 总共 12 个中断源,可被分为两阶的优先级。
●分频器: 13/14 -位分频器, 时钟来源为辅振, 所以每0.25或0.5秒会设置DIVF标志。
● 比较器: 由VNEG管脚输入模拟信号,由VPOS管脚输入参考电压。
●串行口: 串口0: 一个全双工串行口(UART)。串口1:一个8位结构的串行口,经由SCLK & SDATA可收可发。
● CID规格兼容的协议有Bellcore TR-NWT-000030 & SR-TSV-002476,British Telecom(BT) SIN227, U.K. Cable Communication Association (CCA) specification。
FSK 调制/解调器:兼容于
1200波特率 的Bell 202 and ITU-T V.23 FSK 协议。
CAS产生/检知器:兼容于 dual tones of Bellcore CAS and BT Idle State and Loop State Dual Tone Alert Signal (DTAS)。
DTMF产生器/接收器: DTMF接收器还可以被程序化为音频检知器(tone detector)。
Ring检知器:可检知line reversal for BT, ring burst for CCA 或 ring signal for Bellcore。
两个独立的OP 运放,可以调整其放大倍率。
W925EP01实现远程升级的原理
远程升级系统构
架远程升级整个系统包括主控端和终端,主控端负责发送数据;终端在接收数据后,通过ISP的方式自我更新程序存储空间。主控端由 W925EP01/W925E240/W925E625 搭建的系统,或其他带有CID发送的系统来完成。终端由W925EP01搭建。主控端和终端之间的通讯仅通过电话线完成,整个系统构架如下:
基于W925EP01的终端系统构架
终端仅需要MCU+ Memory的架构,外部搭建简易的CID放大电路,就可以实现整个远程升级系统的运行。
如下图所示,MCU W925EP01的P5和P6作为地址总线,P7作为数据总线与外部RAM相连接,其余的P0至P4口与之前的W925全系列兼容。
远程升级系统工作流程
主控端呼叫终端后,通过用户自定义的握手协议(Handshake Protocol)检验通讯是否连接,确认连接后,主控端发送升级程序的代码,终端接收,代码发送完毕且终端检验接收成功后,终端挂断与主控端的连接,进行ISP自我更新动作。
远程升级时主控端工作流程
需要远程升级时,主控端向终端发送更新命令,等待终端接收并回传允许发送信号,通过FSK发送终端更新程序的代码。
远程升级时终端工作流程
定义:W925EP01运行正常程序存储空间所在区域为APROM,运行ISP更新程序的程序存储空间为LDROM。
正常工作状态时,APROM运行工作程序。当有CID信号到来时,W925EP01首先检测是否为主控端发送的ISP升级命令(STEP 1),确认是后W925EP01转跳到LDROM区域运行(STEP 2),然后检测通讯是否成功连接,确认连接后,LDROM接收FSK数据,并将存储到片外的数据存储空间(STEP 3),检验数据接收和存储正确后,挂断与主控端的连接,将片外数据存储空间内的数据写入APROM中(STEP 4),烧写代码完成,W925EP01转跳回APROM工作,终端ISP自我更新工作完成。示图如下。
本文小结
应用W925EP01构建的基于固定电话线的系统远程升级方案,升级流程控制简易,且成本远低于其他远程升级方案,适用于大批量的远程升级系统。作为一种廉价的解决方案,用于小区安防,家校通等各种基于固定电话线网络的系统,极具市场竞争力。