社区
单片机/工控
帖子详情
请赐教:C8051F340单片机,如何实现通过USB更新程序
zhimu
2009-12-02 04:29:08
本人使用C8051f340单片机,不知道如何通过USB更新程序,请各位做过USB更新程序的哥哥姐姐赐教!
...全文
985
13
打赏
收藏
请赐教:C8051F340单片机,如何实现通过USB更新程序
本人使用C8051f340单片机,不知道如何通过USB更新程序,请各位做过USB更新程序的哥哥姐姐赐教!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ji532100
2010-02-06
打赏
举报
回复
学习
GTAI光钛
2010-02-04
打赏
举报
回复
[Quote=引用 3 楼 zhimu 的回复:]
恩,你说对了一半,我是想通过USB接口(不是串口),通过PC软件把程序烧录到单片机FLASH中,没有外部中断,只有一个USB接口,估计要写个USB更新程序放在code区的某个位置,在单片机正常跑的情况下,接收到要更新程序的命令,然后跳到这个区域,执行更新程序的代码。
说是这样说,我感觉无从下手!再请赐教!
[/Quote]
我觉得你说的很清楚了,呵呵。
老人参
2010-02-03
打赏
举报
回复
我见过一篇文章,lpc单片机作的,
LPC2000系列处理器USB ISP Bootloader 使用说明.pdf
http://www.elechome.com/
一个人写的,我没有用过,
想法不错,但是不知道,这么做,单片机的程序,安全性好象有所降低,还要写一套加密的小程序代码,
而且还写了大量usb代码,给单片机的稳定性能也降低了,
如果升级失败会如何?送厂返修?回来再用usb仿真器写一下?
如果做复杂的效验程序,把主程序在flash区备份,如果升级失败再恢复主程序,这不是就是浪费flash么?
一个简单的usb程序,最小也要6k,带上你的附加的功能,会做得很大,
给自己造成不必要的麻烦,
我个人觉得,看过,知道原理就好了,
只是个人看法
ZhanweiXue
2010-02-02
打赏
举报
回复
得用汇编,给代码定位,BOOTLOADER里面,需要执行USB的数据收发处理、写FLASH操作,在非数据下载期间,BOOTLOADER将程序指针定位到用户代码区,如果不涉及中断操作,应该不太难。
gelu1040
2010-02-02
打赏
举报
回复
必须有个BOOTLOADER.
上电的时候把代码调到RAM中运行,监测USB状态。实行上位机命令,接收数据,写入程序存储器。
新下载的程序必须也有一样的bootloader,不然下次下载不了了
wackestar
2010-01-31
打赏
举报
回复
http://blog.ednchina.com/wacke/404482/Message.aspx
whxmall
2009-12-25
打赏
举报
回复
关注,学习
fangs6009
2009-12-04
打赏
举报
回复
USB升级程序?不太了解!我们公司自己做了一个IAP程序,可以在程序运行状态下串口升级,不过要上位机软件配合。
kyzf
2009-12-04
打赏
举报
回复
友情帮顶下
宇帆
2009-12-03
打赏
举报
回复
通过USB更新程序??
仿真器不是USB的嘛 通过USB下载程序 就是USB更新程序啊
你可以做成那种,自己写个程序,通过USB下载你的程序的可执行文件,通过串口操作,也挺好的,ARM的bootloader就是这样做的,你可以参考
宇帆
2009-12-03
打赏
举报
回复
这个不用你自己写吧,C8051f340的仿真器有USB的吧,只要把把程序烧写进去就可以吧
zhimu
2009-12-03
打赏
举报
回复
恩,你说对了一半,我是想通过USB接口(不是串口),通过PC软件把程序烧录到单片机FLASH中,没有外部中断,只有一个USB接口,估计要写个USB更新程序放在code区的某个位置,在单片机正常跑的情况下,接收到要更新程序的命令,然后跳到这个区域,执行更新程序的代码。
说是这样说,我感觉无从下手!再请赐教!
博说医械研发
2009-12-02
打赏
举报
回复
和WINCE的BOOTLOADER一个原理。
C8051F340
开发全解析
本文深入剖析
C8051F340
开发板的硬件设计与软件
实现
,涵盖芯片架构、电源管理、晶振布局、
USB
信号完整性及
USB
协议栈处理,结合实际应用案例,揭示其在嵌入式系统中的高效集成优势与工程优化策略。
C8051F340
BootLoader实战:从原理到
实现
的在线升级方案
BootLoader(引导加载
程序
)是嵌入式系统中
实现
固件在线
更新
的核心技术,其核心原理是在芯片上电后,通过一段固化在Flash中的小
程序
,决定执行用户应用
程序
还是进入升级模式。这项技术通过通信接口(如UART)接收新固件并写入Flash,
实现
了In-Application Programming(IAP),从而摆脱了对专用编程器的依赖,极大提升了开发效率和产品现场维护的便利性。在工业控制、消费电子等对远程升级和快速迭代有强烈需求的场景中,BootLoader技术价值显著。对于经典的8051架构
单片机
,如C
C8051
单片机
USB
接口
程序
重点
通用串行总线控制器(
USB
0)
C8051F340
驱动960×240 ILI8961屏的SPI与RGB双接口固件工程(含触控/SD/
USB
预留)
基于Silicon Labs
C8051F340
单片机
,完整
实现
ILI8961主控TFT液晶模组(960×240分辨率,适配CPT或GP2.7规格)的显示控制。支持SPI串行和RGB8位并行两种硬件接口模式,可按项目需求灵活切换。工程包含LCD初始化、显存管理、指令配置(lcd.c/lcd.h)、电容式触摸基础响应(tp.c/tp.h)、SD卡FAT文件系统读写(mmc_sd.c/mmc_sd.h)、UART串口调试输出及
USB
通信接口预留(
usb
_api.h、
USB
X_F34X.LIB)。所有代码用标准C
ubuntu下SiLabs EC3调试C8051F
单片机
一直以来都想把工作的环境完全的换到Linux下面,当然我现在用的发行版是Ubuntu 10.04. 主要还是做
单片机
的开发.Silicon Labs公司的C8051F系列是一款集成度很高,片上资源丰富的
单片机
.下面我是我的笔记: --目前还是有问题,我正在读源码,希望可以解决. 1.ec2drv http://ec2drv.sourceforge.net/ Richy已经好像不...
单片机/工控
27,521
社区成员
28,798
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章