S1D15G10 Nokia LCD

This is the first color, graphic LCD display I worked with. I made some assumptions when I first began working with it. From previously working with TTL logic in college, I assumed CS and RESET could just be tied high for simplicity. It wont work if you do that. They must be wired to the micro-controller to get reliable operation from the LCD. Tog

gling them is necessary for normal operation. After wiring everything up, I desperately wanted some sign of life from the LCD, to know if it was wired correctly. Figuring out how to use the LCD without reading the datasheet is impossible. You could send random data to the display for a thousand years and never see any indication that it`s working. Towards the end of the data sheet are application notes and a nice walk through for configuring the display. Usually, after setting the contrast for it, and writing some data to the display`s ram, you`ll see it do something. Otherwise, simply powering the LCD and back-light (necessary) will give you a blue screen, and maybe just some sporadic lines from noise. Speaking of noise, this project has had the worst problems of any I`ve ever done. It`s probably been resolved by now with newer displays. Aside from using an external voltage booster for the backlight, an insulated foil ground plane could`ve been sandwiched between the display and breakout board. Scotch tape on one side of aluminum foil, the side against the board, and connect the foil to ground. void NokiaLCD::draw_text_line(word fcolor, word bcolor, byte x, byte y, char c) { lcd_set_box(x, y, x, y+7); sendCMD(RAMWR); char i; for(i=0;i<4;i+) { switch( (0x03<<(i*2) & c) >> (i*2) ){ case 0x00: sendData(bcolor >> 4) & 0xFF); sendData(bcolor & 0xF) << 4) | (bcolor >> 8) & 0xF); sendData(bcolor & 0xFF); break; case 0x01:...

Leave Comment

characters left:

New Circuits