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

重庆模板网站哪个好今天最新的新闻

重庆模板网站哪个好,今天最新的新闻,化妆品做的不好的网站,较好的网站建设公司目录 ADC寄存器介绍(F1) ADC控制寄存器 1(ADC_CR1) ADC控制寄存器 2(ADC_CR2) ADC采样时间寄存器1(ADC_SMPR1) ADC采样时间寄存器2(ADC_SMPR2) ADC规则序列寄存器 1(ADC_SQR1) ADC规则序列寄存器 2(ADC_SQR2) ADC规则序列寄存器 3(ADC_SQR3) AD…

目录

ADC寄存器介绍(F1)

ADC控制寄存器 1(ADC_CR1)

ADC控制寄存器 2(ADC_CR2)

ADC采样时间寄存器1(ADC_SMPR1)

ADC采样时间寄存器2(ADC_SMPR2)

ADC规则序列寄存器 1(ADC_SQR1)

ADC规则序列寄存器 2(ADC_SQR2)

ADC规则序列寄存器 3(ADC_SQR3)

ADC规则数据寄存器 (ADC_DR)

ADC状态寄存器(ADC_SR)

​编辑

单通道ADC采集实验配置步骤

相关HAL库函数介绍

关键结构体介绍(F1)

相关HAL库函数介绍

关键结构体介绍


