Récepteur RF OK

This commit is contained in:
Neluji 2020-11-22 18:14:16 +01:00
parent 67a1107044
commit efcee57846
6 changed files with 92 additions and 70 deletions

View file

@ -456,6 +456,18 @@
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>2</FileNumber>
<FileType>1</FileType>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Services\MyRF.c</PathWithFileName>
<FilenameWithoutPath>MyRF.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
</Group>
<Group>
@ -466,7 +478,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>2</FileNumber>
<FileNumber>3</FileNumber>
<FileType>1</FileType>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -478,7 +490,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>3</FileNumber>
<FileNumber>4</FileNumber>
<FileType>1</FileType>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -498,7 +510,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>4</FileNumber>
<FileNumber>5</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -510,7 +522,7 @@
</File>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>5</FileNumber>
<FileNumber>6</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -522,7 +534,7 @@
</File>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>6</FileNumber>
<FileNumber>7</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -534,7 +546,7 @@
</File>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>7</FileNumber>
<FileNumber>8</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -546,7 +558,7 @@
</File>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>8</FileNumber>
<FileNumber>9</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -566,7 +578,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>9</FileNumber>
<FileNumber>10</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -586,7 +598,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>6</GroupNumber>
<FileNumber>10</FileNumber>
<FileNumber>11</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -606,7 +618,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>7</GroupNumber>
<FileNumber>11</FileNumber>
<FileNumber>12</FileNumber>
<FileType>2</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>

View file

@ -391,6 +391,13 @@
</Group>
<Group>
<GroupName>User Services</GroupName>
<Files>
<File>
<FileName>MyRF.c</FileName>
<FileType>1</FileType>
<FilePath>..\Services\MyRF.c</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>MyDrivers</GroupName>
@ -857,6 +864,13 @@
</Group>
<Group>
<GroupName>User Services</GroupName>
<Files>
<File>
<FileName>MyRF.c</FileName>
<FileType>1</FileType>
<FilePath>..\Services\MyRF.c</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>MyDrivers</GroupName>

38
Services/MyRF.c Normal file
View file

@ -0,0 +1,38 @@
#include "MyRF.h"
#include "MyTimer.h"
#include "MyPWM.h"
#include "stm32f1xx_ll_bus.h" // Pour l'activation des horloges
#include "stm32f1xx_ll_tim.h"
#include "stm32f1xx_ll_gpio.h"
void MyRF_Conf(void) {
//Initialisation du GPIO
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_GPIOB);
LL_GPIO_InitTypeDef My_GPIO_Init_Struct;
LL_GPIO_StructInit(&My_GPIO_Init_Struct);
//PB.6 en floating input
My_GPIO_Init_Struct.Pin = PinCH1;
LL_GPIO_Init(GPIOB, &My_GPIO_Init_Struct);
//PB.7 en floating input
My_GPIO_Init_Struct.Pin = PinCH2;
LL_GPIO_Init(GPIOB, &My_GPIO_Init_Struct);
MyTimer_Conf(TimerCC,0xFFAD,0x15);
MyPWM_Conf_Input(TimerCC, channelCC1, channelCC2);
MyTimer_Start(TimerCC);
}
int MyRF_Input_Duty_Cycle(void) {
return (MyPWM_Duty_Cycle_Permilles(TimerCC, channelCC1, channelCC2) - 75) * 4;
}

18
Services/MyRF.h Normal file
View file

@ -0,0 +1,18 @@
#ifndef MYRF_H
#define MYRF_H
#include "stm32f103xb.h"
#define PinCH1 LL_GPIO_PIN_6
#define PinCH2 LL_GPIO_PIN_7
#define GPIOPins GPIOB
#define TimerCC TIM4
#define channelCC1 LL_TIM_CHANNEL_CH1
#define channelCC2 LL_TIM_CHANNEL_CH2
void MyRF_Conf(void);
int MyRF_Duty_Cycle_Moteur(void);
#endif

View file

@ -1 +0,0 @@
Mettre les services ici

View file

@ -38,69 +38,10 @@ int main(void)
{
/* Configure the system clock to 72 MHz */
SystemClock_Config();
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_GPIOB);
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_GPIOA);
LL_GPIO_InitTypeDef My_GPIO_Init_Struct;
/*===Test Output===*/
// TIM_TypeDef *Timer1 = TIM3;
// int Channel1 = LL_TIM_CHANNEL_CH2;
// TIM_TypeDef *Timer2 = TIM4;
// int Channel2 = LL_TIM_CHANNEL_CH4;
//
// MyTimer_Conf(Timer1,0xFFFE, 0x72);
// MyTimer_Conf(Timer2,0xFFFE, 0x72);
//
// MyPWM_Conf_Output(Timer1, Channel1);
// MyPWM_Conf_Output(Timer2, Channel2);
//
// MyPWM_Set_Impulse_Duration(Timer1, 25, Channel1);
// MyPWM_Set_Impulse_Duration(Timer2, 75, Channel2);
//
// My_GPIO_Init_Struct.Pin = LL_GPIO_PIN_7;
// My_GPIO_Init_Struct.Mode = LL_GPIO_MODE_ALTERNATE;
// My_GPIO_Init_Struct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
// My_GPIO_Init_Struct.Speed = LL_GPIO_MODE_OUTPUT_2MHz;
// My_GPIO_Init_Struct.Pull = LL_GPIO_PULL_DOWN;
// LL_GPIO_Init(GPIOA, &My_GPIO_Init_Struct);
//
// My_GPIO_Init_Struct.Pin = LL_GPIO_PIN_9;
// My_GPIO_Init_Struct.Mode = LL_GPIO_MODE_ALTERNATE;
// My_GPIO_Init_Struct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
// My_GPIO_Init_Struct.Speed = LL_GPIO_MODE_OUTPUT_2MHz;
// My_GPIO_Init_Struct.Pull = LL_GPIO_PULL_DOWN;
// LL_GPIO_Init(GPIOB, &My_GPIO_Init_Struct);
//
// MyTimer_Start(Timer1);
// MyTimer_Start(Timer2);
/*===Test Input===*/
TIM_TypeDef *Timer = TIM4;
int channel1 = LL_TIM_CHANNEL_CH1;
int channel2 = LL_TIM_CHANNEL_CH2;
My_GPIO_Init_Struct.Pin = LL_GPIO_PIN_6;
My_GPIO_Init_Struct.Mode = LL_GPIO_MODE_FLOATING;
My_GPIO_Init_Struct.Pull = LL_GPIO_PULL_DOWN;
LL_GPIO_Init(GPIOB, &My_GPIO_Init_Struct);
My_GPIO_Init_Struct.Pin = LL_GPIO_PIN_7;
LL_GPIO_Init(GPIOB, &My_GPIO_Init_Struct);
MyTimer_Conf(Timer,0xFFAD,0x15);
MyPWM_Conf_Input(Timer, channel1, channel2);
int duty_cycle = 0;
/* Infinite loop */
while (1)
{
duty_cycle = MyPWM_Duty_Cycle_Permilles(Timer, channel1, channel2);
}
}