Mise en place allure.h, implémentation de la fonction toString, création d'une lib maths. implémentation d'une fonction abs dans cette lib (valeur absolue)
This commit is contained in:
parent
36326c19dd
commit
d9798f1ff0
7 changed files with 187 additions and 9 deletions
|
@ -549,19 +549,67 @@
|
|||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>10</FileNumber>
|
||||
<FileType>5</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\Src\Allure.h</PathWithFileName>
|
||||
<FilenameWithoutPath>Allure.h</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>11</FileNumber>
|
||||
<FileType>5</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\MyDrivers\MyTimer.h</PathWithFileName>
|
||||
<FilenameWithoutPath>MyTimer.h</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>12</FileNumber>
|
||||
<FileType>5</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\Src\maths.h</PathWithFileName>
|
||||
<FilenameWithoutPath>maths.h</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>13</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\Src\maths.c</PathWithFileName>
|
||||
<FilenameWithoutPath>maths.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
</Group>
|
||||
|
||||
<Group>
|
||||
<GroupName>Drivers/STM32f1xx_LL_Driver</GroupName>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>10</FileNumber>
|
||||
<FileNumber>14</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\LLDrivers\src\stm32f1xx_ll_rcc.c</PathWithFileName>
|
||||
|
@ -571,7 +619,7 @@
|
|||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>11</FileNumber>
|
||||
<FileNumber>15</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
|
@ -593,13 +641,13 @@
|
|||
|
||||
<Group>
|
||||
<GroupName>Drivers/CMSIS</GroupName>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
<File>
|
||||
<GroupNumber>5</GroupNumber>
|
||||
<FileNumber>12</FileNumber>
|
||||
<FileNumber>16</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
|
@ -613,13 +661,13 @@
|
|||
|
||||
<Group>
|
||||
<GroupName>Example/MDK-ARM</GroupName>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
<File>
|
||||
<GroupNumber>6</GroupNumber>
|
||||
<FileNumber>13</FileNumber>
|
||||
<FileNumber>17</FileNumber>
|
||||
<FileType>2</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
|
|
|
@ -432,6 +432,26 @@
|
|||
<FileType>1</FileType>
|
||||
<FilePath>..\Src\Voile.c</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>Allure.h</FileName>
|
||||
<FileType>5</FileType>
|
||||
<FilePath>..\Src\Allure.h</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>MyTimer.h</FileName>
|
||||
<FileType>5</FileType>
|
||||
<FilePath>..\MyDrivers\MyTimer.h</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>maths.h</FileName>
|
||||
<FileType>5</FileType>
|
||||
<FilePath>..\Src\maths.h</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>maths.c</FileName>
|
||||
<FileType>1</FileType>
|
||||
<FilePath>..\Src\maths.c</FilePath>
|
||||
</File>
|
||||
</Files>
|
||||
</Group>
|
||||
<Group>
|
||||
|
@ -903,6 +923,26 @@
|
|||
<FileType>1</FileType>
|
||||
<FilePath>..\Src\Voile.c</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>Allure.h</FileName>
|
||||
<FileType>5</FileType>
|
||||
<FilePath>..\Src\Allure.h</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>MyTimer.h</FileName>
|
||||
<FileType>5</FileType>
|
||||
<FilePath>..\MyDrivers\MyTimer.h</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>maths.h</FileName>
|
||||
<FileType>5</FileType>
|
||||
<FilePath>..\Src\maths.h</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>maths.c</FileName>
|
||||
<FileType>1</FileType>
|
||||
<FilePath>..\Src\maths.c</FilePath>
|
||||
</File>
|
||||
</Files>
|
||||
</Group>
|
||||
<Group>
|
||||
|
|
32
Src/Allure.c
32
Src/Allure.c
|
@ -0,0 +1,32 @@
|
|||
#include "maths.h"
|
||||
|
||||
void ConfAllure() {
|
||||
|
||||
}
|
||||
|
||||
int RecupAllure() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
char * ToString(int alpha) {
|
||||
int alpha_abs = abs(alpha);
|
||||
if (alpha_abs < 45) {
|
||||
return "Vent debout";
|
||||
} else if (alpha < 55) {
|
||||
return "Près";
|
||||
} else if (alpha < 65) {
|
||||
return "Bon plein";
|
||||
} else if (alpha < 80) {
|
||||
return "Petit largue";
|
||||
} else if (alpha < 100) {
|
||||
return "Travers";
|
||||
} else if (alpha < 115) {
|
||||
return "Largue";
|
||||
} else if (alpha < 155) {
|
||||
return "Grand largue";
|
||||
} else if (alpha < 180) {
|
||||
return "Vent arrière";
|
||||
} else {
|
||||
return "ERROR";
|
||||
}
|
||||
}
|
39
Src/Allure.h
39
Src/Allure.h
|
@ -0,0 +1,39 @@
|
|||
#ifndef ALLURE_H
|
||||
#define ALLURE_H
|
||||
|
||||
/**
|
||||
* @brief Configure la girouette pour la détection de l'allure (sens du vent).
|
||||
* @note Configuration des ports PA6 et 7 en alternate input pour récupérer les signaux
|
||||
Configuration des deux channels du TIM3 pour le compteur incrementeur
|
||||
Configuration du PA5 avec une interruption pour capter les tours de girouette
|
||||
* @param None
|
||||
* @retval None
|
||||
*/
|
||||
void ConfAllure();
|
||||
|
||||
/**
|
||||
* @brief Renvoi la valeur de l'allure actuelle
|
||||
* @note Représentation de la donnée en degrès -> int entre -180 et 180
|
||||
* @param None
|
||||
* @retval L'allure, représenté en degrès par un entier entre -180 et 180
|
||||
*/
|
||||
int RecupAllure();
|
||||
|
||||
/**
|
||||
* @brief Associe un chaine de caractère a une valeur d'allure.
|
||||
* @note Une chaine de caractère est associé a des intervalles de alpha :
|
||||
[-45, 45] -> "Vent debout"
|
||||
[45, 55] -> "Près" (et intervalle opposé)
|
||||
[55, 65] -> "Bon plein" (et intervalle opposé)
|
||||
[65, 80] -> "Petit largue" (et intervalle opposé)
|
||||
[80, 100] -> "Travers" (et intervalle opposé)
|
||||
[100, 115] -> "Largue" (et intervalle opposé)
|
||||
[115, 155] -> "Grand largue" (et intervalle opposé)
|
||||
[155, -155] -> "Vent arrière"
|
||||
Autre -> "ERROR"
|
||||
* @param alpha : un entier représentant l'allure en ° (-180 à 180)
|
||||
* @retval Une chaine de caractère représentant l'allure
|
||||
*/
|
||||
char * ToString(int alpha);
|
||||
|
||||
#endif
|
|
@ -1,3 +1,3 @@
|
|||
int main(){
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
|
8
Src/maths.c
Normal file
8
Src/maths.c
Normal file
|
@ -0,0 +1,8 @@
|
|||
|
||||
int abs(int a) {
|
||||
if (a<0) {
|
||||
return -a;
|
||||
} else {
|
||||
return a;
|
||||
}
|
||||
}
|
11
Src/maths.h
Normal file
11
Src/maths.h
Normal file
|
@ -0,0 +1,11 @@
|
|||
#ifndef MATHS_H
|
||||
#define MATHS_H
|
||||
|
||||
/**
|
||||
* @brief Valeur absolue.
|
||||
* @note Si a < 0 renvoi -a, sinon, a
|
||||
* @param a : un entier
|
||||
* @retval La valeur absolue de a
|
||||
*/
|
||||
int abs(int a);
|
||||
#endif
|
Loading…
Reference in a new issue