初步了解STM32的学习笔记(以STM32F103C8T6为例)

 

1.简了解STM32F103C8T6

STM32F103C8T6属于主流系列STM32F1

内核是ARM Cortex-Mex3

主频为72Hz

RAM:20K(SRAM)

ROM:64K(Flash)

封装:LQFP48

供电:2~3.6V(一般为3.3)

(注意:以前51用的是5V,而USB也是5V,所以直接插上,而stm32会加上一个稳压芯片,让电压为3.3V)

 2.STM32系列的外设资源

(所有图都是用的是B站上整理过的)

fe6cb96edcd942b8a46ec3821ba83655.jpg

 表里面前两个深色的是Cortex-M3内核里面的外设,现在有个基本了解就行,以后用的时候慢慢学习。

3.系统结构

(初学的话先简单了解一下,便于以后学习STM32)

78fadac8140942e3850fd9a4fefcf300.jpg

 从上到下看(想要更多了解的话去手册上看,这里只介绍了一部分)

  • ICode是指令总线,用来加载程序指令
  • DCode是数据总线,用来加载数据的
  • ICode和DCode主要是用来连接Flash的
  • Flash用于储存我们编写的程序
  • System是系统总线,连着其他地方,比如SRAM(用于储存程序运行时的变量数据)
  • ABH系统总线的意思先进高性能总线,用于挂载外设,比如说图中的SDIO、复位和时钟控制。它还连着APB1和APB2,APB的意思是先进外设总线,用于连接外设。由于ABH和APB存在一定差异,所以用两个桥接完成数据的转换和缓存。
  • DMA用于搬运大量数据,它可以像CPU一样,使用其他外设,但又不需要CPU参与,这是为了省下CPU的时间干别的事。

4.引脚

04f33a83605f4d7cbf433a80c3850d0b.png

(推荐优先使用加粗的地方,没有加粗的,可能需要配置或者有其他功能)

  • 标红色的是与电源有关的
  • 标绿色的是IO口、功能口的引脚
  • 标蓝色的是与最小系统相关的引脚

(S代表电源,I代表输入,O代表输出)

(FT:Five voltage Tolerant,就是5V容忍,没有FT的,就是3.3V)

  • 1是备用电源的
  • 2是I/O口或RTC(输出RTC校准时钟或RTC闹钟脉冲或秒脉冲)或侵入检测(就是一个安全保障)
  • 3、4都是I/O口或接32.768KHz的RTC晶振
  • 5、6接系统主晶振
  • 7是系统复位引脚,NRST意思为negative reset,是负极复位
  • 8、9内部模拟部分的电源
  • 10到19、21、22、25到33、41到43、45到46都是I/O口
  • 20是I/O口或BOOT1的引脚
  • 22、23、35、36、47、48是系统的主电源口(VSS是负极,VDD正极)
  • 34、37到40是I/O口或调试端口
  • 44是BOOT0的引脚

5.建立工程

  1. 建立工程文件夹,Keil中新建工程,选择型号
  2. 工程文件夹里建立Start、 Library、 User等文件夹,复制固件库里面的文件到工程文件夹
  3. 工程里对应建立Start、 Library、 User等同名称的分组,然后将文件夹内的文件添加到工程分组里工程选项,C/C++, Include Paths内声明所有包含头文件的文件夹
  4. 工程选项,C/C++,Define内定义USE_ STDPERIPH_ _DRIVER(工程选项,Debug,下拉列表选 择对应调试器,Settings, Flash Download里 勾选Reset and Run)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 6
    点赞
  • 78
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
根据引用内容,STM32C8T6是一款通用增强型的48脚单片机,具有64K闪存和LQFP封装。它适用于工业级温度范围-40~85度。下面是一些关于STM32C8T6学习笔记: 1. 学习资料:可以从ST官方网站下载STM32C8T6的数据手册和参考手册,这些手册包含了该单片机的详细信息和使用方法。 2. 开发环境:为了开始学习STM32C8T6,你需要安装相应的开发环境。ST官方提供了一款免费的集成开发环境(IDE)——STM32CubeIDE,它可以帮助你进行代码编写、调试和下载。 3. 编程语言:STM32C8T6可以使用多种编程语言进行开发,包括C语言和汇编语言。C语言是最常用的编程语言,它可以通过STM32CubeIDE进行编写和调试。 4. 引脚配置:在使用STM32C8T6之前,你需要了解每个引脚的功能和配置。数据手册中有一张引脚功能表,可以帮助你了解每个引脚的用途和配置方法。 5. 时钟配置:STM32C8T6具有多个时钟源和时钟分频器,你需要根据自己的需求配置正确的时钟。时钟配置对于外设的正常工作非常重要。 6. 中断和定时器:STM32C8T6支持中断和定时器功能,这些功能可以帮助你实现各种任务和功能。你可以通过配置中断和定时器来实现外设的响应和定时操作。 7. 外设驱动:STM32C8T6具有丰富的外设,包括GPIO、UART、SPI、I2C等。你可以根据自己的需求选择合适的外设,并学习如何配置和驱动这些外设。 8. 调试和下载:在开发过程中,你可以使用STM32CubeIDE提供的调试功能来调试你的代码。一旦代码调试完成,你可以使用ST-Link或其他下载器将代码下载到STM32C8T6上运行。 希望以上笔记对你学习STM32C8T6有所帮助!如果你有任何进一步的问题,请随时提问。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值