学习开发板

Posted 恶鬼ゞ缠身

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习开发板相关的知识,希望对你有一定的参考价值。

目录

1.  网络资源推荐

2.  参考资料

3.  学习STM32要掌握哪些基本技能

4.  开发板资源描述(STM32F1xx开发板)

5.  STM32初探

5.1  为什么选择STM32

5.1.1  什么是STM32

5.1.2  Cortex内核

5.1.3  STM32   VS   ARM7

5.2  STM32概述

5.2.1  CM3内核优点

5.2.2  STM32F1各芯片关联

5.3  STM32应用场景举例

6.  STM32芯片解读 (STM32F1xx开发板)

6.1  芯片内部资源描述(战舰/精英STM32F103ZET6和迷你STM32F103RCT6)

6.2  USB串口驱动安装

6.3  JLINK驱动安装

7.  芯片内部结构图

7.1  芯片引脚和功能怎么对应 

7.2  STM32最小系统-看原理图


1.  网络资源推荐

  • 推荐学习网站:
  1. www.openedv.com  开源电子网,正点原子官方技术支持论坛。数万帖子,数万用户。正点原子资料发布和售后官方平台。
  2. www.stmcu.org     ST中国官方技术网站,ST官方文档发布网站。
  • 微信公众平台:

“正点原子” 

正点原子最新资料都会在公众平台发布。

  • 淘宝店铺:http://eboard.taobao.com

2.  参考资料

  • 最底层(了解):CM3权威指南/CM4权威指南(ARM提供)
  • 芯片参考手册(芯片功能寄存器描述特性等,详细)(了解):STM32F10x中文参考手册/STM32F4xx中文参考手册(ST提供)
  • 芯片数据手册(datasheet,ds)(了解):STM32F103xCDE_DS_CH_V5.pdf(芯片电气参数,引脚说明等)
  • 官方其他资源和教程(了解):

固件库包(含参考源码),一些官方培训PPT 

ST官方资料下载地址:www.stmcu.org

  • 特定开发板学习教程(手册,视频,源码)(理解):针对开发板的源码,教程,视频等

3.  学习STM32要掌握哪些基本技能

  • 熟练掌握C语言
  • 熟练掌握一种开发环境

1.掌握一种开发环境:     Keil uVision5

2.掌握一个调试工具:     JTAG必备

3.多使用JTAG调试代码,深入理解代码执行流程

4.库函数和寄存器对比学习

   掌握库函数的基本配置方法,了解寄存器底层配置过程,以便深入了解STM32芯片本质

  • 深入学习基本外设,选择性学习高级功能

1.基本外设:

GPIO输入输出,外部中断,定时器,串口 

理解了这4个外设,基本就入门了一款MCU

2.基本外设接口:

SPI,IIC,WDG,FSMC,ADC/DAC,SDIO等

这些外设接口功能原理对每个芯片几乎都是一样的,对芯片而言就是加减法而已

3.高级功能:

UCOS,FATFS,EMWIN等,以及一些应用。

4.  开发板资源描述(STM32F1xx开发板)

参考资料:

战舰/精英STM32F1开发板:《STM32F1开发指南-库函数版本》第1,2章

开发板原理图

开发板外观说明(精英版)

 硬件资源说明:《STM32F1开发指南-库函数版本》第1,2章

5.  STM32初探

5.1  为什么选择STM32

5.1.1  什么是STM32

新的基于ARM内核的32位MCU系列,内核为ARM公司为要求高性能、低成本、低功耗的嵌入式应用专门设计的Cortex-M内核,标准的ARM架构。

5.1.2  Cortex内核

STM32F1xx属于Cortex-M3内核,采用ARMv7-M架构。

Cortex-M3系列属于ARMv7架构。

ARMv7架构定义了三大分工明确的系列:

"A"系列:面向尖端的基于虚拟内存的操作系统和用户应用

"R"系列:针对实时系统

"M"系列:对微控制器

5.1.3  STM32   VS   ARM7

