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 .
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..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
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