零基础 STM32 第一天

一、认知STM32

1、STM32概念

STM32:意法半导体基于ARM公司的Cortex-M内核开发的32位的高性能、低功耗单片机。

ST:意法半导体

M:基于ARM公司的Cortex-M内核的高性能、低功耗单片机

32:32位单片机

2、STM32开发的产品

STM32开发的产品:无人机、扫地机器人、3D打印机、平衡机、智能手环等

3、学习STM32对应的招聘职位

招聘职位:单片机开发工程师、单片机软件工程师、STM32开发工程师、嵌入式开发工程师、嵌入式软件工程师。

二、ARM与STM32

嵌入式系统

以应用为中心,以计算机技术为基础,软硬件可裁减,以适应应用系统对功能、可靠性、成本、体积和功耗等有严格要求的专用计算机系统。(笔试)

嵌入式系统的特性

硬件特性

体积小、集成效率高。

面向特定的应用。

功耗低、电磁兼容性好。

软件特性

嵌入式软件的开发与硬件紧密相关。

软件代码要求高效率和高可靠性。

软件一般固化在Flash或Rom中。

软件系统具有高实时性。

一般采用C语言开发。

1、ARM与STM32

ARM--Advanced RISC Machine

ARM是英国一家电子公司的名字

ARM敢为天下先,首创了chipless的生产模式,即该公司既不生产芯片,也不设计芯片,而是设计出高效的IP(知识产权)内核,授权给半导体公司使用。

ARM提供一系列内核、体系扩展、微处理器和系统芯片方案

ARM是一种通用的32位RISC处理器

ARM是一种功耗很低的高性能处理器

ARM芯片四大内核:Cortex-X1、Cortex-A、Cortex-R、Cortex-M

ARM Cortex-A 系列为应用型处理器

ARM在Cortex-A系列处理器大体上可以排序为:

Cortex-A78处理器、

Cortex-A77处理器、

Cortex-A76处理器、

Cortex-A57处理器、

Cortex-A53处理器、

Cortex-A15处理器、

Cortex-A9处理器、

Cortex-A8处理器、

Cortex-A7处理器、

Cortex-A5处理器、

ARM11处理器、

ARM9处理器、

ARM7处理器

产品:手机、平板、电视、智能音箱等

ARM Cortex-R为实时处理器

要求可靠性、高可用性、容错功能、可维护性和实时响应的嵌入式系统提供高性能计算解决方案。

高性能:与高时钟频率相结合的快速处理能力

实时:处理能力在所有场合都符合硬实时限制

安全:具有高容错能力的可靠且可信的系统

经济:可实现最佳性能、功耗和面积的功能。

ARM Cortex-M处理器系列

ARM Cortex-M处理器系列是一系列可向上兼容的高能效、易于使用的处理器,帮助开发人员满足将来的嵌入式应用的需要。用更低的成本提供更多功能、不断增加连接、改善代码重用和提高能效。

功耗更低

代码更小

使用更方便

更具产品竞争力

Cortex-M 系列针对成本和功耗敏感的MCU和终端应用(如智能测量、人机接口设备、汽车和工业控制系统、大型家用电器、消费性产品和医疗器械)的混合信号设备进行过优化。

Cortex-M系列细分为M0、M3、M4、M7和超低功耗的M0+

产品:无人机、扫地机器人、3D打印机、平衡机、智能手环等

三、开发环境安装与工程搭建

1、软、硬件准备

硬件准备:STM32F407ZET6开发板、jlink下载器、电脑。

软件准备:

(1)keil v5软件,下载网址:https://www.keil.com/download/product/(软件路径:MDK5\mdk528a.exe)

(2)STM32开发的库函数,下载网址:https://www.keil.com/dd2/Pack/(路径:STM32F4器件支持包\Keil.STM32F4xx_DFP.1.0.8.pack)

(3)STM32F4官方资料:https://www.stmcu.org.cn/

STM32芯片型号识别

2、安装软件及库支持包

一切软件均用管理员权限打开。关闭杀毒软件,电脑防火墙。

(1)安装keil v5软件,参考博客(一位认为C语言是最好的编程语言的工程师):https://blog.csdn.net/wwwqqq2014/article/details/115412594

(2)双击安装STM32库支持包:Keil.STM32F4xx_DFP.1.0.8.pack

(3)参考文档:STM32工程建立步骤.docx 创建STM32工程(后面给出)

(4)参考文档:J-Link配置.docx,完成下载器配置(后面给出)

