注册
登录
网站首页
加入收藏
使用帮助
联系我们
论坛
排行榜
最新帖子
管理团队
应用
风格
搜索
微控网
微控论坛
MSP430单片机专版
MSP430讨论区
查看帖子
主题:
C语言中实现程序跳转
回复:
1
帖
上篇
返回版面
下篇
发表新主题
发起投票
回复此主题
1
复制本帖地址
yuxiangqiezi
2009-05-24 18:05:31
阅读:47689次
回复
只看此人
楼主
积分
2
经验
528
文章
24
注册
2009-04-13
C语言中实现程序跳转
前段时间发帖,求助在C语言中怎么样实现跳转,没有得到理想的答案。
进过这段时间的研究我使用了一下几个方法都很好用,与君共享。
方法一:对于小端模式(0000h~0ffffh),实现跳转,可以嵌套汇编asm(“br &0x....”)
对于5系列中可选的大端模式可以用asm(“bra &0x....”)实现跳转
方法二:直接使用指针typedef void (*pFunction) (void );
pFunction pMyaddr = (pFunction)0xFFFE;
pMyaddr(); 想跳哪跳哪,呵呵
这段时间用5系列完成了bootload程序,用于485通讯的系统中程序的升级,在完成升级以后,跳转到主程序用上面两种方法很有效,还有一种实现复位的方法就是在boot程序下载完以后开看门狗,让程序通过复位直接到主更新完的程序里,这样可以不用断电,因为在工业现场代码升级基本不允许断电。
呵呵,希望对大家有帮助。
微控网感谢您的参与
gamep
2009-05-26 08:31:42
引用
只看此人
2
楼
积分
7
经验
524
文章
8
注册
2009-05-12
高手!!
学习了
微控网感谢您的参与
发表新主题
发起投票
回复此主题
1
Copyright
©
2003-2024 微控网 -
清空COOKIE
-
手机版
-
RSS
网站备案序号:
粤ICP备12090318号
Powered by
LeadBBS 9.2
.
Page created in 3.3750 seconds with 5 queries.
顶部