自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 [STM32 - 野火] - - - 固件库学习笔记 - - -八.IIC

A0 ~ A2:地址输入。像上图中,A0~A2都接到GND,故为000WP:Write Protect,写保护。(此引脚为高电平则无法写入数据)NC:No Connect 空引脚。

2024-02-18 16:57:20 1014

原创 Err:Flash Download failed - “Cortex-M0”

最近在使用KEIL软件烧录程序时,提示Err:Flash Download failed - “Cortex-M0”,记录一下解决方法。本文章以MM32F0020BIT芯片为例。

2024-01-20 16:40:28 4085 1

原创 [STM32 - 野火] - - - 固件库学习笔记 - - -七.常用存储器

存储器(Memory)是计算机系统中用于的硬件设备或部件。它在计算机体系结构中扮演着至关重要的角色,负责存储计算机程序和数据,以便在需要时进行读取和写入操作。存储器可以分为多个层次,每个层次具有不同的特性和功能。一些存储器的基本概念:1.主存储器(主内存): 主存储器是计算机系统中用于临时存储正在执行的程序和数据的地方。它是计算机直接访问的存储介质,但在断电时数据会丢失。主存储器的容量通常以字节为单位。

2023-12-06 23:18:54 151

原创 [STM32 - 野火] - - - 固件库学习笔记 - - -六.DMA直接存储器存取

DMA:Direct Memory Access,直接存储器存取。是一种用于在外围设备和内存之间进行数据传输的机制。通常情况下,中央处理(CPU)负责管理数据的传输,但使用DMA可以让外围设备直接访问系统内存,而无需CPU的干预。两个DMA控制器共有12个通道(DMA1有7个通道,DMA2有5个通道),每个通道专门用来管理来自于一个或多个外设对存储器访问的请求。还有一个仲裁器来协调各个DMA请求的优先权。

2023-11-19 23:22:30 325

原创 [STM32 - 野火] - - - 固件库学习笔记 - - -五.串口通信

串口通信协议可分为物理层与协议层。物理层是硬件部分,规定通讯系统中具有机械、电子功能部分的特性,确保原始数据在物理媒体的传输。协议层是软件部分,主要规定通讯逻辑,统一收发双方的数据打包、解包标准。串口数据包的基本组成:起始位:由1个逻辑0的数据位表示。结束位:由 0.5 、1、 1.5 或2个逻辑1的数据位表示。有效数据:在起始位后紧接着的就是有效数据,有效数据的长度常被约定为5、6、7、或8位。校验位:检测数据是否出错。

2023-11-08 23:33:08 318

原创 [STM32 - 野火] - - - 固件库学习笔记 - - -四.SysTick——系统定时器

官方详细介绍在 STM32F10xxx Cortex-M3编程手册 - 英文版 4.5 SysTick timer(STK)。

2023-10-08 21:52:13 610

原创 [STM32 - 野火] - - - 固件库学习笔记 - - -三.EXTI外部中断寄存器

EXTI(External interrupt/event controller):外部 中断/事件 控制器,通常用于微控制器或微处理器上,以便在外部事件发生时触发中断。EXTI的主要目的是允许处理器在需要时执行中断服务程序,以响应外部事件,如按键的按下、松开、传感器状态变化等。外部事件发生(如GPIO口的电平发生变化) -> EXTI产生中断 -> 内核NVIC。

2023-10-04 18:42:01 305

原创 [STM32 - 野火] - - - 固件库学习笔记 - - -二.STM32中断应用总结

NVIC(Nested Vectored Interrupt Controller):嵌套向量中断控制器,属于内核外设,管理着包括内核和片上外设所有外设的中断相关的功能。// 中断使能寄存器// 中断清除寄存器// 中断使能悬起寄存器// 中断清除悬起寄存器// 中断有效位寄存器// 中断优先级寄存器 (8Bit wide)// 软件触发中断寄存器。

2023-10-02 15:39:12 381

原创 [STM32 - 野火] - - - 固件库学习笔记 - - - 一.RCC复位和时钟控制器

RCC:reset clock control 复位和时钟控制器。RCC(时钟部分)主要作用:设置系统时钟 SYSCLK、设置 AHB 分频因子(决定 HCLK 等于多少)、设置 APB2 分频因子(决定 PCLK2 等于多少)、设置 APB1 分频因子(决定 PCLK1 等于多少)、设置各个外设的分频因子;控制 AHB、 APB2 和 APB1 这三条总线时钟的开启、控制每个外设的时钟的开启。

2023-10-02 11:59:46 199 1

原创 【STM32-野火】---学习笔记---八.位带操作——GPIO输入和输出

通过宏定义的形式实现位带操作。

2023-09-18 23:58:34 287

原创 【STM32-野火】---学习笔记---七.GPIO输入——按键检测

上图为。通过上图可知,当按键没有被按下的时候,GPIO 引脚的输入状态为低电平 (按键所在的电路不通,引脚接地),当按键按下时, GPIO 引脚的输入状态为高电平 (按键所在的电路导通,引脚接到电源)。只要我们检测引脚的输入电平,即可判断按键是否被按下。

2023-09-17 19:21:41 405 1

原创 【STM32-野火】---学习笔记---六.GPIO输出——使用固件库点亮LED

上图为。通过这张图我们可以知道R、G、B三个灯的阴极是连接到STM32的GPIO引脚的,只要我们控制 GPIO 引脚的电平输出状态,即可控制 LED 灯的亮灭。

2023-09-17 19:04:39 255 1

