diff options
Diffstat (limited to 'FreeRTOS-Plus/Test/CMock/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.c')
-rw-r--r-- | FreeRTOS-Plus/Test/CMock/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/FreeRTOS-Plus/Test/CMock/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.c b/FreeRTOS-Plus/Test/CMock/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.c new file mode 100644 index 000000000..f4ad1470f --- /dev/null +++ b/FreeRTOS-Plus/Test/CMock/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.c @@ -0,0 +1,18 @@ +#include "Types.h" +#include "UsartBaudRateRegisterCalculator.h" + +uint8 UsartModel_CalculateBaudRateRegisterSetting(uint32 masterClock, uint32 baudRate) +{ + uint32 registerSetting = ((masterClock * 10) / (baudRate * 16)); + + if ((registerSetting % 10) >= 5) + { + registerSetting = (registerSetting / 10) + 1; + } + else + { + registerSetting /= 10; + } + + return (uint8)registerSetting; +} |