STM32 | STM32到底是什么?(第一天)的更多相关文章

  1. LWIP network interface 即 LWIP 的 硬件 数据 接口 移植 首先 详解 STM32 以太网数据 到达 的第一站: ETH DMA 中断函数

    要 运行  LWIP  不光 要实现  OS  的 一些 接口  ,还要 有 硬件 数据 接口 移植 ,即 网线上 来的 数据 怎么个形式 传递给  LWIP ,去解析 做出相应的 应答  ,2017 ...

  2. stm32串口发送数据复位 第一个数据丢失

    http://blog.csdn.net/kevinhg/article/details/40991655 STM32串口发送必须先检测状态,否则第一个字节无法发出,发送完毕,必须检测发送状态是否完成 ...

  3. stm32 串口发送字符串丢失第一个字节

    使用stm32f103调试串口通讯时,上电后发送的字符串的第一个字节丢失. 发送数据GpuSend("SPG(2);"); 接收端收到的数据为:PG(2);,第一个字符丢失. 出现 ...

  4. [stm32] STM32 Interrupts and events 系统了解(EXTI)及槽型光电开关tp850电路研究

    中断和事件 1 嵌套向量中断控制器 特性: ● 68个可屏蔽中断通道(不包含16个Cortex™-M3的中断线):● 16个可编程的优先等级(使用了4位中断优先级):● 低延迟的异常和中断处理:● 电 ...

  5. [stm32] STM32的通用定时器TIMx系统了解

    通用定时器(TIMx) 一.TIMx简介 二.TIMx主要功能 三.TIMx功能描述 3.1 时基单元 3.2 计数器模式 3.3 时钟选择 3.4 捕获/比较通道 3.5 输入捕获模式 3.6 PW ...

  6. STM32 ~ STM32 TIM重映射

    复用功能 没有重映射 部分重映射 完全重映射 TIM3_CH1 PA6 PB4 PC6 CH2 PA7 PB5 PC7 CH3 PB0 PB0 PC8 CH4 PB1 PB1 PC9 /**重映射 t ...

  7. 嵌入式单片机STM32应用技术(课本)

    目录SAIU R20 1 6 第1页第1 章. 初识STM32..................................................................... ...

  8. SLAM+语音机器人DIY系列:(四)差分底盘设计——1.stm32主控硬件设计

    摘要 运动底盘是移动机器人的重要组成部分,不像激光雷达.IMU.麦克风.音响.摄像头这些通用部件可以直接买到,很难买到通用的底盘.一方面是因为底盘的尺寸结构和参数是要与具体机器人匹配的:另一方面是因为 ...

  9. STM32(1)——使用Keil MDK以及标准外设库创建STM32工程

    转载来自:http://emouse.cnblogs.com 1.1 开发工具与开发环境 1. 软件版本 本节所使用Keil MDK 为目前的最新版V4.21.其他版本差别不大,读者可以根据自己使用的 ...

  10. 使用外网控制你的STM32单片机

    转自:http://blog.csdn.net/xdxlove/article/details/50837459 本文章假设读者已经在STM32单片机上成功移植LWIP,且已经实现在局域网内控制STM ...

随机推荐

  1. uni-app 顶部配置搜索框和左右图标

    顶部的图标只支持本地图片哈,所以你要将阿里巴巴上的图标下载到本地, 然后只要XXX.ttf这个文件就行了 然后放在static这个文件中 在pages.json中fontSrc进行引入. text:使 ...

  2. C#对象属性浅拷贝和深拷贝

    对象属性和字段拷贝的几种方式 微软提供了浅拷贝 对于值类型,修改拷贝的值不会影响源对象 对于引用类型,修改拷贝后的值会影响源对象,但string特殊,它会拷贝一个副本,互相不会影响 自己实现深拷贝,我 ...

  3. CentOS使用iptables开放3000端口

    关闭firewall systemctl stop firewalld.service 禁止firewall开机启动 systemctl disable firewalld.service 设置ipt ...

  4. PHP中GD库

    PHP中GD库 一.GD库的介绍 1.GD库是什么? Graphic Device,图像工具库,gd库是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成 ...

  5. Java浅谈BufferedReader

    既然Scanner简单好用,为什么要用BufferedReader呢? 主要原因是面对大量的读入显得较慢且不安全,这里体现在三个方面,一方面是解析的问题,好用意味着封装的更复杂,一拖n的接口解析起来会 ...

  6. ElasticSearch7.3学习(七)----Mapping映射入门

    1.mapping映射 概念:自动或手动为index中的_doc建立的一种数据结构和相关配置,简称为mapping映射.插入几条数据,让es自动为我们建立一个索引 PUT /website/_doc/ ...

  7. SuperObject 的创建类型重大发现

    原来每当到自己创建数组加对象的时候就很头疼,原来是这样搞的,这次是清晰了 向数组里增加对象就用这个了: MySo.AsArray.Add(SO('{"爱好":["编程&q ...

  8. 推荐一款id生成器: Hashids

    唯一 id 生成的方式有很多种,比较常见的有以下几种方式: 语言自带功能,如 Java 中的 UUID,常用于后端 第三方工具提供,如 npm 中的 nanoid,常用于前端 Twitter 开源的 ...

  9. Codeforces Round #824 (Div. 2) A-E

    比赛链接 A 题解 知识点:贪心,数学. 注意到三段工作时间一共 \(n-3\) 天,且天数实际上可以随意分配到任意一段,每段至少有一天,现在目的就是最大化段差最小值. 不妨设 \(l_1<l_ ...

  10. Sigrok逻辑分析仪软件(基于CY7C68013A)

    关于逻辑分析仪 逻辑分析仪在调试数字电路时是非常重要的工具. 其形式与示波器类似, 采集被检测信号的电平, 并绘制时序图进行分析. 逻辑分析仪和示波器的区别: 数字量和模拟量: 示波器采集的是模拟量, ...