关于STM32单片机的介绍

发布者:MagicGarden最新更新时间:2024-08-20 来源: elecfans关键字:STM32  单片机  MCU 手机看文章 扫描二维码
随时随地手机看文章

意法半导体STM32系列专为要求高性能、低成本、低功耗的嵌入式应用设计的ARM Cortex®-M0,M0+,M3, M4和M7内核的32位MCU。意法半导体的STM32基本型系列、增强型系列、USB基本型系列、互补型系列;沿用增强型系列的72兆赫兹处理频率。内存包括64KB到256KB闪存和 20KB到64KB嵌入式SRAM。采用LQFP64、LQFP100和LFBGA100三种封装,不同的封装保持引脚排列一致性,结合STM32平台的设计理念,开发人员通过选择产品可重新优化功能、存储器、性能和引脚数量,以最小的硬件变化来满足个性化的应用需求。


下面主要介绍关于STM32常见问题。

1、AHB系统总线分为APB1(36MHz)和APB2(72MHz),其中2>1,意思是APB2接高速设备

2、Stm32f10x.h相当于reg52.h(里面有基本的位操作定义),另一个为stm32f10x_conf.h专门控制外围器件的配置,也就是开关头文件的作用

3、HSE Osc(High Speed External Oscillator)高速外部晶振,一般为8MHz,HSI RC(High Speed InternalRC)高速内部RC,8MHz

4、LSE Osc(Low Speed External Oscillator)低速外部晶振,一般为32.768KHz,LSI RC(Low Speed InternalRC)低速内部晶振,大概为40KHz左右,提供看门狗时钟和自动唤醒单元时钟源

5、SYSCLK时钟源有三个来源:HSI RC、HSE OSC、PLL

关于STM32单片机的介绍

6、MCO[2:0]可以提供4源不同的时钟同步信号,PA8

7、GPIO口貌似有两个反向串联的二极管用作钳位二极管


8、总线矩阵采用轮换算法对系统总线和DMA进行仲裁

9、ICode总线,DCode总线、系统总线、DMA总线、总线矩阵、AHB/APB桥

10、在使用一个外设之前,必须设置寄存器RCC_AHBENR来打开该外设的时钟。

11、数据字节以小端存储形式保存在存储器中。

12、内存映射区分为8个大块,每个块为512MB

13、FLASH的一页为1K(小容量和中容量),大容量是2K

14、系统存储区(SystemMemory)为ST公司出厂配置锁死,用户无法编辑,用于对FLASH区域进行重新编程。所以我们烧写程序务必选择BOOT1 = 0,这样通过内嵌的自举程序对FLASH进行烧写,比如中断向量表和代码。

15、STM32核心电压为1.8V

16、STM32复位有三种:系统复位、上电复位、备份区域复位。其中系统复位除了RCC_CSR中的复位标志和BKP中的数值不复位之外,其他的所有寄存器全部复位。触发方式例如外部复位、看门狗复位、软件复位等;电源复位由于外部电源的上电/掉电复位或者待机模式返回。复位除了BKP中的寄存器值不动,其他全部复位;备份区域复位的触发源为软件复位或者VDD和VBAT全部掉电时。

17、单片机复位后所有I/O口均为浮空输入状态

18、68个可屏蔽中断通道,16个可编程优先级,16个内核中断,一共68+16=84个中断。103系列只有60个中断,107系列才有68个中断

19、系统启动从0x00000004开始,0x000 0000保留

20、(NestedVectored Interrupt Controller)NVIC嵌套向量中断控制器,分为两种:抢先式优先级(可嵌套)和中断优先级(副优先级,不能嵌套)。两种优先级由4位二进制位决定。分配下来有十六种情况:

关于STM32单片机的介绍

