资讯详情

1、【STM32】学习初探(方法及准备)

前言

由于个人原因,我已经很久没做了。我最近需要工作,但我基本上忘记了拿起32。接下来,我将急于学习STM32基础知识。以前学的是库函数版,有一定的基础。因此,准备从零开始学习寄存器版本的程序将有助于更深入地理解STM中对寄存器的操作。

拿出开发板,感觉既熟悉又陌生,这个博客先说学习准备,接下来的博客会更新后续实验。

学习方法

一、学习准备

2.1 C语言基础

学习STM必须通过32前C语言,否则很难理解代码和学习32。

谭浩强的《C第四版和第五版的程序设计都可以

2.2 建设开发环境

使用开发软件Keil uVision5

调试工具:JTAG、ST-LINK/V2

下载程序:可直接使用调试工具下载,也可使用串口下载,串口下载时需要使用串口助手

2.3 寄存器版本代码说明

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

二、参考的资料(文档)

  • 芯片内核(底层):CM3/CM权威指南(由ARM提供)
  • 芯片参考手册(功能寄存器特征描述):STM32F1/F中文参考手册(由ST提供)
  • 芯片数据手册(芯片电气参数及引脚说明):STM32F407ZGT6
  • STM32F407开发指南-寄存器版本(使用正点原子开发板)及其配套视频
  • 开发板原理图:Explorer STM32F4_Vxx_SCH.pdf

ST官方信息下载地址:www.stmcu.org

三、学习资源(硬件)

正点原子用于这里STM32F4系列探索者开发板,这里简单介绍一下开发板的硬件资源,具体介绍不完全 手册前两章有详细介绍。做好就看看。

ALIENTEK 探索者 STM32F4 板载主要资源如下:◆ CPU: STM32F407ZGT6, LQFP144, FLASH: 1024K=1M, SRAM: 192K;◆ 外扩 SRAM: IS62WV51216, 1M 字节◆ 外扩 SPIFLASH: W25Q128, 16M 字节◆ 2 状态指示灯(DS0:红色, DS1:绿色)◆ 1 个红外接收头, 配备小型红外遥控器◆ 1 个 EEPROM 芯片, 24C02,容量 256 字节◆ 1 六轴(陀螺仪) 加速度) 传感器芯片, MPU6050◆ 1 高性能音频编解码芯片, WM8978◆ 1 个 2.4G 支持无线模块接口 NRF24L01 无线模块◆ 1 路 CAN 接口,采用TJA1050 芯片◆ 1 路 485 接口,采用 SP3485 芯片◆ 2 路 RS232 串口(一公一母) 接口,采用 SP3232 芯片◆ 1 路单总线接口,支持 DS18B20/DHT11 等单总线传感器◆ 1 个 ATK 模块接口, 支持 ALIENTEK 蓝牙/GPS 模块◆ 1 个光敏传感器◆ 1 个标准的 2.4/2.8/3.5/4.3/7 寸 LCD 接口,支持电阻/电容触摸屏◆ 1 个摄像头模块接口◆ 1 个 OLED 模块接口◆ 1 个 USB 串口,可用于程序下载和代码调试(USMART 调试)◆ 1 个 USB SLAVE 接口,用于 USB 从机通信◆ 1 个 USB HOST(OTG)接口,用于 USB 主机通信◆ 1 个有源蜂鸣器◆ 1 个 RS232/RS485 选择接口◆ 1 个 RS232/模块选择接口◆ 1 个 CAN/USB 选择接口◆ 1 个串口选择接口◆ 1 个 SD 卡接口(在板子背面)◆ 1 个百兆以太网接口(RJ45)◆ 1 个标准的 JTAG/SWD 调试下载口◆ 1 个录音头(MIC/咪头)◆ 1 路立体声音频输出接口◆ 1 路立体声录音输入接口◆ 1 路扬声器输出接口,可接 1W 左右小喇叭◆ 1 组多功能端口(DAC/ADC/PWM DAC/AUDIO IN/TPAD)◆ 1 个参考电压设置接口◆ 1 个直流电源输入接口(输入电压范围: DC6~16V)◆ 1 个启动模式选择配置接口

◆ 1 个 RTC 后备电池座,并带电池◆ 1 个复位按钮,可用于复位 MCU 和 LCD◆ 4 个功能按钮,其中 KEY_UP(即 WK_UP)兼具唤醒功能◆ 1 个电容触摸按键◆ 1 个电源开关,控制整个板的电源◆ 独创的一键下载功能◆ 除晶振占用的 IO 口外,其余所有 IO 口全部引出

STM32芯片学习内容

一、学习的内容

  • 芯片的初步了解

STM32F407用的是Cortex-M4内核,Cortex-M4采用的是ARMv7-ME架构

Cortex-M4内核,增加浮点运算和增强的DSP处理指令

168MHz高速运行时210DMIPS的处理能力

32位定时器(M3是16位的定时器)

STM32家族:405.407.415.429.437

二、基本资源

  • 基本外设:GPIO输入输出、外部中段、定时器(中断)、串口
  • 基本外设接口:串口、SPI、I2C、ADC/DAC、WDG、FSMC、SDIO等
  • 高级系统功能:UCOS、FATFS、EMWIN等

2.1 内核

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

时钟:168M  支持FPU(浮点运算)和DSP指令

2.2 IO口

STM32F4007ZGT6:144引脚 114个IO

大部分都支持5V(数据手册中FT的都支持,模拟通道不支持)

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

2.3 存储容量

1024k flash   192  SRAM

2.4 时钟和电源管理

1.8v~3.6v电源和IO电压

上电/掉电复位、可编程的电压监控

强大的时钟系统

4~26M的外部高速晶振

内部16MHz的高速RC振荡器

内部32KHz低速RC振荡器,看门狗

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

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

2.5 低功耗

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

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

2.6 AD、DA

3个12位AD[24个外部测量通道]

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

内置参考电压

 2个12位DA

2.7 DMA

16个DMA通道,带FIFO和突发支持

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

2.8 定时器

17个定时器

10个通用定时器(TIM2和TIM5是32位)、2个基本定时器、2个高级定时器、1个系统定时器、2个看门狗定时器

2.9 通信接口

17个通信接口

3个I2C接口、6个USART(串口)、3个SPI接口、2个CAN2.0接口、2个USB OTG、1个SDIO

总结

目前就先准备这么多,之后随着学习后面的学习博客也会随之更新。

标签: w25传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台