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

兼职网站建设收费淘宝代码网站有哪些

兼职网站建设收费,淘宝代码网站有哪些,网站建设与分工的论文,WordPress写文章一直转本次实现的是ADC实现数字信号与模拟信号的转化#xff0c;数字信号时不连续的#xff0c;模拟信号是连续的。 1.ADC转化的原理 模拟-数字转换技术使用的是逐次逼近法#xff0c;使用二分比较的方法来确定电压值 当单片机对应的参考电压为3.3v时#xff0c;0~ 3.3v(模拟信…本次实现的是ADC实现数字信号与模拟信号的转化数字信号时不连续的模拟信号是连续的。 1.ADC转化的原理 模拟-数字转换技术使用的是逐次逼近法使用二分比较的方法来确定电压值 当单片机对应的参考电压为3.3v时0~ 3.3v(模拟信号)对应0~4095数字信号假如我们知道一个数字信号的值为x,那么他对应的模拟信号 x/4095y/3.3 y就是x对应的模拟信号 假如要确定0.8v对应的数字信号的值 他会将0.8v电压保存在电容中然后先和3.3v的一半对应的1.65v(2048)做比较如果小于1.65v的话12位最高位就是0因为1000 0000 0000 对应的就是2048 接着就是和1.65的一半比较0.825v(1024)0.8v,所以12位中倒数第二高位就是0因为0.8251024对应二进制就是0100 0000 0000 接着0.8v和0.825的一半比较-0.4125v(512),0.8v0.4125v,所以第三位为1因为512对应的二进制为0010 00000000 按这个方法依次确定0.8v对应的12位的二进制数然后这个二进制对应的十进制就是0.8v对应的数字信号的值 所以对应的过程是1.启动ADC 2.采样转换 3.获取计算针对STM32F103C8T6芯片有10个外部通道和两个内部通道内部温度传感器内部参考电压进行ADC的转化ADC1和ADC2,两个转化结构每个转化结构都有一个注入组和一个规则组我们现在只讲讲规则组我们要对一个通道的电压值进行采集的时候我们需要将这个通道注册进这个通道中当启动ADC然后采样转化的电压值就会放在规则通道数据寄存器12位二进制值中等待获取 2.实操 单片机有一个电位器通过旋转电位器使得PA5的输出电压发送变化我们将其输出到串口上去 对应的PA5刚好是ADC1的通道5 char message[50];float v0.0;int value0;/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){ HAL_ADC_Start(hadc1);//开启ADC1HAL_ADC_PollForConversion(hadc1,HAL_MAX_DELAY);//等待转换valueHAL_ADC_GetValue(hadc1);//从寄存器中获取电压值v(value/4095.0)*3.3;//转模拟信号sprintf(message,v:%.2f,value:%d,v,value);HAL_UART_Transmit(huart2,message,strlen(message),HAL_MAX_DELAY);HAL_Delay(500);/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}但是发现一个问题就是电位器扭到头 最大为3.25v,达不到3.3v,这是因为手册里面说 char message[50];float v0.0;int value0;HAL_ADCEx_Calibration_Start(hadc1);//校准/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){HAL_ADC_Start(hadc1);//开启ADC1HAL_ADC_PollForConversion(hadc1,HAL_MAX_DELAY);//等待转换valueHAL_ADC_GetValue(hadc1);//从寄存器中获取电压值v(value/4095.0)*3.3;//转模拟信号sprintf(message,v:%.2f,value:%d,v,value);HAL_UART_Transmit(huart2,(uint8_t*)message,strlen(message),HAL_MAX_DELAY);HAL_Delay(500);/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}其实还有一种是循环转换只需要开启一次ADC即可 char message[50];float v0.0;int value0;HAL_ADCEx_Calibration_Start(hadc1);//校准HAL_ADC_Start(hadc1);//开启ADC1HAL_ADC_PollForConversion(hadc1,HAL_MAX_DELAY);//等待转换/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){valueHAL_ADC_GetValue(hadc1);//从寄存器中获取电压值v(value/4095.0)*3.3;//转模拟信号sprintf(message,v:%.2f,value:%d,v,value);HAL_UART_Transmit(huart2,(uint8_t*)message,strlen(message),HAL_MAX_DELAY);HAL_Delay(500);/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}3.ADC多路采集 在前面说过如果要获取对应通道的电压值就需要将这个通道注册进规则组中然后数据准备就绪 HAL_ADC_PollForConversion函数不断的检测ADC状态寄存器中转换结束标志位EOC是否为1如果是转换完成将转换的值放入规则通道数据寄存器中然后调用HAL_ADC_GetValue读取规则通道数据寄存器然后对应的ADC状态寄存器中的转换结束标志位置0. 在多采集中需要将多个通道打开实现转换会按照规则组注册顺序依次将对应通道的电压值放入规则通道数据寄存器然后写到内存中。 我们可以使用DMA来对规则通道数据寄存器的值搬运到内存当搬运完成就会触发DMA完成中断进行处理转换后的值 本次实现热敏电阻电位器单片机内部温度内部参考电压的ADC转换并通过串口将其发送 PA4,PA5 ADC在ADC1的通道4通道5上以及内部温度通道内部参考电压通道 注意将四个通道的多久采集值调到四个通道转换最大值确保数据都已经被转换 uint16_t data[4]; char message[50]; void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc) {if(hadchadc1){sprintf(message,%d %d %d %d,data[0],data[1],data[2],data[3]);HAL_UART_Transmit(huart2, (uint8_t*)message,sizeof(message),HAL_MAX_DELAY);}} int main(void) {HAL_Init();HAL_ADCEx_Calibration_Start(hadc1);//校准while (1){HAL_ADC_Start_DMA(hadc1,(uint32_t*)data,4);//开启ADC,DMA完成搬运调用DMA完成中断中断在中断中发送转换值到串口HAL_Delay(500);/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}/* USER CODE END 3 */ }依次是电位器热敏电阻内部温度内部参考电压未转化为模拟电压 除此之外我们可以使用循环转换和DMA的循环搬运就可以实现开启一次ADC就可以一直将转换后的四个值发送到串口因为会一直转换不用知道什么时候转换完成我们将发送到串口放到while中 uint16_t data[4]; char message[50];int main(void) {HAL_Init();HAL_ADCEx_Calibration_Start(hadc1);//校准HAL_ADC_Start_DMA(hadc1,(uint32_t*)data,4);//开启ADC,DMA完成搬运调用DMA完成中断中断在中断中发送转换值到串口while (1){sprintf(message,%d %d %d %d,data[0],data[1],data[2],data[3]);HAL_UART_Transmit(huart2, (uint8_t*)message,sizeof(message),HAL_MAX_DELAY);HAL_Delay(500);/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}/* USER CODE END 3 */ }
http://www.w-s-a.com/news/962001/

