存档:SPI1频率64分频

This commit is contained in:
吴俊潮 2025-03-25 17:20:50 +08:00
parent 1888b94feb
commit e89ba509f8
5 changed files with 18658 additions and 18687 deletions

View File

@ -55,10 +55,10 @@ static void fun_ads1220_spi1_init(void)
// {
// HAL_SPI_TransmitReceive(&hspi1, pTxData, pRxData, 1, 1000);
// }
HAL_StatusTypeDef ads1220spi_status_watch;
static void spi_write_read(uint8_t *pTxData, uint8_t *pRxData, uint16_t Size)
{
HAL_SPI_TransmitReceive(&hspi1, pTxData, pRxData, Size, 1000);
ads1220spi_status_watch = HAL_SPI_TransmitReceive(&hspi1, pTxData, pRxData, Size, 1000);
}
static void ads1220_write_regs(uint8_t *writeValues, uint8_t startReg, uint8_t length)
@ -285,48 +285,48 @@ void ads1220_operation(uint8_t channel, float32 *data_pv)
ads1220_cs(CS_L);
vTaskDelay(10);
if (channel == CH2_OUT_CUR)
{
ads1220_reset();
vTaskDelay(5);
setup_ads1220(
ADS1220_MUX_AIN2_AVSS, // 输入多路复用器配置
ADS1220_OP_MODE_NORMAL, // 工作模式选择
ADS1220_CONVERSION_SINGLE_SHOT, // 转换模式
ADS1220_DATA_RATE_45SPS, // 数据速率
ADS1220_GAIN_1, // 增益配置
ADS1220_PGA_BYPASS, // 禁止/启用可编程增益放大器
ADS1220_IDAC1_DISABLED, // 选择IDAC1将路由到的通道
ADS1220_IDAC2_DISABLED, // 选择IDAC2将路由到的通道
ADS1220_IDAC_CURRENT_OFF, // IDAC电流设置
ADS1220_VREF_EXT_REF0_PINS, // 基准电压选择
ADS1220_TEMP_SENSOR_OFF); // 温度传感器
vTaskDelay(5);
ads1220_start();
vTaskDelay(30);
ads1220_get_conversion_data(data_pv);
}
else if (channel == CH10_IN_TC)
{
// if (channel == CH2_OUT_CUR)
// {
// ads1220_reset();
// vTaskDelay(5);
// setup_ads1220(
// ADS1220_MUX_AIN2_AVSS, // 输入多路复用器配置
// ADS1220_OP_MODE_NORMAL, // 工作模式选择
// ADS1220_CONVERSION_SINGLE_SHOT, // 转换模式
// ADS1220_DATA_RATE_45SPS, // 数据速率
// ADS1220_GAIN_1, // 增益配置
// ADS1220_PGA_BYPASS, // 禁止/启用可编程增益放大器
// ADS1220_IDAC1_DISABLED, // 选择IDAC1将路由到的通道
// ADS1220_IDAC2_DISABLED, // 选择IDAC2将路由到的通道
// ADS1220_IDAC_CURRENT_OFF, // IDAC电流设置
// ADS1220_VREF_EXT_REF0_PINS, // 基准电压选择
// ADS1220_TEMP_SENSOR_OFF); // 温度传感器
// vTaskDelay(5);
// ads1220_start();
// vTaskDelay(30);
// ads1220_get_conversion_data(data_pv);
// }
// else if (channel == CH10_IN_TC)
// {
ads1220_reset();
vTaskDelay(5);
setup_ads1220(
ADS1220_MUX_AIN0_AIN1, // 输入多路复用器配置
ADS1220_OP_MODE_NORMAL, // 工作模式选择
ADS1220_CONVERSION_SINGLE_SHOT, // 转换模式
ADS1220_DATA_RATE_45SPS, // 数据速率
ADS1220_GAIN_1, // 增益配置
ADS1220_CONVERSION_CONTINUOUS, // 转换模式*
ADS1220_DATA_RATE_20SPS, // 数据速率*
ADS1220_GAIN_32, // 增益配置*
ADS1220_PGA_BYPASS, // 禁止/启用可编程增益放大器
ADS1220_IDAC1_DISABLED, // 选择IDAC1将路由到的通道
ADS1220_IDAC2_DISABLED, // 选择IDAC2将路由到的通道
ADS1220_IDAC_CURRENT_OFF, // IDAC电流设置
ADS1220_VREF_EXT_REF0_PINS, // 基准电压选择
ADS1220_VREF_EXT_REF0_PINS, // 基准电压选择*
ADS1220_TEMP_SENSOR_OFF); // 温度传感器
vTaskDelay(5);
ads1220_start();
vTaskDelay(30);
ads1220_get_conversion_data(data_pv);
}
// }
ads1220_cs(CS_H);
vTaskDelay(5);
}

View File

@ -46,7 +46,7 @@ void MX_SPI1_Init(void)
hspi1.Init.CLKPolarity = SPI_POLARITY_LOW;
hspi1.Init.CLKPhase = SPI_PHASE_2EDGE;
hspi1.Init.NSS = SPI_NSS_SOFT;
hspi1.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_256;
hspi1.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_64;
hspi1.Init.FirstBit = SPI_FIRSTBIT_MSB;
hspi1.Init.TIMode = SPI_TIMODE_DISABLE;
hspi1.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
@ -78,7 +78,7 @@ void MX_SPI2_Init(void)
hspi2.Init.CLKPolarity = SPI_POLARITY_LOW;
hspi2.Init.CLKPhase = SPI_PHASE_2EDGE;
hspi2.Init.NSS = SPI_NSS_SOFT;
hspi2.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_16;
hspi2.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_32;
hspi2.Init.FirstBit = SPI_FIRSTBIT_MSB;
hspi2.Init.TIMode = SPI_TIMODE_DISABLE;
hspi2.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;

View File

@ -587,7 +587,7 @@
<Group>
<GroupName>Application/User/App/MUX_SIGNAL</GroupName>
<tvExp>0</tvExp>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>

File diff suppressed because it is too large Load Diff

View File

@ -559,18 +559,18 @@ SH.GPXTI1.0=GPIO_EXTI1
SH.GPXTI1.ConfNb=1
SH.S_TIM3_CH4.0=TIM3_CH4,Input_Capture4_from_TI4
SH.S_TIM3_CH4.ConfNb=1
SPI1.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_256
SPI1.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_64
SPI1.CLKPhase=SPI_PHASE_2EDGE
SPI1.CalculateBaudRate=162.0 KBits/s
SPI1.CalculateBaudRate=648.0 KBits/s
SPI1.Direction=SPI_DIRECTION_2LINES
SPI1.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,CLKPhase,BaudRatePrescaler
SPI1.Mode=SPI_MODE_MASTER
SPI1.VirtualType=VM_MASTER
SPI2.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_16
SPI2.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_32
SPI2.CLKPhase=SPI_PHASE_2EDGE
SPI2.CLKPolarity=SPI_POLARITY_LOW
SPI2.CRCCalculation=SPI_CRCCALCULATION_DISABLE
SPI2.CalculateBaudRate=2.592 MBits/s
SPI2.CalculateBaudRate=1.296 MBits/s
SPI2.Direction=SPI_DIRECTION_2LINES
SPI2.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,CLKPolarity,CLKPhase,BaudRatePrescaler,CRCCalculation
SPI2.Mode=SPI_MODE_MASTER