Hallo Com,
ich habe mir dieses Display von Conrad gekauft und wollte darauf(über den I2C Bus) etwas schreiben.
Display:Ich hab dieses Programm geschrieben:HTML-Code:http://www.conrad.de/ce/de/product/191621/DISPLAY-RP5RP6-BLAU-MIT-BACKLIGHT/2420181&ref=listLeider hat das ganze nicht funktioniert.Code:#include "RP6RobotBaseLib.h" #include "RP6I2CmasterTWI.h" void I2C_transmissionError(uint8_t errorState) { writeString_P("\nI2C ERROR - TWI STATE: 0x"); writeInteger(errorState, HEX); writeChar('\n'); } #define PCF8574_LCD_ADR 0x70 void task_meinProg(void) { static uint8_t writeString_P = 3; if(writeString_P == 3) I2CTWI_transmitByte(PCF8574_LCD_ADR, (writeString_P) ); writeString_P("Hallo,ich bin Robby!\n"); } int main(void) { initRobotBase(); I2CTWI_initMaster(100); I2CTWI_setTransmissionErrorHandler(I2C_transmissionError); setLEDs(0b111111); mSleep(500); setLEDs(0b000000); powerON(); while(true) { task_I2CTWI(); task_RP6System(); } return 0; }
Also habe ich nun ein paar Fragen:
Wo muss ich das Display genau anschließen( XBUS1,XBUS2,USRBUS2,USRBUS1)?
Woher weiß ich welche Adresse ich ansteuern muss?
I2CTWI_transmit2Bytes(10, 2, 128 ) Das stand in der Anleitung(10 ist die Adresse und der Rest sind Bytes)Wie mache ich daraus den Befehl,dass das Display "Hallo,ich bin Robby!" schreibt?
Dieser Teil bereitet mir die meisten Probleme.Ich muss writeString_P definieren,das sagte mir jedenfalls Porgrammers Notepad bei den Fehlern.Code:void task_meinProg(void) { static uint8_t writeString_P = 3; if(writeString_P == 3) I2CTWI_transmitByte(PCF8574_LCD_ADR, (writeString_P) ); writeString_P("Hallo,ich bin Robby!\n"); }
ich habe dann wie in einem Beispielprogramm eifnach mal die Zahl 3 eingesetzt,wie löse ich das ganze jetzt?
mfG








Zitieren

Lesezeichen