Board selbst layouten
Verfasst: Mo Jul 22, 2019 12:20 pm
Hallo,
die Stromlaufpläne zu den verschiedenen MS-Board gibt es ja frei im Internet, dennoch lese ich immer wieder von Lizenzproblemen. Wenn ich nur für eigene Zwecke ein Board entwerfe, sollten doch aber keine Probleme auftreten, oder? Ich komme aus dem Bereich der Elektrotechnik, das Layout selbst sollte kein Problem sein. Ich habe eher ein paar Probleme direkt im Bezug auf die MS-Hardware, beispielsweise die verschiedenen Pinbelegungen der MC9S12 Prozessoren untereinander. Die Microsquirt Module ist hierbei anders als das V3.57 Mainboard mit MS2 Daughterboard - ich wollte aber sowieso eher in die Richtung Microsquirt Module layouten, auf meine Bedürfnisse angepasst, heißt konkret:
- nur hochohmige Düsen, also keine Stromüberwachung und -begrenzung
- 4 eigene Düsentreiber für vollsequenzielle Einspritzung
- keine internen Zündtreiber
- kein CAN-Bus
- nur VR-Sensoren (mit MAX9926 im A2-Betrieb)
- direkter Ausgang für MAF oder Barokorrektur auf AD6-1
- PWM für Leerlaufsteller mit integrierter Endstufe
Das Problem sehe ich darin, dass ich nicht drum herum kommen werde, den Code umzuschreiben und hier fängt der Ärger an. Ich hatte im Studium zwar 2 Semester DSP-Programmierung in C, aber nicht wirklich Erfahrungen mit dem Thema. Gibt es fertige Firmwares, die auch frei verfügbar sind, bei denen die Belegung von 4 Injektoren schon implementiert ist? Dann könnte ich das Layout nach der Belegung in der Firmware richten.
Der Stromlaufplan selbst wirft einige Fragen auf. Die Pins PA0, PE1, PT6 und PT7 stehen an Headern zur freien Verfügung bereit, ebenso IACenable, parallele Injektorausgänge und "alt_cam", wobei IACenable ja nur ein Statussignal für einen externen Stepperdriver ist. Laut Prozessordoku bietet keiner der freien Ports eine PWM-Funktion, also kämen diese Ausgänge nicht als Inj3 und Inj4 in Frage. Die UMC1 bietet für 2 extra Injektoren PW2 und PW4 an, welche im Falle des Microsquirt Module schon mit Nockenwelleneingang und Zündausgang belegt sind. Es lassen sich im Tunerstudio ja auch nur "additional drivers", ohne die Möglichkeit, direkt die Prozessorausgänge zu wählen.
Die nächste Frage betrifft das BDM-Programmieren. Ich kenne nur JTAG und SPI, wobei der MC9S12 ja auch SPI unterstützt. Aber wie funktioniert die BDM-Programmierung? Ich werfe ja quasi nur den Bootloader per BDM auf den Prozessor, die Anwenderfirmware mache ich per Tunerstudio mit Bootload-Pin auf Masse (richtig?). Ein BDM-Interface bekommt man als Bausatz bei No Limits Motorsport, aber woher den Bootloader?
Ich freue mich auf konstruktive Anregungen und Diskussionen!
die Stromlaufpläne zu den verschiedenen MS-Board gibt es ja frei im Internet, dennoch lese ich immer wieder von Lizenzproblemen. Wenn ich nur für eigene Zwecke ein Board entwerfe, sollten doch aber keine Probleme auftreten, oder? Ich komme aus dem Bereich der Elektrotechnik, das Layout selbst sollte kein Problem sein. Ich habe eher ein paar Probleme direkt im Bezug auf die MS-Hardware, beispielsweise die verschiedenen Pinbelegungen der MC9S12 Prozessoren untereinander. Die Microsquirt Module ist hierbei anders als das V3.57 Mainboard mit MS2 Daughterboard - ich wollte aber sowieso eher in die Richtung Microsquirt Module layouten, auf meine Bedürfnisse angepasst, heißt konkret:
- nur hochohmige Düsen, also keine Stromüberwachung und -begrenzung
- 4 eigene Düsentreiber für vollsequenzielle Einspritzung
- keine internen Zündtreiber
- kein CAN-Bus
- nur VR-Sensoren (mit MAX9926 im A2-Betrieb)
- direkter Ausgang für MAF oder Barokorrektur auf AD6-1
- PWM für Leerlaufsteller mit integrierter Endstufe
Das Problem sehe ich darin, dass ich nicht drum herum kommen werde, den Code umzuschreiben und hier fängt der Ärger an. Ich hatte im Studium zwar 2 Semester DSP-Programmierung in C, aber nicht wirklich Erfahrungen mit dem Thema. Gibt es fertige Firmwares, die auch frei verfügbar sind, bei denen die Belegung von 4 Injektoren schon implementiert ist? Dann könnte ich das Layout nach der Belegung in der Firmware richten.
Der Stromlaufplan selbst wirft einige Fragen auf. Die Pins PA0, PE1, PT6 und PT7 stehen an Headern zur freien Verfügung bereit, ebenso IACenable, parallele Injektorausgänge und "alt_cam", wobei IACenable ja nur ein Statussignal für einen externen Stepperdriver ist. Laut Prozessordoku bietet keiner der freien Ports eine PWM-Funktion, also kämen diese Ausgänge nicht als Inj3 und Inj4 in Frage. Die UMC1 bietet für 2 extra Injektoren PW2 und PW4 an, welche im Falle des Microsquirt Module schon mit Nockenwelleneingang und Zündausgang belegt sind. Es lassen sich im Tunerstudio ja auch nur "additional drivers", ohne die Möglichkeit, direkt die Prozessorausgänge zu wählen.
Die nächste Frage betrifft das BDM-Programmieren. Ich kenne nur JTAG und SPI, wobei der MC9S12 ja auch SPI unterstützt. Aber wie funktioniert die BDM-Programmierung? Ich werfe ja quasi nur den Bootloader per BDM auf den Prozessor, die Anwenderfirmware mache ich per Tunerstudio mit Bootload-Pin auf Masse (richtig?). Ein BDM-Interface bekommt man als Bausatz bei No Limits Motorsport, aber woher den Bootloader?
Ich freue mich auf konstruktive Anregungen und Diskussionen!