• 歡迎光臨東莞市飛江電子科技有限公司官網!
    全國咨詢熱線

    13926563901

    18925580829

    飛江淘寶店鋪

    首頁>技術資料>51單片機

    PIC系列單片機數據存儲器的特點和功能(下)

    發布時間:2018-04-07   瀏覽量:

    PIC單片機 www.syhtzly.com

        3   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顯示。實驗的電路原理如附圖(筆者根據源程序而繪出的PIC16F877A/D轉換硬件電路圖)所示。
      (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口為模擬量的輸入通道。并選中芯片電源作基準電壓。讀者若需深入了解A/D控制寄存器ADCON0和ADCON1的各位詳細功能,請參看有關PIC單片機書籍的詳細介紹。
      A/D轉換的主程序(main)約有13條,將在本版PIC系列專題的后期結合實驗板的編程器介紹。PIC系列單片機的其它專用寄存器,如TRISA、STATUS Bank等,本報在前幾期有關PIC單片機的文中均已介紹過?! ~?/p>

    成都 丁錦元

    www.syhtzly.com  飛江科技

    黑人粗大无码AV人妻一区