Jörg Sturm
/
TIM6
direct Hardware access
Revision 1:17722afc5909, committed 2020-04-24
- Comitter:
- JoergSturm
- Date:
- Fri Apr 24 14:13:21 2020 +0000
- Parent:
- 0:45170c77adc7
- Commit message:
- TIM6 mit NVIC und Interrupt
Changed in this revision
diff -r 45170c77adc7 -r 17722afc5909 main.cpp --- a/main.cpp Sun Mar 01 10:08:57 2020 +0000 +++ b/main.cpp Fri Apr 24 14:13:21 2020 +0000 @@ -1,13 +1,18 @@ #include "mbed.h" -//#include "cmsis_nvic.h" + DigitalOut myled(PC_0); -static void TIM6_Init(void); -static void NVIC_Init(void); +DigitalOut PC1(PC_1); -void TIM6_IRQHandler(void); +void EX1IRQhandler(void) +{ + //PC1=!PC1; + GPIOC->ODR=~GPIOC->ODR; + EXTI->PR=0b10; + HAL_NVIC_ClearPendingIRQ(EXTI1_IRQn); +} -TIM_HandleTypeDef htim6; +//TIM_HandleTypeDef htim6; void TIM6_IRQHandler(void) { myled=!myled; @@ -15,12 +20,22 @@ HAL_NVIC_ClearPendingIRQ(TIM6_IRQn); } +void EX1init(void) +{ +RCC->AHBENR|=0b111; +GPIOA->PUPDR|=0b1000; +EXTI->IMR|=0b10; +EXTI->RTSR|=0b10; +} + static void NVIC_Init(void) { /* TIM6_IRQn interrupt configuration */ - HAL_NVIC_SetPriority(TIM6_IRQn, 0, 0); + //HAL_NVIC_SetPriority(TIM6_IRQn, 0, 0); NVIC_SetVector(TIM6_IRQn, (uint32_t)&TIM6_IRQHandler); HAL_NVIC_EnableIRQ(TIM6_IRQn); + NVIC_SetVector(EXTI1_IRQn, (uint32_t)&EX1IRQhandler); + HAL_NVIC_EnableIRQ(EXTI1_IRQn); } /* TIM6 init function */ @@ -50,6 +65,7 @@ int main() { TIM6_Init(); + EX1init(); NVIC_Init(); while(1) { /*
diff -r 45170c77adc7 -r 17722afc5909 mbed-os.lib --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed-os.lib Fri Apr 24 14:13:21 2020 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/teams/EL4121-Embedded-System/code/mbed-os/#b74591d5ab33
diff -r 45170c77adc7 -r 17722afc5909 mbed.bld --- a/mbed.bld Sun Mar 01 10:08:57 2020 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -https://os.mbed.com/users/mbed_official/code/mbed/builds/65be27845400 \ No newline at end of file