自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Arm_2D移植与入门

Arm_2D 是 Arm Limited 提供的一个用于嵌入式系统的 2D 图形库。它专门设计用于在基于 Arm 架构的微控制器上提供高效的图形渲染能力。Arm_2D 库优化了性能和内存使用,使其非常适合资源受限的嵌入式环境;它不仅能够提供基本的2D图形渲染功能,还能够支持复杂的图形操作,如平移、缩放、旋转等。它通过简化GUI开发流程,让开发者能够快速地为Arm架构的MCU开发出吸引人的界面。

2024-06-03 20:09:44 1997

原创 Makefile的使用

在 Linux 中使用 make 命令来编译程序,特别是大程序;而 make 命令所执行的动作依赖于 Makefile 文件。

2024-05-18 17:45:00 629

原创 什么是OctoSPI FLASH Memory和HexaSPI PSRAM Memory

PSRAM是一种性能介于SRAM和传统闪存之间的非易失性存储器,它提供了比闪存更快的读写速度,同时比SRAM有更大的存储容量和更低的成本。OctoSPI Flash Memory是一种高速串行闪存,它支持八数据线的通信,从而允许高吞吐量的数据传输。OctoSPI是一种比传统的Quad SPI(四数据线)更进一步的接口技术,它通过增加数据线的数量来提高数据传输速率。在STM32微控制器中,OctoSPI和HexaSPI是两种不同的高速串行接口,它们用于连接外部存储器,如FLASH和PSRAM。

2024-05-16 20:25:32 2535

原创 电机专题(直流有刷、无刷电机,步进电机……)超详细!!!

电机专题文章目录电机专题1. 初识电机1.1 电机简介1.2 电机分类1.3 各类电机简介2. 驱动直流有刷电机2.1 H桥驱动电路分析2.2 引入PWM脉冲调制2.3 代码部分3. 编码器3.1 编码器简介3.2 编码器的分类3.3 编码器参数4. 驱动直流无刷电机4.1 三步换向原理分析4.2 代码部分5. 步进电机5.1 步进电机基础知识5.2 步进电机工作原理5.3 57步进电机5.3.1 代码部分5.4 步进电机加减速5.4.1 梯型加减速5.4.1.1 代码部分5.4.2 S型加减速5.4.2

2023-12-07 14:56:47 10519 3

原创 驱动直流有刷电机

PID

2023-11-01 08:51:28 900 2

原创 STM32C8T6+DHT11显示温湿度//通过MQTT实现开发板与阿里云服务器收发(2)

本教程基于韦东山百问网出的 DShanMCU-F103开发板 进行编写,需要的朋友可以在这里获取: https://item.taobao.com/item.htm?id=724601559592配套资料获取:https://rtos.100ask.net/zh/freeRTOS/DShanMCU-F103freeRTOS系列教程之freeRTOS入门与工程实践章节汇总: https://blog.youkuaiyun.com/qq_35181236/article/details/1328420161.WIFI驱动模

2023-09-16 22:21:31 1020 1

原创 STM32C8T6+DHT11显示温湿度//通过MQTT实现开发板与阿里云服务器收发

本教程基于韦东山百问网出的 DShanMCU-F103开发板 进行编写,需要的朋友可以在这里获取: https://item.taobao.com/item.htm?id=724601559592配套资料获取:https://rtos.100ask.net/zh/freeRTOS/DShanMCU-F103freeRTOS系列教程之freeRTOS入门与工程实践章节汇总: https://blog.youkuaiyun.com/qq_35181236/article/details/132842016再此推荐大家使用此

2023-09-15 11:13:05 1160

原创 STM32单片机学习(9)

在实际项目开发过程中,通常使用仿真器通过JTAG等接口进行调试和程序下载。在产品发布后,可能需要软件更新升级,此时无法要求用户使用仿真器烧录,这就需要实现通过程序实现应用程序的更新升级。首先介绍常见的几种烧录方式。在电路编程(In Circuit Programing,ICP):不要求MCU内部有任何程序,直接对MCU的Flash写入程序。例如平时使用仿真器通过JTAG、SWD等方式烧录;

