一、CAN外设简介1、两个CAN与2.0A和B(主动)规范兼容,比特率最高达1Mbit/s。2、它们可接收和发送包含11位标识符的标准帧和包含29位标识符的扩展帧。3、每个CAN有三个发送邮箱,发送报文的优先级可以使用软件控制,还可以记录发送的时间;4、具有两个3级深度的接收FIFO,28个共享的可调整筛选器组用于过滤某些ID报文,即可控制只接收或不接收某些ID的报文 (即使只使用一个CAN,也可使用所有这些)。5、每个CAN都分配有256字节的SRAM。6、不支持使用DMA进行数据收发。 其中CAN1是主设备,框图中的“存储访问控制器”是由CAN1控制的,CAN2无法直接使用访问存储区
一、内存映射1、内存映射图下图是STM32F103xCDE型号的内存映射图。2、内存划分由于STM32是32位,且其地址总线也为32根,所以其理论能够寻找的地址大小为4GB。从上图可以看出,左边的地址从0x00000000~0xFFFFFFFF的4GB是STM32理论分配的地址空间,STM32实际上的空间大小远远小于4GB的。4GB中又划分出了8个块,一块占512MB,分别作为代码区、SRAM区、外设区、FSMC1区、FSMC2区、FSMC寄存器区、未使用区、Cortex-M3内部外设区。3、存储器映射映射其实就是对应的意思。事实上存储器本身并不具备地址,将芯片理论上的地址分配给存储器,这就是
前言:本文主要内容为将优秀的图形库U8g2移植到STM32单片机上,用于OLED显示精美UI。其实,目前GitHub上有需要优秀的开源GUI库,但是大部分的GUI解决方案并不适合0.96OLED(128x64像素,基于SSD1306)这种资源紧缺型的显示模组使用。所以,在这里给大家介绍和移植一下目前最为主流的0.96寸OLED的GUI图形库——U8g2。(本文为HAL库下的移植,标准库和其区别不大,文末有代码开源) U8g2库开源网址:https://github.com/olikraus/u8g2 实验硬件:STM32F103C8T6;0.96寸OLED(128×
前言:本文主要内容为将优秀的图形库U8g2移植到STM32单片机上,用于OLED显示精美UI。其实,目前GitHub上有需要优秀的开源GUI库,但是大部分的GUI解决方案并不适合0.96OLED(128x64像素,基于SSD1306)这种资源紧缺型的显示模组使用。所以,在这里给大家介绍和移植一下目前最为主流的0.96寸OLED的GUI图形库——U8g2。(本文为HAL库下的移植,标准库和其区别不大,文末有代码开源) U8g2库开源网址:https://github.com/olikraus/u8g2 实验硬件:STM32F103C8T6;0.96寸OLED(128×
目录0参考资料出处1实验预期效果2硬件学习2.1TB6600驱动器 2.1.1通过拨码开关设定细分与电流2.1.2共阴共阳接线法2.2开关电源(AC转DC变压器)&电源线2.342步进电机2.3.1基本知识2.3.2转速细分控制2.3.3满步、半步、微步驱动原理3软件配置与硬件接线3.1 STM32CubeMX的配置3.1.1配置定时器TIM2 编辑3.1.2配置引脚PA13.2驱动器的接线方式3.3细分与电流调节编辑4代码编写5最终效果 6附录6.1TB6600驱动器6.1.1驱动器功能6.1.2接线6.1.3常见故障及对策6.242步进电机尺寸图与内部结构0参考资料出处参考博客:
目录0参考资料出处1实验预期效果2硬件学习2.1TB6600驱动器 2.1.1通过拨码开关设定细分与电流2.1.2共阴共阳接线法2.2开关电源(AC转DC变压器)&电源线2.342步进电机2.3.1基本知识2.3.2转速细分控制2.3.3满步、半步、微步驱动原理3软件配置与硬件接线3.1 STM32CubeMX的配置3.1.1配置定时器TIM2 编辑3.1.2配置引脚PA13.2驱动器的接线方式3.3细分与电流调节编辑4代码编写5最终效果 6附录6.1TB6600驱动器6.1.1驱动器功能6.1.2接线6.1.3常见故障及对策6.242步进电机尺寸图与内部结构0参考资料出处参考博客:
目录0说明1传感器介绍 2代码说明 2.1ADC初始化函数(adc.c) 2.2GPIO初始化函数 2.3主函数0说明 本篇文章主要是说明怎么使用STM32单片机读取土壤湿度传感器采集到的数据,包括模拟和数字数据,并且附带着STM32所需要的全部代码,所使用的土壤湿度传感器如下图所示。附:使用单片机STM32f103系列1传感器介绍 该传感器具有数字开关量输出(0和1)和模拟量AO电压输出两种输出形式。 接上5V电源,电源灯亮,当湿度低于设定的阈值时,DO输出为高电平,开关指示灯灭;高于设定的阈值时,DO输出为低电平,开关指示灯亮。AO模拟输出,可以连接
目录0说明1传感器介绍 2代码说明 2.1ADC初始化函数(adc.c) 2.2GPIO初始化函数 2.3主函数0说明 本篇文章主要是说明怎么使用STM32单片机读取土壤湿度传感器采集到的数据,包括模拟和数字数据,并且附带着STM32所需要的全部代码,所使用的土壤湿度传感器如下图所示。附:使用单片机STM32f103系列1传感器介绍 该传感器具有数字开关量输出(0和1)和模拟量AO电压输出两种输出形式。 接上5V电源,电源灯亮,当湿度低于设定的阈值时,DO输出为高电平,开关指示灯灭;高于设定的阈值时,DO输出为低电平,开关指示灯亮。AO模拟输出,可以连接
1.ADC简介STM32F103系列最少都拥有2个ADC,我们选择的STM32F103RCT包含有3个ADC,STM32的最大转换速率为1Mhz,也就是转换时间为1us,除此之外,还要注意ADC时钟不可以超过14M。2.电压范围ADC所能测量的电压范围就是VREF-≤VIN≤VREF+,把VSSA和VREF-接地,把VREF+和VDDA接3V3,得到ADC的输入电压范围为:0~3.3V。3.STM32转换通道(规则通道组和注入通道组)规则通道:相当于正常运行的程序,注入通道:相当于一个“中断”,打断正在进行的规则通道,从而进行注入通道的程序。当注入通道完成转换后,然后继续完成规则通道的转换。S
1.ADC简介STM32F103系列最少都拥有2个ADC,我们选择的STM32F103RCT包含有3个ADC,STM32的最大转换速率为1Mhz,也就是转换时间为1us,除此之外,还要注意ADC时钟不可以超过14M。2.电压范围ADC所能测量的电压范围就是VREF-≤VIN≤VREF+,把VSSA和VREF-接地,把VREF+和VDDA接3V3,得到ADC的输入电压范围为:0~3.3V。3.STM32转换通道(规则通道组和注入通道组)规则通道:相当于正常运行的程序,注入通道:相当于一个“中断”,打断正在进行的规则通道,从而进行注入通道的程序。当注入通道完成转换后,然后继续完成规则通道的转换。S