推荐阅读最新更新时间:2024-03-16 16:11
STM32笔记(十三)---ADC
一、ADC简介 以STM32f103 系列为例,3 个 ADC,精度为 12 位,每个 ADC 最多有 16 个外部通道。其中ADC1 和 ADC2 都有 16 个外部通道, ADC3 根据 CPU 引脚的不同通道数也不同,一般都有8 个外部通道。 ADC 的模式非常多,功能非常强大,具体的我们在功能框图中分析每个部分的功能。 ADC功能框图 图1 单个ADC功能框图 ①电压输入范围 ADC 输入范围为: VREF- ≤ VIN ≤ VREF+。由 VREF-、 VREF+ 、 VDDA 、 VSSA、这四个外部引脚决定。 在设计原理图的时候一般把 VSSA 和 VREF-接地,把 VREF+和 VDDA 接 3V3,
[单片机]
STM8的AIR与STM32的Keil的指定地址存数据
一, 经验分享描述 写这篇经验分享的原因是,之前有一个客户,他希望在KE02的芯片中,不要出现使用EEPROM操作命令的形式初始化EEPROM,但是需要芯片的EEPROM中就有他所规定好的数据,以便于程序直接调用。其实就把EEPROM中的数据当做固定在flash的数据一样使用。而目前也没有看到使用具体的工具去直接烧写EEPROM,所以我们就想是否能够像flash的constant的定义一样定义EEPROM的数据呢?通过实际操作发现还是切实可行的,于是就分享了这篇在IAR与KEIL中如何直接定义常量到EEPROM中的经验分享。其实方法和之前本人分享过的经验分享“KE02在CW中使用常量形式初始化EEPROM值”合为姐妹篇,当然这种方
[单片机]
酸度计与ph计的区别_实验室ph计的使用方法及注意事项
一、酸度计与ph计的区别 酸度计与ph计两者是一样的,是一种高精度的工业在线自动连续检测酸碱度的分析仪器。 酸度计简称pH计,由电极和电计两部分组成,是一种常用的仪器设备,由参比电极、玻璃电极及电流计三部分组成。广泛应用于工业、农业、科研、环保等领域。 酸度计是一种常用的仪器设备,又名PH计。主要用来精密测量液体介质的酸碱度值,配上相应的离子选择电极也可以测量离子电极电位MV值,BPH-200A系列PH计广泛应用于工业,农业,科研,环保等领域。该仪器也是食品厂、饮用水厂办QS、HACCP认证中的必备检验设备。 酸度计是测定溶液pH值的仪器。酸度计的主体是精密的电位计。测定时把复合电极插在被测溶液中,
[测试测量]
stm32实现printf打印log的几种办法
在stm32单片机下,改一些bug的时候,光靠调试还不行,有时候需要打印log来查看某些变量在一段时间内的变化趋势,但是板卡又没有接串口,没办法重定向到串口打印,上网查资料研究了一下,发现以下几种办法可实现单片机像在pc终端一样打印log: 方法1:使用串口重定向,将printf打印的信息输出到串口,再将串口连接pc端串口接收终端,在终端上查看log.主要2个步骤:修改printf函数底层调用到的fputc函数和避免使用semihos TIng(半主机模式)。 a.如果使用mdk作为编译工具,在Target选项框里选Use MicroLib 选项,即为使用微库模式,不会使用半主机模式; b.工程中添加串口配置代码,方便
[单片机]
使用STM32定时器进行输入脉冲的计数
STM32的定时器具有计数功能,在实际应用中可以用来对引脚上的输入信号进行统计。其输入信号作为计数时钟,输入引脚为ETR引脚。 本例程使用Timer 2,其ETR输入引脚为PA1,初始化是设置该引脚工作模式为输入模式,Timer2的工作模式为从模式。 为了方便测试,另外使用PC6模式输出一个时钟信号。测试时将PC6与PA1短接。(用户也可另外连接一个时钟信号到PA1引脚上。) 代码如下: int main(void) { unsigned char i_Loop; unsigned char n_Counter; #3366ff #ifdef DEBUG debug(); #3366ff #endif RC
[单片机]
STM32固件解密步骤
方法1:代码解密 FLASH_OBProgramInitTypeDef OBInit; __HAL_FLASH_PREFETCH_BUFFER_DISABLE(); HAL_FLASHEx_OBGetConfig(&OBInit); if(OBInit.RDPLevel != OB_RDP_LEVEL_0) { OBInit.OptionType = OPTIONBYTE_RDP; OBInit.RDPLevel = OB_RDP_LEVEL_0; (void)HAL_FLASH_Unlock(); (void)HAL_FLASH_OB_Unlock(); (void)HAL_FLASHEx_OBProgram(&OBInit
[单片机]
STM32 USB DFU固件升级必读
升级代码工程须知 建立好工程后,需要做以下几步处理: 1、首先点击编译器的”Target Option” ,然后选择Target选项,设置”Read/Only Memory Areas”域的on-chip下的IROM1,修改下载起始地址及大小。我们这里使用0x0800500地址: 2、接下需要在程序的开始重映射下中断向量表到我们开始的代码出,即在main()函数一开始添加:NVIC_SetVectorTable(0x08005000, 0x0);这句话。 DFU File Maneger使用说明 下面要制作升级文件。点击DFU File Manager软件,就会出现下面的界面: 我们选择第一个:I wan
[单片机]
STM32/CPU地址映射的概念
1总线的由来 很多人对总线和地址映射的概念都是一头雾水,但是我们如果知道为何需要总线和地址映射,他们是在什么背景下被衍化出来的,自然而然对此概念就清清楚楚了。 我们知道CPU都是通过总线访问外设,例如STM32使用AMBA规范的总线和外设进行交互,那么在总线的概念没有被提出来的时候,外设是怎样被访问的呢? 其实在最早期还没有总线概念的时候,CPU设计者会直接把CPU内核和各种接口控制器设计到一起,如果要访问一个硬件,直接在内核里面对各种接口控制器进行操作,从而操作相应的硬件。我们看下图。 后来设计者发现如果每添加一个外设都要修改CPU内核,这样不具有很好的扩展性,为了使得外设的改变(增加、删除、修改)不影响CPU内核架
[单片机]