annotate wiki/Modules.md @ 38:5f11787b4f42

include in ostc4 repository
author heinrichsweikamp
date Sat, 28 Apr 2018 11:52:34 +0200
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1 # OSTC4 Code Modules #
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
2
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
3 ## Main CPU - aka CPU1-Discovery ##
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
4
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
5 For historical reasons, the firmware of the main CPu was divided in three parts.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
6 It helps development, allow smalled upgrades, and improve security as a bad manipulation won't kill the bootloader, responsible fot the next firmware upgrade.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
7
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
8 ### Bootloader ##
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
9
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
10 The code responsible to upload new firmwares for both CPU.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
11
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
12 ### Font Pack ###
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
13
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
14 This module does not contains any code. Just font data and images.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
15
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
16 ### Firmware code ###
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
17
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
18 The main OSTC4 firmware. The more important modules are:
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
19
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
20 - Buehlmann decompression algorithm.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
21 - VPM decompression algorithm.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
22 - The simulator and dive planner.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
23 - Logbook display (surface and dive mode).
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
24 - All user interface code, during dive or surface mode (`t*.c` files).
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
25 - Graphics (gfx) engine.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
26 - Plus interface to the other CPU, the management of the _LCD_ screen, and the optional _Bonnex_ interface.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
27
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
28 ## Small CPU - aka CPU2-RTE ##
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
29
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
30 The _Real Time_ CPU handle everything that requires precise timming to function perperly.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
31
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
32 The most important modules are:
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
33
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
34 - Real time computation of gas exchanges during dive (aka the _LifeData_ structure).
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
35 - Analog to digital conversion for the ... ambient light sensor.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
36 - I2C bus interface to the pressure sensor, the magnetic compass and the battery gauge.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
37 - SPI bus interface to the buttons and to the other CPU.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
38 - Serial interface to the _RS232-over-Wireless_ connection.