diff options
| author | sowgro <tpoke.ferrari@gmail.com> | 2025-10-28 15:19:02 -0400 |
|---|---|---|
| committer | sowgro <tpoke.ferrari@gmail.com> | 2025-10-28 15:19:02 -0400 |
| commit | 898fce80c309b06d829cb692613a4353d44b2667 (patch) | |
| tree | 5abfa00e9b0925c1ca19068c7b378dc6da9c10f4 /project/Core | |
| parent | 37b70dc53cd56d95d7dc5194dd6f1b94731918fb (diff) | |
| download | 340-repo-Sowgro-898fce80c309b06d829cb692613a4353d44b2667.tar.gz 340-repo-Sowgro-898fce80c309b06d829cb692613a4353d44b2667.tar.bz2 340-repo-Sowgro-898fce80c309b06d829cb692613a4353d44b2667.zip | |
push activity10
Diffstat (limited to 'project/Core')
| -rw-r--r-- | project/Core/Inc/Activities/activity10.h | 13 | ||||
| -rw-r--r-- | project/Core/Src/Activties/activity10.c | 27 | ||||
| -rw-r--r-- | project/Core/Src/System/systick.c | 3 | ||||
| -rw-r--r-- | project/Core/Src/main.c | 4 |
4 files changed, 44 insertions, 3 deletions
diff --git a/project/Core/Inc/Activities/activity10.h b/project/Core/Inc/Activities/activity10.h new file mode 100644 index 0000000..ccc7086 --- /dev/null +++ b/project/Core/Inc/Activities/activity10.h @@ -0,0 +1,13 @@ +/* + * activity10.h + * + * Created on: Oct 28, 2025 + * Author: sowgro + */ + +#ifndef INC_ACTIVITIES_ACTIVITY10_H_ +#define INC_ACTIVITIES_ACTIVITY10_H_ + +void activity10_run(); + +#endif /* INC_ACTIVITIES_ACTIVITY10_H_ */ diff --git a/project/Core/Src/Activties/activity10.c b/project/Core/Src/Activties/activity10.c new file mode 100644 index 0000000..78261ff --- /dev/null +++ b/project/Core/Src/Activties/activity10.c @@ -0,0 +1,27 @@ +/* + * activity10.c + * + * Created on: Oct 28, 2025 + * Author: sowgro + */ +// create a clock that prints once per second using interrupts +// configure systick handler for interrupts +// write interrupt handler +// print every second + +#include "systick.h" +#include <stdio.h> + +void activity10_run() { + init_systick(); +} + +void SysTick_Handler() { + static int i = 0; + i++; + + if (!(i & 1023)) { + printf("%d\r\n", i>>10); + } + +} diff --git a/project/Core/Src/System/systick.c b/project/Core/Src/System/systick.c index a9e38c7..ac3a731 100644 --- a/project/Core/Src/System/systick.c +++ b/project/Core/Src/System/systick.c @@ -18,7 +18,8 @@ void init_systick() s->CSR &= ~1; s->CSR |= 1<<2; - s->RVR = 8000000; // 100 ms + s->CSR |= 1<<1; // enable interrupt + s->RVR = 78124; // 100 ms s->CSR |= 1; } diff --git a/project/Core/Src/main.c b/project/Core/Src/main.c index bb18077..9aac659 100644 --- a/project/Core/Src/main.c +++ b/project/Core/Src/main.c @@ -8,7 +8,7 @@ #include "LED.h" #include "UART.h" #include "demo.h" -#include "activity7.h" +#include "activity10.h" #include <stdio.h> #include "hw4.h" #include "project.h" @@ -24,6 +24,6 @@ int main(void){ printf("\n\n\n\n\n\n\n\n\r"); // run_demo(); // project_run(); - activity9_run(); + activity10_run(); } |
