stm32f429中基本定时器有两个,通用定时器有十个,高级定时器有两个。其中基本定时器为TIM6和TIM7。
此处通过编写TIM7定时中断控制LED灯亮灭,TIM6与之类似。
首先可以新建一个.c 和.h 文件,在.c文件中进行TIM7函数定义等,如下图所示:
#include "bsp_tim_basic.h"
static void BASIC_TIMx_Mode_Config()
{
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM7,ENABLE);//开启时钟
TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStruct;//结构体申明
TIM_TimeBaseInitStruct.TIM_Prescaler=8999;//设置时钟周期为10000hz psc 90M/(psc+1)
TIM_TimeBaseInitStruct.TIM_Period=9999;//设置ARR 10000次
TIM_ITConfig(TIM7,TIM_IT_Update,ENABLE);//使能更新
TIM_TimeBaseInit(TIM7,&TIM_TimeBaseInitStruct);//定时器初始化
TIM_Cmd(TIM7,ENABLE);//定时器使能
}
static void NVIC_TIMBasic_Config()
{
NVIC_InitTypeDef NVIC_InitStruct;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
NVIC_InitStruct.NVIC_IRQChannel=TIM7_IRQn;
NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority=1;
NVIC_InitStruct.NVIC_IRQChannelSubPriority=1;
NVIC_InitStruct.NVIC_IRQChannelCmd=ENABLE;
NVIC_Init(&NVIC_InitStruct);
}
void TIMx_Basic_Config(void)
{
NVIC_TIMBasic_Config();
BASIC_TIMx_Mode_Config();
}
由于前两个函数前有static修饰,所以写了最后一个函数以便于其他文件对前两个函数的调用。
在.h文件中对所需的头文件以及可被外部调用的函数进行申明。
#ifndef _BSP_TIM_BASIC_H
#define _BSP_TIM_BASIC_H
#include "stm32f4xx_tim.h"
#include "stm32f4xx_rcc.h"
#include "misc.h"
extern void TIMx_Basic_Config(void);
#endif
这边编写完成后需要记得在stm32f4xx_it.c中进行中断函数的编写,其中控制LED灯亮灭便在此处被执行。
void TIM7_IRQHandler(void)
{
if (TIM_GetITStatus(TIM7,TIM_IT_Update)!=RESET)
{
GPIO_WriteBit(GPIOC,GPIO_Pin_1,1-(GPIO_ReadOutputDataBit(GPIOC,GPIO_Pin_1)));
}
TIM_ClearITPendingBit(TIM7,TIM_IT_Update);
}
GPIO_WriteBit用于给LED灯置所想状态,在这里的最后一个参数通过GPIO_ReadOutputDataBit函数读当前的状态,通过1减去当前状态来获得相反的状态。
在main函数中只要进行简单的调用即可。
#include "stm32f4xx.h"
#include "bsp_led.h"
#include "bsp_tim_basic.h"
#include "bsp_usart.h"
int main(void)
{
usart1_init();
LED_GPIO_Config();
TIMx_Basic_Config();
while(1)
{
}
}
上一篇:STM32 环境光传感器ADC采样
下一篇:stm32实现LED灯亮灭
推荐阅读
史海拾趣
Andon Electronics 是一家全球领先的电子元件制造商,以下是该公司发展的相关故事:
公司成立与初期发展:Andon Electronics 成立于 1984 年,总部位于美国加利福尼亚州。最初,公司主要从事 LED 和其他电子元件的生产和销售。由于对高质量产品和客户服务的执着追求,公司迅速赢得了客户的信任和好评。
技术创新与产品拓展:随着市场需求的变化和技术的进步,Andon Electronics 不断进行技术创新,并逐步扩大产品线。除了 LED 产品外,公司还推出了多种其他电子元件,包括连接器、电缆组件、线束和传感器等。这些产品在汽车、工业、通信和消费电子等领域得到了广泛应用。
质量管理和认证:Andon Electronics 一直致力于质量管理和产品认证,确保产品符合国际标准和客户要求。公司拥有 ISO 9001 质量管理体系认证,并不断优化生产流程和质量控制体系,以确保产品质量的稳定性和可靠性。
全球布局和市场拓展:随着业务的不断发展,Andon Electronics 在全球建立了多个生产基地和销售办事处。除了在美国的总部和生产基地外,公司还在亚洲、欧洲和其他地区设立了办事处和生产工厂,以更好地服务全球客户,并适应当地市场的需求。
可持续发展和未来展望:Andon Electronics 将继续致力于技术创新、产品拓展和质量管理,以满足客户不断变化的需求。公司将继续关注环保和可持续发展,推动节能减排和资源利用效率的提升。同时,Andon Electronics 也将积极响应行业的变革和挑战,不断调整战略,保持在电子元件制造业的领先地位。
Amphenol Aerospace 是一家在电子行业中知名的公司,专注于设计、制造和销售航空航天领域的连接器和电缆组件。以下是关于 Amphenol Aerospace 公司发展的五个相关故事:
创立与早期发展:Amphenol Aerospace 公司的历史可以追溯到1932年,当时在美国新泽西州的Linden市成立了Amphenol公司。最初,该公司主要致力于生产无线电连接器和电缆组件。随着航空航天行业的发展和壮大,Amphenol Aerospace 公司开始专注于航空航天领域,成为该行业的关键供应商之一。
技术创新与产品多样化:Amphenol Aerospace 公司不断进行技术创新,推出了一系列先进的连接器和电缆组件产品。这些产品具有高可靠性、高耐用性和优良的性能特点,广泛应用于航空航天领域的飞机、卫星、导弹、航天器等设备中。Amphenol Aerospace 公司的产品包括圆形连接器、矩形连接器、光纤连接器等,满足了不同客户的需求。
客户合作与定制化解决方案:Amphenol Aerospace 公司与航空航天领域的客户建立了紧密的合作关系,共同开发定制化的连接器和电缆组件解决方案。公司的工程团队与客户密切合作,根据客户的需求和规格要求,设计和制造符合特定应用要求的产品。这种定制化解决方案为客户提供了更加个性化和专业化的服务。
质量控制与认证标准:Amphenol Aerospace 公司注重产品质量控制,并严格遵循行业标准和认证要求。公司的生产工艺和质量管理体系符合ISO 9001质量管理体系认证标准,以确保产品质量稳定可靠。此外,Amphenol Aerospace 公司的产品还通过了航空航天领域的相关认证,如AS9100质量管理体系认证等,确保产品符合行业标准和规定。
全球布局与市场拓展:除了在美国的生产基地外,Amphenol Aerospace 公司还在全球范围内设有多个生产工厂和销售办事处,为客户提供全面的服务和支持。公司在欧洲、亚洲和其他地区建立了广泛的销售网络,拓展了国际市场份额。通过全球布局和市场拓展,Amphenol Aerospace 公司不断扩大业务规模,增强了在航空航天领域的市场竞争力。
这些故事展示了 Amphenol Aerospace 公司从成立初期到如今在技术创新、产品多样化、客户合作与定制化解决方案、质量控制与认证标准以及全球布局与市场拓展等方面取得的重要进展。
面对日益激烈的市场竞争和不断变化的客户需求,AZ Displays始终保持着创新的活力。公司不断投入研发资源,推出具有创新性和领先性的产品。同时,AZ Displays还积极关注行业动态和新兴技术,不断调整和优化产品策略,以确保公司在市场中的领先地位。
这些故事展示了AZ Displays在电子行业中的发展历程和成就,体现了公司不断创新、追求卓越的精神。未来,随着科技的不断进步和市场需求的不断变化,AZ Displays将继续保持创新活力,为客户提供更优质的产品和服务。
随着环保意识的提高,Easy Magnet Corp公司开始关注产品的环保性能。公司采用环保材料和生产工艺,减少了对环境的污染。同时,公司还积极参与环保公益活动,倡导绿色消费理念。这些举措不仅提升了公司的社会形象,也吸引了更多注重环保的消费者。
在电子行业的早期,Consolidated Wire公司以其出色的技术研发能力崭露头角。公司投入大量资源研发新型导电材料,成功推出了一种具有更高导电性能和更低电阻的新型线材。这一技术突破不仅提升了电子设备的性能,还降低了能耗,赢得了市场的广泛认可。随着新型线材的普及,Consolidated Wire公司的业务规模迅速扩大,逐渐在电子线材市场占据了领先地位。
在技术创新的同时,FERYSTER公司也非常注重市场拓展。公司管理层通过深入的市场调研,发现亚洲市场对于高性能电子产品有着巨大的需求。于是,他们制定了针对亚洲市场的营销策略,包括加强品牌宣传、与当地企业建立合作关系等。这些措施取得了显著成效,FERYSTER公司的产品在亚洲市场的销量迅速增长,为公司带来了丰厚的利润。
以下问题常被问到,我就想到哪说到哪吧。 一 首先说说ARM的发展 可以用一片大好来形容,翻开各个公司的网站,招聘里面嵌入式占据了大半工程师职位。 广义的嵌入式无非几种:传统的什么51、AVR、PIC称做嵌入式微控制器 ...… 查看全部问答∨ |
|
自从转职做仪器维修应用以来,有很多的第一次:第一次参观GC生产车间;第一次安装调试;第一次培训客户操作;第一次更换GC电路板;第一次更换电机;第一次......今天把自己一次更换TCD热导元件的经历发布出来,和版友交流! 1.首先是检测TCD的损 ...… 查看全部问答∨ |
|
各位老大,我的ARM开发板是FL2440,系统是WINCE 5.0,本人想DIY个车载GPS,学习学习,想问问各位老大,常用的GPS模块有哪些?电子地图是自己绘制,还是利用其他公司提供的地图。有没有免费的可用电子地图?用mapinfo可以吗? 只要能实现简单的功能就 ...… 查看全部问答∨ |
CE6.0加载后不能运行,串口输出如下,貌似是显示驱动或硬盘电源问题 搞了好几天了,人都要崩溃了 开机用DOS引导,loadcepc加载nk.bin 凌动z530,芯片组US15W 加载内核后,屏幕出现 Jumping to ox00226E20 然后串口开始输出调试信息 串口输出最后几行如下,貌似是显示驱动或硬盘电源问题: RdrMain: DLL_PROCESS ...… 查看全部问答∨ |
VC下调试GPIB驱动自带演示程序打开与之相连的仪器的电源,出现连接错误!!! ////////////////////////////////////////////////////////////////////////////////// VC下调试GPIB驱动自带演示程序打开与之相连的仪器的电源,出现连接错误!!! //////////////////////////////////////////////////////////////////////// ...… 查看全部问答∨ |
|
100~200价位的GSM+GPRS模块哪个性能比较稳定?广和通的怎样? RT,现在要把以前用单片机430做的远程医疗产品移植到ARM上,想找个比较稳定的gprs模块,但不知道选择哪块,比如有 SIMcom的900b, 西门子的MC52i, 华为的MG323等等,广和通的听说性能不错,就是比较新,怕不稳定,求达人建议~~… 查看全部问答∨ |