Hallo, wo, bzw. in welcher Datei werden bei IAR die Interrupts (mit Name, Adresse,...) festgelegt? µC: STM32F103C8T6 Grüße
In der Startup Datei. startup_stm32f103xx.s zum Beispiel.. Da steht keine Adresse sondern ein Offset zum Start der Vector Tabelle
Peter schrieb: > In der Startup Datei. > startup_stm32f103xx.s zum Beispiel.. > > Da steht keine Adresse sondern ein Offset zum Start der Vector Tabelle Ich würde mir diese Tabelle gerne selber schreiben (bitte nicht nörgeln wieso, und dass die vorgefertigten Libs ja sowieso besser sind...) Wie kann ich das machen?
Ist eine Blöde Idee gewisse Dinge solltest du 1 zu 1 übernehmen da iar
einige Init Routinen nutzt und vor der Main aufruft.
; Cortex-M version
;
MODULE ?cstartup
;; Forward declaration of sections.
SECTION CSTACK:DATA:NOROOT(3)
SECTION .intvec:CODE:NOROOT(2)
EXTERN __iar_program_start
EXTERN SystemInit
PUBLIC __vector_table
DATA
__vector_table
DCD sfe(CSTACK)
DCD Reset_Handler ; Reset Handler
DCD NMI_Handler ; NMI Handler
DCD HardFault_Handler ; Hard Fault Handler
DCD MemManage_Handler ; MPU Fault Handler
DCD BusFault_Handler ; Bus Fault Handler
DCD UsageFault_Handler ; Usage Fault Handler
DCD 0 ; Reserved
DCD 0 ; Reserved
DCD 0 ; Reserved
DCD 0 ; Reserved
DCD SVC_Handler ; SVCall Handler
DCD DebugMon_Handler ; Debug Monitor Handler
DCD 0 ; Reserved
DCD PendSV_Handler ; PendSV Handler
DCD SysTick_Handler ; SysTick Handler
; External Interrupts
DCD WWDG_IRQHandler ; Window WatchDog
DCD PVD_IRQHandler ; PVD through EXTI
Line detection
DCD TAMP_STAMP_IRQHandler ; Tamper and
TimeStamps through the EXTI line
DCD RTC_WKUP_IRQHandler ; RTC Wakeup through
the EXTI line
DCD FLASH_IRQHandler ; FLASH
DCD RCC_IRQHandler ; RCC
DCD EXTI0_IRQHandler ; EXTI Line0
DCD EXTI1_IRQHandler ; EXTI Line1
DCD EXTI2_IRQHandler ; EXTI Line2
DCD EXTI3_IRQHandler ; EXTI Line3
Das sind die ersten Zeilen schau dir mal die Datei an vielleicht wird es
dir dann klarer
Peter schrieb: > Das sind die ersten Zeilen schau dir mal die Datei an vielleicht wird es > dir dann klarer Hab ich schon, aber die ganzen Codewörter, die dort drin stehen, sagen mir nichts. Kann mir das jemand erklären?
Google doch einfach jedes Wort. Anders wirst du auf keine Lösung kommen. Fang z.b. mit "EXTI0_IRQHandler" an.
Leopold N. schrieb: > Ich würde mir diese Tabelle gerne selber schreiben (bitte nicht nörgeln > wieso, und dass die vorgefertigten Libs ja sowieso besser sind...) > > Wie kann ich das machen? Keine Ahnung von der Materie aber alles selber machen. WTF
Blume schrieb: > Leopold N. schrieb: >> Ich würde mir diese Tabelle gerne selber schreiben (bitte nicht nörgeln >> wieso, und dass die vorgefertigten Libs ja sowieso besser sind...) >> >> Wie kann ich das machen? > > Keine Ahnung von der Materie aber alles selber machen. > > WTF Nennt sich Lernprozess... Aber danke für deine überaus hilfreiche Antwort.
Leopold N. schrieb: > Nennt sich Lernprozess... Ne, das nennt sich Dummfrech. Wirklich Lernen würde bedeuten du nutzt erst mal das was bereits da ist und verstehst das Vorhandene zu 100%. Dann kannst du dich dran machen das zu verbessern und dein eigenes Ding zu machen.
Cyblord -. schrieb: > Wirklich Lernen würde bedeuten du nutzt erst mal das was bereits da ist > und verstehst das Vorhandene zu 100%. Das kann man von den heutigen Makern doch nicht erwarten. Da wird einfach etwas kopiert und wenn das nicht funktioniert wird halt die nächste Library probiert, vielleicht geht das ja besser.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.