|
|
@ -29,11 +29,11 @@ struct ad77681_init_param ADC_default_init_param = { |
|
|
|
/* Configuration */ |
|
|
|
.power_mode = AD77681_FAST, // power_mode
|
|
|
|
.mclk_div = AD77681_MCLK_DIV_8, // mclk_div
|
|
|
|
.conv_mode = AD77681_CONV_CONTINUOUS, // conv_mode
|
|
|
|
.conv_mode = AD77681_CONV_CONTINUOUS, // conv_mode
|
|
|
|
.diag_mux_sel = AD77681_POSITIVE_FS, // diag_mux_sel
|
|
|
|
.conv_diag_sel = false, // conv_diag_sel
|
|
|
|
.conv_len = AD77681_CONV_16BIT, // conv_len
|
|
|
|
.crc_sel = AD77681_CRC, // crc_sel
|
|
|
|
.crc_sel = AD77681_CRC, // crc_sel
|
|
|
|
.status_bit = 0, // status_bit
|
|
|
|
.VCM_out = AD77681_VCM_HALF_VCC, /* VCM setup*/ |
|
|
|
.AINn = AD77681_AINn_ENABLED, /* AIN- precharge buffer*/ |
|
|
@ -73,23 +73,41 @@ void Main::main(int argc, char const *argv[]) { |
|
|
|
HAL_Delay(1000); |
|
|
|
m_ad77681.initialize("ad77681", &m_hardware, &hspi2, &PB12, ADC_default_init_param); |
|
|
|
|
|
|
|
#if 0
|
|
|
|
uint8_t adc_data[6]; |
|
|
|
double voltage; |
|
|
|
#if 1
|
|
|
|
double voltage; |
|
|
|
|
|
|
|
static int32_t voicebuf[16 * 100]; |
|
|
|
int off = 0; |
|
|
|
while (1) { |
|
|
|
uint8_t adc_data[6] = {0}; |
|
|
|
uint8_t adc_data2[6] = {0}; |
|
|
|
m_ad77681.spi_read_adc_data(adc_data, AD77681_REGISTER_DATA_READ); |
|
|
|
// m_ad77681.data_to_voltage((uint32_t *)adc_data, &voltage);
|
|
|
|
// printf("[ADC DATA]: 0x");
|
|
|
|
// for (int i = 0; i < sizeof(adc_data); i++) {
|
|
|
|
// printf(": 0x");
|
|
|
|
// for (int i = 0; i < 4; i++) {
|
|
|
|
// printf("%02x", adc_data[i]);
|
|
|
|
// }
|
|
|
|
// printf("\r\n");
|
|
|
|
// printf("{plotter}%d\n", *(int32_t *)adc_data);
|
|
|
|
// printf("{plotter}%f\n", voltage);
|
|
|
|
adc_data2[0] = adc_data[3]; |
|
|
|
adc_data2[1] = adc_data[2]; |
|
|
|
adc_data2[2] = adc_data[1]; |
|
|
|
adc_data2[3] = adc_data[0]; |
|
|
|
|
|
|
|
voicebuf[off++] = *(int32_t *)adc_data2; |
|
|
|
if (off >= 16 * 100) { |
|
|
|
break; |
|
|
|
} |
|
|
|
|
|
|
|
HAL_Delay(1); |
|
|
|
// printf("{plotter}%d\n", *(int32_t *)adc_data);
|
|
|
|
// printf("{plotter}%d\n", *(int32_t *)adc_data2);
|
|
|
|
// (1);
|
|
|
|
m_hardware.sleepus(100); |
|
|
|
// HAL_IWDG_Refresh(&hiwdg);
|
|
|
|
} |
|
|
|
for (size_t i = 0; i < off; i++) { |
|
|
|
printf("{plotter}%d\n", voicebuf[i]); |
|
|
|
} |
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
while (true) { |
|
|
|