原创 【STM32-野火】---学习笔记---五.初识 STM32 标准库

固件库应该包含这几类文件:汇编编写的启动文件、时钟配置文件、外设相关的文件、内核相关的文件、头文件的配置文件、专门存放中断服务函数的C文件。6.专门存放中断服务函数的C文件(方便管理中断函数)5.头文件的配置文件(方便管理头文件)1.汇编编写的启动文件。

2023-09-17 18:49:15 89 1

原创 【STM32-野火】---学习笔记---四.构建库函数雏形

原理:先定义声明一个结构体,结构体中有很多成员,它的类型和成员分布的顺序跟外设寄存器的排列方式一样,我们找到这个外设的基地址(如GPIO_BASE),把这个地址强制类型转换成 GPIO_Typedef 这种结构体类型的指针,这个指针经过强制类型转换,它就指向了一大块内存,这一大块内存里面有很多成员,这些成员跟我们的寄存器是对应的。经过这一步操作后,我们就可以使用结构体的方式来操作所有外设的寄存器了。//寄存器的值常常是芯片外设自动更改的,即使 CPU 没有执行程序,也有可能发生变化。

2023-09-10 22:51:10 96 1

原创 【STM32-野火】---学习笔记---三.使用寄存器点亮LED灯

GPIO包含在引脚中。而引脚中不仅有GPIO,还有VCC、GND等引脚。对于STM32来说:《STM32F103xCED 英文数据手册》 -> 《3 Pinouts and pin describeptions》 -> 《Table 5.High-density STM32F103xx pin definitions 》中查找。

2023-09-03 19:34:08 322

原创 【STM32-野火】---学习笔记---二.新建工程模板——寄存器版、使用寄存器点亮LED

三.添加文件:添加 startup_stm32f10x_hd.s文件(启动文件),创建 main.c文件(定义一个SystemInit函数),创建 stm32f10x.h文件,并导入 main.c 中。如果这里没有出现你想要的 CPU 型号,或者一个型号都没有,说明你的KEIL5没有添加device库,KEIL5 不像 KEIL4 那样自带了很多 MCU 的型号, KEIL5 需要自己添加。6.3 Utilities 选项配置:选择目标板,具体选择多大的 FLASH 要根据板子上的芯片型号决定。

2023-08-28 22:00:08 813

原创 【STM32-野火】---学习笔记---一.初识STM32、什么是寄存器

①引脚序号:阿拉伯数字表示LQFP封装,英文字母开头表示BGA封装。引脚序号这里列出了8种封装型号,具体使用哪一种根据实际情况来选择。②引脚名称:指复位状态下的引脚名称。③引脚类型:S(电源引脚)、I(输入引脚)、I/O(输入/输出引脚)。④ I/O结构:FT(兼容5V)、TTa(只支持3.3V,且直接到ADC)、B(BOOT引脚)、RST(复位引脚,内部带弱上拉)。⑤注意事项:对某些IO要注意的事项的特别说明。⑥复用功能:IO的复用功能,通过GPIOx_AFR寄存器来配置选择。

2023-08-27 23:57:38 938

原创 Zigbee

Zigbee是一种低速率、短距离、低成本无线通信协议,它被设计用于物联网(IoT)设备之间的通信。它采用了低复杂性和低功耗的无线通信技术,能够在几十米范围内进行数据传输,为智能家居、工业自动化和传感器网络等应用提供了可靠的无线连接。

2023-06-15 11:14:27 149

原创 CAN总线

CAN(Controller Area Network,控制器局域网)总线是一种广泛应用于汽车和工业领域的通信协议和物理层总线标准。它允许多个电子控制单元(ECU,Electronic Control Unit,可以看作是一台超小型的计算机)之间进行可靠的数据传输和通信。

2023-06-12 17:03:17 648 1

原创 SPI协议

SPI。

2023-06-09 17:12:12 92

原创 IIC协议

IIC。

2023-06-08 18:42:04 106

原创 UART与USART

UART(Universal Asynchronous Receiver/Transmitter,通用异步收发器)是一种通信协议和硬件接口,用于在计算机系统和外部设备之间进行异步数据传输。它是一种简单且常见的串行通信方式,广泛应用于嵌入式系统、单片机和通信设备中。它在全双工模式下工作。USART(Universal Synchronous /Asynchronous Receiver / Transmitter,异步同步通信接口)是一种通信协议和硬件接口,用于在计算机系统和外部设备之间进行串行数据传输。

2023-06-08 13:38:52 3027

原创 串口通信基础知识

学习、记录。

2023-06-07 22:00:54 157 1

原创 将Keil代码烧录到FT32的过程

将Keil代码烧录到FT32的过程。

2023-06-05 17:49:51 572 2

原创 认识BSP

参考:参考:https://www.elecfans.com/emb/xitong/20171016564553.html

2023-06-02 22:24:24 90

原创 MCU三种烧录方式

参考:https://zhuanlan.zhihu.com/p/69237591

2023-06-02 21:33:43 1318

原创 TTL、RS232与RS485

参考:https://www.bilibili.com/video/BV1PD4y147ts/?spm_id_from=333.337.search-card.all.click参考:https://zhuanlan.zhihu.com/p/341845459图中照片多来源于参考处。

2023-06-02 18:17:53 2446

转载 上位机与下位机

本文大部分内容参照知乎er dotNet工控上位机的https://zhuanlan.zhihu.com/p/269714623

2023-06-02 17:55:49 1643

空空如也

空空如也

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

TA关注的人

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