实验原理:

  通过STM32的一个GPIO口来驱动LED灯,设定GPIO为推挽输出模式,采用灌电流的方式与LED连接,

输出高电平LED灭,输出低电平LED亮,通过通用定时器TIM3实现500ms定时,每500ms变换一次LED的状态。

示例截图:

源代码下载链接:

链接:https://pan.baidu.com/s/1eTSNL54 密码:1ypb

GMT43购买链接:

核心代码:

static int initialize(void)
{
TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure;
NVIC_InitTypeDef NVIC_InitStructure; RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE); TIM_TimeBaseInitStructure.TIM_Period = 4999;
TIM_TimeBaseInitStructure.TIM_Prescaler = 8399;
TIM_TimeBaseInitStructure.TIM_ClockDivision = TIM_CKD_DIV1;
TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM3,&TIM_TimeBaseInitStructure); TIM_ITConfig(TIM3,TIM_IT_Update,ENABLE); NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x01;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x03;
NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;
NVIC_Init(&NVIC_InitStructure); return 0;
}
void TIM3_IRQHandler(void)
{
static int timer_counter = 0; if(TIM_GetITStatus(TIM3,TIM_IT_Update)==SET)
{
if(timer_counter % 2 == 0){
            LED_OFF;
}else{
LED_ON;
}
}else{
LED_OFF;
}
timer_counter ++;
TIM_ClearITPendingBit(TIM3,TIM_IT_Update);
}

【GMT43智能液晶模块】例程十一:通用定时器实验——定时点亮LED的更多相关文章

  1. 【iCore1S 双核心板_ARM】例程七:通用定时器实验——定时点亮LED

    实验原理: 通过STM32的三个GPIO口来驱动LED灯的三个通道:设定GPIO为推挽 输出模式,采用灌电流的方式与LED连接,输出高电平LED灭,输出低电平 LED亮,通过通用定时器TIM3实现50 ...

  2. 【iCore4 双核心板_ARM】例程十二:通用定时器实验——定时点亮LED

    实验原理: 通过STM32的三个GPIO口来驱动LED灯的三个通道,设定GPIO为推挽输出模式,采 用灌电流的方式与LED连接,输出高电平LED灭,输出低电平LED亮,通过通用定时器TIM3 实现50 ...

  3. 【iCore3 双核心板】例程十二:通用定时器实验——定时点亮LED

    实验指导书及代码包下载: http://pan.baidu.com/s/1kTWAAJ9 iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...

  4. 【iCore3 双核心板】例程五:SYSTICK定时器实验——定时点亮LED

    实验指导书及代码包下载: http://pan.baidu.com/s/1eQsKcEY iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...

  5. 【iCore4 双核心板_ARM】例程五:SYSTICK定时器 实验——定时点亮LED

    实验原理: 通过STM32的三个GPIO口驱动三色LED的三个通道,设定GPIO为推挽输出模式,采 用灌电流方式与LED连接,输出高电平LED灭,输出低电平LED亮,通过系统定时器实现 1s定时,每秒 ...

  6. 【iCore1S 双核心板_ARM】例程十:SYSTICK定时器实验——定时点亮LED

    实验原理: 通过STM32的三个GPIO口驱动三色LED的三个通道,设定GPIO为推挽输出,采用 灌电流的方式与LED连接,输出高电平LED灭,输出低电平LED亮,通过系统定时器实现 1s定时,每秒变 ...

  7. 【GMT43智能液晶模块】例程二:串口通信实验

    实验原理: GMT43智能液晶模块的串口包括USB_UART(CH340),TTL,RS-232,RS-485/ RS-422等四部分,USB_UART部分通过CH340芯片与STM32F429的US ...

  8. 【GMT43智能液晶模块】例程七:定时器PWM实验——简易电子琴

    实验原理: STM32定时器有PWM功能,GMT43模块上带有一无源蜂鸣器,其 PWM输入控制信号接在STM32定时器输出接口上(PB4/TIM3_CH1),可 以通过定时器的PWM输出频率从而控制蜂 ...

  9. 【GMT43智能液晶模块】例程二十一:DMA LAN实验——高速数据传输测速

    源代码下载链接: 链接:https://pan.baidu.com/s/1wQomZvOUP9_ZslZus_NSIA 提取码:3fmf 复制这段内容后打开百度网盘手机App,操作更方便哦 GMT43 ...

随机推荐

  1. Java并发编程(五)-- Java内存模型补充

    前面我们已经介绍了:当对象和变量存储到计算机的各个内存区域时,必然会遇到的两个问题及解决方法 共享对象的可见性-- 解决方法:使用java volatile关键字 共享对象的竞争现象 -- 解决方法: ...

  2. 最小树形图——朱刘算法(Edmonds)

    定义:一个有向图,存在从某个点为根的,可以到达所有点的一个最小生成树,则它就是最小树形图. 朱刘算法实现过程: [在选出入边集后(看步骤1),若有向图中不存在有向环,说明该图就是最小树形图] 1,选入 ...

  3. NineveGL引擎学习笔记

  4. [P3625][APIO2009]采油区域 (前缀和)

    这道题用二维前缀和可以做 难度还不算高,细节需要注意 调试了很久…… 主要是细节太多了 #include<bits/stdc++.h> using namespace std; #defi ...

  5. C++程序设计方法3:强制类型转换

    强制类型转换(显示转换) dynamic_cast<Dst_Type>(Src_var) Src_var必须是引用或者指针类型,Dst_Type类中含有虚函数,否则会有编译错误: 若目标类 ...

  6. UE4入门(二)建立和打开项目

    1.双击电脑桌面上的Unreal Engine 2.见下图 建立c++或者蓝图项目: 蓝图是什么? 蓝图种类: 接口:

  7. sklearn逻辑回归

    sklearn逻辑回归 logistics回归名字虽然叫回归,但实际是用回归方法解决分类的问题,其形式简洁明了,训练的模型参数还有实际的解释意义,因此在机器学习中非常常见. 理论部分 设数据集有n个独 ...

  8. Python标准库12 数学与随机数

    想用高斯分布生成随机数,在网上看到很强大的总结,保留一下,以备后用 https://www.cnblogs.com/vamei/archive/2012/10/26/2741702.html

  9. ip+掩码

    pattern="/^(((?:(?:1[0-9][0-9]\.)|(?:2[0-4][0-9]\.)|(?:25[0-5]\.)|(?:[1-9][0-9]\.)|(?:[0-9]\.)) ...

  10. 小甲鱼Python第三讲课后习题

    0.以下哪个变量的命名不正确?为什么? A:MM_520 B:_MM520_ C:520_MM D:_520MM 变量 命名:以字母.下划线.数字组成,以字母.下划线开头 1.除了使用反斜杠(\)进行 ...