Thank you Bruce for the answer, now the pic is interrupting, but I have a problem reading the register right..
I am just sending to the pic a 9-bit char like this: 1 0000 0001Code:indirizzo: ric = RCREG While RCIF 'to be sure that the register'll be empty the next time I am going to read it ric2=RCREG Wend IF OERR = 1 Then ' If over-run, then clear it CREN = 0 ' Disable receive CREN = 1 ' Re-enable & clear over-run condition EndIF 'print the first 3 bit of the received char on three external leds PORTA.0=ric.2 PORTB.7=ric.1 PORTB.6=ric.0 Write 0+X,ric 'write the received byte in the eeprom X=X+1 Resume Enable
the 9th bit generate the interrupt, and "ric" has to be 1.
so at the end I have to read X locations of my eeprom programmed with a "01h" byte.
in the fact I have only the 40-50% of the x locations with 01, and the others has a random-like value (FF, E9, 9b, FE......).
naturally the problem is not on writing the eeprom, because the 3 external led shows that the byte is far from "01h"!!!
I can't explain why this happens, do you?
Thanks a lot
Simone.




Bookmarks