18F6310 configs


Closed Thread
Results 1 to 3 of 3

Thread: 18F6310 configs

  1. #1

    Default 18F6310 configs

    I am working out the configs for an 18F6310 with an internal OSC at 8MHZ

    I can't get some of the ports to go high

    PortD.1.5.6.7 won't go high
    PortF.4.5.6.7 won't go high

    Any ideas?

    Code:
    define OSC 8
    Include "modedefs.bas"    ' Mode definitions for Serout
    OSCCON.6=1 'Internal OSC
    OSCCON.5=1
    OSCCON.4=1
    
    INTCON.7=0          'Disables all interrupts
    INTCON2.7=0         'Disables pull-ups
    ADCON0.0=0          'Disables ADC
    ADCON1.3=1          'AN Channels to all digital
    ADCON1.2=1          'AN Channels to all digital
    ADCON1.1=1          'AN Channels to all digital
    ADCON1.0=1          'AN Channels to all digital
    
    PIE1=000000      'Disables Parralel Slave port
    PIE2=000000
    PIE3=000000
    
    PSPCON.4=0  'General I/O mode 
    SSPCON1.5=0 'Disables Serial Port
    SSPCON2.3=0 'Receive idle
    TXSTA1.5=0  'Disables Transmit
    RCSTA1.7=0  'Disables serial port
    RCSTA2.7=0  'Disables serial port
    T1CON.6=0   'Turns off Timer1
    T1CON.3=0   'Turns off Timer1
    T1CON.1=0   'Turns off Timer1
    T1CON.0=0   'Turns off Timer1
    T2CON.2=0   'Turns off Timer2
    T3CON.0=0   'Turns off Timer3
    T0CON.7=0
    
    Out_Speed2        var       PortA.0
    Out_24V6          var       PortA.1
    IN_NC1            var       PortA.2
    IN_Drain3         var       PortA.3
    Out_VSS7          var       PortA.4
    Out_VSS8          var       PortA.5
    Trigger           var       PortA.6
    LED               var       PortA.7
    'TRISA=001100
    TRISA=000000
    Out_Drain4        var       PortB.0
    Out_VSS3          var       PortB.1
    Out_VSS4          var       PortB.2
    Out_Drain3        var       PortB.3
    NC1_Out           var       PortB.4
    LCD               var       PortB.5
    'Not USED                   PortB.6
    'Not USED                   PortB.7
    TRISB=000000
    Out_24V5          var       PortC.0
    Out_Speed1        var       PortC.1
    Out_VSS6          var       PortC.2
    Out_VSS5          var       PortC.3
    Out_Drain2        var       PortC.4
    Out_Pop           var       PortC.5
    Out_24V4          var       PortC.6
    Out_Drain1        var       PortC.7
    TRISC=000000
    TRISD=000000
    IN_VSS7           var       PortE.0
    IN_Speed1         var       PortE.1
    IN_24V5           var       PortE.2
    IN_24V4           var       PortE.3
    IN_Drain1         var       PortE.4
    IN_VSS6           var       PortE.5
    IN_VSS5           var       PortE.6
    IN_Drain2         var       PortE.7
    'TRISE=111111
    TRISE=000000
    IN_VSS4           var       PortF.0
    IN_VSS3           var       PortF.1
    IN_Drain4         var       PortF.2
    IN_24V3           var       PortF.3
    IN_24V2           var       PortF.4
    IN_Speed4         var       PortF.5
    IN_VSS2           var       PortF.6
    IN_VSS1           var       PortF.7
    'TRISF=111111
    TRISF=000000
    IN_VSS8           var       PortG.0
    IN_Speed2         var       PortG.1
    IN_24V6           var       PortG.2
    IN_24V1           var       PortG.3
    IN_Speed3         var       PortG.4
    'NOT USED         PortG.5
    'TRISG=1111
    TRISG=000
    Speed1Check       var       bit
    Speed2Check       var       bit
    Speed3Check       var       bit
    Speed4Check       var       bit
    
    Drain1Check       var       bit
    Drain2Check       var       bit
    Drain3Check       var       bit
    Drain4Check       var       bit
    
    VSS1Check         var       bit
    VSS2Check         var       bit
    VSS3Check         var       bit
    VSS4Check         var       bit
    VSS5Check         var       bit
    VSS6Check         var       bit
    VSS7Check         var       bit
    VSS8Check         var       bit
    
    Check24V1         var       bit
    Check24V2         var       bit
    Check24V3         var       bit
    Check24V4         var       bit
    Check24V5         var       bit
    Check24V6         var       bit
    
    PopCheck          Var       bit
    NCCheck           var       bit
    ErrorCount        var       byte
    
    Prefix            con     $FE             ' needed before each command
    LcdCls            CON     $51             ' clear LCD (use PAUSE 5 after)
    CursorPS          con     $45             'Cursor Position
    Backlight         con     $53             ' Backlighting 1-8
    Contrast          con     $52             ' Contrast 1-50
    
    Runaround:
    high PortF.0
    high PortF.1
    high PortF.2
    high PortF.3
    high PortF.4
    high PortF.5
    high PortF.6
    high PortF.7
    Serout2 LCD, 84, [Prefix,LcdCLS] 
    pause 100        '                  PortA Good
                                       'PortB Good           
                                       'PortC Good       
                                       'PortD.1.5.6.7 won't go high 
                                       'Port E Good
                                       'PortF.4.5.6.7  won't go high 4,5,6 AN channels, 7 SPI slave select channel 
                                       'PortG Good
    SEROUT2 LCD,84, [Prefix,CursorPS,0, dec1 PortF.0, dec1 PortF.1, dec1 PortF.2, dec1 PortF.3, dec1 PortF.4, dec1 PortF.5, dec1 PortF.6, dec1 PortF.7]
    pause 1000
    goto Runaround

  2. #2
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,520


    Did you find this post helpful? Yes | No

    Default Re: 18F6310 configs

    Hi,

    Weird, I can't seem to get the datasheet for that device at MCSP...
    Anyway, are you sure it's not a RMW-issue? Try a pause between writing each bit or write the full port in one go. Or, even better, write to LATF instead of PORTF, that'll be unaffected by possible RMW-issues.

    /Henrik.

  3. #3


    Did you find this post helpful? Yes | No

    Default Re: 18F6310 configs


Members who have read this thread : 1

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