导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→[分享]:老弟挺认真,我来说两句

* 20861: 弱弱的问:DPTR指的什么?什么意义?如何操作?

   Kuang-chingTsui 
Kuang-chingTsui发表的帖子 

 [分享]:老弟挺认真,我来说两句
dptr:51单片机中的可十六位寻址的数据指针寄存器,由两个8bit的寄存器(dph和dpl)组成。使用mov指令可以一次写入它的高字节和低字节,如:
mov dptr,#add16         ;add16表示一个16位地址
可以用dptr去访问51的外部数据区(64k),也可以访问51的程序代码区(rom,64k).
例如:
mov dptr,#2040h
mov a,#0
movx a,@a+dptr          ;将外部data区地址为2040h的单元中的一个字节装入累加器acc
dptr也可以方便地访问程序代码区,对于查表操作十分方便,例如:

.
.
mov a,#3                    ;欲取出led显示字库中的第三字节(例如在七段led数字管上显示数字“3”
mov dptr,#leddis          ;将led显示字库首地址装入dptr
movc a,@a+dptr          ;字库中的第三字节被装入acc
mov p1,a                    ;假定p1为led段驱动,将显示字形输出到p1
.
.
还有更多的灵活应用的方法,明白点了吗?



发表时间:2003年3月17日11:56:38

  
回复该帖

本主题共有 4 帖,分页:>>>>>该主题的所有内容[4]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  20862.[详细][注意]:
摘要:当然,在你的程序中,肯定得有一个已被定义的leddis的表:  leddis: db aah,bbh,cch,................(91字)
- [Kuang-chingTsui][1327次] 2003年3月17日

[上一篇帖子]:[注意]:当然,在你的程序中,肯定得有一个已被定义的leddis的表: /P P leddis:
[下一篇帖子]:求助:关于硬件测试我今日将去应聘一个岗位 叫 硬件测试。 但我始终还没弄