新闻中心

EEPW首页 > 光电显示 > 设计应用 > 一种便携式电视机软件的升级系统

一种便携式电视机软件的升级系统

作者:徐遥令 丁国民 创维集团研究院时间:2010-03-15来源:电子产品世界收藏

  有UART串行接口,没有I2C接口及SPI接口,采用I/O口P8、P9模拟I2C接口,I/O口P4~P7模拟SPI接口。FLASH存储采用NOR FLASH,3.3V供电。由于FLASH是3.3V供电, I/O口电平为5V,为保证数据的可靠性,系统有一个5V/3.3V SPI总线转换电路。

本文引用地址:http://www.eepw.com.cn/article/106927.htm

  系统自身的引导程序、初始化程序以及UART接口数据读写程序、I2C接口数据读写程序、SPI接口数据读写程序等都放在内部ROM中,FLASH存储器专门存储升级程序数据。开关SW2、SW3产生低脉冲来触发外部中断INT0、INT1,以控制I2C接口数据的接收和发送;串行接口中断控制UART接口数据的接收,而SW1产生低脉冲通过I/O口P3控制UART接口数据的发送。升级系统通过内部定时器以及I/O口P2、P1控制红/绿指示灯来表达当前状态,例如红绿灯都亮,升级系统运行正常,准备读写;红灯亮,绿灯闪动,升级系统正在写或读FLASH存储器。

  系统软件实现

  升级系统的软件实现包括两部分:作为从机接收并存储电脑系统发送的升级程序数据和作为主机向系统发送存储的电视机升级程序数据。

  系统主频设计为22.1184MHz,UART接口采用8位移位寄存器模式,波特率是系统主频率的1/12,每接收完或发送完一个数据字节将产生中断;I2C接口最高传输速率为100kb/s,SPI接口最高传输速率为2.2Mb/s。

  系统自检、初始化等程序以1000H为起始地址。上电后直接跳到1000H处,进行初始化设置,建立好堆栈,设置好UART接口、I2C接口以及SPI接口相关参数;红绿指示灯都亮,允许中断。此后系统正常运行,等待中断并监视I/O口P3的状态,以决定系统是作为主机还是从机进行下一步运作。

  作为从机接收并存储升级程序数据

  升级系统作为从机接收并存储电脑系统发送的电视机升级程序数据,流程如图3所示。

  1.系统正常运行,开串口中断、外部中断及定时器中断,等待中断。

  2.从I2C接口接收升级程序数据时,按一下开关SW2,产生外部中断INT0。屏蔽除定时器中断外所有的中断,将与当前状态相关的寄存器及程序指针数据暂时存入堆栈。同时设置定时器相关参数,使W79E632能够向I/O口P1发送周期为500ms的脉冲信号以控制绿灯闪动,表示正在接收数据。串口中断由W79E632自动产生。如果产生串口中断,则屏蔽除串口中断、定时器中断外所有的中断,其它设置与INT0中断相同。



评论


相关推荐

技术专区

关闭