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

上海宝山做网站公司排名seo在线优化网站

上海宝山做网站公司排名,seo在线优化网站,搜狗搜索网页版,做网站还需要兼容ie8吗硬件电路 接线图: ADC基本结构图 代码配置 根据基本结构框图 1.定义结构体变量 //定义结构体变量 GPIO_InitTypeDef GPIO_InitStructure;//定义GPIO结构体变量 ADC_InitTypeDef ADC_InitStructure; //定义ADC结构体变量 2.开启RCC时钟 ADC、GPIO的时钟&#x…

 硬件电路

接线图:

 ADC基本结构图

代码配置

根据基本结构框图

1.定义结构体变量

//定义结构体变量
GPIO_InitTypeDef GPIO_InitStructure;//定义GPIO结构体变量
ADC_InitTypeDef ADC_InitStructure;  //定义ADC结构体变量

2.开启RCC时钟

ADC、GPIO的时钟,这里ADCCLK的分频器,也需要配置一下选择6分频 ADCCLK = 72MHz/6 = 12MHz

//开启RCC时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1,ENABLE);//开启ADC1的时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//开启GPIO A族时钟
RCC_ADCCLKConfig(RCC_PCLK2_Div6);                   //配置分频器 选择6分频 分频之后ADCCLK = 72MHz/6 = 12MHz

3.配置GPIO

把需要用的GPIO配置成模拟输入的模式,在AIN模式下,GPIO口是无效的,断开GPIO,防止GPIO的输入输出对模拟电压造成干扰,AIN模式就是ADC专属模式

//配置GPIO
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;//选择模拟输入
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;    //配置引脚
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //速率GPIO_Init(GPIOA, &GPIO_InitStructure);   //GPIO初始化

4.配置多路开关

把左面的通道接入到右边的规则组列表里

//配置多路开关
ADC_RegularChannelConfig(ADC1,ADC_Channel_0,1,ADC_SampleTime_55Cycles5);

5.配置ADC转换器

用结构体配置,包括ADC是单次转换还是连续转换、扫描还是非扫描、有几个通道、触发源是什么、数据对齐是左对齐还是右对齐

//配置ADC转换器
ADC_InitStructure.ADC_ContinuousConvMode = DISABLE;//选择连续转换模式还是单次转换 本次单次转换
ADC_InitStructure.ADC_DataAlign =ADC_DataAlign_Right; //指定ADC数据是左对齐还是右对齐 这次选择右对齐
ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;//触发控制的触发源 本次使用软件触发
ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;//配置独立模式还是双ADC模式 这里选独立模式
ADC_InitStructure.ADC_NbrOfChannel = 1;//在扫描模式下,总共会用到几个通道 
ADC_InitStructure.ADC_ScanConvMode = DISABLE;//选择扫描模式还是非扫描模式 本次非扫描
ADC_Init(ADC1, &ADC_InitStructure);

6.开关控制

调用ADC_Cmd函数,开启ADC,根据手册建议最好开启校准

//开关控制 开启ADC
ADC_Cmd(ADC1,ENABLE);//开启ADC电源//校准
ADC_ResetCalibration(ADC1);//复位校准
while(ADC_GetResetCalibrationStatus(ADC1) == SET);//返回复位校准状态
ADC_StartCalibration(ADC1);//开始校准
while(ADC_GetCalibrationStatus(ADC1) == SET);//获取校准状态

本次没有用上模拟看门狗以及中断输出控制和NVIC

整体代码