21、0号抢先优先级的中断,可以打断任何中断抢先优先级为非0号的中断;1号抢先优先级的中断,可以打断任何中断抢先优先级为2、3、4号的中断;……;构成中断嵌套。如果两个中断的抢先优先级相同,谁先出现,就先响应谁,不构成嵌套。如果一起出现(或挂在那里等待),就看它们2个谁的子优先级高了,如果子优先级也相同,就看它们的中断向量位置了。原来中断向量的位置是最后的决定因素

22、上电初始化后AIRC初始化为0,为16个抢先式优先级,但是由于所有的外部通道中断优先级控制字PRI_n为0,所以抢先式优先级相同,此时就不能嵌套了。

STM32通过其产品能力,向市场证明了一件事:Cortex-M系列MCU市场用量巨大。由于MCU供需失衡,这种不平衡导致MCU有10~15%的价格上涨是合理的,这种结果和生产线的停产,以及连续的产线开关相比影响将是有限的。国产灵动微MM32单片机可兼容替换STM32系列,英尚微电子支持提供产品技术支持及应用解决方案。


关键字:STM32  单片机  MCU 引用地址:关于STM32单片机的介绍

上一篇:如何使STM32CubeMX新建工程
下一篇:STM32有哪些国产替代者?

推荐阅读最新更新时间:2024-11-12 19:53

stm32单片机用什么软件编程
  今天要和大家分享的是stm32单片机用什么软件编程相关信息。   想学单片机开发,最主要是熟悉stm32的软件开发环境,目前stm32的开发环境,主流是KEIL和IAR,当然主要是windows版本运行。   两个开发环境都是目前的主流,都用的很多,而且这两种开发环境实际上差异不大,学好一个即可。我个人常用keil,虽然keil的版本很多,因为我常用的是STM32F1,所以KEIL4,就能满足需求。想完整完成一个Stm32的工程开发过程,需要学会新建工程,这个是单片机开发工具基础操作。   除此之外。还需要学会使用Keil进行仿真,写代码肯定会遇到各种问题。怎么找到问题造成的原因。就需要仿真查看了代码执行情况,当然也有其他
[单片机]
单片机练习 - 带中文字库12864LCD显示程序
I/O接口与LCD引脚的连接详见源代码注释. 12864源代码 //带中文字库的12864LCD显示程序 #include reg52.H #include intrins.H #define uchar unsigned char #define uint unsigned int sbit dula = P2^6; sbit wela = P2^7; //SCM12864-05端口定义 #define LCD_DATA P0 //数据口 sbit RS = P3^5; //并行的指令/数据选择信号, H数据, L命令 sbit RW = P3^6; //并行读写选择信号, H读, L写 sbit E = P3^4;
[单片机]
<font color='red'>单片机</font>练习 - 带中文字库12864LCD显示程序
51单片机之计时器与计数器
CPU时序的有关知识  振荡周期:为单片机提供定时信号的振荡源的周期(晶振周期或外加振荡周期)  状态周期:2个振荡周期为1个状态周期,用S表示。振荡周期又称S周期或时钟周期。  机器周期:1个机器周期含6个状态周期,12个振荡周期。  指令周期:完成1条指令所占用的全部时间,它以机器周期为单位。 例如:外接晶振为12MHz时,51单片机相关周期的具体值为: 振荡周期=1/12us; 状态周期=1/6us; 机器周期=1us; 指令周期=1~4us; 初始化程序应完成如下工作: 对TMOD赋值,以确定T0和T1的工作方式。 计算初值,并将其写入TH0、TL0或TH1、TL1。 中断方式时,则对EA赋值,开放定时器
[单片机]
51<font color='red'>单片机</font>之计时器与计数器
如何使用网络单片机W7100A实现TCP通信
今天给大家介绍的是以太网控制网络单片机 W7100A 的应用笔记之如何实现TCP通信。 TCP(传输控制协议)是用于控制网络间数据通信的协议。作为组成互联网的主要协议之一,更多的详细内容已经写入IETF(互联网工程任务组)的RFC 793中。TCP是运行于IP层上的协议,它保证了数据的有效传输并且可以按照数据的发送顺序依次进行接收。 因为W7100A单片机支持传输层的TCP协议,所以用户不需要做任何整合就可以直接使用TCP/IP协议。 下面一一给大家做阐述。 1 TCP SOCKET 用户可以在W7100A提供的所有8个SOCKET中使用TCP协议,但是必须首先创建要使用的SOCKET。在创建SOCKET时,需要用到
[单片机]
如何使用网络<font color='red'>单片机</font>W7100A实现TCP通信
AVR单片机定时计数器学习笔记分享
  定时计数器的结构与应用定时计数器(Timer/Counter)常用于计数、延时、测量 周期、频率、脉宽、提供定时脉冲信号等。在实际应用中,对于转速,位移、速度、流量等物理量的 测量,通常也是由传感器转换成脉冲电信号,通过使用定时计 数器来测量其周期或频率,再经过计算处理获得。   AVR的定时计数器接口功能: 通过定时计数器与比较匹配寄存器相互配合,生成占空比 可变的方波信号,即脉冲宽度调制输出PWM信号,可用于 D/A、马达无级调速控制、变频控制等。本文主要介绍的是AVR单片机定时/计数器学习笔记,具体的跟随小编来了解下。      AVR单片机定时/计数器学习笔记   定时/计数器1(16位)有普通模式、CTC模式、
