view Documentations/OSTC4_CPU2_F411_Configuration.txt @ 224:ceecabfddb57 div-fixes-3

Bugfix, deco: fix 2 (small) problems with calculated ceiling This fixes 1 trivial, and 1 not really trivial bug in the calculation of the ceiling. When simulating a bounce dive to 80m, things become clear (tried this on a CCR dive, fixed setpoint 1.2bar, about 15 minutes of bottom time). Closely watch the behavior of the ceiling data. At some point during the ascent, the ceiling begins to decrease in 10cm steps. Then suddenly (while still ascending), the ceiling increases again with 1m, does not change for some time, and then suddenly steps 1.1m less deep. While not very relevant to real deco diving, it is simply wrong. The reason for this is subtle. The algorithm used to find the ceiling is a sort of linear search, stepping down a meter, overshoot the depth, and search back in 10cm steps. It seems some numerical instability. Fixing this, was a bit more computational intensive search by stepping up down in equal steps of 10cm. But, I'm pretty sure that things can be speeded up here, as a ceiling does not change fast, so it should be not that difficult to limit the search space, or use a binary search algorithm instead. The trivial second problem fixed, is that the ceiling ends at the surface and not at 1m depth. This small issue became visible after changing the step down size above. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
author Jan Mulder <jlmulder@xs4all.nl>
date Sun, 31 Mar 2019 19:35:51 +0200
parents 7d1b61176708
children
line wrap: on
line source

Configuration	OSTC4 CPU2 F411
STM32CubeMX 	4.9.0
Date	07/30/2015
MCU	STM32F411RETx



PERIPHERALS	MODES	FUNCTIONS	PINS
ADC1	IN8	ADC1_IN8	PB0
I2C1	I2C	I2C1_SCL	PB8
I2C1	I2C	I2C1_SDA	PB9
RCC	Crystal/Ceramic Resonator	RCC_OSC32_IN	PC14-OSC32_IN
RCC	Crystal/Ceramic Resonator	RCC_OSC32_OUT	PC15-OSC32_OUT
RTC	Internal Alarm	RTC_VS_RTC_Alarm_A_Intern	VP_RTC_VS_RTC_Alarm_A_Intern
SPI1	Full-Duplex Slave	SPI1_MISO	PA6
SPI1	Full-Duplex Slave	SPI1_MOSI	PA7
SPI1	Full-Duplex Slave	SPI1_SCK	PA5
SPI1	Hardware	SPI1_NSS	PA4
SPI3	Full-Duplex Master	SPI3_MISO	PC11
SPI3	Full-Duplex Master	SPI3_MOSI	PC12
SPI3	Full-Duplex Master	SPI3_SCK	PC10
SYS	SWD and Asynchronous Trace	SYS_JTMS-SWDIO	PA13
SYS	SWD and Asynchronous Trace	SYS_JTCK-SWCLK	PA14
SYS	SWD and Asynchronous Trace	SYS_JTDO-SWO	PB3



Pin Nb	PINs	FUNCTIONs	LABELs
3	PC14-OSC32_IN	RCC_OSC32_IN	
4	PC15-OSC32_OUT	RCC_OSC32_OUT	
8	PC0	GPIO_Output	Power Main CPU GPIO_Output
9	PC1	GPIO_Output	Charger GPIO_Output
10	PC2	GPIO_Input	Charger GPIO_Input
11	PC3	GPIO_Output	LED GPIO_Output
14	PA0-WKUP	GPIO_EXTI0	Wakeup Button Input GPIO_EXT0
15	PA1	GPIO_EXTI1	Wireless Input GPIO_EXT1
16	PA2	GPIO_EXTI2	Wireless Input GPIO_EXT2
17	PA3	GPIO_EXTI3	Debug Test Button GPIO_EXT3
20	PA4	SPI1_NSS	
21	PA5	SPI1_SCK	
22	PA6	SPI1_MISO	
23	PA7	SPI1_MOSI	
26	PB0	ADC1_IN8	Ambient Light ADC1_IN8
33	PB12	GPIO_Output	Wireless Power GPIO_Output can be changed
40	PC9	GPIO_Output	Button Control NSS
46	PA13	SYS_JTMS-SWDIO	
49	PA14	SYS_JTCK-SWCLK	
51	PC10	SPI3_SCK	Button Control SPI3_SCK
52	PC11	SPI3_MISO	Button Control SPI3_MISO
53	PC12	SPI3_MOSI	Button Control SPI3_MOSI
55	PB3	SYS_JTDO-SWO	
61	PB8	I2C1_SCL	
62	PB9	I2C1_SDA	



SOFTWARE PROJECT

Project Settings : 
Project Name : OSTC4 CPU2 F411
Project Folder : C:\workspaces\ARM_M4\OSTC4\OSTC4smallCPU
Toolchain / IDE : MDK-ARM 4.73
Firmware Package Name and Version : STM32Cube FW_F4 V1.7.0


Code Generation Settings : 
STM32Cube Firmware Library Package : Copy all used libraries into the project folder
Generate peripheral initialization as a pair of '.c/.h' files per IP : No
Backup previously generated files when re-generating : No
Delete previously generated files when not re-generated : Yes
Set all free pins as analog (to optimize the power consumption) : Yes


Toolchains Settings : 
Compiler Optimizations : Balanced Size/Speed