DAB接收机USB固件升级的实现
模式下,MCU的程序指针会直接跳转至FLASH的0×8004000地址处即新用户程序的main函数处,执行新写入的用户程序。 4.4 程序存储空间分配 接收机是以STM32系列微控制器作为核心处理器,采用A R M公司专为要求高性能、低成本、低功耗的嵌入式应用设计的C o r t e x – M 3内核。S T M 3 2系列存储器在Cortex-M3内核的基础上加入了FLASH、SRAM等,使其成为可以工作的处理芯片。 STM32的存储器地址空间总共划分为8块区域,每块区域大小为512M.如图5所示为STM32系列MCU存储器第一块区域的结构示意图。 引导程序和用户程序都存放在第一块Flash区域内,引导程序存放在0×8000000-0 x 8 0 0 3 F F F区域,用户程序存放在0 x 8 0 04000-0x801FFFF区域。为了使FLASH区域内存放的引导程序和用户程序代码之间不发生冲突,新用户程序的中断向量表需要做重映射。 固件升级完成后,在新用户程序执行过程中,FLASH区域的不同地址处存在两个中断向量表。当有中断请求来临时,程序指针仍然会跳转至引导程序的中断向量表处,而不是新用户程序的中断向量表处,这是由MCU内部硬件工作机制决定的。 5.接收机DFU测试 PC端升级软件使用ST意法半导体公司官方提供的软件,在ST官方网站上可下载到该软件,安装后执行。 接收机上电,首先按住同步按键,并将接收机通过USB线缆与PC机相连,然后松 开按键。当程序左上角识别出STM Device时,说明接收机与PC机已成功建立连接,点击Choose…选择本地的升级固件,然后点击Upgrade执行升级操作。 如图6所示为接收机固件升级成功的程序界面。 6.结论 本文提出的设计方法实现了便携式DAB接收机的DFU,经多次测试表明,该方法能够可靠的对接收机进行固件升级。 用户需要对便携式DAB接收机进行固件升级时,只需在说明书内指定的网址下载升级软件和固件,就可将产品的固件升级至最新版本。DFU的实现,给用户升级产品带来很大方便,具有一定的现实意义和应用价值。
- 基于便携式DAB接收机的MP3播放器设计(08-09)
- Linux系统下USB摄像头驱动程序开发(04-25)
- 基于uClinux嵌入式系统的汽车黑匣子的设计(07-08)
- 基于WinCE操作系统的通用USB数控键盘设计(08-05)
- 基于WinCE的ARM视频监控系统(11-14)
- 基于LabVIEW的USB实时数据采集处理系统的实现(03-26)