This repository has been archived on 2025-04-28. You can view files and clone it, but cannot push or open issues or pull requests.
CMS3in1/1.Cabin/4.MISC/CMS_BMS/VM_App/VM_Sampling_Control.c

107 lines
2.2 KiB
C
Raw Normal View History

#include "VM_Sampling_Control.h"
#include "VM_AD7606.h"
#include "usbd_cdc_if.h"
uint8_t Control_Buf[8] = {3}; //ָ<><D6B8><EFBFBD>洢buf
uint8_t Control_Ins_Flag = 0; //ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD>ձ<EFBFBD>־ 0<><30>δ<EFBFBD><CEB4><EFBFBD>գ<EFBFBD> 1<><31><EFBFBD>ѽ<EFBFBD><D1BD><EFBFBD>
uint8_t instruct_flag = 0; //ָ<><D6B8><EFBFBD>жϱ<D0B6>־<EFBFBD><D6BE>
//<2F><>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t frequency_control = 3; //Ƶ<>ʿ<EFBFBD><CABF><EFBFBD><EFBFBD><EFBFBD> 2 : 10k ; 1 : 20k ; 0 : 40k
uint8_t sampling_control = 2; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 : ֹͣ<CDA3><D6B9><EFBFBD><EFBFBD> ; 1 : <20><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>
uint8_t reset_control = 0; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1 : ִ<>и<EFBFBD>λ
uint8_t hall_control = 2; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 : ֹͣ<CDA3><D6B9><EFBFBD><EFBFBD> ; 1 : <20><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>
//<2F>ɼ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void Sampling_Control(void){
//<2F><><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
switch (frequency_control){
case 0:
AD7606_SFC = 1; //40k
break;
case 1:
AD7606_SFC = 2; //20k
break;
case 2:
AD7606_SFC = 4; //10k
break;
default :
break;
}
if(sampling_control == 1){ //<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>
AD7606_Sampling_Flag = 1;
}
else if(sampling_control == 0){ //ֹͣ<CDA3><D6B9><EFBFBD><EFBFBD>
AD7606_Sampling_Flag = 0;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
if(reset_control == 1){
__set_FAULTMASK(1); //<2F>ر<EFBFBD><D8B1>ж<EFBFBD>
NVIC_SystemReset(); //<2F><>λ
}
//<2F><><EFBFBD><EFBFBD>Ƶ<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD> <20>ݶ<EFBFBD>
if(hall_control == 1){
}
//AD<41><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ݶ<EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݷ<EFBFBD><DDB7><EFBFBD>
void CDC_Data_Send(void){
if(AD_Arr_Num == 1028){
CDC_Transmit_HS(AD_Data_Arr,8224);
AD_Arr_Num = 8228;
}
if(AD_Arr_Num == 9252){
CDC_Transmit_HS(&AD_Data_Arr[8224],8224);
AD_Arr_Num = 4;
}
}
//ָ<><D6B8><EFBFBD>ж<EFBFBD>
void Instruct_Judgment(void){
// if(Control_Ins_Flag == 1)
// {
//<2F><><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>
if(Control_Buf[0] == 0x00 && Control_Buf[1] == 0x00 && Control_Buf[2] == 0x00 && Control_Buf[3] == 0x00)
{
}
//ָ<><D6B8><EFBFBD>ж<EFBFBD>
else if(Control_Buf[0] == 0x01 && Control_Buf[1] == 0x01 && Control_Buf[2] == 0x01 && Control_Buf[3] == 0x01)
{
//<2F><>ʼ/ֹͣ <20><><EFBFBD><EFBFBD>
if(Control_Buf[4] == 0 && Control_Buf[5] == 0)
{
sampling_control = 0;
}
else if(Control_Buf[4] == 1 && Control_Buf[5] == 1)
{
sampling_control = 1;
}
//<2F><><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>Ƶ<EFBFBD><C6B5>
if(Control_Buf[6] == 0 && Control_Buf[7] == 0)
{
frequency_control = 0;
}
else if(Control_Buf[6] == 1 && Control_Buf[7] == 1)
{
frequency_control = 1;
}
else if(Control_Buf[6] == 2 && Control_Buf[7] == 2)
{
frequency_control = 2;
}
}
// Control_Ins_Flag = 0;
// }
}