您好!
Im 在我的项目中使用 ADS7953外部 ADC。 Im 在"手动模式"下使用它。 对警报和 GPIO 寄存器进行编程后、我无法捕获任何警报。 Im 尝试观察 GPIO0高警报、该警报的保留值设置为"0"。 这意味着我必须在每次转换后获得警报。 Im 在下面添加了我的配置。 器件上电后,我的编程顺序是报警设置-> GPIO 设置->手动模式。 Im 能够在我观察到的特殊通道上读取正确的值。 我在下面的配置中缺少什么?
提前感谢您、
EFE
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
Im 在我的项目中使用 ADS7953外部 ADC。 Im 在"手动模式"下使用它。 对警报和 GPIO 寄存器进行编程后、我无法捕获任何警报。 Im 尝试观察 GPIO0高警报、该警报的保留值设置为"0"。 这意味着我必须在每次转换后获得警报。 Im 在下面添加了我的配置。 器件上电后,我的编程顺序是报警设置-> GPIO 设置->手动模式。 Im 能够在我观察到的特殊通道上读取正确的值。 我在下面的配置中缺少什么?
提前感谢您、
EFE
您好!
感谢您的答复。 我可能需要一些时间来捕获传输的帧、因此在此期间您可以在下面看到我的传输帧。
/*报警设置*/
//帧1
Transmit_Buffer = 0xD000; //(1101 000 000 000 ->组1、)
//sync_send (Transmit_Buffer);
//帧2
Transmit_Buffer = 0x7000; //(0111 xx00 0000 0000 -> ch5,高警报,退出,(Treshold = 0)//仅对组1,ch5编程高警报 以观察警报。
//sync_send (Transmit_Buffer);
/* GPIO 设置*/
Transmit_Buffer = 0x402F;//(0100 0000 0010 1111 -> GPIO 编程正常操作,GPIO0高警报,gpıo μ A 输出)
//sync_send (Transmit_Buffer);
/*手动模式*/
Transmit_Buffer = 0x1840;//(0001 1000 0100 0000 ->手动模式,启用编程位,下一帧中的默认通道0,2xVref 范围,正常操作。 ,输出电流通道)
//初始化结束。
使用上面的配置初始化设备后、我会定期调用我的"get_value"例程。 由于"手动模式"的性质、我在"get_value"例程中有"2"连续的"sync_send"。
通过此配置、我能够为 所需通道获得正确的读数、但即使将高警报阈值设置为0、也无法发出任何警报。
您好!
您可以在此邮件下方找到示波器截图。
范围--> 绿色:SCLK,蓝色:MOSI,红色:MISO
这张图片是 ADS7953的"初始阶段",正如我在上一条消息中所解释的, 警报设置的 Im 传输帧-> GPIO 设置->手动模式设置。
/*报警设置*/
/*帧1 */
 
/*FRAME 2*/
/*GPIO 设置*/
/*手动模式*/
对于定期操作、如前所述、对于特殊通道、我可以获得正确的读数。 最后、Im 通过定期运行添加示波器屏幕截图。
手动模式下采样到 Ch5 ->更正 MISO 数据