Ich habe vor kurzem ein LCD an dem PCF8577 hängen gahabt. Jetzt möchte
ich 2 dranhängen. Das muss doch möglich sein, da der IC 2 Backplanes hat
und dazu noch ein 64Segment Treiber ist.
Problem ist nur das wenn ich die LCD so ansteuere beide immer leuchten:
1 | #include <avr/io.h>
|
2 | #include <avr/eeprom.h>
|
3 | #include "i2cmaster.h"
|
4 | #ifndef F_CPU
|
5 | #define F_CPU 8000000UL
|
6 | #warning F_CPU
|
7 | #endif
|
8 | #include <util/delay.h>
|
9 |
|
10 | #define LCD 0b01110100
|
11 |
|
12 |
|
13 | int main(void)
|
14 | {
|
15 |
|
16 | i2c_init();
|
17 | for(uint8_t i = 0; i < 4; i++)
|
18 | {
|
19 | i2c_start_wait(LCD| I2C_WRITE);
|
20 | i2c_write(i*2 + 0x20 + 128); // Segment + Subadress + DuplexMode
|
21 | i2c_write(0xFF);
|
22 | i2c_stop();
|
23 | }
|
24 | while(1)
|
25 | asm volatile("nop");
|
26 | }
|
BP 1 und 2 sind nicht verbunden.
Ich möchte bei dem Code aber das nur dsa erste leuchtet. Wenn ich + 1
einfüge nur das 2..