2023-08-27 09:44:15 865 1

原创 STM32单片机学习(8)

自然界的信号几乎都是模拟信号,比如光亮、温度、压力、声音,而为了方便存储、处理,计算机里面都是数字的 0/1 信号,将模拟信号(连续信号)转换为数字信号(离散信号)的器件就叫模数转换器(Analog-to-Digital Converter,ADC)。按原理可分为:并行比较型 A/D 转换器(FLASH ADC)、逐次比较型 A/D 转换器(SAR ADC)和双积分式 A/D转换器(Double Integral ADC)。A/D转换过程通常为4步:采样、保持、量化和编码。

2023-08-24 23:05:57 3245 1

原创 STM32单片机学习(7)

MCU可能工作在一些复杂环境,可能受到某些电磁干扰出现程序跑飞,导致死循环无法继续执行工作,看门狗的作用就是为了避免这种情况。看门狗的本质也是一个定时器,在启动后,需要在一定时间内再给它一个信号,俗称“喂狗”,如果没有按时“喂狗”,说明MCU可能处于非正常状态,这时看门狗就向MCU发送个复位信号,使整个系统重启,重新进入正常的工作状态。STM32F103系列有两个看门狗,独立看门狗(Independent Watchdog,IWDG)和窗口看门狗(Windowwatchdog,WWDG)。

2023-08-23 23:02:39 750

原创 STM32单片机学习(6)

EEPROM的全称是“电可擦除可编程只读存储器”,即Electrically Erasable Programmable Read-OnlyMemory。通常用于存放用户配置信息数据,比如在开发板首次运行时,需要屏幕校准,校准后的配置信息就可以保存在EEPROM里,开发板断电后配置信息不丢失,下次启动,开发板自动读取EEPROM的校准配置信息,就不需要重新校准。

2023-08-15 08:00:00 485 1

原创 STM32单片机学习(5)

以U9为例,通过控制6脚“Select”高低电平,使U9的4脚“A”分别接通3脚“B0”或1脚“B1”,从而实现USAR2_TX分别用于L_USAR2_TX(RS232公头的TXD)和H_L_USART2_TX(RS485的DI)。STM32F103系列有5个串口(3个USART,2个UART),在本开发板中,UART4/5没有复用为串口,而是另作它用,因此只有USART1、2、3,共3个串口能使用。因此,如果要使用RS232的公头和母头,需要将开发板蓝色拨码(J11)的两位,都设置为OFF,即往下拨。

2023-08-12 00:14:29 552 1

原创 STM32单片机学习(4)

实验目的:本实验通过使用外部中断功能去判断按键的状态,通过中断的形式能够更加灵敏的读取到GPIO的电平,让用户更加直观的感受到STM32F103的中断,并学会如何使用和开发其中断功能。但随着对传输速度要求越来越高,并行传输开始出现信号之间的干扰,串行通信受干扰影响较小,之后又发展出差分传输等技术,极大的提高了串行传输速率,使得串行通信速度可能比并行通信速度更快。并行传输占用的通信线多,成本高,通信速度相对更快。如图 3 所示,是一种常见轻触按键,该按键有四个脚,①和②脚连接,③和④脚连接,按钮按。

2023-08-11 07:11:56 737 1

原创 STM32单片机学习(3)

如图 2 所示为开发板三色LED灯部分的原理图,LED灯的正极直接连接了VDD_3V3,LED灯的负极分别连接了三个GPIO引脚,红色LED连接的PB0,绿色LED连接的PB1,蓝色LED连接的PB5,只需要控制PB0、PB1、PB5为相应低电平,即可点亮对应LED灯,输出为高电平时熄灭对应LED灯。系列就只有70种异常和中断,其中前10个是系统异常,后面60个是外部中断,如下表 10.2.1 所示。Bit[23:0],一共24位,用来设置系统滴答定时器的初始值,因此范围为1~ 16777216。

2023-08-10 07:47:58 3884 1

原创 STM32单片机学习(2)

MCU。

2023-08-07 23:51:57 781 2

原创 STM32单片机学习(1)

