在STM32F4上获得秒事件

众所周知,STM32F4系列取消了F1上才有的秒中断,如果在百度上搜索“STM32F4 秒中断” ,第一条结果就会显示一个AI生成的结果,显示如下:

上面的图片就是我直接截图的,用的头文件是F4的,但是定义的中断却是F1的,这简直就是极大的误导,因为F4上根本没有RTC_IRQ,这说明当下的所谓的AI,特别是百度这类骗钱的公司,充其量也就是找个结果复制粘贴而已,想要达到替代人类的地步,是完全没可能的,也就骗骗没知识的人罢了,特别是一旦涉及到专业领域,AI结果简直是漏洞百出,我大胆预测10年内,所谓的AI将沦为娱乐项目。

不啰嗦了,我就是来告诉大家,在F4上到底应该怎样实现一个秒中断或者是事件。这方面其实很多例程中已经给出了完整的代码,其实就是使用了定时唤醒事件中断的功能。在这里我想只要简化的代码,用最少的几句话就实现他。

void RTC_Set_WakeUp(u32 wksel,u16 cnt)
{ 
	EXTI_InitTypeDef   EXTI_InitStructure;	

	RTC_WakeUpCmd(DISABLE);//关闭WAKE UP	
	RTC_WakeUpClockConfig(wksel);//唤醒时钟选择	
	RTC_SetWakeUpCounter(cnt);//设置WAKE UP自动重装载寄存器		
	RTC_ClearITPendingBit(RTC_IT_WUT); //清除RTC WAKE UP的标志	 
	//RTC_ITConfig(RTC_IT_WUT,ENABLE);//开启WAKE UP 定时器中断
	RTC_WakeUpCmd( ENABLE);//开启WAKE UP 定时器 
}

调用方法:
RTC_Set_WakeUp(RTC_WakeUpClock_CK_SPRE_16bits,1);//产生1秒一次的RTC_FLAG_WUTF事件,

然后就可以通过中断的方式,或者查询的方式:

if(RTC_GetFlagStatus(RTC_FLAG_WUTF)==SET)
    { 
     ....

        RTC_ClearFlag(RTC_FLAG_WUTF);

    }

得到中断事件了。

大部分的例子给出的都是中断+唤醒的代码,将不需要的唤醒代码去掉就行了。

最后,我再次强调,AI不靠谱,AI没有真才实学,用AI的人会失业,设计AI算法的人才有真才实学,他们永远不会失业。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

csaaa2005

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值