Other Parts Discussed in Thread: ADC-PHI-PRU-EVM, ADS8588S, AM6442, TMDS64EVM, ADS8588SEVM-PDK
器件型号: TMDS64EVM
主题中讨论的其他器件: AM6442、 ADS8588SEVM-PDK、ADC-PHI-PRU-EVM、ADS8588S
存在许多风险
EVM 板:TMDS64EVM (AM6442、PROC101D)
ADC 板:ADS8588SEVM-PDK
连接适配器:ADC-PHI-PRU-EVM
MCU SDK 版本:10 和 11 均在使用中
你好
通过连接适配器连接 EVM 板和 ADC 板后、执行了来自 MCU SDK 的 ADC 示例。
更改如下
输入电压范围:将+–5V 更改为+–10V
使用中的信道:将 1 更改为 8
从 linker.cmd 更改为 example.syscfg 中生成的 ti_drivers_config.c
// PRU_IPC 使用的缓冲存储器
.bss.PRU_IPC_1buf_MEM1 (NoLoad):{}> PRU_IPC_BUF_MEM
.bss.PRU_IPC_1buf_MEM2 (NoLoad):{}> PRU_IPC_BUF_MEM
.bss.PRU_IPC_1buf_mem3 (NoLoad):{}> PRU_IPC_BUF_MEM
.bss.PRU_IPC_1buf_mem4 (NoLoad):{}> PRU_IPC_BUF_MEM
.bss.PRU_IPC_1buf_mem5 (NoLoad):{}> PRU_IPC_BUF_MEM
.bss.PRU_IPC_1buf_mem6 (NoLoad):{}> PRU_IPC_BUF_MEM
.bss.PRU_IPC_1buf_mem7 (NoLoad):{}> PRU_IPC_BUF_MEM
.bss.PRU_IPC_1buf_mem8 (NoLoad):{}> PRU_IPC_BUF_MEM
PRU_IPC_BUF_MEM :origin = 0x78000040、length = 0x2000
ADS8588S 的分辨率为 16 位、因此将 execs/PRU_IO/adc/ads85x8/firmware/main.asm 路径的 main.asm 文件中的 m_sign_ext_32 位更改为 m_sign_ext_16to32_bits
此后、通过参考所有手册、将硬件环境设置为+–10V 输入电压范围。
例如、打开 ADC 板上的 J4 引脚(引脚之间的电压为 0V、但当我们使用 DMM 进行短路测试时,我们确认它是开路。)
运行示例时、ADC 结果从 PRU 传递到 R5F、您可以查看名为 Samples 的数组中每个通道的值。
当施加到+5V 时、波形非常干净、范围为+30000 至–30000。
当施加+–10V 电压时、波形会被切断、就像被钳位一样。 下图是在通道 8 上施加+–10V 电压时的图形。

此时、最大最小值也约为+30000 和–30000、类似于+–5V。
pru0_load_bin.h 文件还从导入 CCS 的工作区文件夹复制到原始文件夹。
此外、ADC 板使用评估工具确认了其在+–10V 电压下运行时没有任何问题。
这些问题在 MCU SDK 版本 10 和 11 中都出现。
我有办法解决这个问题吗?

