自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 STM32 - 使用FSMC控制LCD

1. FSMC简介STM32F1 系列芯片使用 FSMC 外设来管理扩展的存储器,FSMC 是 Flexible Static Memory Controller 的缩写,译为灵活的静态存储控制器。它可以用于驱动包括 SRAM、 NOR FLASH 以及 NAND FLSAH 类型的存储器,不能驱动如 SDRAM 这种动态的存储器而 在 STM32F429 系列的控制器中,它具有 FMC 外设,支持控制 SDRAM 存储器。由于 FSMC 外设可以用于控制扩展的外部存储器,而 MCU 对液晶屏的操作

2021-04-05 17:35:33 2897

原创 STM32 - 串行FLASH文件系统FatFS 移植

1.FatFS文件系统介绍1.1 简要介绍文件系统,它是为了存储和管理数据,而在存储介质建立的一种组 织结构,这些结构包括操作系统引导区、目录和文件。常见的 windows 下的文件系统格式 包括 FAT32、NTFS、exFAT。在使用文件系统前,要先对存储介质进行格式化。格式化先 擦除原来内容,在存储介质上新建一个文件分配表和目录。这样,文件系统就可以记录数 据存放的物理地址,剩余空间。文件系统庞大而复杂,它 需要根据应用的文件系统格式而编写,而且一般与驱动层分离开来,很方便移植,所..

2021-03-08 19:07:56 691 1

原创 STM32 - 利用SPI接口读写FLASH编程实践

1. SPI 固件库介绍可以直接查看:F103固件库手册(只有英文没有中文).chm,找到SPI章节,相关信息都在这里:初始化结构体及函数定义在库文件“stm32f4xx_spi.h”及“stm32f4xx_spi.c”中,编程 时我们可以结合这两个文件内的注释使用或参考库帮助文档。typedef struct{ uint16_t SPI_Direction; /*设置 SPI 的单双向模式 */ uint16_t SPI_Mode; /*设置 SPI 的主/从机端模式 */

2021-02-28 12:36:21 1173

原创 SPI 协议简介

1.SPI 协议SPI 协议是由摩托罗拉公司提出的通讯协议(Serial Peripheral Interface),即串行外围设 备接口,是一种高速全双工的通信总线。它被广泛地使用在 ADC、LCD 等设备与 MCU 间, 要求通讯速率较高的场合。1.1SPI 物理层SPI 通讯设备之间的常用连接方式:SPI 通讯使用 3 条总线及片选线,3 条总线分别为 SCK、MOSI、MISO,片选线为 SS,它们的作用介绍如下:(1) SS ( Slave Select):从设备选...

2021-02-24 19:22:00 2582

原创 STM32 I2C 编程实践

1.I2C 固件库简介I2C 初始化结构体typedef struct { uint32_t I2C_ClockSpeed; /*!< 设置 SCL 时钟频率,此值要低于 400000*/ uint16_t I2C_Mode; /*!< 指定工作模式,可选 I2C 模式及 SMBUS 模式 */ uint16_t I2C_DutyCycle; /*指定时钟占空比,可选 low/high = 2:1 及 16:9 模式*/ uint16_t I2C_OwnAddress1; /.

2021-02-22 18:48:20 523

原创 STM32 I2C 介绍

1.STM32 的 I2C 外设简介STM32 的 I2C 外设可用作通讯的主机及从机,支持 100Kbit/s 和 400Kbit/s 的速率,支 持 7 位、10 位设备地址,支持 DMA 数据传输,并具有数据校验功能。它的 I2C 外设还支 持 SMBus2.0 协议,SMBus 协议与 I2C 类似,主要应用于笔记本电脑的电池管理中2.STM32 的I2C 架构主要分为4部分:1)引脚描述;2)时钟控制;3)数据控制;4)控制逻辑,包括控制及状态寄存器,DMA等等;..

2021-02-09 14:47:27 2730

原创 I2C协议简介

1.I2C 介绍I2C 通讯协议(Inter-Integrated Circuit)是由 Phiilps 公司开发的,由于它引脚少,硬件 实现简单,可扩展性强,不需要 USART、CAN 等通讯协议的外部收发设备,现在被广泛 地使用在系统内多个集成电路(IC)间的通讯。2.I2C 物理层它的物理层有如下特点:(1) 它是一个支持设备的总线。“总线”指多个设备共用的信号线。在一个 I2C 通讯总线 中,可连接多个 I2C 通讯设备,支持多个通讯主机及多个通讯从机。(2) 一个...

2021-02-08 18:42:29 630

原创 存储器简介

1. 存储器种类存储器按其存储介质特性主要分为“易失性存储器”和“非易失性存储器”两大类。 其中的“易失/非易失”是指存储器断电后,它存储的数据内容是否会丢失的特性。由于一 般易失性存储器存取速度快,而非易失性存储器可长期保存数据,它们都在计算机中占据 着重要角色。在计算机中易失性存储器最典型的代表是内存,非易失性存储器的代表则是 硬盘。2. RAMRAM 是“Random Access Memory”的缩写,被译为随机存储器。所谓―随机存取‖,指 的是当存储器中的消息被读取或写入时,所需要

2021-02-07 17:02:06 894 1

