一,什么是ARM

ARM处理器是英国Acorn有限公司设计的低功耗成本的第一款RISC微处理器。

Acorn公司(1978-1990)1990 Acorn和苹果、VLSI Technology合资成立ARM公司

英国ARM公司是知识产权(IP)提供商

ARM公司在经典处理器ARM11以后的产品改用Cortex命名。

RISC(Reduced Instruction Set Computer, 精简指令集计算机)与CISC(Complex Instruction Set Computer, 复杂指令集计算机)相对。

ARM是最成功的商业RISC架构,RISC-V(V是版本号)是一个开源,免费的RISC架构,由加州伯克利分校2010年推出,目标是称为CPU届的“Linux”。对比RISC更精简,开源。

CISC(代表x86架构)主要应用在电脑,游戏主机,服务器,少部分嵌入式

RISC(代表包括ARM RISC-V)智能手机(苹果A系列),嵌入式,物联网。

二,什么是STM32

ST公司(意法半导体)

STM32F0----内核:ARM Cortex-M0

STM32F1----内核:ARM Cortex-M3

STM32F4----内核:ARM Cortex-M4

三,STM命名规范

STM32F103C8T6

ST---意法半导体

M--微控制器Microcontrollers

32-32位微控制器

F--通用型

103--子系列

C-48引脚

8--存储量64K

T--LQFP封装

6--工作温度 -40-85℃(8     -40-105℃)

四,内核和存储器

内核:ARM 32位的Cortex-M3 CPU(最高72MHz工作频率)

存储器:64k/128k字节的闪存程序存储器;20K字节的SRAM

SRAM和Flash特性对比

SRAM(静态存储器)--类型RAM--读写速度快无延迟,但是掉电会消失

Flash(闪存存储器)--类型ROM--读写有延迟,速度慢,但是掉电会保存

优劣互补

五,时钟、复位和电源管理

2.0~3.6V供电(51单片机--5V)

上电/断电复位(POR/PDR),可编程电压检测器(PVD)

时钟:

①4-16Mhz晶振(外接晶振)

②内嵌出厂调校的8Mhz的RC振荡器

③内嵌带校准的40KHz的RC振荡器

④产生CPU时钟的PLL(分频器)

⑤带校准功能的32kHz的RTC振荡器、

振荡器不同:内部是RC的振荡器 外部的是石英(晶体)振荡器

RTC--real time clock实时时钟

HSE(high sysclk external)

六,低功耗与ADC

低功耗:包括睡眠,停机,待机模式三种,VBAT为RTC和后备寄存器供电。

2个12位模转换器,1us转换时间(多达16个输入通道----IO口中有16个可以被设置成ADC)

转换范围:0-3.6V

双采集和保持功能

温度传感器(可以读取单片机内部芯片的温度)

ADC可以使用DMA操作

DMA(Direct Memory Access)?解放CPU,无需CPU介入,直接从存储器中读取。

七,DMA与IO端口

7通道DMA控制器,支持的外设:定时器,ADC,SPI,I2C,USART

几乎所有端口都可以兼容5V信号。

GPIO(通用输入输出接口)

八,调试模式与定时器

调试模式--串行单线调试(SWD)和JTAG接口

SWD好处就是只需要两条线,JTAG引脚多

SWD两条线---SWDIO和SWCLK。

J-LINK调试器支持JTAG协议和SWD协议。但是一般小型化的J-LINK只有SWD接口

JTAG的TMS和TCK信号分别与SWDIO和SWCLK共用引脚。

多达7个定时器

3个16位定时器(普通)  1个16位死区控制和紧急刹车(高级) 2个看门狗定时器  系统时间定时器(24位自减型计数器)

TIM1(高级)   TIM2 TIM3 TIM4(普通)

九,看门狗和滴答定时器

看门狗---监控cpu,一旦有异常情况,给单片机复位。

计数器计数,单片机必须每隔一段时间就喂狗。如果系统按时喂狗,计数器会重置,如果计数器超时,看门狗会认为系统可能已经失去响应,从而触发复位信号,重启系统。

滴答定时器(SysTick)是ARM Cortex-M系列处理器内核的一个特殊定时器,这个定时器专用于实时操作系统

①24位的递减计数器

②自动重装载功能

③当计数器为0时产生一个可屏蔽系统的中断

④可编程时钟源

十,I2C和USART接口

2个I2C接口,3个USART接口,2个SPI接口,一个CAN接口,USB 2.0全速接口

I2C总线是板级总线,连接线一般不超过2米。

USART是通用同步/异步收发器(带有同步时钟线USART_CK)

UART是通用异步收发器(没有时钟线)

但是常用的是异步模式,同步模式很少,所以二者区别不大。

USART只是一种协议方式,根据不同电平方式可以分为RS232和RS485(工业级,距离远)。

RS232转化器转化为TTL电平给MCU。

十一,SPI、CAN、USB接口

控制器区域网络(CAN)

位速度1M位/s ;11位标识符;29位扩展帧;3个发送邮箱;2个FIFO;2级14个滤波器

用于汽车,工业的智能设备通信。通信速度快,距离远,稳定,自动查错。

USB(通用串行总线)

USB接口用于做PC机的从设备,如鼠标,键盘,打印机之类。可以用STM32来开发键盘,打印机之类的外接电脑的外接设备。

1个USB接口;设备控制器;支持全速2.0 12M/s;有待机和唤醒功能;由内部PLL倍频器提供时钟;时钟必须由外部高速晶振产生。

十二,CRC校验和芯片ID

CRC计算单元,96位的芯片唯一代码。

十三,内部功能回顾

十四,接口定义

十五,开发板简介

十六,ISP程序下载

十七,最小系统电路

十八,Keil4安装

十九,工程简介和调试流程

二十,固件库的安装

二十一,编程语言简介

二十二,固件库的调用

二十三,添加工程文件

二十四,核心板电路分析

二十五,点亮LED灯

二十六,点亮更多LED灯的方法

二十七,LED闪烁的程序

二十八,LED呼吸灯程序

二十九,按键控制LED程序

三十,FLASH读写程序

三十一,蜂鸣器驱动程序

三十二,MIDI音乐播放程序

三十三,USART驱动程序

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