自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 STM32—系统定时器

SysTick是一种系统定时器,可以用于实现操作系统、任务调度、时钟管理等功能。它通常集成在微控制器中,并且是硬件实现的,具有高精度和可靠性。在ARM Cortex-M处理器中,SysTick定时器可以配置为计数器模式或外部时钟模式。在计数器模式下,SysTick定时器使用内部时钟作为时基,可以产生中断,以实现系统的定时功能和任务调度。在外部时钟模式下,SysTick定时器使用外部时钟信号作为时基,可以用于协调外部设备的时序和同步。

2024-01-31 21:55:53 2254

原创 GPIO中断

EXTI是External Interrupt的缩写,指外部中断。在嵌入式系统中,外部中断是一种用于处理外部事件的机制。当外部事件发生时(比如按下按钮、传感器信号变化等),外部中断可以立即打断正在执行的程序,转而执行一个特定的中断服务程序(ISR),以响应和处理外部事件。在大多数嵌入式系统中,外部中断可以配置为上升沿触发、下降沿触发、高电平触发、低电平触发等不同的触发方式,以适应不同的外部事件类型。外部中断通常用于实时性要求较高的应用,如实时控制系统、传感器数据采集等。

2024-01-30 21:01:21 2399 1

原创 使用HSE配置系统时钟

本文将模仿固件库文件system_stm32f10x.c的SetSysClockTo72()函数,编写一个可以改变系统时钟大小的函数。

2024-01-26 22:47:47 1228 1

原创 STM32复位和时钟控制(RCC)

STM32RCC(Reset and Clock Control)是STM32微控制器系列中的一个模块,它负责配置和管理系统时钟。以下是一些STM32RCC的主要功能和作用:1. 系统时钟配置:STM32微控制器通常具有多个时钟源可供选择,例如内部振荡器、外部晶体振荡器、外部时钟源等。STM32RCC模块允许用户根据需要配置系统时钟源,并进行时钟源切换。2. 时钟使能控制:系统中的各个外设需要时钟信号来进行操作,STM32RCC模块提供了对各个外设时钟的使能控制。

2024-01-24 22:25:25 1163

原创 STM32入门—GPIO输入

GPIO的输入一般通过按键来表示,当按下按键给系统输入一个高电平,相当于二进制的"1",当松开按键就回到了低电平"0"。

2024-01-20 22:36:08 641

原创 STM32入门—使用固件库编程点亮LED

通过固件库编程实现LED点亮和流水灯。通过使用适当的编程语言和工具,可以轻松地控制单个LED的亮灭,并实现流水灯效果。通过设置适当的引脚和电压,程序可以发送特定的信号来控制LED的状态。通过循环和延时函数,可以实现流水灯效果,即多个LED依次点亮和熄灭。这种基础的固件库编程技术不仅可以用于LED的控制,还可以应用于其他各种电子设备的控制和交互操作。

2024-01-19 15:52:07 874 2

原创 STM32入门—建立项目

"保姆级教程——Keil项目创建"是一篇针对初学者的教程,旨在介绍如何使用Keil软件创建项目。Keil是一款常用的嵌入式开发环境,广泛应用于单片机和嵌入式系统的开发中。文章从基础开始,详细介绍了Keil软件的安装和配置过程。接着,教程逐步引导读者创建一个新的Keil项目,并讲解了项目文件的组成和作用。针对不同的应用需求,教程还介绍了如何添加源文件、库文件和头文件到项目中。通过这个教程,读者可以轻松掌握Keil项目的创建流程,为嵌入式开发打下坚实的基础。

2024-01-18 15:35:01 496 2

原创 STM32入门—固件库

这里的hd代表大容量,我们可以查阅参考手册中的术语表因为我使用的STM32F103ZET6是512K字节的闪存,所以启动文件选择hd。1.设置堆栈指针2.设置PC指针3.初始化中断向量表4.配置系统时钟5.调用C库函数_main系统会执行Reset_Handler这个汇编,它会调用两个函数,一个SystemInit和__main,SystemInit用于配置系统时钟, __main是C库函数,用于初始化堆栈,最终调用C语言中的main函数,实现从汇编到C语言的环境的跳跃。

2024-01-17 21:53:36 1313

原创 计算机网络绪论

计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路和通信设备连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。简单来说,计算机网络就是由通信线路互相连接的许多自主工作的计算机构成的集合体。按连接按需求,计算机网络由若干结点(node)和连接这些结点的链路(link)组成。结点可以是计算机、集线器、交换机或路由器等。

