sooo hab jetzt das jetzt mal mitn reset so getestet. tut sich leider auch nix.
mein aktueller code schaut jetzt mal so aus.
im datenblatt steht bei dem programming example das SCE (invertiert) auf LOW gehn soll. das heißt ich muss im Programm auf HIGH legen damit dann LOW am SCE anliegt oder steh ich jetzt komplett auf der Leitung??Code:#include<18F4680.h> #use delay (clock=20000000) #fuses HS, NOWDT, NOPROTECT, NOLVP #include<stdlib.h> void main (void) { //int i; setup_spi(spi_master|SPI_H_TO_L|SPI_CLK_DIV_4); output_high(PIN_D3); // Chip select //Display reset output_high(PIN_C4); // RES delay_ms(5); output_low(PIN_C4); // RES delay_ms(10); output_high(PIN_C4); // RES output_low(PIN_D2); // D/C -> Command mode spi_write(0x21); // function set: extended instruction set spi_write(0xC8); // mittlerer Kontrast spi_write(0x06); // Temp. Ausgleich spi_write(0x13); // bias 1:48 spi_write(0x20); // function set: normal instruction set spi_write(0x0C); // display control set normal mode output_high(PIN_D2); // D/C -> DIsplay mode spi_write(0xFF); spi_write(0x00); spi_write(0xFF); spi_write(0x00); spi_write(0xFF); spi_write(0x00); while(true) { } }
mfg







Zitieren

Lesezeichen