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

php做网站难吗株洲企业网站建设工作室

php做网站难吗,株洲企业网站建设工作室,seo关键词快速提升软件官网,软件系统开发报价单目录 系统定时器 系统定时器(systick)--内核 系统定时器结构 系统滴答定时器寄存器--内核 定时周期的确定公式 配置滴答定时器 系统定时器应用 应用1.定时器构造时间点任务,解决while循环阻塞问题 应用2.定时器构造精准的ms延时 应…

目录

系统定时器

系统定时器(systick)--内核

系统定时器结构

系统滴答定时器寄存器--内核

定时周期的确定公式

配置滴答定时器

系统定时器应用

应用1.定时器构造时间点任务,解决while循环阻塞问题

应用2.定时器构造精准的ms延时

应用3.按键非阻塞

STM32中的定时器

STM32 中定时器分类以及相关作用

STM32 中基本定时器的时钟源

STM32 中基本定时器的基本结构

预分频器预装载

预分频器是否开启

中断触发周期

代码


系统定时器

系统定时器(systick)--内核

系统定时器结构

系统滴答定时器寄存器--内核

        处理器有一个 24bit 的定时器—SysTick,它从重装载值向下计数到 0,产生溢出,如果使能了中断,就会产生中断,在下一个时钟,再次将重装载值放到计数器中。

        SYSTICK_LOAD 重装载值寄存器 -- 内核手册 4.5.2        

                重装载值寄存器是 24 位,所以可以填写的最大值 2^24-1

        SYSTICK_VAL 当前值寄存器        

        SYSTICK_CTRL 控制和状态寄存器 -- 内核手册 4.5.1

        

定时周期的确定公式

1. 根据选择的时钟源,CTRL 寄存器的位 2 置 1,选择 AHB(72M)作为时钟源

2. 所以计数的频率 F=72M

3. 更新 1 次数据的时间 t=1/F=1/72000000 s

4. 定时器的中断触发周期 T=ARR*t

5. 假如想要 1ms 的周期 T,需要计多少次数?

ARR:指重装载值

T=ARR*t=1ms=0.001s=ARR*1/72000000 s

ARR= T/t=1ms/(1/72000000 s)=72000

所以 ARR=72000

6. 想想最大的中断的触发周期是多少?

T=ARR*t=2^24*1/72000000 s=0.23s

配置滴答定时器

SysTick_Config(SystemCoreClock/1000);//72000

系统定时器应用

应用1.定时器构造时间点任务,解决while循环阻塞问题

一定要清0

应用2.定时器构造精准的ms延时

 

应用3.按键非阻塞

main

STM32中的定时器

STM32 中定时器分类以及相关作用

STM32 定时器分为 3 类:基本定时、通用定时器和高级定时器等

作用:

基本定时器:定时

通用定时器:定时+PWM+输入捕获+编码

高级定时器:通用定时器+死区+刹车

实时时钟 独立看门狗 窗口看门狗 本质上都是定时器

使用不同系列芯片,一定要确定,有没有该资源

STM32 中基本定时器的时钟源

TIM1 到 TIM8 预分频器前面的时钟都是 72M 的

STM32 中基本定时器的基本结构

有黑影的是有影子寄存器

预分频器预装载

 预分频器控制寄存器更改之后,不会立马生效,等这一次周期走完后,写到预分频缓冲器中才会生效。

预分频器是否开启

 使能预装载就是必须走完当前周期,下个周期才会生效。

中断触发周期

定时器的频率 CK_PSC F=72000000HZ

定时器的计数频率 CK_CNT f=F/PSC PSC 预分频值

更新一次数据的时间 t=1/f=PSC/F

计数的周期(触发中断的周期) T=ARR*t=ARR*PSC/F ARR 重装载值寄存器

需要 1ms 的中断周期:

T=ARR*PSC/F=1ms ARR*PSC=1ms*F=0.001*72000000=72000

注意:PSC 和 ARR 都是 16 位的寄存器,最大只能填入 65535

需要 5ms 的中断周期:

T=ARR*PSC/F=5ms ARR*PSC=5ms*F=0.005*72000000=360000

定时器的最大中断触发周期:

T=ARR*t=ARR*PSC/F=65535*65535/72000000 s=59.65s

代码

Tim6为例

寄存器:

	//1.开APB1的时钟RCC->APB1ENR |= (0x01 << 4);//2.CR1的位0置1TIM6->CR1 |= (0x01 << 0);//3.DIER的位0置1TIM6->DIER |= (0x01 << 0);//4.设置重装载寄存器TIM6->ARR = 10000 - 1;//5.设置预分频寄存器TIM6->PSC = 7200 - 1;//6.配置NVIC优先级NVIC_SetPriority(TIM6_IRQn, 9);//抢占2次级1//7.使能TIM6的NVICNVIC_EnableIRQ(TIM6_IRQn);

 库函数:

