- 博客(19)
- 收藏
- 关注
原创 ST7735s驱动TFT-LCD——8080接口
显示驱动:ST7735SLCD硬件接口:8080(8位数据线)引脚:数据:D7~D0片选:CS数据/命令:RS写控制:WR读控制:RD复位:RST背光:EN。
2025-03-11 11:06:28
368
原创 STM32F1单片机驱动42步进电机
我们使用的单片机是STM32F103ZET6,电机是42步进电机(额定电流是1A)、驱动是TMC2209;但是暂时使用2160这个外接驱动(注意:2160为大电流电机驱动不能长时间带动电机,否则会发烫烧电机)。开启一个定时器2外设中断:为电机提供步进脉冲;开启三个GPIO口:作为EN、STEP、DIR控制。
2025-02-28 15:36:51
290
原创 IAR——串口打印printf
在IAR开发平台下,使用串口打印不止要定义fputc函数,还要加入write.c函数,并修改里面的MyLowLevelPutchar函数。
2025-01-20 10:31:11
293
原创 STM32单片机——时钟系统
1、简单来说,时钟是具有周期性的脉冲信号2、时钟对单片机来说就是脉搏,在单片机中起着至关重要的作用,搞懂时钟走向及关系是很有必要的。
2025-01-09 14:16:51
1097
原创 GD32——虚拟串口实验(USB-CDC)
使用GD32F303单片机,使用其外设USB的CDC类实现虚拟串口的收发数据,本实验主要讲USB实验如何基于一个官方的Demo,移植成自己的一个完整工程(附上源码例程)。(理论部分后续再讲)
2024-11-28 14:36:30
1714
原创 STM32/GD32——串口中断接收通信异常
最近的工程使用到了串口通信,使用了,中断接收的数据解析之后,将有用的数据,给到屏幕显示,屏幕用的是普通的LCD+LVGL显示。(GD32F303芯片)1、做了一个界面的显示:背景图+文本+按钮背景图文本字库均是存储在W25Q64(外部flash)内,然后在调试的过程中,我发现在使用屏幕刷新过程中,只要有LVGL在while循环内有刷新文本的操作就影响我串口数据的接收,直接导致了接收数据的缺失了。
2024-11-06 16:55:14
1776
1
原创 GD32——按键外部中断
以GD32F303的芯片(M4)为例。简言:文章主要讲解,普通IO口的按键使用外部中断来配置使用,从而更快的响应按键事件,有效的提高了按键处理的实时性。文章分为两部分:第一部分讲基本原理,第二部分讲配置。
2024-10-11 16:00:24
1269
原创 IAR工程芯片替换型号
通常我们做一个项目的时候,都是会在官方那边下载好一些demo,但是这些demo的芯片并不一定是项目所需的芯片,那么这时候就需要替换一下芯片型号等。主要用于定义内存布局和链接器的行为,以确保程序正确地被加载到微控制器的各个存储区域。(前提是要在GD官网上下载对应的芯片包)3、配置链接器文件(ICF 文件)以GD32F303CBT6为例。我使用的是J-Link下载器。2、外设库和芯片宏定义修改。
2024-10-08 16:47:28
603
原创 单片机map表解析与变量存储区域分布
在编译时由预处理器处理,宏本身并不占用存储空间。宏定义是代码中的文本替换指令,它们在预处理阶段被展开为实际的代码。
2024-08-15 16:05:06
1390
1
原创 GD32通过U盘更新App固件遇到的问题 --- USB MSC
Bootloader阶段:初始化完USB_MSC之后,插入U盘,能正常识别U盘,可以显示U盘目录文件,在跳转app前关闭了所有中断/与usb有关的中断,防止在跳转时有中断触发,打断跳转,从而导致失败;Bootloader大小和地址:①size:64KB;App阶段:初始化完后,usb的连接状态有一个默认未连接的状态,U盘的目录读取不出来,经过几次插拔之后,才能正常显示。当经过bootloader程序后,跳转到app固件后,会出现U盘识别不了的bug,需要插拔多几次才能被正常的初始化。
2024-08-09 16:23:10
647
2
原创 STM32单片机的启动方式和内存映射
本文主要分为两块,一是是讲解了STM32的三种启动方式,不同的启动方式适用的场景和作用。二是介绍了单片机中内存映射后分配的几个块,不同的地址对应不同的区域。介绍了这几个块的作用是什么,在单片机的作用。
2024-06-08 09:50:26
2179
原创 软件开发——如何查看IC驱动的数据手册
最简单的方法就是在立创直接搜索你的模块,找到对应的主控芯片,查看它的数据手册;这个很重要,从这里我们可以得知模块有哪些引脚以及引脚的描述,怎么和单片机的IO来进行连接。(以上的讲解只是基于本人的一些认知,可能不太全面,若有不对或者建议,还轻多多指教)从Command这里可以看到,如何使用命令来控制模块、设置对应的功能。(4)、Functional Specification:功能描述。可以查看模块的一些基本参数,如尺寸、、外形等,了解一下即可。
2024-06-03 12:00:12
595
2
原创 NXP(恩智浦)RT芯片了解
从上面的信息上了解到,起始NXP的芯片和STM32的芯片差不多,用的都是ARM_CORTEX内核,也有外设等资源,最大主频.....,更详细的信息可以参考NXP官方文档或相关资料。定时器:具备多个定时器模块,包括通用定时器、PWM定时器等,可用于实现定时、计时和PWM输出等功能。ADC和DAC:支持模数转换器(ADC)和数模转换器(DAC),可用于模拟信号的采集和输出。可以看到RT系列的芯片的主打的是高性能方面的功能,主频高、闪存大。安全性:提供硬件加密和安全引导功能,保护系统软件和数据的安全性。
2024-05-16 15:20:32
1850
1
原创 Gitee上传提交出现错误:“remote: Please remove the file from history and try again. ”
3、使用命令:git filter-branch --tree-filter 'rm -f 文件名' HEAD (“”文件名”就是输入上面的命令后显示的文件路径)最后出现了下列语句后表示删除成功,然后直接push即可。2、根据下面这个提示语句,查看是哪一个文件过大。(提示上传的文件过大,超过了100M)
2024-02-18 10:00:32
2080
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人