Hi,
I have problems with portd.

This program should make the bit3 output pin on portd go on and off at 1 hz.
But it stays on all the time and sometimes other port pins on portd goes on.
Why??

My test program:

'--- SETUP SECTION -----------------------------------------
TRISA = %11001111 ' Set PORTA direction 1= input 0= output
TRISB = %00000000 ' Set PortB Direction
TRISC = %11000000 ' Set PortC Direction
TRISD = %00000011 ' Set PortD Direction
TRISE = %11111111 ' Set PortE Direction
TRISF = %11111111 ' Set PortF Direction
TRISG = %11111100 ' Set PortG Direction
CMCON = 7
ADCON1 = %00001011 ' AN0-AN3 used as analog inputs.Rest is digital.

' Defines.
DEFINE ADC_BITS 8 'Number of bits in ADCIN result
DEFINE HSER_RCSTA 90h ' Set receive register to receiver enabled
DEFINE HSER_TXSTA 20h 'Set transmit register to transmitter enabled
DEFINE HSER_BAUD 115200 ' Set baud rate
DEFINE OSC 40 'Uses 40 MHz clock
DEFINE ADC_SAMPLEUS 50 'ADC sampling time in microseconds
'DEFINE ADC_CLOCK 3 ' Set clock source (rc = 3)

'*Port Alias
X1 var porte.6
X2 var porte.7
X3 var portd.0
X4 var portd.1
X5 var porte.5
X6 var porte.4
X7 var porte.2
X8 var porte.3
X9 var porte.1
X10 var porte.0
X11 var portg.3
X12 var portg.4
X13 var portf.7
X14 var portf.6
X15 var portf.5
X16 var portf.4
X17 var portf.2
X18 var portf.3
X19 var portf.1
X20 var portf.0
Y1 var lata.5
Y2 var latc.2
Y3 var latd.3
Y4 var latd.7
Y5 var latc.1
Y6 var latc.5
Y7 var latd.2
Y8 var latb.1
Y9 var lata.4
Y10 var latc.4
Y11 var latd.5
Y12 var latb.2
Y13 var latc.0
Y14 var latb.5
Y15 var latd.4
Y16 var latb.3
Y17 var latc.3
Y18 var latb.4
Y19 var latd.6
Y20 var latb.0

'* Variables
AN1 var byte
AN2 var byte
AN3 var byte
AN4 var byte
T1 var word
T2 var word
T3 var word
T4 var word
T5 var word
T6 var word
T7 var word
T8 var word
T9 var word
T10 var word
C1 var word
C2 var word
C3 var word
C4 var word
C5 var word
C6 var word
C7 var word
C8 var word
C9 var word
C10 var word
SP1 var bit
SP2 var bit
SP3 var bit
SP4 Var bit

'----------------------------------------------------------------

'--- Main Program begin -----------------------------------------
Startup:
HIGH Y3
pause 500
LOW Y3
Pause 500
goto Startup

end