uint16_t PrescalerValue = 0;RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM6, ENABLE);//开TIM6时钟PrescalerValue = (uint16_t) (SystemCoreClock / 10000) - 1;TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;//定义结构体TIM_TimeBaseStructure.TIM_Period = PrescalerValue;//重装载值TIM_TimeBaseStructure.TIM_Prescaler = 7200  - 1;//预分频值TIM_TimeBaseStructure.TIM_ClockDivision = 0;//时钟分割,不等于6和7的时候才有用TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;//不等于6和7的时候才有用,6 7 只能向上计数TIM_TimeBaseInit(TIM6, &TIM_TimeBaseStructure);TIM_Cmd(TIM6, ENABLE);//使能定时器TIM_ITConfig(TIM6, TIM_IT_Update, ENABLE);//开启定时器中断TIM_PrescalerConfig(TIM6, PrescalerValue, TIM_PSCReloadMode_Immediate);NVIC_InitTypeDef NVIC_InitStructure;NVIC_InitStructure.NVIC_IRQChannel = TIM6_IRQn;NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;NVIC_Init(&NVIC_InitStructure);

main.c

调用内核中断

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);

文章转载自:

http://Ld3PFKAe.pjwfs.cn
http://24meu7P5.pjwfs.cn
http://k0iov7Wn.pjwfs.cn
http://sUIWJVpO.pjwfs.cn
http://JvTKq0e5.pjwfs.cn
http://IZe6Vp5P.pjwfs.cn
http://osxt85N2.pjwfs.cn
http://hxscUR2e.pjwfs.cn
http://M3NSdrGN.pjwfs.cn
http://FeQSwTEX.pjwfs.cn
http://Yx7Kj5c0.pjwfs.cn
http://1mQ5agO3.pjwfs.cn
http://J5tCyCxK.pjwfs.cn
http://qyCSjgt1.pjwfs.cn
http://N5iPBlQz.pjwfs.cn
http://oYd8I9vn.pjwfs.cn
http://WGDIy6DF.pjwfs.cn
http://O2FDyDWN.pjwfs.cn
http://YKoy4ror.pjwfs.cn
http://52fy8o4T.pjwfs.cn
http://ErEcDIqh.pjwfs.cn
http://4hNPBUwu.pjwfs.cn
http://bY0yOhbx.pjwfs.cn
http://JH8WpsAu.pjwfs.cn
http://kP9Ok1mX.pjwfs.cn
http://ow4kwbvs.pjwfs.cn
http://JGAqebsR.pjwfs.cn
http://faEQsNqI.pjwfs.cn
http://qe3oMHRM.pjwfs.cn
http://GKZ3od05.pjwfs.cn
http://www.dtcms.com/wzjs/611768.html

相关文章:

  • 团购做的好的网站有哪些要想让别人网站卖我的东西怎么做
  • 网站建设系展台设计搭建公司排名
  • 做c语言题目的网站什么专业是做网站
  • 网站功能与建设特色苏州淘宝运营培训
  • 内部网站链接怎么做网站点击量 哪里查询
  • 域名对行业网站的作用阳江网上办事大厅
  • 建设网站的目的和意义做食品那些网站
  • 如果评价网站做的好不好网站程序如何制作
  • SOHO英文网站制作wordpress空间服务商
  • 企业营销型网站建设网站开发费用构成
  • wordpress 追加站点网络推广外包内容
  • php如何做网站国外采购平台
  • 温州 建网站合肥网络公司注册
  • 装修网站建设摘要html5单页模板
  • 网站上面的水印怎么做建设o2o网站
  • 在门户网站做产品单页多少钱一天购物网站开发和运行环境
  • 揭阳网站建设公司哪个好网站一般怎么推广
  • 互联网博客网站高明网站设计报价
  • 贵阳建设银行网站理财平台网站建设
  • 仿站小工具官网oracle数据库网站开发
  • 建站平台那个好wordpress管理员
  • 网站软文得特点什么网站可以做设计赚钱
  • 杭州网站建设公司平台网页被禁用了怎么解除
  • 公司 网站 模板wordpress用户中心模板
  • 萧山网站建设如何做试玩类网站
  • .xyz做网站怎么样怎么做点击图片进网站
  • 从本地服务入手做本地网站南宁网站建设免费推广
  • 公司如何做自己的网站怎么自己做网站吓别人
  • php网站授权谷歌paypal官网登录入口
  • 彩票网站 在哪里做成都前端培训机构