ADC寄存器介绍(F1

ADC控制寄存器 1(ADC_CR1)

         摘自:STM32F10xxx参考手册_V10(中文版).pdf11.12.2

ADC控制寄存器 2(ADC_CR2)

ADC采样时间寄存器1(ADC_SMPR1)

 摘自:STM32F10xxx参考手册_V10(中文版).pdf11.12.4

ADC采样时间寄存器2(ADC_SMPR2)

 摘自:STM32F10xxx参考手册_V10(中文版).pdf11.12.5

ADC规则序列寄存器 1(ADC_SQR1)

 摘自:STM32F10xxx参考手册_V10(中文版).pdf11.12.9

ADC规则序列寄存器 2(ADC_SQR2)

 摘自:STM32F10xxx参考手册_V10(中文版).pdf11.12.10

ADC规则序列寄存器 3(ADC_SQR3)

摘自:STM32F10xxx参考手册_V10(中文版).pdf11.12.11 

ADC规则数据寄存器 (ADC_DR)

摘自:STM32F10xxx参考手册_V10(中文版).pdf11.12.14

ADC状态寄存器(ADC_SR)

单通道ADC采集实验配置步骤

1,配置ADC工作参数、ADC校准

        HAL_ADC_Init()HAL_ADCEx_Calibration_Start()

2ADC MSP初始化

        HAL_ADC_MspInit()     配置NVICCLOCKGPIO

3,配置ADC相应通道相关参数

        HAL_ADC_ConfigChannel()

4,启动A/D转换

        HAL_ADC_Start()

5,等待规则通道转换完成

        HAL_ADC_PollForConversion()

6,获取规则通道A/D转换结果

        HAL_ADC_GetValue()

相关HAL库函数介绍

关键结构体介绍(F1

typedef struct 
{ ADC_TypeDef *Instance; 			/* ADC 寄存器基地址 */ ADC_InitTypeDef Init; 				/* ADC 参数初始化结构体变量 */ DMA_HandleTypeDef *DMA_Handle; 	/* DMA 配置结构体 */…… 
} ADC_HandleTypeDef;
typedef struct{ uint32_t DataAlign; 					/* 设置数据的对齐方式 */ uint32_t ScanConvMode; 				/* 扫描模式 */ FunctionalState ContinuousConvMode; 	/* 开启单次转换模式或者连续转换模式 */ 	uint32_t NbrOfConversion; 				/* 设置转换通道数目 */ FunctionalState DiscontinuousConvMode; 	/* 是否使用规则通道组间断模式 */ uint32_t NbrOfDiscConversion; 			/* 配置间断模式的规则通道个数 */ uint32_t ExternalTrigConv; 				/* ADC 外部触发源选择 */ 
} ADC_InitTypeDef;
typedef struct 
{ uint32_t Channel; 			/* ADC 转换通道*/ uint32_t Rank; 			/* ADC 转换顺序 */ uint32_t SamplingTime; 	/* ADC 采样周期 */ 
}  ADC_ChannelConfTypeDef;

单通道ADC采集(DMA读取)配置步骤

1,初始化DMA

        HAL_DMA_Init()

2,将DMAADC句柄联系起来

        __HAL_LINKDMA()

3,配置ADC工作参数、ADC校准

        HAL_ADC_Init()HAL_ADCEx_Calibration_Start()

4ADC MSP初始化

        HAL_ADC_MspInit()     配置NVICCLOCKGPIO

5,配置ADC相应通道相关参数

        HAL_ADC_ConfigChannel()

6,使能DMA数据流传输完成中断

        HAL_NVIC_SetPriority()HAL_NVIC_EnableIRQ()

7,编写DMA数据流中断服务函数

        DMAx_Channely_IRQHandler()

8,启动DMA,开启传输完成中断

        HAL_DMA_Start_IT()

9,触发ADC转换,DMA传输数据

        HAL_ADC_Start_DMA()

相关HAL库函数介绍

关键结构体介绍

typedef struct 
{ uint32_t Direction; 				/* 传输方向 */ uint32_t PeriphInc; 				/* 外设(非)增量模式 */ uint32_t MemInc; 				/* 存储器(非)增量模式 */ uint32_t PeriphDataAlignment; 	/* 外设数据宽度 */ uint32_t MemDataAlignment; 		/* 存储器数据宽度 */ uint32_t Mode; 					/* 操作模式 */ uint32_t Priority; 				/* DMA通道优先级 */ 
}DMA_InitTypeDef; 

在DMA_HandleTypeDef结构体中

typedef struct __DMA_HandleTypeDef
{DMA_Channel_TypeDef   *Instance;                       /*!< Register base address                  */DMA_InitTypeDef       Init;                            /*!< DMA communication parameters           */ HAL_LockTypeDef       Lock;                            /*!< DMA locking object                     */  HAL_DMA_StateTypeDef  State;                           /*!< DMA transfer state                     */void                  *Parent;                                                      /*!< Parent object state                    */  void                  (* XferCpltCallback)( struct __DMA_HandleTypeDef * hdma);     /*!< DMA transfer complete callback         */void                  (* XferHalfCpltCallback)( struct __DMA_HandleTypeDef * hdma); /*!< DMA Half transfer complete callback    */void                  (* XferErrorCallback)( struct __DMA_HandleTypeDef * hdma);    /*!< DMA transfer error callback            */void                  (* XferAbortCallback)( struct __DMA_HandleTypeDef * hdma);    /*!< DMA transfer abort callback            */  __IO uint32_t         ErrorCode;                                                    /*!< DMA Error code                         */DMA_TypeDef            *DmaBaseAddress;                                             /*!< DMA Channel Base Address               */uint32_t               ChannelIndex;                                                /*!< DMA Channel Index                      */  } DMA_HandleTypeDef;  

通过注册回调函数:(这里注册的是传输完成中断)

DMA_HandleTypeDef g_dma_handle_for_adc_struct;
g_dma_handle_for_adc_struct.XferCpltCallback = XferCpltCallback_for_adc;    

在中断发送时,通过DMA公共处理中断函数,来调用所注册的函数,这样就不需要手动判断传输完成标志位被置1,以及不需要手动清除中断标志位。

注意:使用注册回调函数方法,STM32程序莫名其妙不会进入所注册的回调函数中,所以建议使用寄存器方法
 

void DMA1_Channel1_IRQHandler(void)
{if (DMA1->ISR & (1<<1)){g_adc_dma_sta = 1;DMA1->IFCR |= 1 << 1;}
}

http://www.khdw.cn/news/1766.html

相关文章:

  • 企业站官网竞价代运营外包公司
  • 用源代码做网站网站推广的基本方法有哪些
  • 网站建设做网站需要多少钱成都网站维护
  • 网站建设算不算固定资产百度关键词优化软件
  • 水果网站推广电商网店
  • 兰州交通发展建设集团公司网站网络营销专业大学排名
  • 有人说做网站赌东莞网络推广策略
  • 网站建设公司中武汉建站公司
  • 做网站导航栏目怎么做天津seo推广软件
  • 个人优惠券网站怎么做比较靠谱的推广公司
  • 武汉手机网站建设公司怎么做盲盒
  • 做漫画视频在线观看网站推广优化seo
  • 做网站需要Excel表格吗培训计划方案模板
  • 网站设计字体大小网站访问量查询工具
  • 网页设计制作手机网站网页设计成品源代码
  • 网站域名云服务器是什么百度一下首页网页
  • 汽车网站flash模板关键词优化seo费用
  • 怎么查找公司的注册信息深圳专业seo
  • 苏州做网站哪家专业搜索引擎营销的方法包括
  • 水网站源码工厂管理培训课程
  • 残疾人信息无障碍网站建设有趣的软文
  • 百度代理公司查询湖南企业seo优化
  • wordpress响应式视频本地网络seo公司
  • excel做公司的小网站公司网站制作要多少钱
  • 展示型网站企业网站建设软件开发公司排行榜
  • 河南工程建设 协会网站百度官网app下载
  • 做翻译 英文网站要做网络推广
  • 网页框架代码青岛关键词优化seo
  • b2b2c网站建设公众号seo排名
  • 最好的响应式网站有哪些河北百度seo关键词排名