Hallo zusammen, ich möchte einen AT90CAN128 als LIN Master verwenden. Der Master soll dabei - um eine Nachricht übertragen zu können - den Header und das Datenfeld senden. Die verwendete Controller-Hardware ist das DVK90CAN. Als Slaveknoten verwende ich einen NI USB-8476, um die gesendeten Botschaften am PC anzeigen zu lassen. Die Software habe ich aus dem zur AppNote 322 gehörenden Source-Code: http://atmel.com/dyn/general/advanced_search_results.asp?device=1&tools=1&faqs=1&datasheets=1&appNotes=1&userGuides=1&software=1&press=1&articles=1&flyers=1&checkAll=1&checkAllReference=1&target=AVR322 Das AVR-Studio compiliert zwar den Code, aber ich kann keine Botschaften versenden. Ich würde erwarten, dass ich zumindets irgendetwas am Slave-Knoten empfange, es tut sich aber nichts! Hier die Main.c.: #include "config.h" #include "lib_mcu/lin_uart/master_lin.h" #include "lib_mcu/lin_uart/lin_lib.h" //#include "inavr.h" U8 Buf_SET_SLAVE [4]; U8 Buf_GET_SLAVE [4]; int main (void) { t_frame MESS_SET_SLAVE; t_frame MESS_GET_SLAVE; U8 number_of_frame ; //no system clock divider CLKPR = 0x80; CLKPR = 0x00; //SET SLAVE FRAME MESS_SET_SLAVE.frame_id = 0x00 ; MESS_SET_SLAVE.frame_size = 4 ; MESS_SET_SLAVE.frame_type = 0 ; MESS_SET_SLAVE.frame_delay = 500 ; MESS_SET_SLAVE.frame_data = Buf_SET_SLAVE; //GET SLAVE 0 FRAME DEFINITION MESS_GET_SLAVE.frame_id = 0x01; MESS_GET_SLAVE.frame_size = 4; MESS_GET_SLAVE.frame_type = 1; MESS_GET_SLAVE.frame_data = Buf_GET_SLAVE; MESS_GET_SLAVE.frame_delay = 500 ; number_of_frame = 2; my_schedule.frame_message[0] = MESS_SET_SLAVE; my_schedule.frame_message[1] = MESS_GET_SLAVE; my_schedule.number_of_frame = number_of_frame; CONFIG_IO_PORTS(); // Initialise LIN Controller lin_init();// Performs Initialisation of LIN Software Driver SREG |= 0x80; /* Interrupts globally enabled */ while(1) { if(_TEST_PUSH1()){ Buf_SET_SLAVE[0] = 0x01; } else{ Buf_SET_SLAVE[0] = 0x00; } if(Buf_GET_SLAVE[0] == 0x00) RESET_GREEN_LED(); else SET_GREEN_LED(); }//while(1) }//main Da ich den LIN-Bus nicht zum laufen bringe, wäre es toll, wenn mir jemand einen Tipp geben könnte, der Erfahrung mit dem Code hat. Viele Grüße, Felix
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.