主题中讨论的其他器件:MSP-EXP432E401Y、
工具/软件:Code Composer Studio
大家好、我在 TI 开发领域有些陌生、在嵌入式器件上也有一些新功能、如果我缺少一些明显的东西、请原谅我。
我目前正在使用 MSP-EXP432E401Y Launchpad 电路板、因此我可以使用项目中的所有 GPIO 以及一些 LED 来帮助开发/调试。
不使用 USB 或以太网。
我尝试与 ADS8586S 通信、以便能够同时对所有6个通道进行采样、并通过 SPI/SSI (串行)将它们发送到 MSP-EXP432E401Y。
我在天堂看到了关于器件串行通信的任何示例、我想尝试使用一些 SPI/SSI 示例自行实现、但如果有人有机会使用一些简单的代码来实现、我将非常感激。
问题是、我将 PP4和 PP5设置为捕获两个沿(中断)上的引脚更改、一个用于 BUSY、另一个用于 FRSTDATA (我很感谢采用这种方法的任何输入)。
中断工作、通过手动将引脚上拉或下拉(3.3V/0V)进行测试。
尝试启动转换时(CONVSTA && CONVSTB 连接到同一曲目)、从不会从 ADC 获取 BUSY 信号。
这是我设置并尝试从 PP5获取 BUSY 信号的初始部分
主:
GPIOPinWrite (ADC_RESET_PORT、ADC_RESET_PIN、ADC_RESET_PIN); DelayMicros (1);//创建的函数切换使用:SysCtlDelay (g_ui32SysClock / 3 / 1000000* ui32Micros); GPIOPinWrite (ADC_RESET_PORT、ADC_RESET_PIN、0); DelayMicros (1); GPIOPinWrite (ADC_convert_port、ADC_convert_PIN、ADC_convert_PIN); DelayMicros (1); while (Busy){ //只是等待,毕竟它很忙... };
中断:
//ADC_BUSY_PIN -忙处理程序-处理 ADC 忙状态。 void GPIOP5_IRQHandler (void) { uint32_t getIntStatus; getIntStatus = MAP_GPIOIntStatus (GPIO_PORTP_BASE、TRUE); MAP_GPIOIntClear (GPIO_PORTP_BASE、getIntStatus); BUSY = false; //UARTprintf ("忙=假?\n"); }
代码在(忙)时一直打开、因为我从未进入中断处理程序而进行检查。
已检查所有到达 ADS8586S 的信号、它们是否存在、来自5V 稳压器的 AVDD 5V、来自 MSP-EXP432E401Y 板的 DVDD 3.3V。 STBY = 3.3V、范围= 3.3V。
如果需要更多代码、请随时提出。
任何帮助都将不胜感激! 谢谢你。