做关于什么样的网站好,货代去什么网站开发客户,高端网站建设大概多少费用,html5企业网站案例一、解决大坑 在项目进展#xff08;九#xff09;-完善ADS1285代码这边博客中#xff0c;看似解决了问题#xff0c;可以去读数据#xff0c;但是其实是给自己挖大坑#xff0c;这边博客就是来填坑的。 首先呢#xff0c;上篇博客说的是用0x12指令来读取数据#…一、解决大坑 在项目进展九-完善ADS1285代码这边博客中看似解决了问题可以去读数据但是其实是给自己挖大坑这边博客就是来填坑的。 首先呢上篇博客说的是用0x12指令来读取数据但是仔细再看数据手册会发现使用指令读取数据是在特定条件下的“RDATA命令用于在同一转换周期内重新读取数据或读取被读寄存器命令打断 的数据。”真的是被自己坑到了。 接下来是第二个大坑当时只是看到注意到了DRDY引脚了却忘了SYNC,RESET,PWDN这仨哥们忘记在cubeMX里面初始化他们的电平了我直接哭死。这三个引脚初始化时都需要需要全部拉成高电平。 HAL_GPIO_WritePin(GPIOB, ADS_X_PWDN_Pin|ADS_X_RESET_Pin|ADS_X_SYNC_Pin, GPIO_PIN_SET);GPIO_InitStruct.Pin ADS_X_PWDN_Pin|ADS_X_RESET_Pin|ADS_X_SYNC_Pin;GPIO_InitStruct.Mode GPIO_MODE_OUTPUT_PP;GPIO_InitStruct.Pull GPIO_NOPULL;GPIO_InitStruct.Speed GPIO_SPEED_FREQ_LOW;HAL_GPIO_Init(GPIOB, GPIO_InitStruct);配置完上面三个引脚之后便可以使用直接读取根据DRDY的变化来读取数据了。下面是DRDY的波形图 频率为1KHz正好对应配置的寄存器中1000SPS即1s采样1000次
data[3] (HIGHPOWER6)|(SPS10003)|(LINEAR_PHS2)|FIR;DRDY正常工作接下来便是按照数据手册的时序图来编写代码(DRDY拉低后我们要将CS拉低之后连续读取四个字节即最后的32位ADC采集数据) while(DRDY); // 等待DRDY拉低ADC_X_CS_LOW; // 拉低CS引脚for(i0;i4;i){HAL_SPI_Receive(hspi2,(uint8_t *)Data[i],1,10);// 读取数据}readDataFinal (Data[0]24)|(Data[1]16)|(Data[2]8)|(Data[3]);ADC_X_CS_HIGH; // 拉高CS引脚下面是仿真的视频 数据是读取回来了但是总是感觉跟实际数据对不上后续还得继续看数据手册今天先到这了。
二、往期回顾
项目进展一-晶振正常输出、焊接驱动芯片、查找芯片手册并学习 项目进展二-配置MCT8316ZR芯片主要学习如何根据数据手册配置外设等 项目进展三-电机驱动起来了发现了很多关键点也遇到了一些低级错误 项目进展四-双电机均可驱动配置模拟SPI调平仪功能初步实现 项目进展五-修复PCB电路板学习32位ADC芯片ADS1285 项目进展六-继续学习32位ADC芯片ADS1285 项目进展七-焊接ADS1285及其外围电路学习芯片的SPI部分 项目进展八-编写代码驱动ADS1285 项目进展九-完善ADS1285代码