#include "board.h"#include <assert.h>Go to the source code of this file.
Functions | |
| void | TC_Configure (Tc *pTc, uint32_t dwChannel, uint32_t dwMode) |
| Configures a Timer Counter Channel. | |
| void | TC_Start (Tc *pTc, uint32_t dwChannel) |
| Reset and Start the TC Channel. | |
| void | TC_Stop (Tc *pTc, uint32_t dwChannel) |
| Stop TC Channel. | |
| uint32_t | TC_FindMckDivisor (uint32_t dwFreq, uint32_t dwMCk, uint32_t *dwDiv, uint32_t *dwTcClks, uint32_t dwBoardMCK) |
| Find best MCK divisor. | |
Interface for configuring and using Timer Counter (TC) peripherals.
Implementation of Timer Counter (TC).
Definition in file tc.c.
| void TC_Configure | ( | Tc * | pTc, | |
| uint32_t | dwChannel, | |||
| uint32_t | dwMode | |||
| ) |
Configures a Timer Counter Channel.
Configures a Timer Counter to operate in the given mode. Timer is stopped after configuration and must be restarted with TC_Start(). All the interrupts of the timer are also disabled.
| pTc | Pointer to a Tc instance. | |
| channel | Channel number. | |
| mode | Operating mode (TC_CMR value). |
| uint32_t TC_FindMckDivisor | ( | uint32_t | dwFreq, | |
| uint32_t | dwMCk, | |||
| uint32_t * | dwDiv, | |||
| uint32_t * | dwTcClks, | |||
| uint32_t | dwBoardMCK | |||
| ) |
Find best MCK divisor.
Finds the best MCK divisor given the timer frequency and MCK. The result is guaranteed to satisfy the following equation:
with DIV being the highest possible value.
| dwFreq | Desired timer frequency. | |
| dwMCk | Master clock frequency. | |
| dwDiv | Divisor value. | |
| dwTcClks | TCCLKS field value for divisor. | |
| dwBoardMCK | Board clock frequency. |
| void TC_Start | ( | Tc * | pTc, | |
| uint32_t | dwChannel | |||
| ) |
1.7.1