Hallo Leute,
ich versuche schon seit längerer Zeit, das EA DOG-M 163 zum laufen zu
bringen, aber es will einfach nicht initialisieren.
Mit 5V läuft es schon, aber mit 3.3V klappt es nicht.
Ich benutze eine leicht abgewandelte Version der LCD lib, die hier im
tutorial vorgestellt wird.
Die 5V init ist auch aus einem Beitrag und sieht folgendermaßen aus:
1 | #define OPCODE_CLEAR_DISPLAY 0b00000001
|
2 | #define OPCODE_FUNCTION_SET_INIT_0 0b00110011
|
3 | #define OPCODE_FUNCTION_SET_INIT_1 0b00110010
|
4 | #define OPCODE_FUNCTION_SET_INIT_2 0b00101001
|
5 | #define OPCODE_INSTRUCTION_SET_0 0b00101000
|
6 | #define OPCODE_INSTRUCTION_SET_1 0b00101001
|
7 | #define OPCODE_BIAS_SET 0b00010101
|
8 | #define OPCODE_POWER_CONTROL 0b01010000
|
9 | #define OPCODE_FOLLOWER_CONTROL 0b01101100
|
10 | #define OPCODE_CONTRAST_SET 0b01111111
|
11 | #define OPCODE_DISPLAY_ON 0b00001111
|
12 | #define OPCODE_ENTRY_MODE 0b00000110
|
13 |
|
14 |
|
15 | lcd_command(OPCODE_FUNCTION_SET_INIT_0);
|
16 | lcd_command(OPCODE_FUNCTION_SET_INIT_1);
|
17 | lcd_command(OPCODE_FUNCTION_SET_INIT_2);
|
18 |
|
19 | lcd_command(OPCODE_BIAS_SET);
|
20 | lcd_command(OPCODE_POWER_CONTROL);
|
21 | lcd_command(OPCODE_FOLLOWER_CONTROL);
|
22 | lcd_command(OPCODE_CONTRAST_SET);
|
23 | lcd_command(OPCODE_INSTRUCTION_SET_0);
|
24 | lcd_command(OPCODE_DISPLAY_ON);
|
25 | lcd_command(OPCODE_CLEAR_DISPLAY);
|
26 | lcd_command(OPCODE_ENTRY_MODE);
|
für 5V habe ich folgendes geändert:
#define OPCODE_BIAS_SET 0b00011101 //5V: 0b00010101
#define OPCODE_POWER_CONTROL 0b01010100 //5V: 0b01010000
#define OPCODE_FOLLOWER_CONTROL 0b01101111 //5V war: 0b01101100
Und natürlich Kondensatoren drangemacht.
Trotzdem geht es nicht.
Sieht jemand einen fehler?