WIZlib Library API  ver 1.0
WIZlib Library API User Menual
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
wizplatform.h
Go to the documentation of this file.
1 
12 #ifndef _WIZPLATFORM_H
13 #define _WIZPLATFORM_H
14 
15 //#include "common/common.h"
16 
17 
22 typedef enum {
26 } wizpf_usart;
27 
32 typedef enum {
37 } wizpf_led;
38 
43 typedef enum {
50 
59 #ifdef COMPILER_IAR_EWARM
60 #define PUTCHAR(ch_v) putchar(ch_v)
61 #define GETCHAR() getchar()
62 #elif COMPILER_GCC_ARM
63 #define PUTCHAR(ch_v) // ToDo
64 #define GETCHAR() // ToDo
65 #else // for doxygen
66 #define PUTCHAR(ch_v)
67 #define GETCHAR()
68 #endif
69 
77 #define wizpf_led_flicker(led_v, interval_v) do { \
78  static uint32 tick = 0; \
79  if(wizpf_tick_elapse(tick) > interval_v) { \
80  wizpf_led_set(led_v, VAL_TOG); \
81  tick = wizpf_get_systick(); \
82  } \
83 } while(0)
84 
85 
86 int8 platform_init(void);
87 int8 wizpf_uart_init(wizpf_usart usart);
88 int8 wizpf_gpio_init(GPIO_TypeDef* GPIOx, uint16 GPIO_Pin, wizpf_gpio_mode mode);
89 int8 wizpf_gpio_set(GPIO_TypeDef* GPIOx, uint16 GPIO_Pin, int8 value);
90 int8 wizpf_gpio_get(GPIO_TypeDef* GPIOx, uint16 GPIO_Pin);
91 int8 wizpf_timer_init(void);
92 uint32 wizpf_get_systick(void);
93 uint32 wizpf_tick_conv(bool istick2sec, uint32 tickorsec);
94 int32 wizpf_tick_elapse(uint32 tick);
95 int8 wizpf_led_set(wizpf_led led, uint8 action);
96 int8 wizpf_led_get(wizpf_led led);
97 void wizpf_led_trap(uint8 repeat);
98 void device_HW_reset(void);
99 
100 void GPIO_Configuration(void);
101 void RCC_Configuration(void);
102 void NVIC_Configuration(void);
103 
104 void Delay_us(uint8 time_us);
105 void Delay_ms(uint16 time_ms);
106 void Delay_tick(uint32 tick);
107 
108 int32 getchar_nonblk(void);
109 
110 #endif //_WIZPLATFORM_H
111 
112 
113