[单片机]
AVR<font color='red'>单片机</font>定时计数器学习笔记分享
STM32 I2C配置
首先配置 I2C 1. 通过 APB 复位 I2C, 使能 I2C 时钟 2. 使能 GPIO 时钟, 配置 GPIO 在 AF OD 模式 3. 使能 I2C ( PE= 1 ) 4. 设置速度参数 FREQ CCR F/S DUTY TRISE A : CR2.FREQR = 期望的I2C时钟, 一般设置为最大的时钟 36 MHz 确定了 Tck = 1 / FREQ -- 类似于 CANBus 的时间片 Tq B : PE= 0 , 设置适当的 CCR F/S DUTY 以及 TRISE, PE= 1 标准模式 Tlow : Thigh = 1 : 1 快速模式 Tlow : Thigh = 2 : 1 ( D
[单片机]
STM8单片机实现蓝牙串口通信系统的设计
最近在淘宝逛的时候发现了一款单片机,STM8。相比之前一直使用的也是8位的AVR相比,感觉STM8更为强大,芯片特点如下: 内核:具有3级流水线的哈佛结构、扩展指令集 程序存储器:8K字节Flash;RAM:1K字节 数据存储器:640字节真正的数据EEPROM;可达30万次擦写 更重要的一点就是STM8系列若使用库编程的话,可以方便的不同芯片的程序移植。甚至可以方便的移植到STM32上面,大大减轻了更新硬件的重写程序的工作量。 ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。芯片转换时间仅为32μS,据有双数
[单片机]
STM8<font color='red'>单片机</font>实现蓝牙串口通信系统的设计
GD32单片机STM32远程下载手机程序升级固件下载局域网网页升级工具
GD32、STM32单片机,是我们最常见的一种MCU。通常我们在使用STM32单片机都会遇到程序在线升级下载的问题。 GD32/STM32单片机的在线下载通常需要以下几种方式完成: 1、使用ST/GD提供的串口下载工具,本地完成固件的升级下载。 2、自行完成系统BootLoader的编写,将系统程序分为BootLoader和APP两个部分,BootLoader完成固件升级。 3、使用STM32/GD固件服务器,完成固件的升级,固件服务器https://simplewifi.taobao.com/ 几种方式各有优缺点: 使用ST提供的方法进行固件升级,方法简单,不需要额外的开发。但是,只能本地完成STM32单片机的升级。
[单片机]
GD32<font color='red'>单片机</font><font color='red'>STM32</font>远程下载手机程序升级固件下载局域网网页升级工具
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved