你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

SPI通信

[复制链接]
NCVRLST 提问时间:2021-2-23 14:52 /
18ST金币
现在SPI通信中,接收到的数据与发出去的数据一样,详细如下,请帮忙看看该如何配置与编程?目前使用的程序如下,ID=cmd
void DACx1416_Read_ID1(void)
{
        //Power-on Device
  uint8_t SPICONFIG[3]={DACX1416_SPICONFIG,0x0A,0x86};
        SPI1_1_NSS_Enable();
        HAL_SPI_Transmit(&hspi1, SPICONFIG, 3, DACx1416_Timeout_3);
        SPI1_1_NSS_Disable();

        uint8_t cmd[3] = {0x81,0x00,0x00};
        uint8_t ID1[3] = {0x00,0x00,0x00};
        uint16_t DACX61416_ID = 0;
        //0x81=23-16位,R/W读写位(1x)+DEVICEID Register 01h
  SPI1_1_NSS_Enable();   
  /* Send the read ID command */
  HAL_SPI_Transmit(&hspi1, cmd, 3, DACx1416_Timeout_3);  
  /* Reception of the data */
  HAL_SPI_Receive(&hspi1, ID1, 3, DACx1416_Timeout_3);
        SPI1_1_NSS_Disable();
        printf("%x%x\n",ID1[1],ID1[2]);
        DACX61416_ID = ((ID1[1] << 8) | ID1[2]) & 0xFC;
        printf("%x\n",DACX61416_ID);
        //if(DACX61416_ID == 0x24C || ID1[0] == 0x81)
        if(DACX61416_ID == 0x24C)
        {
    HAL_GPIO_WritePin(VIO_1V8_2_EN_GPIO_Port, VIO_1V8_2_EN_Pin, GPIO_PIN_RESET);
          HAL_GPIO_WritePin(VAA_VDD_5V_2_EN_GPIO_Port, VAA_VDD_5V_2_EN_Pin, GPIO_PIN_RESET);
        }
}

SPI_2.PNG
SPI_1.PNG
SPI_3.PNG
SPI_4.PNG
收藏 评论1 发布时间:2021-2-23 14:52

举报

1个回答
NCVRLST 回答时间:2021-2-24 15:33:28
问题已自己解决

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版