主题中讨论的其他器件: HALCOGEN
工具/软件:Code Composer Studio
您好!
我正在从事一个项目 、我们希望使用 Analog Devices 公司的 AD7266同时转换两个模拟值、并通过 SPI 将其传输到 TMS570LC4357。
因此、我尝试在并行模式下设置 Mibspi5通道、但现在无法获得预期结果。
我使用了 HALCoGen 生成的硬件驱动程序、但我不确定主代码中的过程是怎样的。
有没有任何示例?
我曾尝试过这种方法、但我认为一定会有一些缺失。
如果我在 mibspipmodeSet 中使用 DATA_FORMAT0、则 TG0_RX_DATA 的值始终处于最大值、如果我使用其他数据格式之一、我会获得正确的结果、但仅从 SOMI0获取一个结果、不会看到并行。我在 HALCoGen 中选择了数据格式0、 因此、我认为这应该是严格的、但除了执行这个功能之外、还有更多的事情要做...
我还想知道 、在移位寄存器完全填充 TG0_RX_DATA 之后、我是否看到更新的 RXBUFFER 值 、或者我是否必须查看其他地方? 我计划对 RXINT 标志触发的四次循环使用某种 A、以将最终结果分为四个变量、这是正确的方法吗?
如果您能帮我解决问题、我会非常高兴。
谢谢、
Sarah
#include "hl_sys_common.h" #include "hl_system.h" #include "hl_sys_dma.h" #include "hl_mibspi.h" uint16 TG0_RX_DATA[1]; uint16 spiBuffer[]={0}; int main (void) { /*- initializing mibspi* ;启用 tg_pspi4 pspi4;启用 tg_spiSpi_spi4 pspi4 pspi_spi4;spi4 pspiBt5 spi_spiBt5;spiSpi_spi_spi_spiBt//将 somi3放入 rxbuffer 4线并行 SPI while (1) { mibspiSetData (mibspiREG5、0、txBuffer);//设置 mibspi 传输 TG 0 mibspiTransfer (mibspiREG5、0);//启动 mibspi 传输 TG 0 while (!(mibspiIsTransferComplete (mibspiREG5、0))));//等待传输完成 mibspiGetData (mibspiREG5、0、TG0_RX_DATA);//从 mibspi 传输组0获取数据 } 返回0; }