Hallo Zusammen, ich versuche gerade eine Kommunikation zwischen zwei RFM70-Modulen aufzubauen. Zu allem Übel bin ich gerade von Bascom auf C umgestiegen, was die Sache nicht nennenswert leichter macht. Ich habe den Beispielcode und die Library von http://projects.web4clans.com/?p=90 genommen. Dieser Code ist für den Atmega32 konzipiert. Ich arbeite mit einem Atmega168. Mein erstes Problem ist folgendes: Im Beispielcode steht
1 | #include <inttypes.h> |
2 | #include <avr/io.h> |
3 | #include <avr/interrupt.h> |
4 | #include <util/delay.h> |
5 | |
6 | #include "uart.h" |
7 | #include "rfm70.h" |
8 | |
9 | #define UART_BAUD_RATE 9600
|
10 | |
11 | int main() |
12 | {
|
13 | uint8_t buffer[32]; |
14 | |
15 | sei(); |
16 | uart_init( UART_BAUD_SELECT(UART_BAUD_RATE,F_CPU) ); |
17 | |
18 | DDRA |= (1<<PA4); |
19 | _delay_ms(1000); |
20 | uart_puts("System Ready\n"); |
21 | Begin(); |
22 | |
23 | setMode(1); |
24 | setChannel(8); |
25 | |
26 | while (1) |
27 | {
|
28 | if (receivePayload(buffer)) |
29 | {
|
30 | uart_puts((char*)buffer); |
31 | uart_puts("\n"); |
32 | }
|
33 | }
|
34 | }
|
Mit dieser Zeile
1 | DDRA |= (1<<PA4); |
habe ich ein Problem, der Atmega168 hat ja keinen PortA und ich kann die Aufgabe hier noch nicht ganz nachvollziehen. Welchen Port müsste ich hier für den Atmega168 wählen? In der Library rfm70.c taucht dieser Port auch auf. Es ist jedoch keine Funktion dafür näher beschrieben. Freundliche Grüße, Christian