ARM公司:只做内核设计和IP授权,不参与芯片设计STM32:ST:意法半导体M:MCU/MPU32:32位ST累计推出了:5大类、18个系列、1000多个型号的Cortex内核微控制器。

2023-08-02 23:30:32 267

原创 C语言学习_函数

C语言在发布时已经为我们封装好了很多函数,它们被分门别类地放到了不同的头文件中(暂时先这样认为),使用函数时引入对应的头文件即可。这些函数都是专家编写的,执行效率极高,并且考虑到了各种边界情况,各位读者请放心使用。C语言自带的函数称为库函数(Library Function)。库(Library)是编程中的一个基本概念,可以简单地认为它是一系列函数的集合,在磁盘上往往是一个文件夹。C语言自带的库称为标准库(Standard Library),其他公司或个人开发的库称为。

2023-08-01 15:13:12 137 1

原创 C语言学习_预处理命令

define叫做宏定义命令,它也是C语言预处理命令的一种。所谓宏定义,就是用一个标识符来表示一个字符串,如果在后面的代码中出现了该标识符,那么就全部替换成指定的字符串。return 0;运行结果:120注意第 6 行代码int sum = 20 + N,N被100代替了。就是宏定义,N为宏名100是宏的内容(宏所表示的字符串)`。在预处理阶段,对程序中所有出现的“宏名”,预处理器都会用宏定义中的字符串去代换,这称为“宏替换”或“宏展开”。

2023-07-31 21:24:29 571 2

原创 C语言学习_数组

我们知道,要想把数据放入内存,必须先要分配内存空间。放入4个整数,就得分配4个int类型的内存空间:这样,就在内存中分配了4个int类型的内存空间,共 4×4=16 个字节,并为它们起了一个名字,叫a。我们把这样的一组数据的集合称为数组(Array),它所包含的每一个数据叫做数组元素(Element),所包含的数据的个数称为数组长度(Length),例如int a[4];就定义了一个长度为4的整型数组,名字是a。数组中的每个元素都有一个序号,这个序号从0开始,而不是从我们熟悉的1开始,称为。

2023-07-31 16:25:16 604 1

原创 C语言学习_循环结构和选择结构

C语言中常用的编程结构有三种(其它编程语言也是如此),它们分别是:顺序结构:代码从前往后依次执行,没有任何“拐弯抹角”,不跳过任何一条语句,所有的语句都会被执行到。选择结构:也叫分支结构。代码会被分成多个部分,程序会根据特定条件(某个表达式的运算结果)来判断到底执行哪一部分。循环结构:程序会重新执行同一段代码,直到条件不再满足,或者遇到强行跳出语句。( break 关键字)

2023-07-28 10:00:56 291 1

原创 C语言学习_输入输出

函数 缓冲区 头文件 回显 适用平台getchar() 有 stdio.h 有 Windows、Linux、Mac OS 等所有平台getche() 无 conio.h 有 Windowsgetch() 无 conio.h 无 WindowsC语言中常用的从控制台读取数据的函数有五个,它们分别是 scanf()、getchar()、getche()、getch() 和 gets()。其中 scanf()、getchar()、gets() 是标准函数,适用于所有平台;

2023-07-27 10:42:15 130

原创 C语言学习_变量和数据类型

puts 是 output string 的缩写,只能用来输出字符串,不能输出整数、小数、字符等,我们需要用另外一个函数,那就是 printf。printf 是 print format 的缩写,意思是“格式化打印”。这里所谓的“打印”就是在屏幕上显示内容,与“输出”的含义相同,所以我们一般称 printf 是用来格式化输出的。%d称为格式控制符,它指明了以何种形式输出数据。格式控制符均以%开头,后跟其他字符。%d 表示以十进制形式输出一个整数。

2023-07-26 23:58:01 255 1

原创 C语言学习_指针

type: 数据类型,决定访问内存时的长度范围;标志,意味着定义一个指针变量;pointer变量名,遵循C语言命名规则。

2023-07-26 09:44:50 280 3

空空如也

空空如也

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

TA关注的人

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