2024-01-16 21:57:35 801

原创 STM32入门—构建库函数

​在前面我们通过直接操作地址能够点亮LED,看起来虽然过程并不复杂,但在实际的使用中,我们会涉及到许多I/O口和寄存器。如果每次都要查阅参考手册,这不仅工作量大,而且代码也难以理解。为了解决这个问题,我们可以采用以下方法——使用固件库。尽管官方的固件库非常全面,但为了更好地理解底层原理,我们选择使用自己编写的固件库。这样做有助于我们学习如何正确使用固件库,同时也有助于深入理解底层原理。

2024-01-15 15:29:26 1789 1

原创 Linux常用命令的使用

【实验平台】 PC机 VMware虚拟机 Ubuntu操作系统注意:打开终端: ctrl + atl + t命令、参数通过空格分开Linux中称呼 “文件夹” 为 “目录”家目录: 刚打开终端时的路径linux中区分文件主要看文件类型(ls -l查看),初学者可以后缀区分,有后缀为普通文件(-),无后缀为目录文件(d)-------------------------------------------------------------------------------

2024-01-14 07:44:11 792 1

原创 STM32入门第一步—点亮LED灯

本文章使用的STM32f103ZET6核心板,下面通过两种方法介绍STM32LED灯的点亮,第一种是通过直接用地址操作寄存器,第二种先将寄存器地址取别名再使用。介绍第一种方法主要是为了让大家了解点亮LED灯的底层逻辑,第二种方法是我们平常使用的,具有更好的可读性。

2024-01-13 22:13:02 1245 1

STM32入门-GPIO输入源代码压缩文件

本资源是一份STM32入门级别的GPIO输入源码压缩文件,旨在帮助初学者快速学习STM32GPIO输入,并提供了GPIO输入示例代码。

2024-01-20

STM32入门-构建库函数源码压缩文件

本资源是一份STM32入门级别的库函数源码压缩文件,旨在帮助初学者快速入门STM32开发,并提供了一些常用功能的库函数示例代码。该压缩文件包含了STM32系列芯片的库函数源码及相关示例程序,主要是GPIO控制功能。本资源适用于对嵌入式系统开发有一定了解,希望深入学习STM32单片机编程的初学者。无论是学生、工程师还是爱好者,只要掌握了C语言基础和嵌入式系统原理,都可以通过本资源快速上手STM32开发。资源的主要目标是帮助初学者熟悉STM32开发环境和库函数的使用方法。通过学习本资源中的源码示例,初学者可以了解如何初始化STM32芯片、配置外设、实现常见功能等。这些示例代码可以作为学习STM32的基础,帮助初学者逐步掌握STM32开发技巧。本资源为压缩文件形式,需要下载后解压缩才能使用。压缩文件中包含了库函数源码及示例程序,但不包含编译工具链。使用者需要自行准备开发工具。本资源提供的示例代码是基于常用的STM32F103ZET6开发板进行编写的,对于其他型号的STM32芯片可能需要做适当的修改。希望本资源能够帮助初学者快速入门STM32开发,为他们打开嵌入式系统开发的大门!

2024-01-15

linux命令及vi操作

本资源详细介绍了Linux系统中的基本命令及其用法。这些命令包括:pwd、ls、cd、mkdir、touch、cp、mv和rm。每个命令都有其特定的功能和使用场景,对于初学者来说,理解和掌握这些命令是学习Linux操作系统的关键。本资源适用于所有初学者以及对Linux系统感兴趣的人。无论您是计算机专业的学生还是对Linux感兴趣的普通用户,本指南都将为您提供有用的信息和指导。pwd:在终端中,当你不确定当前目录,使用pwd快速定位。ls:查看当前目录内容,或使用参数查看隐藏文件和详细属性。cd:方便地切换目录,如cd ..返回上一级。mkdir:在某处创建新文件夹。touch:创建新文件或更新文件时间戳,适合编写和更新文档。cp:复制文件或目录,使用-r可递归复制整个目录。mv:移动或重命名文件或目录,便于整理文件系统。rm:小心删除文件或目录,一旦删除无法恢复。在使用这些命令时,请确保您理解每个参数的含义和作用,以避免不必要的错误或数据丢失。Linux系统中的命令是区分大小写的。这些命令在终端中执行,因此请确保您已打开终端并具有适当的权限来执行某些操作(例如创建、删除或修改文件)

2024-01-14

空空如也

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

TA关注的人

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