Re: Can Kategorie: CC-Pro Unit & Appl.Board (von UlliS - 9.12.2015 10:34) | |
Als Antwort auf Re: Can von Norbert - 5.12.2015 6:24
| |
> > > Hi, > > > > > > Habe mir die C-Control Pro AVR32 nur wegen dem 2.ten CAN-Kanal gekauft. Will man diesen, wie im > > > Beispielprogramm CAN-Transmitter.cc,mit CAN_SetChan(1) einschalten, funktioniert es nicht. > > > Es gibt zwar inzwischen ein Beta IDE Update 2.40 mit dem dies funktioniert, aber wenn man den > > > USB-Stecker von der Unit trennt, mu� man nach jeder Unterbrechung der Spannungsversorgung 3x den > > > Startknopf drücken, um das Programm wieder zum Laufen zu bekommen, kurioserweise nur bei diesem > > > Programm und nur wenn man den 2.ten CAN-Kanal eingeschaltet hat. Dies ist natürlich sehr schlecht, > > > wenn die Unit in eine Applikation eingebaut ist. Das Programm startet einfach nach einem > > > Spannungsreset nicht richtig. Könnte man hier noch irdendwie nachbessern? > > > > > > > > > Gruss Norbert > > > > Kannst du mal ein Demo auf das nötigste reduziert (ca. 25 Zeilen)? > > > Hallo, > > Danke erst mal für die schnelle Antwort. > Hab mal das betreffende Beispielprogramm aus der Conradsammlung unten angehängt. > Sorry wegen der Länge, aber es besteht fast nur aus Kommentar. Wollte nur zeigen, da� es das > unverfälschte Original ist, nur da� mit "CAN_SetChan(1)" anstatt "CAN_SetChan(0)" etwa in der > Mitte des Programms der 2.te Kanal eingeschaltet wird. Trennt man die Unit dann vom Usb-Anschlu� > und unterbricht kurz die Spannungsversorgung mu� man 3x den Startknopf drücken. Bei überbrücktem > Starter kann man gar nicht mehr starten. > Lä�t man das Programm wie im Original mit "CAN_SetChan(0)" laufen, funktioniert alles. > > /******************************************************************************* > > Project Name: CAN_Transmitter.cprj > Required Libs's: IntFunc_lib.cc > Files: CAN_Transmitter.cbas > Writer: CCPRO-TEAM > Date: 22.08.2013 > Function: CAN Transmitter > > ------------------------------------------------------------------------------ > AVR32 Serie: > Required the C-Control PRO AVR32-Bit UNIT Conrad BN: 192573 > Applicationboard Conrad BN: 192587 > Or Mainboard Conrad BN: 192702 > > MEGA Serie: > C-Control PRO MEGA128CAN Conrad BN: 197989 > and Evaluationboard Conrad BN: 198258 > or Projectboard Conrad BN: 197313 > ------------------------------------------------------------------------------ > > Note: > ----- > > This program sends two messages to the CAN-BUS. > > The first message (MOB 0) has a 11 bit identifier > The second message (MOB 1) has a 29Bit Identifiers (Extendet) > > The "CAN_RX.cc" receives the data and displays it on 2 LED's. > CAN data and information are shows on the IDE output window. > > *******************************************************************************/ > > > /*------------------------------------------------------------------------------ > name: main > input: - > output: - > description: Send two messages over the CAN > ------------------------------------------------------------------------------*/ > Sub main() > > Dim i As Integer > > ' Data Bytes > Dim data(8) = {0,0,0,0,0,0,0,0} As Byte > > ' FIFO Buffer > Dim fifo_buf(140) As Byte > > CAN_Init(CAN_250KBPS, 10, fifo_buf) > > ' Only AVR32 > #ifdef AVR32 > CAN_SetChan(1) > #endif > > ' 11Bit Identifier > CAN_SetMOb(0, 0x432L, 0L, CAN_SEND) > > ' 29Bit Identifier > CAN_SetMOb(1, 0x12345678, 0L, CAN_SEND Or CAN_EXTID) > > > ' Endless loop > Do While(1) > > > ' Send data over CAN > ' CAN 2.0A - 11Bit Identifier > data(7) = 1 > CAN_MObSend(0, 8, data) > AbsDelay(500) > > ' CAN 2.0B - 29Bit Identifier > data(6) = 1 > CAN_MObSend(1, 8, data) > AbsDelay(500) > > '---------------------------- > > ' CAN 2.0A - 11Bit Identifier > data(7) = 0 > CAN_MObSend(0, 8, data) > AbsDelay(500) > > ' CAN 2.0B - 29Bit Identifier > data(6) = 0 > CAN_MObSend(1, 8, data) > AbsDelay(500) > > End While > > End Sub > > > /******************************************************************************* > * Info > ******************************************************************************* > * Changelog: > * - > * > ******************************************************************************* > * Bugs, feedback, questions and modifications can be posted on the > * C-Control Forum on http://www.c-control.de > * Of course you can also write us an e-mail to: webmaster@c-control.de > * We publish updates from time to time on www.c-control.de! > /******************************************************************************/ > > ' EOF > > Hallo Norbert, Ein CAN_SetChan() mu� vor einem CAN_Init() ausgeführt werden, da das CAN_SetChan() auf alle CAN Funktionen geht. Das ist gegebenenfalls auch in den Demos falsch, und ist 2013 auch nicht aufgefallen. | |
Antwort schreiben Antworten: Re: Can (von Norbert - 11.12.2015 3:24) Re: Can (von UlliS - 11.12.2015 9:19) |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum