应用程序怎么改应用程序

[复制链接]
2209|2
 楼主| jerkoh 发表于 2008-4-30 22:52 | 显示全部楼层 |阅读模式
如果有块单片机没有bootloader区
但可以应用程序改写应用程序
这样的话如何实现自身的代码通过串口ISP升级
cheungman 发表于 2008-4-30 23:52 | 显示全部楼层

我是这样做的

应用程序改写应用程序?

不知道你如何改的,我是这么做的,搞个简单的例子:

Target:PIC18F4680

//点亮RB0-RB3的机器码,注意是机器码。
uint8 Led_PORTB_Flash[]=
{
0x8c,0xef,0x02,0xf0,0xff,0xff,0x93,0x6a,
0x81,0x6a,0x0f,0x0e,0x81,0x6e,0xfd,0xd7, //此行第三个数据为PORTB的数据
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0x82,0xef,0x02,0xf0,0xff,0xff,0xff,0xff
};

改变0x0f数据,0x0f表示RB0-RB3都亮,那么改成0x01就表示只有RB0上的亮,实现改写另一应用程序。

然后把此代码写入FLASH的某个区域,设置中断向量,然后跳转到这里执行代码。
rodger_br 发表于 2008-5-1 01:17 | 显示全部楼层

没有bootloader你可以自己写啊

关键是flash区域可以分片擦除就好了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

116

主题

1409

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部