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

网站版面设计体验营销是什么

网站版面设计,体验营销是什么,网站自己建设,机械加工厂家STM32H7开发笔记(2)——H7外设之多路定时器中断 文章目录 STM32H7开发笔记(2)——H7外设之多路定时器中断0.引言1.CubeMX配置2.软件编写 0.引言 本文PC端采用Win11STM32CubeMX4.1.0.0Keil5.24.2的配置,硬件使用STM32H…

STM32H7开发笔记(2)——H7外设之多路定时器中断

文章目录

  • STM32H7开发笔记(2)——H7外设之多路定时器中断
    • 0.引言
    • 1.CubeMX配置
    • 2.软件编写

0.引言

本文PC端采用Win11+STM32CubeMX4.1.0.0+Keil5.24.2的配置,硬件使用STM32H750VBT6最小系统板。

本文实现多路定时器中断。

1.CubeMX配置

打开CubeMX,新建工程,搜索STM32H750VBT6,直接双击芯片即可完成创建。

时钟、Debug、Cortex M7配置部分略,详见STM32H7开发笔记(1)——H7基本配置

为了合理使用芯片资源,在仅需要定时器中断的情况下可以选择没有输入输出通道的定时器(不过说实话这100来个引脚绝对够用,但是还是养成一个好习惯),如TIM6TIM7

image-20241120084832477

查找头文件,看看TIM6挂载在哪个时钟总线上(具体方法:直接在Keil中搜索RCC_APB,搜索范围设为整个Project,然后在宏里找即可):

#define RCC_APB1LLPENR_TIM6LPEN_Pos            (4U)
#define RCC_APB1LLPENR_TIM6LPEN_Msk            (0x1UL << RCC_APB1LLPENR_TIM6LPEN_Pos) /*!< 0x00000010 */
#define RCC_APB1LLPENR_TIM6LPEN                RCC_APB1LLPENR_TIM6LPEN_Msk

在时钟树中看APB1的频率:

image-20241113105823112

因此未分频的TIM6时钟频率为240MHz。定时器的配置如下:

image-20241120085024385

  • Prescaler:预分频系数,设为240-1,则TIM6的时钟频率为1MHz;
  • Counter Mode:计数方式,这个没啥影响;
  • Cunter Period:自动重装载值,设为500-1,则TIM6的中断周期为500us。刚刚PSC设为240-1的好处就是ARR设为T-1,周期就是Tus;
  • auto-reload preload:控制定时器的自动重装载寄存器(ARR)的预装载功能。如果在整个工程的运行过程中,ARR的值会被更改,则使能这个寄存器比较好;如果不需要更改,从头到尾的值都不变,那这个就没必要。直接Disable即可;
  • Trigger Event Selection:如果工程中需要使用定时器生成触发事件来启动其他外设,则需要配置。直接Reset即可;

然后配置中断,点到NVIC Settings,勾选Enable即可:

image-20241120085725028

同理,配置TIM7

image-20241120085605212

NVIC选项卡中统一配置优先级:

image-20241120085839305

左上角Priority Group配置中断优先级分组,然后点击优先级,即可在下拉栏里改变:

image-20241120090027875

2.软件编写

在CubeMX生成的代码中,以TIM6为例,包括设置定时器参数、设置定时器中断参数、编写中断服务函数,还包括初始化定时器。需要自行编写的部分包括启动定时器中断、编写中断回调函数。启动定时器中断要放在MX_TIM6_Init();之后,while(1)之前:

int main(void)
{HAL_Init();SystemClock_Config();//......delay_init(480);MX_GPIO_Init();MX_TIM6_Init();MX_TIM7_Init();//......HAL_TIM_Base_Start_IT(&htim6);HAL_TIM_Base_Start_IT(&htim7);while (1){}
}

中断回调函数放在自己创建的.c文件中:

// 定时器中断回调函数
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{if (htim->Instance == TIM6)			//300us{// 在这里处理定时器中断事件}if (htim->Instance == TIM7)			//50us{// 在这里处理定时器中断事件}
}

http://www.tj-hxxt.cn/news/110832.html

相关文章:

  • 长春网站开发百度收录链接
  • 网页设计怎样设置图片大小seo网站管理
  • 网站建设技术企业网络
  • wordpress新手基础班级优化大师免费下载
  • 论文引用网站怎样做脚注网站结构
  • 中国设计网站排名郑州网站seo优化
  • 网站开发工程产品推广网站
  • 天津建站费用阿里云免费域名
  • 国外源代码下载网站搜索引擎公司排名
  • 怎样做网站维护百度推广代理商赚钱吗
  • 做网站需要哪些软件一站式海外推广平台
  • 网站开发后台 amp深圳关键词推广
  • 网站后台用户名密码怎么优化标题和关键词排名
  • 建设企业网站公司机构官网怎么做网站排名
  • 智能建站设计包括哪些内容
  • php手机网站开发seo营销网站的设计标准
  • 专业的企业网站制作阿里巴巴国际站关键词推广
  • 签合网站是哪个好百度软件
  • 做别人的网站诈骗视频下载跨境电商网站开发
  • 成人高考准考证打印网站今日中国新闻
  • 基于web的新闻发布系统公司官网优化方案
  • 做推文的编辑网站网络推广有哪些常见的推广方法
  • 基层政府门户网站建设的问题网站运维
  • 怎么判断网站有没有做百度商桥关键词搜索查询
  • 成都网站制作培训网络媒体
  • 广州seo网站比百度好用的搜索引擎
  • 天津网站在哪里建设推广普通话奋进新征程
  • 网站挂马解决广东网站关键词排名
  • 做外贸一般在哪个网站宁波网站推广排名
  • 服务器重启 iis网站暂停友情链接官网