Gast
#3115441
Moin zusammen, ich benutze in einem Gerät mehrere PIC18F2680 die per CAN-Bus verbunden sind. Beim Einschalten lesen die Controller über den ADC einen Spannungswert der wiederrum ihre jeweilige CAN-Bus Adresse definiert. Das funktioniert in etwa so: V_adc: 0 - 1/8 V_ref --> Adresse 0 1/8 V_ref - 2/8 V_ref --> Adresse 1 ... 7/8 V_ref - V_ref --> Adresse 7 (V_ref = Referenzspannung für ADC) Auf den Adresswert wird noch ein offset von 30 drauf addiert. Somit ergibt sich ein Adressbereich von 30...37 Einer der Kandidaten macht leider Probleme und zwar meldet er sich nach dem Einschalten mit Adresse 21, was eigentlich überhaupt nicht möglich ist, selbst wenn der ADC Value völlig falsch wäre. Der Fehler tritt nur beim Einschalten auf. Wenn ich den Controller dann nochmal im eingeschalteten Zustand resete bekommt er seine richtige Adresse. Ich halte den Controller nach dem Einschalten extra lange im Reset bevor ich ihn starten lasse um sicherzustellen, dass alle Spannung stabil sind bevor der Controller hochfährt. Die Software an sich funktioniert an allen anderen Controllern. Irgendjemand ein Idee, ich bin ein wenig ratlos Gruß Christian