5.2  STM32概述

5.2.1  CM3内核优点

  • 高性能Cortex-M内核
  1. 采用ARM公司流行的标准内核Cortex-M3
  2. 低动态功耗上实现的高性能
  3. 单周期的乘法和硬件除法
  4. 不可分的位操作,实现对RAM,I/O和寄存器的最优访问
  • 最佳的代码密度

Thumb-2指令集以16位指令的密度实现32位指令性能(与ARM7TDMI的ARM模式比减少了30%-45%的代码量)

  • 可预见的运行时间

中断控制器嵌在内核之中,中断之间的间隔最少可达6个CPU周期

从低功耗模式唤醒只需6个CPU周期

  • 改进的调试功能

串行单步调试和JTAG调试

5.2.2  STM32F1各芯片关联

5.3  STM32应用场景举例

6.  STM32芯片解读 (STM32F1xx开发板)

参考资料:

STM32F1数据手册:STM32F103ZET6.pdf

STM32F1中文手册:STM32F1xx中文参考手册.pdf 

开发板原理图:XXX STM32F1_Vxx_SCH.pdf

6.1  芯片内部资源描述(战舰/精英STM32F103ZET6和迷你STM32F103RCT6)

  • 内核

32位 高性能ARM Cortex-M3处理器

时钟:高达72M,实际还可以超屏一点点

单周期乘法和硬件除法

  • IO口

STM32F103ZET6:144引脚 112个IO

STM32F103RCT6:64引脚 51个IO

大部分IO口都耐5V(模拟通道除外)

支持调试:SWD和JTAG,SWD只要2根数据线

  • 存储器容量

STM32F103ZET6:512K FLASH,64K SRAM

STM32F103RCT6:256K FLASH,48K SRAM

  • PIN to PIN兼容
  • 时钟,复位和电源管理
  1. 2.0~3.6V电源和IO口电压
  2. 上电复位,掉电复位和可编程的电压监控
  3. 强大的时钟系统

         4~6M的外部高速晶振

         内部8MHz的高速RC振荡器

         内部40KHZ低速RC振荡器,看门狗时钟

         内部锁相环(PLL,倍频),一般系统时钟都是外部或者内部高速时钟经过PLL倍频后得到的

         外部低速32.768K的晶振,主要做RTC时钟源

6.2  USB串口驱动安装

  • 低功耗

睡眠,停止和待机三种低功耗模式

可用电池为RTC和备份寄存器供电

  • AD

3个位AD(多达21个外部测量通道)

转换范围:0~3.6V(电源电压)

内部通道可以用于内部温度测量

内置参考电压

  • DA

2个12位DA

  • DMA

12个DMA通道(7+5=12;7通道DMA1,5通道DMA2)

支持外设:定时器,ADC,DAC,SDIO,I2S,SPI,I2C和USART

6.3  JLINK驱动安装

  • 定时器:多达11个定时器

4个通用定时器

2个基本定时器

2个高级定时器

1个系统定时器

2个看门狗定时器

  • 通信接口:多达13个通信接口

2个I2C接口

5个串口

3个SPI接口

1个CAN2.0

1个USB FS

1个SDIO

7.  芯片内部结构图

7.1  芯片引脚和功能怎么对应 

在STM32F103xCDE_DS_CH_V5.pdf中 表5,搜索引脚/功能查找

I/O Level一栏中标注FT的都是可以接受5V的

7.2  STM32最小系统-看原理图

供电

复位

时钟:外部晶振(2个)

Boot启动模式选择

下载电路(串口/JTAG/SWD)

后备电池

以上是关于学习开发板的主要内容,如果未能解决你的问题,请参考以下文章

QT210开发板怎么样?

STM32F407学习板 开发板 全部例程+原理图

嵌入式开发板丨ARM开发板 学习必备资料- 迅为电子

4418开发板和4412开发板的区别在哪里

[学习开发板怎么选]迅为4412开发板帮你入门嵌入式

转帖4412ARM开发板学习笔记