当前位置: 首页 > news >正文

永久免费网站建设系统市场调研报告总结

永久免费网站建设系统,市场调研报告总结,公司网站能自己做么,赚钱网站导航相关代码编写 配置好后点击生成代码,在生成代码的adc.c文件中的初始化函数MX_ADC1_Init中添加如下代码: HAL_ADCEx_Calibration_Start(&hadc1); /* 校准ADC */HAL_ADC_Start_DMA(&hadc1,(uint32_t*)ADC_Value,ADC_DMA_…

相关代码编写

配置好后点击生成代码,在生成代码的adc.c文件中的初始化函数MX_ADC1_Init中添加如下代码:

	HAL_ADCEx_Calibration_Start(&hadc1);                         /* 校准ADC */HAL_ADC_Start_DMA(&hadc1,(uint32_t*)ADC_Value,ADC_DMA_BUF_SIZE);

在stm32f1xx_it.c文件的DMA中断服务函数DMA1_Channel1_IRQHandler中添加如下代码 :

	if(__HAL_DMA_GET_FLAG(&hdma_adc1,DMA_FLAG_TC1))//传输完成{g_adc_dma_sta = 1;//标志位置1__HAL_DMA_CLEAR_FLAG(&hdma_adc1,DMA_FLAG_TC1);//清除传输完成标志位}

ADC的采集代码如下所示:

/* Includes ------------------------------------------------------------------*/
#include "adc_driver.h"uint16_t ADC_Value[4] = {0};
uint8_t g_adc_dma_sta = 0;/********************************************************************************************************
*    功能说明: 获取ADC的数据
*    形    参: 无
*    返 回 值: 无
**********************************************************************************************************/
void ADC_GetAdcValues(void)
{uint16_t  sum = 0;float Vol = 0;uint16_t percent = 0;//    HAL_ADC_Start_DMA(&hadc1, ADC_Value, 10); // 采样10个值存储在ADC_Value[10]数组中if (g_adc_dma_sta == 1){for(int j = 0; j < 4; j++) // 遍历4个通道,轮流取值{sum = 0;for(int i = 0; i < 1; i++){
//				printf("****************sum[x] = %d\r\n",ADC_Value[j]);sum += ADC_Value[(4 * i) + j]; // 每个通道采集l0次数据,进行10次累加}Vol = (float)sum/4096 * 2.5;percent = (float)sum/4096 * 100;//			sum = sum / 10; // 取平均值
//			printf("sum[%d] = %d\r\n",j,sum);
//			printf("Vol[%d] = %.2f\r\n",j,Vol);if(j == 0){Can_data.Txbuf[2] = percent;printf("*****大制动区= %d %%\r\n",percent);}if(j == 1){Can_data.Txbuf[0] = percent;printf("制动区= %d %%\r\n",percent);}}
//		printf("sum[x] = %d\r\n",sum);g_adc_dma_sta = 0;                              // 清除DMA采集完成标志位
//		HAL_ADC_Start_DMA(&hadc1, (uint32_t *)ADC_Value, 4); // 开启下一次ADC和DMA采集
//		HAL_ADC_Start(&hadc1);//}
}

问题总结

使能连续转换模式  hadc1.Init.ContinuousConvMode = ENABLE;,程序才会一直进 DMA中断函数DMA1_Channel1_IRQHandler

 

ADC校准可以使ADC采集值和 Vref参考值(基准电压)接近。但是f4系列不支持。

    HAL_ADCEx_Calibration_Start(&hadc1);                         /* 校准ADC */

http://www.zhongyajixie.com/news/50588.html

相关文章:

  • 聊城网站优化公司朋友圈推广怎么收费
  • 平顶山市湛河区建设局网站如何做网站关键词优化
  • phpcms网站title网站视频播放代码
  • 个人开店做外贸网站菏泽百度推广公司电话
  • 网站策划岗位职责槐荫区网络营销seo
  • dw怎么做班级网站谷歌seo优化推广
  • 合肥论坛百度搜索关键词优化方法
  • 建设工程网站资质人员查询百度搜索下载安装
  • 网站设计模式有哪些网页设计与制作
  • 怎么做家庭网站网站建设案例
  • 提高景区网站建设网络营销成功案例ppt
  • 网站建设qianhaiyou企业邮箱入口
  • 哪家网站建设最好北京百度竞价
  • 网站建设管理软件新品牌推广方案
  • wordpress赌博关于华大18年专注seo服务网站制作应用开发
  • 一个真正的网站需要怎么做网站开发流程的8个步骤
  • 个人网站备案查询seo关键词排优化软件
  • 佛山中小企业外贸网站建设推广合肥网络推广公司
  • 运河网站制作seo是如何做优化的
  • 宁波哪里有做网站的谷歌关键词
  • 武汉网站建设哪家便宜近期重大新闻
  • 建立校园网站简述网络营销的含义
  • 网站建设工具的品牌网络营销是什么?
  • 石家庄做网站 vtkj宁波seo推广优化哪家强
  • 怎么做自建站企业seo外包公司
  • 产品发布网站的装饰怎么做临沂seo顾问
  • 个人做考试类网站百度上海推广优化公司
  • 做网站多少钱 佛山代写文章接单平台
  • 上海 网站建设南安seo
  • 电子商务就业方向seo如何优化关键词