网站大量收购独家精品文档,联系QQ:2885784924

激光设备控制系统集成与开发STM32的ADC程序设计18STM32的ADC程序设计.ppt

激光设备控制系统集成与开发STM32的ADC程序设计18STM32的ADC程序设计.ppt

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
STM32的ADC程序设计 课程:《激光设备控制系统集成与开发》 主讲人:林烨 光机电应用技术国家教学资源库 教学目标: 掌握STM32 ADC的程序设计方法 光机电应用技术国家教学资源库 一、STM32的单次转换模式程序设计步骤 1)开启 PA 口时钟和 ADC1 时钟,设置 GPIO为模拟输入 2) 复位 ADC1,同时设置 ADC1 分频因子 3)初始化 ADC1 参数, 设置工作模式及规则序列 4)使能并校准ADC 5)读取ADC值 光机电应用技术国家教学资源库 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_ADC1, ENABLE ); //使能ADC1通道时钟 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN; GPIO_Init(GPIOA, GPIO_InitStructure); //PA0,PA1 作为模拟通道输入引脚 光机电应用技术国家教学资源库 1) 开启 PA 口时钟和 ADC1 时钟,设置 PA1 为模拟输入 1) 开启 PA 口时钟和 ADC1 时钟,设置 PA1 为模拟输入 ADC 通道与 GPIO 对应表 光机电应用技术国家教学资源库 2) 复位 ADC1,同时设置 ADC1 分频因子 ADC 时钟复位的方法是: ADC_DeInit(ADC1); 设置 ADC1 的分频因子: RCC_ADCCLKConfig(RCC_PCLK2_Div6); 光机电应用技术国家教学资源库 3) 初始化 ADC1 参数,设置 ADC1 的工作模式以及规则序列 void ADC_Init(ADC_TypeDef* ADCx, ADC_InitTypeDef* ADC_InitStruct); typedef struct { uint32_t ADC_Mode; FunctionalState ADC_ScanConvMode; FunctionalState ADC_ContinuousConvMode; uint32_t ADC_ExternalTrigConv; uint32_t ADC_DataAlign; uint8_t ADC_NbrOfChannel; }ADC_InitTypeDef; 光机电应用技术国家教学资源库 ADC_InitStructure.ADC_Mode = ADC_Mode_Independent; //ADC 工作模式:独立模式 ADC_InitStructure.ADC_ScanConvMode = DISABLE; //AD 单通道模式 ADC_InitStructure.ADC_ContinuousConvMode = DISABLE; // 单次转换模式 ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None; //转换由软件而不是外部触发启动 ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right; // 数据右对齐 ADC_InitStructure.ADC_NbrOfChannel = 1; //顺序进行规则转换 ADC 通道的数目 1 ADC_Init(ADC1, ADC_InitStructure); //根据指定的参数初始化外设 ADCx 光机电应用技术国家教学资源库 3) 初始化 ADC1 参数,设置 ADC1 的工作模式以及规则序列 4) 使能 ADC 并校准 使能指定的 ADC 的方法是: ADC_Cmd(ADC1, ENABLE); //使能指定的 ADC1 执行复位校准的方法是: ADC_ResetCalibration(ADC1); 执行 ADC 校准的方法是: ADC_StartCalibration(ADC1); //开始指定 ADC1 的校准状态 光机电应用技术国家教学资源库 5) 读取 ADC 值 设置规则序列 1 里面的通道,采样顺序, 以及通道的采样周期, 启动 ADC 转换。在转换结束后,读取 ADC 转换结果值。 设置规则序列通道以及采样周期的函数是: void ADC_RegularChannelConfig(ADC_TypeDef* ADCx, uint8_t ADC_Channel,uint8_t Rank, uint8_t ADC_S

您可能关注的文档

文档评论(0)

WanDocx + 关注
实名认证
内容提供者

大部分文档都有全套资料,如需打包优惠下载,请留言联系。 所有资料均来源于互联网公开下载资源,如有侵权,请联系管理员及时删除。

1亿VIP精品文档

相关文档