Forum: Mikrocontroller und Digitale Elektronik PIC18 mit MCC I2C-Modul(KEIN MSSP!)


von Thomas V. (Firma: Vollmar Elektronik) (bl007)


Lesenswert?

Hallo,

hat schon mal jemand unter MPLABX per MCC einen PIC18F06Q40(oder 
ähnlich) programmiert? Der setzt die Version 5.50 von MPLAB voraus.
Der PIC18F06Q40 hat kein MSSP-Modul mehr, sondern ein I²C-Modul. Wodurch 
das alles ander ist. Jetzt hatte ich den per MCC konfiguriert und so 
auch das I2C-Modul angeregt. Der generierte Code hängt sich aber auf. Im 
ersten Schritt geht er permanent in den Stop-Interrupt. Heißt, es wird 
sofort nach der ISR das PCIF-Bit gesetzt und es geht wieder in die ISR. 
Weshalb ich das Setzen des PCIE auskommentiert habe. Aber auch ohne 
funktionmiert da nichts. Die I2C-Adresse wird nicht übergeben, kein 
Start-Bit gesetzt und derlei.
Ich finde auch keine Beschreibungen zu diesem generierten Code, wo man 
mal was nachlesen könnte.

kann da irgendwer mit ein paar Tipps helfen?


Besten Dank im Voraus!

von Hans (Gast)


Lesenswert?

Dabla Errata schon begutachtet?

von Hans (Gast)


Lesenswert?


von Thomas V. (Firma: Vollmar Elektronik) (bl007)


Lesenswert?

Da steht, dass die I2CxADR0/1/2/3 Register inkorrekte Reset-Werte haben 
können. Das hat aber anscheinend wenig mit dem Nichtfunktionieren des 
MCC-Codes zu tun. Ich habe in der initialize-Funktion die drei Register 
zunächst auf die korrekten Reset-Werte gesetzt.

von Andras H. (kyrk)


Lesenswert?

"per MCC konfiguriert"
Erste Fehler schon gemacht. Erstmal Datenblatt lesen. Dann den Errata. 
Dann selber Treiber schreiben. Ist ja nur ein I2C, sollte heute so etwas 
kein Problem sein.

von Thomas V. (Firma: Vollmar Elektronik) (bl007)


Lesenswert?

Ja, wie das so ist - time is money.
Ich hatte das gerade mit einem PIC16F15325 per MCC soweit durch. Der 
aber hat nur 7kB Flash, was für die neu geforderte Funtkionalität hinten 
und vorn nicht reicht. Einen 18F06q40 kann man pinkompatibel dazu 
gestalten. Dass der nun kein MSSP mehr hat und alles völlig neu gemacht 
werdenb muß, das war eben die Falle dabei.

von Hans (Gast)


Lesenswert?

MCC ist sehr praktisch - wenn's denn auch funzt. Habe aber auch schon 
versucht, damit USB zu konfigurieren - hat überhaupt nicht funktioniert. 
Man kann ja die MCC-erzeugte .c Datei nachträglich manipulieren, 
Register und andere Bezeichnungen muss man dann wenigstens nicht mehr 
lange suchen.

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
Noch kein Account? Hier anmelden.