??? 04/27/08 15:46 Read: times |
#154042 - Problem solved Responding to: ???'s previous message |
Hi Michael,
Thanks for your tip. Tried and it works fine now. And to answer the other queries raised : - The I/O port pins are 5V tolerant. - And why did I try inputting into a Push-Pull ? There is this note on the Silabs F020 data sheet : "Note that the state of a Port I/O pin can always be read from its associated Data register regardless of whether that pin has been assigned to a digital peripheral or behaves as GPIO." I got mislead by the above. And finally the code that worked : void ready(void) { P0 = 0xff ; // Set port as input P0MDOUT = 0x7F; // Switch P0.7 alone to Open Drain LCD_RS = 0; LCD_R_W = 1; while (LCD_BUSY) { LCD_ENB = 0; LCD_ENB = 1; } P0MDOUT = 0xFF; // Revert back to P0 as Push Pull } Raghu |
Topic | Author | Date |
Silabs C8051F020 and LCD busy bit | 01/01/70 00:00 | |
of course, it don't | 01/01/70 00:00 | |
Pushpull... | 01/01/70 00:00 | |
Problem solved | 01/01/70 00:00 | |
Misinterpreting | 01/01/70 00:00 | |
Another one on the Silabs IDE.. | 01/01/70 00:00 | |
SiLabs to Keil | 01/01/70 00:00 | |
post this in the SILabs forum | 01/01/70 00:00 | |
editor is not keil | 01/01/70 00:00 | |
never used it, but .... | 01/01/70 00:00 | |
ASS U ME![]() | 01/01/70 00:00 | |
my very reason for not doing the push-pull | 01/01/70 00:00 |