详解PIC系列单片机数据存储器转换寄存器的指令

电子说

1.2w人已加入

描述

A/D转换寄存器 这里摘录一段笔者从网上下载的用PIC16F877单片机芯片(带Flash存储器的)完成有关A/D转换的源程序部分指令,并用它说明有关A/D转换寄存器在指令中的用法。

这里先引用部分源程序,源程序中的注释是笔者按照指令在程序中的作用所加的注释(不是某条指令的直接功能),这是初学者读以下指令时应注意的。A/D转换器部分源程序清单如下:

  DEMO 877ASM

  List P=16F877

  org   0x00    ;复位向量

  NOP        ;空操作

Start Banksel PORTC ;选择PORTC所在

            ;数据存储器的存储

            ;体(实为Bank0)

  CLRF   PORTC  ;对RC口清零

  MOVLW B′01000001′ ;A/D转换时钟选

            ;择FOSC/8,打开

            ; A/D转换器

  MOVWF ADCON0  ;设定了A/D转换

            ;操作部分参数

  Banksel OPTION_REG ;选择OPTION所在

            ;数据存储器的存储           

;体(实为Bank1)

  MOVLW B′10000111′ ;设置预分频器TM

            ; R0,分频率1∶256

  MOVWF OPTION   ;完成上条指令设置

  CLRF  TRISC   ;设定RC口(8位)

            ;为输出

  MOVLW B′0001110′  ;选中模拟量通道1

            ;(RA1/AN1)

  MOVWF ADCON1  ;模拟基准电压

VREF为芯片电源电压,选择通道1(RA1/AN1)完成main …

  要阅读上述的指令,读者还需了解以下几点补充知识:

  (1)关于用PIC16F877单片机作A/D转换器。PIC16F877单片机是具有多通道模拟量输入的8位A/D转换器。上述的源程序是利用该PIC产品作A/D转换的一种实验程序,其实验目的是用PIC16F877单片机来实现一个通道的8位A/D转换,并将转换结果以二进制形式经RC口输出再由LED显示。

  (2)编制与A/D转换器有关的专用寄存器指令。要读懂上述的源程序,应根据以下的线索:

1)把握源程序的编写惯例;

2)选择RC口和对它清零;

3)给A/D控制寄存器ADCON0的各位置数,达到A/D转换时选择A/D位的采样时间,即注释中的A/D时钟选择;

4)选择专用寄存器Option并给它各位置数,达到选择预分频器TMR0和确定其分频率(1∶256);

5)设定RC口为输出,以保证LED显示;

6)给A/D控制器ADCON1的各位置数,以确定PIC16F877单片机的RA1口为模拟量的输入通道。并选中芯片电源作基准电压。

  想要了解更多单片机的知识,可以登录奥柯网站或者电话奥柯技术人员,免费获得技术支持,期待您的来电!
  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分