02-七天物联网智能家居

本笔记为参加 《百问网-七天物联网智能家居》Day2 记录

1. 上手思路

1.1 官网资料

芯片原厂官网:https://www.st.com/content/st_com/zh.html
数据手册(Product Spec)

  1. st官网搜索stm32f103c8t6
  2. 点击stm32f103c8t6
  3. 点击文件
  4. 其中 《产品规格》就是我们常说的《数据手册》
  5. 《参考手册》包含所有芯片的外设描述

1.2 配套资料

通常一款芯片,原厂会基于一款芯片设计开发板和配套的示例程序,原厂设计的开发板,我们叫做公板。价格昂贵,不好购买。

  1. 点击 工具与软件
  2. 其中boards为st官方开发板

也可使用基于stm32fc8t6芯片设计的其他开发板,例如本次使用的 百问网 stm32mini
需要获取该板子的 《原理图》 及配套程序

1.3 分析硬件

最小系统

用最少的电路组成单片机可以工作的系统

最小系统
查看原理图

如何查看 工作电压

  1. 《数据手册》中电源部分
  2. 5.1.6 Power supply scheme 中为电路描述,VDD和VSS为芯片供电
  3. 5.3.1 General operating conditions中描述电压范围

数据手册电源部分
VDD描述

如何查看晶振选型

  1. 查看《数据手册》
  2. 5.3.6 External clock source characteristics 中
    晶振典型值 8MHz,电路中需加两个电容,范围为5~25pF

晶振大小晶振电路

2. 寄存器

2.1 外设和寄存器

STM32芯片
外设寄存器

2.2 存储结构

0x0800 0000 ~ 0x0801 FFFF (Flash memory)存放下载代码
0x2000 0000 ~ 0x4000 0000 代码运行中产生的临时数据变量
0x4000 0000 ~ 0x4002 3400 所有外设
0xE000 0000 ~ 0xE010 0000 M3内部外设的寄存器地址(中断向量表,系统滴答时钟)
存储结构
举例GPIOA寄存器
控制GPIO引脚输出对应电平:GPIOA + GPIOx_ODR = 0x4000 0000 + 0x0C 中的bit1位
GPIO寄存器寄存器描述

3. 开发

3.1 单片机开发方式

  1. 使用汇编操作寄存器
    执行效率高
    编写难度大、移植性差

  2. 使用C语言操作寄存器
    执行效率适中
    编写效率低、移植性差

  3. 使用库开发
    标准库

    执行效率稍低
    编写效率高、移植性稍低
    已停止更新

    HAL库

    执行效率稍低
    编写效率高、移植性好
    官方推荐,接口名字基本上已HAL开头

4. 创建工程

4.1 STM32 生态

  1. STM32 CubeMX 生成代码
  2. STM32 CubeIDE 代码编辑和编译
  3. STM32 CubeProgrammer 烧写
  4. STM32 CubeMonitor-电源
    STM32 CubeMonitor-射频
    STM32 CubeMonitor-UCPD
    监控

STM32生态

4.2 创建工程

  1. 自定义创建工程

定制化程度高,干净简练
前期配置难度高,需要一定经验

  1. STM32CubeMX创建工程

上手难度低,可视化方便
需要按指定规则编写代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值