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

手机网站快速排名公司网站app怎么做

手机网站快速排名,公司网站app怎么做,海口智能建站详情,网站开发框架的工具前言: 定时器的三大功能还剩下最后一个捕获,而这在蓝桥杯嵌入式开发板上也有555定时器可以作为信号发生器供定时器来测量。 原理图部分: 开发板上集成了两个555定时器,一个通过跳线帽跟PA15相连,最终接到了旋钮R40上&…

前言:

        定时器的三大功能还剩下最后一个捕获,而这在蓝桥杯嵌入式开发板上也有555定时器可以作为信号发生器供定时器来测量。

原理图部分:

        

 

         开发板上集成了两个555定时器,一个通过跳线帽跟PA15相连,最终接到了旋钮R40上,另一个接到了旋钮R39上。了解了这些,我们下一步到STM32Cubemx上配置就有数了。

STM32Cubemx配置:

        我个人是将PA15设定为了TIM2_CH1

         PB4设定为了TIM16_CH1

         接下来,我们进入TIM2和TIM16的配置界面,配置对应的通道

        然后我们再配置一下响应的参数,分频系数我们设置为79,重装载值,我们就不需要改了

         然后我们再打开中断

         接下来,我们对PB4进行配置,点击TIM16

         设置分频系数和使能中断

 

 代码部分:

        在原有的interrupt.c文件里面,我们新增加一个回调函数HAL_TIM_IC_CaptureCallback,这个回调函数在stm32g4xx_hal_tim.h的2550行的位置,如果大家记不住的话,可以去看一下

         然后,我们可以重新书写回调函数的代码了

unsigned int ccr1_val1 = 0,ccr1_val2 = 0;
unsigned int frq1 = 0,frq2 = 0;
void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim)		//中断回调函数
{if(htim->Instance == TIM2)	//PA15{ccr1_val1 = HAL_TIM_ReadCapturedValue(htim,TIM_CHANNEL_1);__HAL_TIM_SetCounter(htim,0);			//读完之后,将计时值清零frq1 = (80000000/80)/ccr1_val1;			//计算频率HAL_TIM_IC_Start(htim,TIM_CHANNEL_1);}if(htim->Instance == TIM16)	//PB4{ccr1_val2 = HAL_TIM_ReadCapturedValue(htim,TIM_CHANNEL_1);__HAL_TIM_SetCounter(htim,0);			//读完之后,将计时值清零frq2 = (80000000/80)/ccr1_val2;			//计算频率HAL_TIM_IC_Start(htim,TIM_CHANNEL_1);}}

        然后在main.c里面开启定时器中断

HAL_TIM_IC_Start_IT(&htim2,TIM_CHANNEL_1);	//开启定时器,R39 -> PB4
HAL_TIM_IC_Start_IT(&htim16,TIM_CHANNEL_1);	//开启定时器,R40 -> PA15

        这就是最终的一个效果 

 补发:

        采用杜邦线将PA7和PB4相连,将PA6与PA15相连,就可以测量一下上一篇博客定时器输出可调PWM 中提到的PWM频率,如图所示

         这里,我们甚至还可以进一步测量其占空比。通过一个定时器通道去测量整个周期的时间,再用一个定时器的通道去测量高电平持续的时间,其中,高电平持续的时间可以通过检测下变沿来得出。

        接下来,我们进入到STM32Cubemx中去配置一下参数,因为我们的TIM16定时器只有一个通道,所以这里,我们只能用TIM2来做一下占空比测量

        选择一个通道,设定为间接模式

         将间接模式的通道的触发方式设定为下降沿触发

  

        点击生成代码

        我们再进入一下中断回调函数,增加几句代码,在main.c里面只需要声明几个变量即可,不需要额外开启第二通道的函数。

float ccrl_val1a,ccrl_val1b = 0;
unsigned int frq1 = 0,frq2 = 0;
float duty1,duty2 = 0;void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim)		//中断回调函数
{if(htim->Instance == TIM2)	//PA15{if(htim->Channel == HAL_TIM_ACTIVE_CHANNEL_1)//中断消息来源,选择直接输入通道{ccrl_val1a = HAL_TIM_ReadCapturedValue(htim,TIM_CHANNEL_1);	//直接	ccrl_val1b = HAL_TIM_ReadCapturedValue(htim,TIM_CHANNEL_2);	//间接__HAL_TIM_SetCounter(htim,0);		    //计数值清零frq1 = (80000000/80)/ccrl_val1a;		//计算频率duty1 = (ccrl_val1b/ccrl_val1a) * 100;  //计算占空比HAL_TIM_IC_Start(htim,TIM_CHANNEL_1);	//重新开启定时器通道一HAL_TIM_IC_Start(htim,TIM_CHANNEL_2);	//重新开启定时器通道二}}if(htim->Instance == TIM16)	//PB4{ccr1_val2 = HAL_TIM_ReadCapturedValue(htim,TIM_CHANNEL_1);__HAL_TIM_SetCounter(htim,0);			//读完之后,将计时值清零frq2 = (80000000/80)/ccr1_val2;			//计算频率HAL_TIM_IC_Start(htim,TIM_CHANNEL_1);}}

        最终效果如下:

 

http://www.yayakq.cn/news/88302/

相关文章:

  • 那个可以做棋牌网站电商平台怎么找商家
  • 网站加入站长统计用wordpress建站
  • 网站设计制作体会一般网站建设企业
  • 基金网站建设国际营销网站建设
  • 个人求职网页制作seo网站外包公司
  • 新手学做网站学要做哪些重庆建设工程信息网查询平台入口官网
  • 企业品牌类网站有哪些十大社交电商购物平台
  • 合肥住房和建设厅网站首页网站后台怎么制作
  • 个人门户网站备案用户体验设计是什么
  • 连云港做网站哪里好网站文字广告代码
  • 免费发布信息的网站广告设计培训机构哪家好
  • physon可以做网站wordpress vue 关系
  • 珠海汽车网站建设企业查询软件免费
  • 社区推广活动方案邢台优化网站排名
  • 廊坊集团网站建设做司法考试题目的网站
  • html5 网站源代码网站开发职业前景
  • 程序员是不是都是做网站的电子网站建设策划模板
  • 绵阳建设招投标在哪个网站iis搭建网站怎么做前端
  • 网站群建设 效果广州网站制作哪家全面
  • 网站内容检测舟山网站建设设计
  • wordpress短代码教程优化精灵
  • 网站建设内容模板下载免费游戏网站制作
  • 阿里云如何上传网站wordpress 手机管理
  • 网站建设丶金手指下拉11黄冈做学生互评的网站
  • 阿雷网站建设做装修的人到什么网站找工作
  • 网站空间和虚拟主机丹东建设网站
  • wordpress的vps建站流程做图库网站用什么系统软件
  • 兰州网站制作公司在哪里做农村电子商务的网站有哪些内容
  • 如何查询到某网站开发商wordpress语言
  • 网站建设优化排名推广国内做网站的企业