使用的是spi接线方式,需要注意DB7数据线也就是MISO,接一根就行,也不需要给ad7606发数据。而且最重要的是DB15需要接地,是串口并口选择线,会影响数据的稳定性。

用cubemx生成stm32的工程然后用GD的库编译,生成时可以选择

/* SPI1 init function */
void MX_SPI1_Init(void)
{

hspi1.Instance = SPI1;
  hspi1.Init.Mode = SPI_MODE_MASTER;
  hspi1.Init.Direction = SPI_DIRECTION_2LINES_RXONLY;
  hspi1.Init.DataSize = SPI_DATASIZE_16BIT;
  hspi1.Init.CLKPolarity = SPI_POLARITY_HIGH;
  hspi1.Init.CLKPhase = SPI_PHASE_2EDGE;
  hspi1.Init.NSS = SPI_NSS_SOFT;
  hspi1.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_256;
  hspi1.Init.FirstBit = SPI_FIRSTBIT_MSB;
  hspi1.Init.TIMode = SPI_TIMODE_DISABLE;
  hspi1.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
  hspi1.Init.CRCPolynomial = 7;
  if (HAL_SPI_Init(&hspi1) != HAL_OK)
  {
    Error_Handler();
  }

}

SPI_DIRECTION_2LINES_RXONLY,只读,就少一根线。

SPI_DATASIZE_16BIT,数据16位模式,每次可以读两字节。

可以直接用16位数组读取8通道的数据。但是hal库spi接收函数是uint8_t,可以直接强转。因为配置的是16位宽,是所以返回的就是16位数据。

如下:

uint16_t adRxBuf_M1[8] = {0};
int16_t adRxData_M1[8] = {0};
void ad7606_IRQSrc(void)
{
    uint8_t i=0;
    
    AD_CS_L();
    ad7606_RecvData(); //先读一次数据,再读8数据
    HAL_SPI_Receive(&hspi1, (uint8_t*)adRxBuf_M1, 8, 10);
    AD_CS_H();
    
    for(i=0; i<8; i++)
    {
        adRxData_M1[i] = ((int32_t)5000)*((float)((short)adRxBuf_M1[i])/32768);
    }
    
    ad7606_StartConv();
}

gd32f103 调试 ad7606相关推荐

  1. AD7606(并行8080方式)的STM32F103ZET6配置

    注:程序压缩包在我的下载中心有,逐个发有点多,请大家谅解,而且这个配置下面就是,主程序无非就是调用 最近在调试AD7606,发现网上的资料都是STM32F4系列的8080程序,故此将自己调试成功的F1 ...

  2. GD32F303调试小记(一)之USART(接收中断、接收空闲中断+DMA、发送DMA)

    前言 之前写了GD32F103调试小记(二)之USART(接收中断.接收空闲中断+DMA.发送DMA)一文.这次我们来看看GD32F303的USART是如何配置的,结合这两篇文章,相信大家GD32的U ...

  3. AD7606调试笔记

    文章目录 AD7606接线图 AD7606SPI通讯接口说明 AD7606时序图 AD7606时序图讲解 AD7606 STM32引脚配置 AD7606 程序模块 遇到的问题以及总结 由于训练电赛,需 ...

  4. 正点原子STM32F407+AD7606+RT-Thread Studio 调试记录

    介绍 项目要求采集6路压力传感器1-5V数据. 经过选型比较,选择AD7606 8通道采样器件,从淘宝买的采样模块. 时序图 说明:图一是整体的一个时序框图,大体的逻辑就是在使用AD7606之前要先复 ...

  5. AD7606调试笔记:采集多路不正常,少采集几路就正常

    AD7606调试笔记:采集多路不正常,少采集几路就正常了 文章目录 AD7606调试笔记:采集多路不正常,少采集几路就正常了 问题描述: 查错方案: 处理速度不够 时序不对 解决办法 延时 转换完成读 ...

  6. AD7606调试过程与源码

    公司有一个项目用到了AD7606,控制器用的STM32,使用的模式是并行16位模式,程序刷好之后发现读取的AD数据乱码,结果发现是因为AD7606的接地不对,当然这个问题是我师傅找出来的,查找的过程如 ...

  7. 带有128KB缓存的AD7606模拟采集板

    01简介 构建多路16bit的AD采集器,并可以进行高速缓存,对于采集静态电压,还是动态波形都非常有利.在23LC1024四线访问数据博文中介绍了对扩展SPI接口RAM(128kB)的四线制高速访问的 ...

  8. AD7606八通道AD采集模块测试

    前言 购买到的AD7606八通道AD转换模块可以用于各种实验.本文就该模块的基本性能进行测试. ▲ 模块基本信息 简介 相应的资料可以在AD7606百度网盘下载,提取文件密码:6f5g. https: ...

  9. AD7606数据转换

    AD7606 数据采集模块,16位ADC,8通道同时200KHz频率采集,每秒8*200K样本.SPI接口或8080 16位并口,可自行选择. AD7606 数据采集模块特性:使用AD7606 高精度 ...

最新文章

  1. 用Python解“爬动的蠕虫”题
  2. Database Connection String
  3. C#引用类型转换的几种方式
  4. 【theano-windows】学习笔记九——softmax手写数字分类
  5. Docker小白到实战之容器数据卷,整理的明明白白
  6. 欢乐纪中某A组赛【2019.7.10】
  7. AtCoder Grand Contest 025
  8. JOOQ事实:从JPA批注到JOOQ表映射
  9. 分享到系统面板_win7电脑没有nvidia控制面板怎么办【解决方法】
  10. spark BlockManager如何实现Broadcast广播
  11. oracle11g arm,linux最全的需要oracle11g的rpm包
  12. 【toplink】 位居第一的Java对象关系可持续性体系结构
  13. iOS:在OC中调用JS脚本
  14. Shell命令-线上查询及帮助之man、help
  15. html css屏蔽右键,css右键菜单.html
  16. 并行与分布式计算复习大纲 华南农业大学
  17. CSS3精灵(Sprites)技术
  18. 大师如何炼成 罗杰斯“不从众”的成功之道
  19. hackinglab.cn 注入关之一
  20. 2018/5/25-2018/6/7

热门文章

  1. 微信扫码下载app的前端界面代码
  2. Count the Tetris
  3. 用Mailgun方式在Drone pipeline中集成SMTP邮件通知
  4. 淮北晨刊报道我校学生募捐送温暖活动
  5. Windows多个桌面切换快捷键
  6. 微信公众号文章怎么插附件
  7. Adoby photoshop cs5永久序列号
  8. anker2017拆_Anker的Eufy Genie与Amazon Echo Dot:值得吗?
  9. Anker-一个研发工程师的电商梦
  10. 关于Android studio Translation插件提示“更新 TKK 失败,请检查网络连接”问题