本文采用知识共享署名 4.0 国际许可协议进行许可,转载时请注明原文链接,图片在使用时请保留全部内容,可适当缩放并在引用处附上图片所在的文章链接。

目录

简介

芯片架构

系统时钟

GPIO


简介

STM32是Cortex-M3 系列的,而Cortex-M3 处理器采用ARMv7-M 架构。

芯片架构

上图是stm32的系统结构。

使用哈弗体系结构,取指和取数据分离,

ICODE指令总线连接到flash闪存指令存储区,这个存储区的地址在0x00000000-0x1FFFFFFF之间,负责取指操作。

DCODE数据总线负责在0x00000000-0x1FFFFFFF之间的数据访问操作。这个数据存储区可以是SPRAM也可以是闪存和外设。Stm32f10系列的静态SPRAM为64K,起始地址为0x20000000.

系统总线:负责在0x20000000-0xDFFFFFFF和0xE0100000-0xFFFFFFFF之间所有的数据传送。

AHB 总线这是贯穿所有外设的一条总线, 可以在图中发现, AHB经过桥接, 由APB1、 APB2控制着几乎所有外设, 2>1, APB2属于高速设备, 而APB1则属于低速设备。

系统时钟

  • HSE:外部晶体/陶瓷谐振器(一般选用8M 手册中提到范围为4~16Mz)用户外部时钟 (最高可达25MHz从SOC_IN引脚输入,并保证OSC_OUT悬空)。
  • HSI:此时钟信号由内部8MHz的RC振荡器产生,可直接作为系统时钟或在2分频后作为

PLL输入。

  • LSE:是一个32.768kHz的低速外部晶体或陶瓷谐振器。它为实时时钟或者其他定时功能提

供一个低功耗且精确的时钟源

  • LSI RC:担当一个低功耗时钟源的角色,它可以在停机和待机模式下保持运行,为独立看

门狗和自动唤醒单元提供时钟。 LSI时钟频率大约40kHz(在 30kHz和 60kHz之间)。

除此之外,值得一提的是SYSCLK/HSI/HSE/2分频的PLL时钟,可由时钟配置寄存器(RCC_CFGR)中的MCO[2:0]位控制外部 MCO引脚输出。作为时钟同步信号。

GPIO

GeneralPurposeInputOutput(通用输入/输出)

构体单元名

中文释义

实际结构与特点

AIN

模拟输入

实际控制中,关闭了上端的施密特触发器(自己的翻译,图中TTL肖特基触发器恕我知识浅薄看不懂),以及输出驱动器即模拟信号仅能通过管脚流入片内模拟输入端。(有可能有下拉电阻,起到阻抗匹配作用)。

IN_FLOATING

浮空输入

理解起来最简单,即什么都不接,手触摸的时候人体感应引脚,可能高可能低,这个就不好说啦, STM32结构不明,更何况人体是个大电容啊。一般不用。

IPD

下拉输入

D即DOWN,下拉,笔者认为起到衰减及稳定信号作用,如有雷同理解,不胜荣幸。

IPU

上拉输入

U即UP,上拉,此时在输入端,上拉电阻开关使能, 芯片或接口的内部或外部有上拉,保证输入不接信号时为1。

Out_OD

开漏输出

相当于三极管集电极, 要得到输出高电平需上拉电阻, 若输出低电平则吸电流能力强,可参看达林顿管UNL2003,思考该芯片可否输出电平1

out_PP

推挽输出

笔者钻研开关电源,(数字电路很没劲啦,一下一下就搞出来了的, 开关电源环节多, 健脑O(∩_∩)O~~) 习惯称为图腾柱输出, otemPole,或半桥,两个三极管或FET 受互补信号控制, 使得在一个导通时另一个总是截止。 一般用来用来匹配电压, 或者提高IO口的驱动能力。 在STM32中当然是为了提高其驱动能力而设定的。

AF_OD

开漏复用

AF是复用的标号,是对于STM32的GPIO 管脚的第二功能而言的, 具体用到再说。 比如使用串口就是要设为复用哦。 具体配置可以参看参考手册V10: 8.1.11 外设的GPIO 配置

Stm32的GPIO的8种模式:

(1)GPIO_Mode_AIN 模拟输入

(2)GPIO_Mode_IN_FLOATING 浮空输入

(3)GPIO_Mode_IPD 下拉输入

(4)GPIO_Mode_IPU 上拉输入

(5)GPIO_Mode_Out_OD 开漏输出

(6)GPIO_Mode_Out_PP 推挽输出

(7)GPIO_Mode_AF_OD 复用开漏输出

(8)GPIO_Mode_AF_PP 复用推挽输出

