12F683 ADcin = binary outcome!


Closed Thread
Results 1 to 4 of 4

Hybrid View

  1. #1
    Join Date
    Mar 2009
    Posts
    653


    Did you find this post helpful? Yes | No

    Default

    Hi Joe,

    I tried your recommendation - couldn't get it to work.

    I think it might be something to do with leaving the Pickit2 programmer attached as a 'virtual' serial connnection to my PC - so I moved the AtoD over to AN3 (pin 3)..

    This code seems to work...

    Code:
    @MyConfig = _INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_ON  
    @MyConfig = MyConfig & _MCLRE_OFF 
    
    DEFINE OSC 4           ' Internal 8MHz
    DEFINE ADC_BITS 8      ' 8-bit resolution
    DEFINE ADC_CLOCK 2     ' Set clock source to Frc/32
    DEFINE ADC_SAMPLEUS 50 ' Sample time in uS before A/D conversion is started
    
    CMCON0 = 7   			'Comparators off
    ADCON0 = %00000001		'ADC enabled and right justified
    ANSEL = %00001000		'GPIO.0 and GPIO.1 analog input
    INTCON = 0				'INTERRUPTS off
    TRISIO = %111011		'GPIO2 output
    GPIO = %00010000 		' All outputs = 0 on boot
    
        Quanta  CON 1251        ' For 10-bit A/D +Vref = 5V : 5V/1023*256=1.251=Quanta
        ADval  VAR WORD	    ' A/D conversion result
    
        DEFINE DEBUG_REG GPIO   ' Define DEBUG port
        DEFINE DEBUG_BIT 0      ' Set GPIO.0 as DEBUG serial output pin
        DEFINE DEBUG_BAUD 9600  ' DEBUG baud rate = 9600 bps
        DEFINE DEBUG_MODE 0     ' 1 = inverted, 0 = true
        
        MAIN:
        ADCIN 3, ADval      ' Read A/D
        DEBUG DEC ADvAL,13 ,10
        PAUSE 200
        GOTO MAIN
    
        END
    Many thanks for your help.
    Last edited by HankMcSpank; - 4th March 2010 at 22:00.

  2. #2
    Join Date
    Aug 2006
    Location
    Look, behind you.
    Posts
    2,818


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by HankMcSpank View Post
    Hi Joe,

    I tried your recommendation - couldn't get it to work.

    I think it might be something to do with leaving the Pickit2 programmer attached as a 'virtual' serial connnection to my PC - so I moved the AtoD over to AN3 (pin 3)..

    This code seems to work...

    Code:
    @MyConfig = _INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_ON  
    @MyConfig = MyConfig & _MCLRE_OFF 
    
    DEFINE OSC 4           ' Internal 8MHz
    DEFINE ADC_BITS 8      ' 8-bit resolution
    DEFINE ADC_CLOCK 2     ' Set clock source to Frc/32
    DEFINE ADC_SAMPLEUS 50 ' Sample time in uS before A/D conversion is started
    
    CMCON0 = 7               'Comparators off
    ADCON0 = %00000001        'ADC enabled and right justified
    ANSEL = %00001000        'GPIO.0 and GPIO.1 analog input
    INTCON = 0                'INTERRUPTS off
    TRISIO = %111011        'GPIO2 output
    GPIO = %00010000         ' All outputs = 0 on boot
    
        Quanta  CON 1251        ' For 10-bit A/D +Vref = 5V : 5V/1023*256=1.251=Quanta
        ADval  VAR WORD        ' A/D conversion result
    
        DEFINE DEBUG_REG GPIO   ' Define DEBUG port
        DEFINE DEBUG_BIT 0      ' Set GPIO.0 as DEBUG serial output pin
        DEFINE DEBUG_BAUD 9600  ' DEBUG baud rate = 9600 bps
        DEFINE DEBUG_MODE 0     ' 1 = inverted, 0 = true
        
        MAIN:
        ADCIN 3, ADval      ' Read A/D
        DEBUG DEC ADvAL,13 ,10
        PAUSE 200
        GOTO MAIN
    
        END
    Many thanks for your help.
    OK, if you are going to use @MyConfig, you are missing the most important piece, under @myConfig you must have the config statement directing it to use MYConfig
    like so:
    Code:
    @_MyConfig = _INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_ON  
    @_MyConfig = MyConfig & _MCLRE_OFF 
    @ __config MyConfig
    And @ _MyConfig must have 1 underscore and no spaces between the @ symbol and the underscore.
    I suspect if that worked for you then doing it this way will give an overwriting previous address error, because your code is still using the default config.
    Last edited by Archangel; - 5th March 2010 at 04:50.
    If you do not believe in MAGIC, Consider how currency has value simply by printing it, and is then traded for real assets.
    .
    Gold is the money of kings, silver is the money of gentlemen, barter is the money of peasants - but debt is the money of slaves
    .
    There simply is no "Happy Spam" If you do it you will disappear from this forum.

Similar Threads

  1. Conway's Game Of Life
    By wellyboot in forum mel PIC BASIC Pro
    Replies: 45
    Last Post: - 28th May 2020, 06:14
  2. Thermo 7 segments - little problem
    By fratello in forum mel PIC BASIC Pro
    Replies: 49
    Last Post: - 27th July 2013, 07:31
  3. Delayed output 10 secs
    By lilimike in forum mel PIC BASIC Pro
    Replies: 37
    Last Post: - 14th October 2011, 06:28
  4. RS485 bus - starting probem
    By wurm in forum mel PIC BASIC Pro
    Replies: 4
    Last Post: - 27th January 2010, 13:35
  5. Working with indivividual bytes of an array
    By J_norrie in forum mel PIC BASIC Pro
    Replies: 5
    Last Post: - 22nd January 2007, 19:16

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts