电工吧
◎ 电工吧 >> 设为首页 >> 加入收藏>> 联系方式 >> 投稿 >>留言 
网站首页 · 电工新闻 · 电工基础 · 电力技术 · 电子技术 · 电工图片 · 电工法规 · 电工图书 · 电工搜索 · 论坛交流
 
      最新电子论文
 · [DSP技术]我的学习经验―― 
 · 什么是单片机? 
 · 单片机基础知识(一) 
 · 单片机基础知识(二) 
 · [DSP技术]开始入门 DSP 注 
 · 做DSP最应该懂得157个问题 
 · [技术资料]高手5分钟可以学 
 · 单片机入门的几点建议 
      推荐电子论文

 · [DSP技术]开始入门 DSP 注意事
 · C编译器错误信息中文翻译
 · 51单片机C语言学习
 · 单片机教学 第二十课
 · MCS-51单片机实用子程序库(一
 · PIC单片机的C语言使用(一)

  ■ 所在位置:首页>>电子技术>>单片机学习>>正文
 

PIC系列单片机数据存储器的特点和功能(中)

PIC系列单片机数据存储器的特点和功能(中)

    学习PIC单片机数据存储器时,不仅要了解各寄存器单元的功能,而且还应在编制程序时会调用它们完成编程目的。下面笔者将以编程实例说明它们的用途。
  2间接寻址寄存器INDF和FSR 位于PIC单片机数据存储器的最顶端、地址00单元(地址码最小)的间接寻址寄存器INDF是一个空的寄存器。它只有地址码,在物理上不是一个真正的寄存器。它的功能常常与寄存器FSR(又称寄存器选择寄存器)配合工作,实现间接寻址目的。初学专用寄存器INDF和FSR时,记住下述的逻辑关系对编程是有帮助的:使用寄存器INDF的任何指令,在逻辑上都是对寄存器FSR所指向的RAM进行访问,即对INDF(本身)进行间接寻址(访问),读出的应是FSR内容。以下的一个简单程序是用间接寻址方式清除RAM地址20h~2Fh单元寄存器内容的实例。
    MOVLW 0x20  ;20h→w,对指向RAM单元的指针
          ;初始化
    MOVWF FSR   ;20h→FSR,FSR指向RAM
LOOP CLRF     INDF ;清除INDF,即清除FSR内容所指
           ;向的单元20h→2Fh
    INCF   FSR   ;(指针)FSR内容加1
    BTFSS    FSR,4;判别(指令)FSR的D3位,若为零
         ;执行下条循环指令;若为1间跳
         ;执行。
    GOTO    LOOP;跳转到LOOP(循环)
CONTINUE…    ;已完成功能,继续执行程序
  由上述指令看出,因寄存器INDF和FSR的配合工作,达到了对RAM地址20h~2Fh的寄存器清零目的。由于完成上述功能的指令数很少,这就会简化指令系统,使PIC单片机的指令集得以精简。
  说明:上述各条指令易于看懂,所以无需再复述,但其中的一条判别指令“BTFSS FSR,4”比较关键。该条指令是保证题设中要选择RAM地址单元上限值2Fh时,其对应的二进制数为00101111B,此时FSR的第4位恰为1。所以上述指令中用了一条判断指令;BTFSS FSR,4,判断FSR的D3位值是否为1,若不为1而为0,则执行下条循环指令GOTO LOOP,使FSR中的地址不断加1,直到寄存器FSR的D3位为1时,这时它的内容代表的RAM地址恰为2Fh。
  由此可见,学习PIC单片机数据存储器中的专用寄存器时,不必要对每个产品的专用寄存器进行学习,只需先学习它们的共同点,然后选中一个产品型号的专用寄存进行详细分析,有条件时进行必要的相关指令操作,就能完全掌握单片机技术。  

 
         相关文章

·
·
·
·
·
·

 
 
  关于本站 | 友情站点 | 联系方式 | 版权声明 | 电工技术服务与支持中心
Copyright© 2005-2006 Dg8.Com.CN ,All Rights Reserved
电工网 电工吧 电子吧