历史上的今天
返回首页

历史上的今天

今天是:2025年06月15日(星期日)

2019年06月15日 | STM32cubeMX 基于stm32的定时器实现定时1秒LED闪烁

2019-06-15 来源:eefocus

软件:

STM32CubeMX V4.25.0  

keil_u5

固件库版本:

STM32Cube FW_F1 V1.6.1

硬件:

OneNet 麒麟座V1.4

在STM32CubeMX中新建项目,选择正确的MCU型号

 

首先设置RCC和SYS,如下图

 

启用TIM1,选择内部时钟源(Internal Clock)。

 

然后根据板子实际情况设置时钟(麒麟座外部晶振是12M,STM32F103x的最高主频是72M),如下图

GPIO设置 PC7和 PC10为GPIO_OUTPUT, (这是麒麟座V1.4的四个LED管脚其中的两个)

设置其中一个默认为高电平,另一个默认为低电平,User Label分别是LED1和LED4。

设置TIM1,启用中断

由于TIM1是挂在APB2总线上(如何判断当前计时器在哪个总线,文章最后会描述方法),查看时钟树我们知道APB2当前频率为72MHz,我们希望每秒钟发生2次中断,就把预分频系数设置为36000-1,自动重载值为1000-1,得到的计时器更新中断频率即为72,000,000/36000/1000=2Hz。此时定时为0.5秒,若要实现定时1秒,则将1000改为2000

 

点击任务栏的生成代码图标

8、生成工程,并添加相关程序;

 

首先,main.c程序中添加(放置于定时器配置之后)开启 TIM1计时中断;

  /* USER CODE BEGIN 2 */

    /*使能定时器1中断*/

    HAL_TIM_Base_Start_IT(&htim1);

  /* USER CODE END 2 */

 

 

其次,在 tim.c文件中添加定时器中断完成回调函数;

/* USER CODE BEGIN 1 */

void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim){

    

    if (htim->Instance == TIM1){

        

        /* Toggle LED */

        HAL_GPIO_TogglePin(LED1_GPIO_Port,LED1_Pin);

        HAL_GPIO_TogglePin(LED2_GPIO_Port,LED2_Pin);

    }

}

/* USER CODE END 1 */


推荐阅读

史海拾趣

C&H Technology公司的发展小趣事

C&H Technology成立于2005年,由两位志同道合的电子工程师陈先生和何先生共同创立。两位创始人凭借在半导体领域的深厚技术积累,瞄准了当时正在兴起的智能手机市场,决定开发一款高性能、低功耗的手机芯片。他们租下一间小办公室,招募了几名志同道合的工程师,开始了艰苦的创业之旅。

起初,公司面临资金短缺、技术瓶颈和市场认可度低等重重困难。但陈先生和何先生凭借坚定的信念和不懈的努力,逐步攻克技术难题,与供应商建立了稳定的合作关系,并通过参加行业展会等方式,逐渐提高了品牌知名度。经过几年的努力,C&H Technology成功推出了首款手机芯片,并获得了市场的认可。

Curtis Industries公司的发展小趣事

Curtis Industries公司在发展的同时,也积极承担社会责任。公司关注环保问题,采用环保材料和节能技术生产产品,减少对环境的影响。此外,公司还积极参与公益活动,支持教育事业和社会福利事业的发展。这些举措不仅提升了公司的社会形象,也为公司的可持续发展注入了新的动力。

ADL [ADL Embedded Solutions Inc]公司的发展小趣事

Curtis Industries公司在发展的同时,也积极承担社会责任。公司关注环保问题,采用环保材料和节能技术生产产品,减少对环境的影响。此外,公司还积极参与公益活动,支持教育事业和社会福利事业的发展。这些举措不仅提升了公司的社会形象,也为公司的可持续发展注入了新的动力。

Engelking Elektronik GmbH公司的发展小趣事

作为一家有社会责任感的企业,Engelking Elektronik始终关注环保和可持续发展问题。公司积极采用环保材料和清洁能源,减少生产过程中的污染排放和资源浪费。此外,Engelking Elektronik还积极参与公益活动和慈善捐赠,回馈社会。公司坚信只有关注社会责任和可持续发展才能实现企业的长期繁荣和稳定。

固驰(GUERTE)公司的发展小趣事

