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

专门做食品的网站wordpress小米商城主题

专门做食品的网站,wordpress小米商城主题,长宁区网站建设网站制,个人网站模板 html定时器:有4个独立通道:输入捕获;输出比较PWM生成;单脉冲模式输出;可通外部信号控制定时器(TIMx-ETR);支持针对定时的增量(正交)编码器、霍尔传感器电路通用定…

 定时器:有4个独立通道:输入捕获;输出比较PWM生成;单脉冲模式输出;可通外部信号控制定时器(TIMx-ETR);

 支持针对定时的增量(正交)编码器、霍尔传感器电路

通用定时器配置步骤:

  • 使能定时器时钟

    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4,ENABLE);//使能TIM4时钟

  • 初始化定时器参数
typedef struct
{uint16_t TIM_Prescaler;//指定用于分频TIM时钟的预分频器值//实际分频值 = 此参数值+1uint16_t TIM_CounterMode; //指定计数器计数模式- TIM_CounterMode_Up: 向上计数模式(从0递增到ARR)- TIM_CounterMode_Down: 向下计数模式(从ARR递减到0)- TIM_CounterMode_CenterAligned1: 中心对齐模式1- TIM_CounterMode_CenterAligned2: 中心对齐模式2- TIM_CounterMode_CenterAligned3: 中心对齐模式3 uint16_t TIM_Period;//指定将在下一次更新事件时加载到自动重载寄存器(ARR)的值uint16_t TIM_ClockDivision;  //指定时钟分频因子(用于数字滤波器)- TIM_CKD_DIV1: 不分频(Tclk = TIM时钟)- TIM_CKD_DIV2: 2分频(Tclk = TIM时钟/2)- TIM_CKD_DIV4: 4分频(Tclk = TIM时钟/4) */uint8_t TIM_RepetitionCounter;//指定重复计数器值(仅高级定时器TIM1和TIM8支持)} TIM_TimeBaseInitTypeDef;
  • 设置定时器中断类型,并使能
/*** @brief  使能或禁用TIM定时器的中断* @param  TIMx: 指向TIM外设的指针,例如TIM1、TIM2等* @param  TIM_IT: 指定要配置的中断源,可使用逻辑或组合多个中断源*                 例如: TIM_IT_Update(更新中断)、TIM_IT_CC1(通道1比较中断)* @param  NewState: 新状态,可选择ENABLE或DISABLE*/
void TIM_ITConfig(TIM_TypeDef* TIMx, uint16_t TIM_IT, FunctionalState NewState)
  • 设置定时器中断优先级使能定时器通道
  • 开启定时器

void TIM_Cmd(TIM_TypeDef* TIMx, FunctionalState NewState)

  • 编写定时器中断服务函数

void TIM4_IRQHandler(void)【每个不一样可以去启动文件查看】

/*** @brief  检查指定TIM定时器的中断状态标志* @param  TIMx: 指向TIM外设的指针,如TIM1、TIM2等* @param  TIM_IT: 指定要检查的中断源,可使用逻辑或组合多个中断源*                 例如: TIM_IT_Update(更新中断)、TIM_IT_CC1(通道1比较中断)* @retval ITStatus: 中断状态(SET = 中断发生; RESET = 中断未发生)*/
ITStatus TIM_GetITStatus(TIM_TypeDef* TIMx, uint16_t TIM_IT)
/*** @brief  清除指定TIM定时器的中断挂起标志* @param  TIMx: 指向TIM外设的指针,如TIM1、TIM2等* @param  TIM_IT: 指定要清除的中断源,可使用逻辑或组合多个中断源*                 例如: TIM_IT_Update(更新中断)、TIM_IT_CC1(通道1比较中断)* @note   必须在中断处理完成后调用此函数,否则会持续触发中断* @note   通过向TIMx_SR寄存器的对应位写入0来清除标志* @example TIM_ClearITPendingBit(TIM3, TIM_IT_Update); // 清除TIM3的更新中断标志*/
void TIM_ClearITPendingBit(TIM_TypeDef* TIMx, uint16_t TIM_IT)

代码实现(500msLED电平翻转一次)

#include "time.h"
#include "led.h"/*******************************************************************************
* 函 数 名         : TIM4_Init
* 函数功能		   : TIM4初始化函数
* 输    入         : per:重装载值psc:分频系数
* 输    出         : 无
*******************************************************************************/
void TIM4_Init(u16 per,u16 psc)
{TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure;NVIC_InitTypeDef NVIC_InitStructure;RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4,ENABLE);//使能TIM4时钟TIM_TimeBaseInitStructure.TIM_Period=per;   //自动装载值(设置溢出中断值)TIM_TimeBaseInitStructure.TIM_Prescaler=psc; //分频系数TIM_TimeBaseInitStructure.TIM_ClockDivision=TIM_CKD_DIV1;TIM_TimeBaseInitStructure.TIM_CounterMode=TIM_CounterMode_Up; //设置向上计数模式TIM_TimeBaseInit(TIM4,&TIM_TimeBaseInitStructure);TIM_ITConfig(TIM4,TIM_IT_Update,ENABLE); //开启定时器中断TIM_ClearITPendingBit(TIM4,TIM_IT_Update);NVIC_InitStructure.NVIC_IRQChannel = TIM4_IRQn;//定时器中断通道NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=2;//抢占优先级NVIC_InitStructure.NVIC_IRQChannelSubPriority =3;		//子优先级NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;			//IRQ通道使能NVIC_Init(&NVIC_InitStructure);	TIM_Cmd(TIM4,ENABLE); //使能定时器	}
/*******************************************************************************
* 函 数 名         : TIM4_IRQHandler
* 函数功能		   : TIM4中断函数
* 输    入         : 无
* 输    出         : 无
*******************************************************************************/
void TIM4_IRQHandler(void)
{if(TIM_GetITStatus(TIM4,TIM_IT_Update))//查询中断标志位{LED2=!LED2;}TIM_ClearITPendingBit(TIM4,TIM_IT_Update);	//清除标志位
}

主函数代码

    u8 i;SysTick_Init(72);NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);  //中断优先级分组 分2组LED_Init();TIM4_Init(1000,36000-1);  //定时500ms

