ME Labs, Inc.
719-520-5323
 
Home:
  Developer Resources:

Programming Clues
    Sample Programs
   
    PICBASIC PRO™
Compiler Manual
    PICBASIC™ Compiler
Manual
    Serin2/Serout2 Modes
    ASCII Character Set
    Number Conversion
    Floating Point
Routines
    PBP Debug Monitor
    Articles and Tutorials

Hardware Clues
    Parts / Vendor List
    PICPROTO™ Boards
    LAB-X1 Docs
    LAB-X2 Docs
    LAB-X20 Docs
    LAB-X3 Docs
    LAB-X4 Docs
    LAB-XUSB Docs
    LAB-XT Docs
     
 

ME Labs, Inc. | 1-719-520-5323 | Example Program - A2D8.pbp

PICBASIC PRO program to display result of 8-bit A/D conversion on LCD. Connect analog input to channel-0 (RA0).
' Name        : A2D8.pbp
' Compiler    : PICBASIC PRO Compiler 2.6
' Assembler   : PM or MPASM
' Target PIC  : 40-pin 16F, 18F types
' Hardware    : Lab-X1 or Lab-X2 board
' Oscillator  : 4MHz internal or external
' Keywords    : LCDOUT, A/D
' Description : PICBASIC PRO program to display result of 8-bit
' A/D conversion on LCD. Connect analog input to channel-0 (RA0).
'

' Define LCD registers and bits
Define  LCD_DREG  PORTD
Define  LCD_DBIT  4
Define  LCD_RSREG PORTE
Define  LCD_RSBIT 0
Define  LCD_EREG  PORTE
Define  LCD_EBIT  1

adval Var byte    ' Create adval to store result

   TRISA = %11111111       ' Set PORTA to all input
   ADCON1 = %00000010      ' Set PORTA analog and LEFT justify result
   ADCON0 = %11000001      ' Configure and turn on A/D Module
   Pause 500               ' Wait .5 second

mainloop:
   ADCON0.2 = 1            ' Start Conversion

notdone:
   Pause 5
   If ADCON0.2 = 1 Then notdone  ' Wait for low on bit-2 of ADCON0, conversion finished

   adval = ADRESH          ' Move high byte of result to adval     

   Lcdout $fe, 1           ' Clear screen
   Lcdout "Value: ", DEC adval     ' Display the decimal value  
   Pause 100               ' Wait .1 second

   Goto mainloop           ' Do it forever
   
   End

           

Download the program file.