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

食品公司网站模板上海百度关键词优化公司

食品公司网站模板,上海百度关键词优化公司,网上学设计的培训机构,如何建设合法的网站目录 背景 程序 第一步、使能PCLK1外设时钟​编辑 第二步、时基单元配置 第三步、配置NVIC(设置定时中断优先级)​编辑 第四步、使能溢出中断 第五步、使能定时器 第六步、填写中断处理函数(ISR) 背景 在单片机开发当中&…

目录

背景

程序

第一步、使能PCLK1外设时钟​编辑

第二步、时基单元配置

第三步、配置NVIC(设置定时中断优先级)​编辑

第四步、使能溢出中断

第五步、使能定时器

第六步、填写中断处理函数(ISR)


背景

在单片机开发当中,我们可以经常看到定周期函数。这些定周期函数都是通过定时器最基本定时中断功能。如果学习前面的PWM。会更快的了解相关概念。

时基单元
可编程通用定时器的主要部分是一个 16 位计数器和与其相关的自动装载寄存器。这个计数器可
以向上计数、向下计数或者向上向下双向计数。此计数器时钟由预分频器分频得到。
计数器、自动装载寄存器和预分频器寄存器可以由软件读写,在计数器运行时仍可以读写。
时基单元包含:
● 计数器寄存器 (TIMx_CNT)
● 预分频器寄存器 (TIMx_PSC)
● 自动装载寄存器 (TIMx_ARR)
自动装载寄存器是预先装载的,写或读自动重装载寄存器将访问预装载寄存器。根据在
TIMx_CR1 寄存器中的自动装载预装载使能位 (ARPE) 的设置,预装载寄存器的内容被立即或在
每次的更新事件 UEV 时传送到影子寄存器。当计数器达到溢出条件 ( 向下计数时的下溢条件 ) 并当
TIMx_CR1 寄存器中的 UDIS 位等于 ’0’ 时,产生更新事件。更新事件也可以由软件产生。随后会
详细描述每一种配置下更新事件的产生。

程序

//定时器时间计算公式Tout = ((重装载值+1)*(预分频系数+1))/时钟频率;
//例如:1秒定时,重装载值=9999,预分频系数=7199void TIM3_Init(u16 arr,u16 psc){  //TIM3 初始化 arr重装载值 psc预分频系数TIM_TimeBaseInitTypeDef     TIM_TimeBaseInitStrue;RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);//使能TIM3TIM_TimeBaseInitStrue.TIM_Period=arr; //设置自动重装载值TIM_TimeBaseInitStrue.TIM_Prescaler=psc; //预分频系数TIM_TimeBaseInitStrue.TIM_CounterMode=TIM_CounterMode_Up; //计数器向上溢出TIM_TimeBaseInitStrue.TIM_ClockDivision=TIM_CKD_DIV1; //时钟的分频因子,起到了一点点的延时作用,一般设为TIM_CKD_DIV1TIM_TimeBaseInit(TIM3,&TIM_TimeBaseInitStrue); //TIM3初始化设置TIM3_NVIC_Init (); //开启TIM3中断向量TIM_ITConfig(TIM3, TIM_IT_Update, ENABLE);//使能TIM3中断    TIM_Cmd(TIM3,ENABLE); //使能TIM3
}void TIM3_NVIC_Init (void){ //开启TIM3中断向量NVIC_InitTypeDef NVIC_InitStructure;NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQn;	NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x3;	//设置抢占和子优先级NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x3;NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;NVIC_Init(&NVIC_InitStructure);
}

第一步、使能PCLK1外设时钟

第二步、时基单元配置

输入到计数器的时钟为      72 000 000 /(7199 +1) = 1 000HZ

计数器溢出时长生Update中断频率: 10000HZ /(9999+1) =1HZ

为何+1有在PWM中介绍。

第三步、配置NVIC(设置定时中断优先级)

第四步、使能溢出中断

计数器溢出的中断就是update中断

第五步、使能定时器

第六步、填写中断处理函数(ISR)

void TIM3_IRQHandler(void){ //TIM3中断处理函数if (TIM_GetITStatus(TIM3, TIM_IT_Update) != RESET){	//判断是否是TIM3中断TIM_ClearITPendingBit(TIM3, TIM_IT_Update);//此处写入用户自己的处理程序GPIO_WriteBit(LEDPORT,LED1,(BitAction)(1-GPIO_ReadOutputDataBit(LEDPORT,LED1))); //取反LED1}
}

http://www.dtcms.com/wzjs/178448.html

相关文章:

  • 做团购的网站有哪些成人职业技能培训学校
  • 平邑网站建设沧州网站seo公司
  • 黄浦网站建设推广国内广告联盟平台
  • 做企业网站代码那种好市场营销策略
  • mobi域名网站长春网站制作企业
  • 网站建设期任务及总结宁波谷歌优化
  • 内江市住房和城乡建设局网站电话号码网站推广什么意思
  • 怎样做网站策划aso优化运营
  • 做网站的书籍推荐广州seo关键词
  • 自已做好的网站怎么做后台关键词如何排名在首页
  • 华为云做网站不能修改页面近期的新闻热点
  • 官方网站做背景墙厂家链接生成二维码
  • 番禺响应式网站开发2024年新冠第三波症状分析
  • 明星做代言的购物网站0品牌营销策划公司排名
  • 模板和网站的区别8个公开大数据网站
  • html5响应式网站建设平台公司个人怎么做网络推广
  • 负责公司网站产品的开发及整理新闻热点事件
  • 免费站推广网站不用下载关键词排名优化报价
  • 建立网站编程今日热点新闻事件摘抄2022
  • 做电子商务网站沈阳网站制作优化推广
  • 电脑做网站用word百度游戏风云榜
  • wordpress厨房家居主题关键词排名优化怎么样
  • 做网站的公司都有哪些焦作网络推广哪家好
  • app软件免费模板下载网站seo推广优化平台
  • 网站调用字体优化关键词的方法正确的是
  • ppt中超链接网站怎么做免费信息发布平台网站
  • 东莞市最新疫情情况百度seo关键词工具
  • wordpress伪静态不收录seo关键词排名优化品牌
  • 增城电子商务网站建设线上培训机构
  • 公司网站框架真正免费的网站建站平台有哪些