http://www.dtcms.com/a/432459.html

相关文章:

  • 城乡建设管理局网站哪些网站可以做问卷调查
  • wap网站建设学什么wordpress 建站模板
  • 阿里云建设网站教程wordpress内存高
  • 如何用wampp 做网站wordpress怎么挂广告
  • 广州网站建设网站制作公司网页搜索优化
  • 住宅城乡建设部门户网站呼和浩特网站seo优化方案
  • 企业网站源码推荐建筑网校排名前十大品牌
  • python能做网站开发吗昆明网站设计制造
  • 陕西开龄建设网站郑州短视频代运营公司
  • 哈尔滨市做淘宝的网站定制网站开发公司生物医药
  • 外包公司 网站建设 上海自定义文章类型的分类wordpress
  • 成都网站建设技术做网站难吗
  • 公司网站建设gghhhj人力资源信息管理平台
  • 律师网站建设公司商城平台建设
  • 三角网站建设平台营销型网站
  • 做购物网站的公司登封郑州网站建设
  • Nx项目中使用Vitest对原生JS组件进行单元测试
  • 微信公众号里的网站怎么做的福田市网站建设推广
  • 电子商务网站建设与维护考试怎么做交互式网站
  • Debezium 源码解析
  • 临沂网站制作策划拼多多关键词排名查询软件
  • 手机网站js代码企业vi设计公司价格
  • 网站建设论文的结论电商个人营业执照注册
  • 大模型——OpenAI上线购物Agent,AI早已改写电商逻辑
  • 12.被迫开始的修复与来自“奇点”的低语
  • 个人做网站设计广东网站建设教程
  • 自媒体还是做网站浙江网站建设模板网站
  • 网站哪家做得好家装设计师培训课程
  • 模板网站可以自己买空间吗吗能打开所有网站的浏览器
  • 比较著名的seo网站品牌建设规划