Gast
#5174049
Moin, Ich versuche mit einem Zynqberry TE0726-03 (SoC XC7Z007SCLG225) einen CAN Bus Knoten zu entwickeln. Es soll eine bare-metal Applikation sein. Ich bin recht neu in diesem Themengebiete und in diesem Forum. Ich versuche alles wichtige aufzulisten, was für die Hilfe notwendig ist. Da der SoC in Processing System und Programable Logic aufgeteilt ist, soll die Kommunikation vom µC zum CAN-Controller im PS über den EMIO zum PL und dann auf die Pins am Zynqberry stattfinden. Sowohl Senden und Empfangen. Bis jetzt habe ich ein HW Design mit dem IP Integrator in Xilinx Vivado entwickelt. Welches aus dem PS besteht und darin den CAN_0 aktiviert, Die Ausgänge habe ich dann external gemacht. Danach wurde das Design in HDL gewrappt, synth., rtl analyse, I/0 ausgewählt und schlussendlich der Bitstream generiert. Die HW wurde im HW Manager connected. Danach wurde der Bitstream auf die HW exportiert und das SDK geöffnet. Im SDK habe ich eine fsbl applikation erstellt. Aus der Xilinx Bibliothek habe ich die Source Datei xcanps_polled_example.c in ein standalone Projekt eingebettet. LOOPBACK Modus wurde auf Normal Modus umgeändert. Danach habe ich ein bootimage als mcs Datei angelegt und mit der Reihenfolge die Dateien angelegt, fsbl.elf(bootloader), bitstream(datafile), can-projekt(datafile). Das Bootimage habe ich auf den QSPI geflashed und danach den FPGA programmiert ( grüne LED ging dann aus :/). Nachdem habe ich das can_project gerunned und da beginnen die Probleme. Mit dem Oszilloskop kann ich nicht mal ordentliche Signale empfangen. Meine Frage jetzt erstmal, hab ich Schritte vergessen? Ist was im Code falsch? Ich kann nicht mal debuggen aber bei run-> Launch on HW(gdb) läuft es aber ich kriege keine CAN Signale am Oszilloskop? Ich bedanke mich schon im Voraus. mfg Mert