the big problem i have now is to wake up pic 16f628 from sleep using usart interrupt hserin i tested PIR1 it occur but in sleep mode it doesnt occur . i donno i think im runing usart on synchronous slave mode thats what says the datasheet but i donno wheres my problem .my project is to transmet data to pic then wake it up . here is my code .
Code:
@ DEVICE WDT_ON, PWRT_OFF,MCLR_ON,CPD_OFF, BOD_OFF, PROTECT_OFF,INTRC_OSC_NOCLKOUT
Include "modedefs.bas"
DEFINE OSC 4
RCSTA=$90'DEFINE HSER_RCSTA 90H
TXSTA = $20'DEFINE HSER_TXSTA 20h
DEFINE HSER_BAUD 2400
DEFINE HSER_SPBRG 25
'DEFINE HSER_EVEN 1
'DEFINE HSER_CLROERR 1 ' Clear overflow automatically
'DEFINE HSER_TIMEOUT 1 ' Clear overflow automatically
PORTA = %00000
PORTB = %00000010
TRISA = %00000
TRISB = %00000010
intcon = 0
vrcon = 0
CMCON = 7
j var BYTE
led var portb.7
LOOP:
j = j + 1
if j = 255 then SLP
high led2
HSERIN 10,main,[DEC4 b0]
goto loop
' here will be my programe
SLP:
low led
RCSTA.4=0
pause 100
INTCON.6 = 1
RCSTA.4 = 1
PIE1.5 = 1
PIR1.5 = 0
@ SLEEP
@ NOP
PAUSE 1000
HIGH PORTB.6
PAUSE 1000
LOW PORTB.6
GOTO LOOP
END
please help i had read all the usart datasheet and i did what it says but nothings i think the problem in sync slave mode or the osc goes off during sleep or usart not reciving data even i did set it to recive data and interrupt..
and acetronics says (Alain
... and now, just use " Wake up on interrupt " ... as you have the interrupt flag !!! i donno where to put on interupt i trayed it many ways but nothings when it goes to sleep it die just like my nan bless her ..
Bookmarks