Hallo zusammen,
ich versuche, einen m168 unter Ubuntu zu programmieren mit Eclipse, was
auch soweit funktioniert.
Allerdings bekomme ich keine serielle Ausgabe über UART hin.
Der Code wird fehler- und warnungsfrei übersetzt, ich habe einen MAX3232
an /dev/ttyS0. Wenn ich RX und TX verbinde (loopback) dann kann ich vom
PC z.B. eine Datei senden und sehe die LEDs auf dem MAX-Adapter blinken.
Die LED an PB0 leuchtet auch, daher vermute ich mal, dass der m168 bis
zu der Stelle kommt, allerdings hätte ich auch an /dev/ttyS0 eine
Ausgabe erwartet.
Der m168 läuft auf internen 8 Mhz und ist mit 10kR VCC an Reset sowie
einem 100nF Kerko zwischen VCC und GND direkt an den Pins beschaltet.
Weiterhin hängt noch ein OLED an I2C was ich programmieren möchte, aber
das ist dann die nächste Geschichte.
Was habe ich übersehen oder falsch gemacht?
Hier der Code:
1 | int main(void)
|
2 | {
|
3 | _delay_ms(500);
|
4 | DDRB |= (1 << PB0); //LED an PB0
|
5 |
|
6 | uart_init(9600);
|
7 | sei();
|
8 |
|
9 | uart_puts("**** Start ****\n");
|
10 | PORTB |= (1 << PB0);
|
11 |
|
12 | i2c_init();
|
13 | uart_puts("Nach i2c_init \n");
|
14 | [...]
|
15 | }
|