打印

关于Reset()

[复制链接]
4323|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
leizi2008|  楼主 | 2010-9-25 18:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
.....
Reset();
PORTB=0XFF;
......
请问后面的那条指令还能执行吗?
基础不扎实,请大侠指点!
沙发
yewuyi| | 2010-9-26 09:06 | 只看该作者
Reset();
你首先需要知道这个函数是从哪里来的?是编译器的库函数还是用户自己写的应用函数?

不管是哪个函数,都需要弄明白它的作用是什么,只有知道了它的作用后,才知道后面的指令能否执行。

使用特权

评论回复
板凳
XIEYUANBIN| | 2010-9-26 09:10 | 只看该作者
有一些型号有RESET 指令,但执行RESET 指令之后,单片机复位,PC指针及所有特殊寄存器都回到 复位状态,所以你后面的指令是难以继续执行的。

使用特权

评论回复
地板
leizi2008|  楼主 | 2010-9-26 11:54 | 只看该作者
2# yewuyi 我头文件里看了这个函数定义是这样:#define Reset()  {_asm reset _endasm}

使用特权

评论回复
5
XIEYUANBIN| | 2010-9-26 12:47 | 只看该作者
那你的芯片就是支持RESET指令的。一般18系列以上的都有这条指令,这个指令执行执行后器件复位,后面的指令是不会自动执行下去的。

使用特权

评论回复
6
leizi2008|  楼主 | 2010-9-26 14:59 | 只看该作者
5# XIEYUANBIN 哦,十分感谢,我用的就18F系列的,呵呵

使用特权

评论回复
7
qixian1988| | 2011-2-14 10:02 | 只看该作者
#define Reset()  {_asm reset _endasm}中的Reset()可以直接用么?

使用特权

评论回复
8
yewuyi| | 2011-2-14 10:47 | 只看该作者
#define Reset()  {_asm reset _endasm}中的Reset()可以直接用么?
qixian1988 发表于 2011-2-14 10:02


可以。
当成一个函数调用即可。

使用特权

评论回复
9
qixian1988| | 2011-2-14 11:18 | 只看该作者
哈,再次感谢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

33

主题

266

帖子

0

粉丝