找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 10095|回复: 7
打印 上一主题 下一主题
收起左侧

关于51单片机,keil调试汇编程序时必须org0000h才可以单步走。

[复制链接]
楼主
ID:18297 发表于 2015-1-19 12:02 | 只看该作者
第一、每一个程序都是从0000H开始执行的。单片机上电或复位都会从0000H开始执行。
第二、org 0000h
         ljmp  main
        org 00bh
         ljmp ser
         org 0030h      ;这一句在汇编中是需要加的。说明主程序main是从0030开始。
main:省略
ser:省略

评分

参与人数 1黑币 +50 收起 理由
admin + 50 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

沙发
ID:1 发表于 2015-1-19 14:23 | 只看该作者
因为单片机复位 pc 便会指向0000h ,所以设置成org0004h程序还是从0000h来执行。只不过在下面要多一个跳转,另外在中断向量区不能放置无关内容 不然整个程序就会乱套。。关于此问题的详细解释详见51hei的一篇文章:http://www.51hei.com/bbs/dpj-30671-1.html       为了更好的使用 51hei论坛 楼主最好是完善一下个人资料。
回复

使用道具 举报

板凳
ID:1 发表于 2015-1-20 13:44 来自触屏版 | 只看该作者
主程序的位置必须要加以说明,因为如果不说明的话,有可能费覆盖中断向量区,但是如果你把每一个中断向量的位置都声明了一下。主程序的位置就不用在声明了。这样他就,无法覆盖中断,向量区了
回复

使用道具 举报

地板
ID:1 发表于 2015-1-20 13:45 来自触屏版 | 只看该作者
所以我还是建议楼主是用c语言来写程序吧,在c语言里面这些操作都是自动进行的。可以大大的提高效率。汇编语言真的很麻烦。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表