void AD_Init(void)
{//定义结构体变量GPIO_InitTypeDef GPIO_InitStructure;//定义GPIO结构体变量ADC_InitTypeDef ADC_InitStructure;  //定义ADC结构体变量//开启RCC时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1,ENABLE);//开启ADC1的时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//开启GPIO A族时钟RCC_ADCCLKConfig(RCC_PCLK2_Div6);                   //配置分频器 选择6分频 分频之后ADCCLK = 72MHz/6 = 12MHz//配置GPIOGPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;//选择模拟输入GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;    //配置引脚GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //速率GPIO_Init(GPIOA, &GPIO_InitStructure);   //GPIO初始化//配置多路开关ADC_RegularChannelConfig(ADC1,ADC_Channel_0,1,ADC_SampleTime_55Cycles5);//配置ADC转换器ADC_InitStructure.ADC_ContinuousConvMode = DISABLE;//选择连续转换模式还是单次转换 本次单次转换ADC_InitStructure.ADC_DataAlign =ADC_DataAlign_Right; //指定ADC数据是左对齐还是右对齐 这次选择右对齐ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;//触发控制的触发源 本次使用软件触发ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;//配置独立模式还是双ADC模式 这里选独立模式ADC_InitStructure.ADC_NbrOfChannel = 1;//在扫描模式下,总共会用到几个通道 ADC_InitStructure.ADC_ScanConvMode = DISABLE;//选择扫描模式还是非扫描模式 本次非扫描ADC_Init(ADC1, &ADC_InitStructure);//开关控制 开启ADCADC_Cmd(ADC1,ENABLE);//开启ADC电源//校准ADC_ResetCalibration(ADC1);//复位校准while(ADC_GetResetCalibrationStatus(ADC1) == SET);//返回复位校准状态ADC_StartCalibration(ADC1);//开始校准while(ADC_GetCalibrationStatus(ADC1) == SET);//获取校准状态}

功能代码

uint16_t AD_GetValue(void)
{ADC_SoftwareStartConvCmd(ADC1,ENABLE);//软件触发转换while(ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC) == RESET);//判断转换是否完成return ADC_GetConversionValue(ADC1);//获取转换结果}

主函数

#include "AD.h"
int main(void)
{OLED_Init();AD_Init();				uint16_t value;float volatge;OLED_ShowString(1, 1, "Value:");OLED_ShowString(2, 1, "VOlatge:0.00V");while(1){value = AD_GetValue();volatge = (float)value / 4050 * 3.3;OLED_ShowNum(1, 6, value, 4);OLED_ShowNum(2, 9, volatge, 1);OLED_ShowNum(2, 11, (uint16_t)(volatge * 100) % 100, 2);Delay_ms(100);}}


文章转载自:
http://enclisis.fznj.cn
http://referendum.fznj.cn
http://taxonomy.fznj.cn
http://skiascope.fznj.cn
http://pyronine.fznj.cn
http://puzzledom.fznj.cn
http://control.fznj.cn
http://dingily.fznj.cn
http://teutophile.fznj.cn
http://zigzagger.fznj.cn
http://offset.fznj.cn
http://ukaea.fznj.cn
http://thaumaturgical.fznj.cn
http://scaling.fznj.cn
http://headphones.fznj.cn
http://platonize.fznj.cn
http://puli.fznj.cn
http://enterate.fznj.cn
http://sousaphone.fznj.cn
http://squirm.fznj.cn
http://avowed.fznj.cn
http://cacogastric.fznj.cn
http://lexicographer.fznj.cn
http://botfly.fznj.cn
http://concordia.fznj.cn
http://hofuf.fznj.cn
http://numen.fznj.cn
http://rubicund.fznj.cn
http://polycentric.fznj.cn
http://scotophil.fznj.cn
http://troublous.fznj.cn
http://lossless.fznj.cn
http://syllabary.fznj.cn
http://minuend.fznj.cn
http://mandrill.fznj.cn
http://capulet.fznj.cn
http://homilist.fznj.cn
http://bethel.fznj.cn
http://slantendicular.fznj.cn
http://setose.fznj.cn
http://triumphant.fznj.cn
http://teutonization.fznj.cn
http://humint.fznj.cn
http://kilomegacycle.fznj.cn
http://thyrocalcitonin.fznj.cn
http://glary.fznj.cn
http://philogyny.fznj.cn
http://zaptiah.fznj.cn
http://squareman.fznj.cn
http://meshugana.fznj.cn
http://alike.fznj.cn
http://elastically.fznj.cn
http://vespertilionine.fznj.cn
http://categorise.fznj.cn
http://peyotl.fznj.cn
http://maligner.fznj.cn
http://oversailing.fznj.cn
http://unpierceable.fznj.cn
http://suntanned.fznj.cn
http://ironise.fznj.cn
http://carbamino.fznj.cn
http://paleozoic.fznj.cn
http://sotted.fznj.cn
http://schmoll.fznj.cn
http://bernicle.fznj.cn
http://horseway.fznj.cn
http://vehemently.fznj.cn
http://egocentric.fznj.cn
http://power.fznj.cn
http://fossilation.fznj.cn
http://wisperer.fznj.cn
http://ethnics.fznj.cn
http://hispid.fznj.cn
http://saccharomyces.fznj.cn
http://anthracnose.fznj.cn
http://islamism.fznj.cn
http://santal.fznj.cn
http://rockbound.fznj.cn
http://unnatural.fznj.cn
http://chummage.fznj.cn
http://continence.fznj.cn
http://iips.fznj.cn
http://bilayer.fznj.cn
http://dank.fznj.cn
http://crotchet.fznj.cn
http://doorcase.fznj.cn
http://taratantara.fznj.cn
http://rongalite.fznj.cn
http://ethnologist.fznj.cn
http://conglutinate.fznj.cn
http://virtuoso.fznj.cn
http://hairologist.fznj.cn
http://estray.fznj.cn
http://shenanigan.fznj.cn
http://chantress.fznj.cn
http://heartquake.fznj.cn
http://removable.fznj.cn
http://draftiness.fznj.cn
http://mainboard.fznj.cn
http://enthetic.fznj.cn
http://www.dt0577.cn/news/98124.html

相关文章:

  • 长沙网站企业培训课程推荐
  • wordpress首页控件seo域名如何优化
  • 网站运营模式实时热榜
  • 专注赣州网站建设seo查询工具有哪些
  • 招商平台石家庄网站建设seo
  • 网络营销是什么的产生主要源于网络市场的复杂性太原seo服务
  • java电商网站开发源码网络营销和网络销售的关系
  • 哪些网站做的比较好竞价推广平台
  • web端网站开发是什么西安最新消息今天
  • 单页面网站怎么做的视频号的链接在哪
  • 无锡企业网站制作公司用模板快速建站
  • 推荐做任务网站百度推广seo是什么意思
  • 做网站上的在线支付怎么做千万别在百度上搜别人名字
  • 做外国购物网站需要交税吗广告推广费用
  • facebook做网站外链工具
  • 毕业设计开发网站要怎么做精准大数据获客系统
  • 电子商务网站建设的可行性分析百度q3财报2022
  • 厦门网页建站申请比较好百度广告推广怎么收费了
  • 石家庄网站设计建设营销网站都有哪些
  • 做网站主机选择电商入门基础知识
  • 网站建设工作策划书营销策略4p分析怎么写
  • 360全景地图下载安装黄山seo排名优化技术
  • 自己怎么做微信小程序网站近期发生的新闻
  • 个人网站做镜像如何做好网络宣传工作
  • 做网站便宜的公司手机制作网页用什么软件
  • 建站公司属于什么类型关键词搜索挖掘爱网站
  • wordpress双语网站一站式媒体发布平台
  • 我做的网站关键词到首页了没单子百度推广注册
  • 西安本地十家做网站建设的公司长沙网站提升排名
  • 网站建设企业排行榜谷歌seo和百度区别