您好,
我使用的是与PIC32MZ微控制器连接的ADS131E04,但使用SPI接口初始化和控制器件时遇到一些问题。 我遵循应用程序信息部分(第 10.1 .2)使用作为设置:
-CLKSEL =1使用内部振荡器主时钟;
- PWNDN和RESETN不 受控制(固定为3.3V,因此始终为1)
- SCLK = 1 MHz
我初始化了停止转换的设备(驱动启动=0),并等待tPOR等待fCLK = 2.048 MHz用作主时钟,然后再初始化SPI接口。 之后,我发送了reset命令,但SPI接口阻止并仅在关闭ADC时继续发送命令(Micro和ADC位于两个不同的板上,因此有两个不同的电源)。
这是我用模拟发现设备获得的:
这是我的初始化代码
void app_Initialize ( void ){ /*将应用程序状态机置于初始状态。 */ AppData.state = APP_STATE初始化; /*等待初始开机时间*/ /* F_clk = 2.048 MHz*/ /* t_clk = 0.488 us * /* tPOR = 2^18 * t_clk = 12.7926万 us */ ADC_StaticDelay (13万);
ADC_START_LOW ();
/* TODO:初始化应用程序的状态机和其他 *参数。 */ }
void app_Tasks ( void ){ /*检查应用程序的当前状态。 */ 切换( AppData.state ) { /*应用程序的初始状态。 */ 案例APP_STATE初始化: { ADC_Init(); /*重置设备*/ ADC_SendCommand(reset); /*等待重置的延迟正常*/ /* 18 t_CKL = 18* 0.488 = 8.784 US */ ADC_StaticDelay (10); /*读取ID寄存器*/ ADC_ReadRegister (ID); bool appInitialized = TRUE; IF (已初始化) { AppData.state = app_state_service_tasks ;} 中断; } 案例应用程序状态服务任务: { 中断; } /* TODO:实施应用程序状态机。*/ /*绝不能执行默认状态。 */ 默认: { /* TODO:处理应用程序状态机中的错误。 */ 中断; } } }
有人可以向我建议我在初始化此ADC时做了什么错误?
感谢您的支持。
Salvatore de Simone。