direct Hardware access

Dependencies:   mbed-os

Files at this revision

API Documentation at this revision

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

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed-os.lib Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show diff for this revision Revisions of this file
--- 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) {
         /*
--- /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
--- 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