基于STM32f030c8t6单片机ADC模拟看门狗的使用方案
原标题:基于STM32f030c8t6单片机ADC模拟看门狗的使用方案
STM32f030c8t6单片机ADC模拟看门狗使用
根据st官方手册提供描述不难看出,ADC模拟看门狗其实就是用户可以设置一个AD值上下限值,然后打开此模拟看门狗中断开关,那么就会在检测到当IO输入转换AD值小于下限值或大于上限值时进入相应的中断函数。大致就是这么一个功能实现过程。
根据表63可以看出,模拟看门狗可以设置为多通道和单通道模式,即可以通过设置相应的寄存器位来选择某一通道或多通道打开模拟看门狗检测。
那么明白了以上这些基础规则,那么我就要根据官方提供的库文件及里面的使用说明来配置相应函数来使用模拟看门狗。
打开此文件后下一步:
看!在这个官方提供的.c文件里面已经有介绍关于模拟看门狗使用的详细介绍的,只要理解了英文描述的意义,结合之前看数据手册关于ADC模拟看门狗的描述就会很快的完成模拟看门狗的配置程序。
下面即是完成的模拟看门狗配置函数:
最后还不要忘记加入打开看门狗中断的函数:
ADC_ITConfig(ADC1,ADC_IT_AWD,ENABLE);
完整的配置过程如下:
voidNVIC_Config(void)
{
NVIC_InitTypeDefNVIC_InitStructure;
NVIC_InitStructure.NVIC_IRQChannelPriority=3;//先占优先级1级
NVIC_InitStructure.NVIC_IRQChannel=ADC1_IRQn;
NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;//IRQ通道使能
NVIC_Init(&NVIC_InitStructure);
}
/*
模拟看门狗配置函数
单通道:7
*/
voidADC_WatchdogConfig(void)
{
ADC_AnalogWatchdogSingleChannelConfig(ADC1,ADC_AnalogWatchdog_Channel_7);
ADC_AnalogWatchdogThresholdsConfig(ADC1,4050,0);
ADC_AnalogWatchdogCmd(ADC1,ENABLE);
ADC_AnalogWatchdogSingleChannelCmd(ADC1,ENABLE);
}
以上就是对ADC模拟看门狗的使用做了一个小结,当然只是用了其中一部分功能,如有纰漏,请您指出,不胜感谢。
通过此次模拟看门狗的使用,我更加明白要利用官方资源的重要性,解铃还须系铃人,这句话非常适合做技术的人,当遇见问题时,无从下手或不知怎么样下手才会效率高的解决问题时,这时就应该想到生产厂家才是解决问题的源头关键,那里有相当丰富的使用说明文档及工具资源,这样就避免了在网络上找不到自己用到的相关应用时而苦恼无助的情况,谨以此心得与读者共勉!
责任编辑:David
【免责声明】
1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。
2、本文的引用仅供读者交流学习使用,不涉及商业目的。
3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。
4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。
拍明芯城拥有对此声明的最终解释权。