STM32L011 硬件模拟比较器(比较模式)
在STM32L011中,硬件模拟比较器有两个,COMP1和COMP2,这不是废话吗? 单用比较器当然是比较电压,如果两个混用,就可以做到类似ADC的模拟看门狗一样的功能. 如果正相输入端电压高于反相输入端电压,那么输出1,这么很容易理解,就是比如比较P...
在STM32L011中,硬件模拟比较器有两个,COMP1和COMP2,这不是废话吗? 单用比较器当然是比较电压,如果两个混用,就可以做到类似ADC的模拟看门狗一样的功能. 如果正相输入端电压高于反相输入端电压,那么输出1,这么很容易理解,就是比如比较P...
使用L011的ADC已经一段时间,大多数功能也已经体验,差个定时器触发,为什么还没写,也就两个原因,一个是我懒,定时器暂时不想学习,一个是觉得本来速率就很低,还加上定时器触发转换,速率就更低了,何况转换回来数据,一般还需要二次处理,除非...
因为网上很少人做模拟看门狗的实验,所以资料比较少.要实现模拟看门狗,要有以下几个条件. 只能检测一个通道或者监测所有通道. 监测过程其实也是ADC不断转换过程. 设置高低门限,再门限内不会发生中断,再门限外发生中断. 在发生中断时候...
采样PA0,PA1,内部温度传感器,内部基准参考,其中PA0接VCC,PA1悬空. 代码如下: #include "stm32l0xx.h" __IO uint32_t uwTick; uint16_t pdata[100][4] = {0x00}; void DMA1_Channel1_IRQHandler(void) { if( (DMA1->ISR &...
#include "stm32l0xx.h" /* adc_cnt/(uwTick /1000) = 转换率 */ __IO uint32_t uwTick; __IO uint32_t adc_cnt = 0; /* 转换次数 */ __IO uint16_t vdd_vol = 0; uint16_t vref_vol = 0; void SysTick_Delay(__IO uint32_t Del...
过采样可以帮助避免混叠,提高分辨率以及降低噪声.理论来说,频率足够高的话,就可以获得无限位精度.根据一大堆高深理论得知..这么一条公式.反正我不懂. 通俗说,1次采样是12Bit,4次是13Bit,16次是14Bit,64次是15Bit,256次是16Bit,如果要...
换到了新的平台,因为L0以超低功耗出名,而且价格也不贵.另外因为有内部Vref.可以反推出VDD,用的也是ST的官方板子,Nucleo-F011测试的,官方板子用的LDO参数也挺不错的. 首先测试一下官方LDO的数值. 然后说明一下我的测试条件: ADC...
偷一张来自Cube的图,这样比较容易理解.Nucleo板子没提供外部时钟输入,所以,实际上也是这张图一样. 通过HSI的倍频设置,得到32MHz的时钟,也是系统支持的最高时钟,这是低功耗器件,所以不支持48MHz? 针对这个MCU我觉得应该有几个常规配置...
在L011中,除了普遍的Flash和OB外,还有EEPROM,而且还可以让Flash掉电运行.所以,他其实有4个密码,没错,是4个密码啊.如果Flash掉电了,那么就要RAM运行,也可以省一些电的.在Keil中这样定义RAM中运行代码. __attribute__ ((section (".ramc...
各种资源都不多,试试Blink代码. 没有任何难度的Blink. 只是貌似编译出来有点大了. Blink都不行,玩什么啊.写个Blink,Flash已经快满了. 试试用ST-Link软件写入. 果然可以闪哦.就是代价有点大,这么多Flash. 想体验一下ADC功能. 为了...