分享简单的C8051F020通过串口下载程序的方法

2020-01-12 17:25发布

本帖最后由 hdd961140543 于 2012-3-25 20:54 编辑

最近在开始学习C8051F单片机,没办法因为导师用的是这款单片机。项目中需要用到远程更新固件的功能,所以在网上找到了C8051F单片机串口下载的bootloader,修改之后就成功的用在了C8051F020这款单片机上。而且这种方式也可以扩展到其它具有IAP(在应用中可编程)功能的单片机上。
UartBootLoader.rar (42.63 KB, 下载次数: 484) 2012-3-25 20:33 上传 点击文件名下载附件
bootloader源代码

这个是我写的bootloader代码,编译软件Keil4.00,为了尽量精简,我将所有代码都放在了一个main.c的文件里。
Keil中工程需要将代码存放位置设置一下,start地址就是boot程序区的起始地址,size大小就是你的boot代码编译后的大小,当然需要预留一些空间。
下载软件界面.jpg (70.41 KB, 下载次数: 0) 下载附件 下载软件界面 2012-3-25 20:46 上传
上位机还有几个功能我还没有做到:
1、自动装载hex文件
2、显示下载进度
3、下载计数功能
请有兴趣的大虾帮忙完善一下,分享给大家
串口下载器.rar (123.31 KB, 下载次数: 776) 2012-3-25 20:50 上传 点击文件名下载附件
VB2008上位机





友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
76条回答
hdd961140543
1楼-- · 2020-01-16 01:10
yklstudent 发表于 2012-11-2 12:53
楼主 你这个上位机是使用什么版本的VB写的 我的VB6.0没法识别啊

用的VS2008,VB.net,FrameWork3.5框架。
yklstudent
2楼-- · 2020-01-16 01:37
hdd961140543 发表于 2012-11-2 14:43
用的VS2008,VB.net,FrameWork3.5框架。

恩 谢谢了 回去晚上装VS2008试试
xyz2008
3楼-- · 2020-01-16 06:33
 精彩回答 2  元偷偷看……
hdd961140543
4楼-- · 2020-01-16 11:51
xyz2008 发表于 2012-11-7 11:37
楼主,先用仿真器 把你的BootLoader下载到我板子里面,那我要不要改我的程序编译项的设置啊
我用仿真器烧完 ...

用仿真器下载时需要设置下载的位置,start地址就是boot程序区的起始地址,这里我设置了0xf200就是片内flash总大小-预留空间:64K-4K=60K=0xf000
用我的下载软件下就不需要设置了
xyz2008
5楼-- · 2020-01-16 15:19
是不是我的程序要这样设置下
xyz2008
6楼-- · 2020-01-16 21:05
hdd961140543 发表于 2012-11-7 13:03
用仿真器下载时需要设置下载的位置,start地址就是boot程序区的起始地址,这里我设置了0xf200就是片内fla ...

可我设置了,还是不行

一周热门 更多>