KETCube
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
ketCube_mcu.h File Reference

This file contains the KETCube MCU defs. More...

#include "ketCube_cfg.h"

Go to the source code of this file.

Data Structures

struct  ketCube_MCU_HardFaultRegs_t
 HardFault registers should be dumped to investigate reset reason. More...
 

Macros

#define KETCUBE_MCU_WD_SAFE_TIMER_CNT   15
 Watchdog reset period in seconds. More...
 

Typedefs

typedef enum ketCube_mcu_LPMode_t ketCube_mcu_LPMode_t
 Low Power modes. More...
 
typedef struct ketCube_MCU_HardFaultRegs_t ketCube_MCU_HardFaultRegs_t
 HardFault registers should be dumped to investigate reset reason. More...
 

Enumerations

enum  ketCube_mcu_LPMode_t { KETCUBE_MCU_LPMODE_STOP = 0x0, KETCUBE_MCU_LPMODE_SLEEP = 0x1, KETCUBE_MCU_LPMODE_NONE = 0x0 }
 Low Power modes. More...
 

Functions

uint32_t ketCube_MCU_GetRandomSeed (void)
 This function return a random seed. More...
 
void ketCube_MCU_GetUniqueId (uint8_t *id)
 This function returns a unique MCU ID. More...
 
void ketCube_MCU_Sleep (void)
 Handle KETCube LowPower mode(s) More...
 
void ketCube_MCU_EnableSleep (void)
 Enable low power mode ... More...
 
void ketCube_MCU_DisableSleep (void)
 Disable low power mode ... More...
 
bool ketCube_MCU_IsSleepEnabled (void)
 Disable low power mode ... More...
 
void ketCube_MCU_SetSleepMode (ketCube_mcu_LPMode_t mode)
 Select sleep mode. More...
 
ketCube_mcu_LPMode_t ketCube_MCU_GetSleepMode (void)
 Get current sleep mode. More...
 
void ketCube_MCU_WD_Init (void)
 KETCube Watchdog (IWDG) Setup. More...
 
void ketCube_MCU_WD_Reset (void)
 KETCube Watchdog (IWDG) Reset. More...
 
void ketCube_MCU_ClockConfig (void)
 Clock Configuration The system Clock is configured as follows: System Clock source = PLL (HSI) SYSCLK(Hz) = 32000000 HCLK(Hz) = 32000000 AHB Prescaler = 1 APB1 Prescaler = 1 APB2 Prescaler = 1 HSI Frequency(Hz) = 16000000 PLLMUL = 6 PLLDIV = 3 Flash Latency(WS) = 1. More...
 
void ketCube_MCU_SleepClockConfig (void)
 Clock Configuration The system Clock is configured as follows: System Clock source = MSI MSI(Hz) = 65000. More...
 
void ketCube_MCU_RunClockConfig (void)
 Clock Configuration The system Clock is configured as follows: System Clock source = MSI HSI(Hz) = 32000000. More...
 
void ketCube_MCU_DumpHardFaultRegs (ketCube_MCU_HardFaultRegs_t *HardFaultRegs)
 Dump HardFault Register Content. More...
 

Variables

volatile ketCube_mcu_LPMode_t ketCube_MCU_LPMode
 Low-Power mode selection. More...
 

Detailed Description

This file contains the KETCube MCU defs.

Author
Jan Belohoubek
Version
alpha
Date
2019-12-10
Attention

© Copyright (c) 2020 University of West Bohemia in Pilsen All rights reserved.

Developed by: The SmartCampus Team Department of Technologies and Measurement www.smartcampus.cz | www.zcu.cz

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal with the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE SOFTWARE.