Mercurial > public > ostc4
comparison Discovery/Src/ostc.c @ 312:e84a2486933e
Merged in janlmulder/ostc4/cleanup-4 (pull request #25)
Fix stopwatch and divetime not in sync
author | heinrichsweikamp <bitbucket@heinrichsweikamp.com> |
---|---|
date | Fri, 31 May 2019 06:22:50 +0000 |
parents | 5ca177d2df5d |
children | 37ee61f93124 |
comparison
equal
deleted
inserted
replaced
299:b70c26be71a0 | 312:e84a2486933e |
---|---|
38 SPI_HandleTypeDef hspiDisplay; | 38 SPI_HandleTypeDef hspiDisplay; |
39 SPI_HandleTypeDef cpu2DmaSpi; | 39 SPI_HandleTypeDef cpu2DmaSpi; |
40 | 40 |
41 | 41 |
42 UART_HandleTypeDef UartHandle; | 42 UART_HandleTypeDef UartHandle; |
43 #ifdef USART_PIEZO | |
43 UART_HandleTypeDef UartPiezoTxHandle; | 44 UART_HandleTypeDef UartPiezoTxHandle; |
45 #endif | |
44 UART_HandleTypeDef UartIR_HUD_Handle; | 46 UART_HandleTypeDef UartIR_HUD_Handle; |
45 | 47 |
46 __IO ITStatus UartReady = RESET; | 48 __IO ITStatus UartReady = RESET; |
47 __IO ITStatus UartReadyHUD = RESET; | 49 __IO ITStatus UartReadyHUD = RESET; |
48 | 50 |
88 cpu2DmaSpi.Init.CRCPolynomial = 7; | 90 cpu2DmaSpi.Init.CRCPolynomial = 7; |
89 | 91 |
90 HAL_SPI_Init(&cpu2DmaSpi); | 92 HAL_SPI_Init(&cpu2DmaSpi); |
91 } | 93 } |
92 | 94 |
93 | |
94 void MX_GPIO_Backlight_max_static_only_Init(void) | |
95 { | |
96 GPIO_InitTypeDef GPIO_InitStruct; | |
97 TIM_BACKLIGHT_GPIO_ENABLE(); | |
98 | |
99 GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; | |
100 GPIO_InitStruct.Pull = GPIO_NOPULL;//GPIO_PULLUP; /* should be normally high */ | |
101 GPIO_InitStruct.Speed = GPIO_SPEED_LOW; | |
102 | |
103 GPIO_InitStruct.Pin = TIM_BACKLIGHT_PIN; | |
104 HAL_GPIO_Init(TIM_BACKLIGHT_GPIO_PORT, &GPIO_InitStruct); | |
105 | |
106 HAL_GPIO_WritePin(TIM_BACKLIGHT_GPIO_PORT,TIM_BACKLIGHT_PIN,GPIO_PIN_SET); | |
107 } | |
108 | |
109 | |
110 void MX_GPIO_One_Button_only_Init(void) | |
111 { | |
112 GPIO_InitTypeDef GPIO_InitStruct; | |
113 BUTTON_NEXT_GPIO_ENABLE(); | |
114 | |
115 GPIO_InitStruct.Mode = GPIO_MODE_INPUT; | |
116 GPIO_InitStruct.Pull = GPIO_NOPULL;//GPIO_PULLUP; /* should be normally high */ | |
117 GPIO_InitStruct.Speed = GPIO_SPEED_LOW; | |
118 | |
119 GPIO_InitStruct.Pin = BUTTON_NEXT_PIN; | |
120 HAL_GPIO_Init(BUTTON_NEXT_GPIO_PORT, &GPIO_InitStruct); | |
121 } | |
122 | |
123 | |
124 GPIO_PinState MX_GPIO_Read_The_One_Button(void) | |
125 { | |
126 return HAL_GPIO_ReadPin(BUTTON_NEXT_GPIO_PORT, BUTTON_NEXT_PIN); | |
127 } | |
128 | |
129 void MX_GPIO_Init(void) | 95 void MX_GPIO_Init(void) |
130 { | 96 { |
131 GPIO_InitTypeDef GPIO_InitStruct; | 97 GPIO_InitTypeDef GPIO_InitStruct; |
132 | 98 |
133 DISPLAY_CSB_GPIO_ENABLE(); | 99 DISPLAY_CSB_GPIO_ENABLE(); |
261 HAL_Delay(100); | 227 HAL_Delay(100); |
262 HAL_GPIO_WritePin(SMALLCPU_BOOT0_GPIO_PORT,SMALLCPU_BOOT0_PIN,GPIO_PIN_RESET); | 228 HAL_GPIO_WritePin(SMALLCPU_BOOT0_GPIO_PORT,SMALLCPU_BOOT0_PIN,GPIO_PIN_RESET); |
263 #endif | 229 #endif |
264 } | 230 } |
265 | 231 |
266 | |
267 void MX_SmallCPU_NO_Reset_Helper(void) | |
268 { | |
269 #ifdef SMALLCPU_NRESET_PIN | |
270 GPIO_InitTypeDef GPIO_InitStruct; | |
271 | |
272 GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; | |
273 GPIO_InitStruct.Pull = GPIO_NOPULL; | |
274 GPIO_InitStruct.Speed = GPIO_SPEED_LOW; | |
275 | |
276 SMALLCPU_NRESET_GPIO_ENABLE(); | |
277 HAL_GPIO_Init(SMALLCPU_NRESET_GPIO_PORT, &GPIO_InitStruct); | |
278 HAL_GPIO_WritePin(SMALLCPU_NRESET_GPIO_PORT,SMALLCPU_NRESET_PIN,GPIO_PIN_SET); | |
279 // HAL_Delay(100); | |
280 // GPIO_InitStruct.Mode = GPIO_MODE_INPUT; | |
281 // HAL_GPIO_Init(SMALLCPU_NRESET_GPIO_PORT, &GPIO_InitStruct); | |
282 #endif | |
283 } | |
284 | |
285 | |
286 void MX_SmallCPU_Reset_To_Standard(void) | 232 void MX_SmallCPU_Reset_To_Standard(void) |
287 { | 233 { |
288 #ifdef SMALLCPU_NRESET_PIN | 234 #ifdef SMALLCPU_NRESET_PIN |
289 GPIO_InitTypeDef GPIO_InitStruct; | 235 GPIO_InitTypeDef GPIO_InitStruct; |
290 | 236 |
301 GPIO_InitStruct.Mode = GPIO_MODE_INPUT; | 247 GPIO_InitStruct.Mode = GPIO_MODE_INPUT; |
302 HAL_GPIO_Init(SMALLCPU_NRESET_GPIO_PORT, &GPIO_InitStruct); | 248 HAL_GPIO_Init(SMALLCPU_NRESET_GPIO_PORT, &GPIO_InitStruct); |
303 #endif | 249 #endif |
304 } | 250 } |
305 | 251 |
306 | |
307 uint8_t MX_UART_ButtonAdjust(uint8_t *array) | |
308 { | |
309 #ifdef USART_PIEZO | |
310 uint8_t answer[4]; | |
311 HAL_UART_Transmit(&UartPiezoTxHandle,array,4,1000); | |
312 HAL_UART_Receive(&UartPiezoTxHandle,answer,4,2000); | |
313 if( (answer[0] == array[0]) | |
314 &&(answer[1] == array[1]) | |
315 &&(answer[2] == array[2]) | |
316 &&(answer[3] == array[3])) | |
317 return 1; | |
318 #endif | |
319 return 0; | |
320 } | |
321 | |
322 | |
323 void MX_UART_Init(void) | 252 void MX_UART_Init(void) |
324 { | 253 { |
325 /*##-1- Configure the UART peripheral ######################################*/ | 254 /*##-1- Configure the UART peripheral ######################################*/ |
326 /* Put the USART peripheral in the Asynchronous mode (UART Mode) */ | 255 /* Put the USART peripheral in the Asynchronous mode (UART Mode) */ |
327 /* UART1 configured as follow: | 256 /* UART1 configured as follow: |
373 { | 302 { |
374 if(huart == &UartHandle) | 303 if(huart == &UartHandle) |
375 UartReady = SET; | 304 UartReady = SET; |
376 } | 305 } |
377 | 306 |
378 | |
379 | |
380 //void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) | 307 //void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) |
381 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) | 308 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) |
382 { | 309 { |
383 if(huart == &UartHandle) | 310 if(huart == &UartHandle) |
384 UartReady = SET; | 311 UartReady = SET; |