Super-Simple-Tasker
modern-embedded-programming-course
Super-Simple-Tasker | modern-embedded-programming-course | |
---|---|---|
3 | 4 | |
132 | 551 | |
2.3% | 5.4% | |
4.8 | 6.9 | |
2 months ago | 4 months ago | |
C | C | |
MIT License | GNU Affero General Public License v3.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Super-Simple-Tasker
-
At what point would you consider using an RTOS?
Lately I have been working with interrupt driven task frameworks on ARM Cortex-M. Basically they are using the ARM NVIC as a task scheduler. Examples for C/C++ include this one: Super Simple Tasker. For Rust there is RTIC. Both are based on similar ideas of using NVIC as scheduling engine. Very efficient resource-wise but use a somewhat different programming paradigm than traditional RTOS threads.
-
Seeking Innovative Project Suggestions
Take a look at the open-source Super-Simple Tasker project on GitHub. This project implements a preemptive RTOS/scheduler in the hardware of the ARM Cortex-M. It is related to such concepts and projects as:
-
How to deal with fast control loops in a RTOS environment?
I agree with KenaDra that such a kernel would be ideal for fast control loops and hard real-time requirements, so the OP should definitely take a look. Specifically for STM32 (ARM Cortex-M), there are some hardware implementations of such kernels that take advantage of the NVIC. An example is the SST for ARM Cortex-M. This kernel will outperform any traditional RTOS kernel on Cortex-M.
modern-embedded-programming-course
-
Many Hands Make Light Work - Let’s Learn Together
- The companion GitHub repository
-
STM32Cube IDE: how do you override the existing start-up code with a vector table defined in C code?
Hi, I'm following along in Miro Samek's embedded systems tutorial lesson #14 and hes using IAR Embedded Workbench and hes defining his own startup code in C. (see https://github.com/QuantumLeaps/modern-embedded-programming-course/blob/master/lesson-14/startup_tm4c.c)
-
ARM education beginners guide to designing embedded applications cortex M
Why don't you check out the free YouTube video course "Modern Embedded Systems Programming", which is exactly based on ARM Cortex-M. Please note that the course playlist is sorted by newest lessons first, so you might want to go back as far as you need for your starting level. The course is accompanied by a project repository on GitHub and other resources.
-
path of learning the arm cortex-m embedded c programming?
"Modern Embedded Systems Programming" leads to Dr. Miro Samek website : https://www.state-machine.com/video-course and github : https://github.com/QuantumLeaps/modern-embedded-programming-course
What are some alternatives?
lwesp - Lightweight and versatile AT parser library for ESP8266 and ESP32 devices.
FreeRTOS-rust - Rust crate for FreeRTOS
rulos - Ravenna Ultra-Low-Altitude Operating System: An embedded OS for AVR and ARM CPUs
arm-none-eabi-gcc-xpack - A binary distribution of the Arm Embedded GCC toolchain
crect - A C++, compile-time, reactive RTOS for the Stack Resource Policy based Real-Time For the Masses kernel
nuclei-sdk - Nuclei RISC-V Software Development Kit
PIF-Image-Format - Image format, tools & librares for limited embedded systems
MiROS - MiROS (Minimal Real-Time Operating System) for ARM Cortex-M
qpcpp - QP/C++ Real-Time Embedded Framework/RTOS for embedded systems based on active objects (actors) and hierarchical state machines
qpc - QP/C Real-Time Embedded Framework/RTOS for embedded systems based on active objects (actors) and hierarchical state machines
nanopb - Protocol Buffers with small code size
Micro-XRCE-DDS-Client - Micro XRCE-DDS Client repository. Looking for commercial support? Contact [email protected]