STM32 contex m3 笔记一相关推荐

  1. STM32 FSMC学习笔记+补充(LCD的FSMC配置)

    STM32 FSMC学习笔记+补充(LCD的FSMC配置) STM32 FSMC学习笔记 STM32 FSMC的用法--LCD 转载于:https://www.cnblogs.com/LittleTi ...

  2. stm32 u8g2移植笔记

    STM32 u8g2 移植笔记 前言 当初想写一个单色屏菜单时,曾移植过u8g2到STM32平台(这里用的是keil MDK),不过当时一直有一个问题没有搞懂:为什么u8g2用在flash为32k,r ...

  3. stm32阶段总结笔记一

    第一阶段总结笔记,主要对GPIO,串口,时钟,中断,定时器进行总结,方便后续写程序快速查阅,寄存器用来了解库函数具体怎么配置的 文章目录 一.GPIO 寄存器 库函数操作 二.中断 外部中断 寄存器 ...

  4. 【STM32】学习笔记RTC日历基础应用问题分析

    ▲ 点击上方 关注STM32 RTC,Real_Time Clock,即实时时钟,在许多电子系统中都能看到实时时钟的存在. 今天是第6篇分享,<STM32学习笔记>之RTC日历基础应用问题 ...

  5. STM32单片机学习笔记(七)-RCC时钟控制:简单了解时钟树(一)

    写在前面:本系列内容均为自学笔记,参考资料为野火指南者开发板资料及芯片参考手册等,使用野火指南者开发板进行学习,该系列内容仅用于记录笔记,不做其他用途,笔记的内容可能会存在不准确或者错误等,如有大佬看 ...

  6. STM32 MPU 阅读笔记

    STM32 MPU 笔记 MPU简介 MPU的功能实现 MPU 可以配置的三种内存类型 MPU 的内存属性 MPU 相关寄存器 MPU type register MPU control regist ...

  7. STM32单片机学习笔记

    1.  AHB系统总线分为APB1(36MHz)和APB2(72MHz),其中2>1,意思是APB2接高速设备 2.  Stm32f10x.h相当于reg52.h(里面有基本的位操作定义),另一 ...

  8. stm32中断源有哪些_143条 超详细整理STM32单片机学习笔记(必看)

    点击上方蓝色字关注我们~ 1.AHB系统总线分为APB1(36MHz)和APB2(72MHz),其中2>1,意思是APB2接高速设备 2.Stm32f10x.h相当于reg52.h(里面有基本的 ...

  9. STM32基础课程笔记

    [1]STM32简介 命名规范 STM32F051K8U6 ST - 公司 M - micro eletronics 32 - 32位处理器 STM8 F - 基础版 L - 低功耗 G - 电源 0 ...

最新文章

  1. MySQL中 Order By 和 Limit 的排序问题
  2. ECS控制台支持创建资源时绑定标签
  3. redis 附近的人_Redis GEO地理位置信息,查看附近的人
  4. oracle system用户创建job 其他用户,oracle创建表空间、用户和表以及sys和system的区别...
  5. StringStringBuilder的使用
  6. 汉诺塔(三) 判断操作是否合法 + 栈(stack)数组
  7. mysql mvc javascript_MVC中用Jquery、JS和Ajax 实现分页 存储过程是用mysql写的。
  8. 金蝶k3服务器物理内存过高,金蝶k3提示超出内存解决方案
  9. Java程序员职业规划
  10. Web2.0浪潮下的广播电视业
  11. Mycat分库分表案例demo
  12. Sql Server 数据库练习题(一)
  13. 圣诞献礼 | AI、微服务、DevOps、企业架构文章合集
  14. 知物由学 | 行为时序建模在社交引流黑产识别中的应用
  15. WebRTC音频系统 音频发送和接收
  16. java对一些文件格式的操作(读写)
  17. 一阶电路的零状态响应
  18. VR全景制作拍摄方法教程
  19. 微软将推新AI聊天机器人Zo 可能是小冰的英文版
  20. Android大型实战:《亲信,优雅的从入门到进阶》-刘桂林-专题视频课程

热门文章

  1. 转码机器人怎么制作?
  2. 国企与互联网公司当程序员,我选择国企,哪怕工资少一截
  3. 瑞波打脸批评者,与速汇金达成合作伙伴关系
  4. 二叉树系列二:二叉树的层序遍历(BFS)
  5. 网易邮箱申请多少钱、新浪邮箱多少钱、TOM VIP呢?
  6. 『Pytorch笔记』Pycharm中使用CUDA_VISIBLE_DEVICES=0!
  7. 写了两个月的黑白棋对战程序,发现早就有了GGS,互联网上的游戏。
  8. Ubuntu 16.04LTS(Xenial Xerus)离线安装docker
  9. STM32如何将文件放到内部flash里面
  10. UTC,GPS Time和TAI