在快速发展的同时,固驰电子始终不忘履行社会责任。公司积极参与公益事业,关注环境保护和可持续发展。通过采用环保材料和节能技术,固驰电子努力降低生产过程中的能耗和排放,为构建绿色、低碳的生态环境贡献力量。此外,公司还注重员工培训和职业发展,为员工提供良好的工作环境和晋升机会,实现了企业与员工的共同成长。

福声科技(FUET)公司的发展小趣事

在稳固国内市场的同时,福声科技积极寻求国际合作机会,努力拓展海外市场。公司凭借其优质的产品和服务,成功吸引了日本、韩国、加拿大、美国等多个国家和地区的客户。通过与国际知名企业的合作与交流,福声科技不仅提升了自身的技术水平和品牌影响力,还进一步拓宽了国际市场渠道,为公司的全球化战略奠定了坚实基础。

问答坊 | AI 解惑

博客系统使用功能介绍说明书

各位朋友:               eeworld博客系统在线在即,目前已经众多工程师朋友已经帮助我们进行了内部测试,在此,非常感谢大家!               ...…

查看全部问答>

第一讲 LED主要参数与特性

LED是利用化合物材料制成pn结的光电器件。它具备pn结结型器件的电学特性:I-V特性、C-V特性和光学特性:光谱响应特性、发光光强指向特性、时间特性以及热学特性。本文将为你详细介绍。 1、LED电学特性 1.1 I-V特性 表征LED芯片pn结制备性能主 ...…

查看全部问答>

请教各位在职的嵌入式研发工程师

本人09年毕业学的是自动化专业,在学校的时候比较喜欢摆弄单片机一类的东西,对技术比较感兴趣,一直想往嵌入式方面发展,但是毕业的时候工作不好找,那年经济危机了,结果来到了一家制造型公司,做质量方面工作,说实话,我一点也不感兴趣,我一直 ...…

查看全部问答>

关于多个设备共享一个物理中断的问题。

  嘿嘿,以前在论坛看过paul,chao关于共享中断的一些回帖,刚才在看wifi驱动的时候也看到了,现在发个帖子探讨一下。 看了一下MSDN,一目了然,就是不知道具体如何实现的。 Installable ISRs and Device Drivers Send Feedback Inst ...…

查看全部问答>

自制RTL8019AS以太网连接主机本地连接不稳定,何解?

我在自制的以太网rtl8019as片子上用网线连接计算机,但本地连接显示断开、没有连接、过会又有连接,很不稳定。 正常情况和本地连接上是不是只要给8019AS加电就可以看到,不用跑发送数据程序? 可能自己做的电路很不稳定,是抄的以前公司的以太网 ...…

查看全部问答>

中间件用什么技术好?那位做过的麻烦留言,急~~!顶者有分

那位做过的麻烦留言 我想做PDA连接SQL数据库的中间件 PDA操作系统是wince5.0.net PDA程序开发语言是 vs2005 中间件的开发语言是DELPHI或者VS2005 我想用中间件解决操作系统间访问的局限,有时不知道什么原因连不上系统,很郁闷。 我现在只知 ...…

查看全部问答>

[求助]P0口能否接发光二极管?

请教一下:如果在P0口(如P0.2)外接一发光二极管和一限流电阻,再接一个+5V的VCC,能否通过改变P0.2的0、1状态使发光二极管点亮或熄灭?据了解P0口不能输出高电平,可否通过外置上拉电阻后实现以上结果?如何外置上拉电阻?…

查看全部问答>

lm3s8962上的RT-Thread连载1——任务的基本管理

RT-Thread任务的基本管理 实验目的: ²        理解RTOS中任务管理的基本原理,了解任务的基本状态及其变迁过程; ²        掌握RT-Thread任务管理子系统中的 ...…

查看全部问答>

dsp不给pci主机中断

在dsp(DM642)上使用PCI_dspIntReqSet()函数,不能产生中断。在硬件仿真下测试,我使用万用表测量了INTA#脚,始终为高,但在发中断与清中断切换时,用windriver观察HSR的值在00000003和00000001之间切换,说明两条语句执行了,主要程序如下:希望 ...…

查看全部问答>

BLDC, BLAC,PMSM的区别

有人用C2000做这电机控制吗? BLDC, BLAC,PMSM的有啥区别…

查看全部问答>