In this article, I would like discuss about using
LPC82x MCU with MCUXpresso IDE.
I will use
LPCXpresso824-MAX Board as a hardware platform.
Showing posts with label soft-timer. Show all posts
Showing posts with label soft-timer. Show all posts
Wednesday, March 2, 2022
Monday, July 5, 2021
Software timers and Ring Buffered UART Com for Kinetis K82 MCU
In this article, I would like discuss about using
Kinetis K82 MCU with MCUXpresso IDE.
I will use
FRDM-K82F development board as a hardware platform.
Setting up environment for K82 development is discussed in previous article at the following link.
http://cool-emerald.blogspot.com/2020/01/getting-started-with-frdm-k82f.html
http://cool-emerald.blogspot.com/2020/01/getting-started-with-frdm-k82f.html
Thursday, June 3, 2010
Soft-Timer Module for 8051 Microcontroller
Almost every embedded system uses timers in their firmware. 8051 microcontroller has only two or three hardware timers, and generally, it is not enough to use hardware for all the timers your system needs to have.
Furthermore, not all timers need to have hard timing requirement. For example, blinking an LED indicator every second is accurate enough if the timing error is less than a few millisecond.
That is why, I normally use software to implement all the timers that have soft timing requirement. Here, I would like to share a soft-timer module that I developed for 8051 microcontroller but it can easily be modified for other microcontrollers as well.
The source code for the example can be seen at
UART-Timer-8051 on GitHub
Write a function to be called when the timer time out. Write another function to set the timing parameters and start the timer. In my example, they are SysSBYLEDTmrTO() and SysSBYLEDInit() in System.c module.
Open TmrConfig.h and follow the 3 steps as indicated in the comment. If your compiler does not support function pointers, you can always replace with switch structure.
In the main function, initialize and poll the timer module by calling TmrInit() and TmrTask() respectively which are defined in Tmr.c module.
UART-Timer-8051 on GitHub
Using soft-timer module
You need to put the header files for soft-timer in the module you want to use them. In my example, I put all my header files into 'headers.h' file and I just need to include that file.Write a function to be called when the timer time out. Write another function to set the timing parameters and start the timer. In my example, they are SysSBYLEDTmrTO() and SysSBYLEDInit() in System.c module.
Open TmrConfig.h and follow the 3 steps as indicated in the comment. If your compiler does not support function pointers, you can always replace with switch structure.
In the main function, initialize and poll the timer module by calling TmrInit() and TmrTask() respectively which are defined in Tmr.c module.
Subscribe to:
Posts (Atom)