原创 STM32 - DMA 编程实践2 M2P

1. 实验设计:Memory to Peripheral, Memory to 外设, 把内部SRAM的数据传输到串口外设,同时LED灯闪烁,演示DMA传数据不需要占用CPU2. 编程要点1)初始化USART;2)初始化DMA,注意也需要初始化DMA外设的时钟;3)编写主函数(开启串口发送DMA请求);3 源码完成相关宏定义// 串口工作参数宏定义#define DEBUG_USARTx USART1#define DEBUG_.

2021-02-05 19:41:56 293

原创 STM32 - DMA 编程实践1 M2M

1. 实验设计:Memory to Memory, FLASH to Memory, 把内部FLASH的数据传输到内部的SRAM2. 编程要点1)常量存储在FLASH中;2)初始化DMA,注意也需要初始化DMA外设的时钟;3)传输前亮黄灯,出错亮红灯,传输完成亮绿灯;3 源码定义相关的宏// 当使用存储器到存储器模式时候,通道可以随便选,没有硬性的规定#define DMA_CHANNEL DMA1_Channel6#define DMA_CLOCK

2021-02-03 09:33:16 898

原创 STM32 - DMA 简介

1. 简介DMA(Direct Memory Access)—直接存储器存取,是单片机的一个外设,它的主要功能 是用来搬数据,但是不需要占用 CPU,即在传输数据的时候,CPU 可以干其他的事情,好 像是多线程一样。数据传输支持从外设到存储器或者存储器到存储器,这里的存储器可以 是 SRAM 或者是 FLASH。DMA 控制器包含了 DMA1 和 DMA2,其中 DMA1 有 7 个通道, DMA2 有 5 个通道,这里的通道可以理解为传输数据的一种管道。要注意的是 DMA2 只存 在于大容量的单片机中

2021-01-27 19:39:41 2129

原创 STM32 - USART 串口编程实践

本章主要讲解使用STM32固件库编写USART程序

2021-01-23 21:37:15 788 2

原创 STM32 - USART简介

摘要:本章主要介绍STM32 的USART, 及其功能框图1. USART简介USART ((Universal Synchronous Asynchronous Receiver and Transmitter, 通用同步异步收发器),是一 个串行通信设备,可以灵活地与外部设备进行全双工数据交换。有别于 USART 还有一个 UART(Universal Asynchronous Receiver and Transmitter),它是在 USART 基础上裁剪掉了同 步通信功能,只有异步通信。.

2021-01-23 18:49:14 6664

原创 串口通信简介

摘要:本章主要介绍串口通信1. 串口通信主要包括物理层和协议层物理层:规定通讯系统中具有 机械、电子功能部分的特性,确保原始数据在物理媒体的传输。简单的说就是硬件部分。协议层:协议层主要规定通讯逻辑, 统一收发双方的数据打包、解包标准。简单的说就是软件部分。2. RS232 介绍2.1 物理层TTL电平,是芯片直接输出的电平,一般是3.3V~5V。在最初的应用中,RS-232 串口标准常用于计算机、路由与调制调解器(MODEN,俗称 “猫”)之间的通讯 ,..

2021-01-23 16:40:10 1506

原创 STM32 - 通迅的基本概念

摘要:本章主要介绍通迅的基本概念1. 串行通讯和并行通讯串行通讯是指设备之间通过少 量数据信号线(一般是 8 根以下),地线以及控制信号线,按数据位形式一位一位地传输数 据的通讯方式。而并行通讯一般是指使用 8、16、32 及 64 根或更多的数据线进行传输的通 讯方式。2. 全双工、半双工和单工通讯根据数据通讯的方向,通讯又分为全双工、半双工及单工通讯,它们主要以信道的方 向来区分3. 同步通讯和异步通讯根据通讯的数据同步方式,又分为同步和异步两种,可以根.

2021-01-23 14:54:22 301 1

原创 STM32 - SysTick 浅谈

SysTick 浅谈摘要:本章主要介绍SysTick系统定时器的基本原理,然后实现了毫秒定时器1. SysTick Timer (STK)系统定时器,是CM3 内核的外设,内嵌在 NVIC 中。系统定时器 是一个 24bit 的向下递减的计数器,计数器每计数一次的时间为 1/SYSCLK,一般我们设置 系统时钟 SYSCLK 等于 72M。当重装载数值寄存器的值递减到 0 的时候,系统定时器就产 生一次中断,以此循环往复。 因为 SysTick 是属于 CM3 内核的外设,所以所有基于 CM3.

2021-01-23 14:18:01 1530 5

原创 STM32 - 使用EXTI处理外部中断

使用EXTI处理外部中断1.任务描述使用开发板上的KEY1按键,达到开/关LED彩灯的目的2. 编程思路及要点编程思路检测GPIO中断,在中断服务函数里面,实现开/关LED彩灯编程要点1) 初始化用来产生中断的 GPIO;2) 初始化 EXTI;3) 配置 NVIC;4) 编写中断服务函数;3 示例代码为了方便移植,首先定义GPIO引脚1 //宏定义2 #define KEY1_INT_GPIO_PORT GPIOA3 ...

2021-01-23 10:12:08 630 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除