【无标题】

本文通过PMS150G单片机的STM32,使用C语言编写代码,展示了如何利用定时器精确控制LED灯2秒和4秒周期性的亮灭。通过定时器中断和按键扫描实现,适合初学者掌握定时器的综合运用。
摘要由CSDN通过智能技术生成

PMS150G采用定时器按键控制LED口精确定时2秒和4秒亮灭,让大家学会定时器的综合运用,不多少,直接上代码,如有不懂,请联系我
#include “extern.h”

bit LED1 : PA.0 //定义LED灯的引脚
bit LED2 : PA.4 //定义LED灯的引脚
bit p_key : PA.5

word time_10ms=0;
word time_100ms=0;
word time_power=0;
word reload_T16;
byte key_40ms=0;
byte F_LED;
byte F_POWER;
/*******************************************************************************/
void T16M_Init(void)
{

$ T16M SYSCLK,/16,bit10;	//T16的时钟源选择,内部的时钟分频器,中断源选择(当选择位由低到高或者由高到低时,发生中断事件);
							//时钟源选择可以选择STOP, SYSCLK, PA4_F, IHRC, EOSC, ILRC, PA0_F;分频器可选择/1, /4, /16, /64
							//中断源可选择BIT8, BIT9, BIT10, BIT11, BIT12, BIT13, BIT14, BIT15
reload_T16 = 1024 - 625;	//每次进中断为10ms;
			//计算公式为	[1/(时钟源/分频器)]*(中断源-reload_T16)=[1/(1M/16)]*(2^10-(1024-625))=0.01s

stt16 reload_T16;			//设定计数器初始值reload_
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值