本文主要是介绍Cube MX 开发高精度电流源跳坑过程/SPI连接ADS1255/1256系列问题总结/STM32 硬件SPI开发过程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
-
- 概要
- 整体架构流程
- 技术名词解释
- 技术细节
- 小结
概要
1.使用STM32F系列开发一款高精度恒流电源,用到了24位高精度采样芯片ADS1255/ADS1256系列。
2.使用时发现很多的坑,详细介绍了每个坑的具体情况和实际的解决办法。
坑1:波特率设置要正确,错误的波特率读到的数据会是错误的,不稳定的
设置为18M,太高了,会导致采样不稳定。
设置为256K,效果很稳定,但采样速率会下降,大概40K的采样频率;
坑2:极性设置为边沿设置
2.1 设置极性为1时,采样数据不稳定:
2.2设置极性为2时,采样数据正常:
坑3:大小端设置
3.1 跟局芯片进行设置,ADS1255/ADS1256为大端模式
4.引脚配置
初始化代码过程如下:
MX_GPIO_Init();MX_SPI2_Init();MX_TIM2_Init();/* USER CODE BEGIN 2 */HAL_Delay(100);/* µÈ´ýÉϵçÎȶ¨£¬µÈ»ù×¼µçѹµç·Îȶ¨, BSP_ADS1255_Init() ÄÚ²¿»á½øÐÐ×ÔУ׼ */ BSP_ADS1255_Init(); ADC_ID = BSP_ADS1255_ReadID();BSP_ADS1255_Config(ADS1255_GAIN_2, ADS1255_10SPS); /* ÅäÖÃADC²ÎÊý£º ÔöÒæ1:1, Êý¾ÝÊä³öËÙÂÊ 100Hz */ HAL_TIM_Base_Start_IT(&htim2);
小结
SPI通信过程中,需要注意每一个配置的细节,马马虎虎去设置参数,最终会导致你在调试过程中花费大量的时间去找各种的Bug,很难快速跟上项目开发的节奏。
这篇关于Cube MX 开发高精度电流源跳坑过程/SPI连接ADS1255/1256系列问题总结/STM32 硬件SPI开发过程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!