相关文章:

  • 金峰辉网站建设菏泽财富中心网站建设
  • 怎么做网站站长视频企业网站开发意义
  • 网站创建多少钱商标自助查询系统官网
  • 免费做App和网站的平台广州做网站推广的公司
  • 衡水做网站推广的公司wordpress相册滑动
  • 不用域名也可以做网站公司网站建设制作难么
  • 学做网站培训机构wordpress 图片拉伸
  • 成都捕鱼网站建设wordpress自定义文章类别
  • wordpress网站怎么加速湖北网站建设企业
  • 迁安做网站中的cms开发南平网站建设公司
  • 肥西县住房和城乡建设局网站代驾系统定制开发
  • 网站建设明细报价表 服务器qq是哪家公司的产品
  • html链接网站模板wordpress怎么调用简码
  • 网站域名怎么查简述网站推广的五要素
  • 咸宁网站设计公司app安装下载
  • 丝网外贸做哪些网站最优的赣州网站建设
  • 如何做网站不被查网站开发工程师岗位说明书
  • 做网站需要vps吗网站建设后怎样发信息
  • 网站建立风格二手交易网站开发可参考文献
  • 成都微信网站开发优化大师优化项目有哪些
  • 哪个网站做自考题目免费郑州网站建设公司qq
  • 地方性的网站有前途顺的网络做网站好不好
  • 学校申请建设网站的原因不要网站域名
  • 推荐响应式网站建设子域名查询工具
  • 如何建设学校的微网站广告推广是什么
  • 设计类专业哪个就业前景好网站建设seoppt
  • 济南建站公司网站网站友链查询源码
  • 校园失物招领网站建设涪陵网站建设公司
  • 怎么做盗号网站手机网站建设需要租用什么科目
  • 成品网站是什么意思沈阳seo推广