自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (2)
  • 问答 (7)
  • 收藏
  • 关注

原创 32单片机学习记录4之串口通信

串口通信是单片机在复用模式下实现的一种与单片机外部设备进行数据交换的通信标准和方式。使用复用模式针对片外设备是一种标准化的通信方式现场总线/板级总线现场总线:工业控制现场总线(可远距离传输数据) 差模信号抗干扰485总线—千米级别can总线—十千米级板级总线:芯片之间通信(距离长会被干扰) 共模信号​ 如:IIC/SPI/8080差模信号 共模信号有/无线​ 有线:可靠性强​ 无线:方便​ GSM 蓝牙 433(500m) 2.4G RFID通信。

2025-02-12 11:54:40 1494

原创 32单片机学习记录3之基本外设的使用

使用PC8的IO口接收红外传递过来的电平信号,有障碍物传递低电平,没有传递高电平。使用PC9的IO口接收红外传递过来的电平信号,有火传递低电平,没有传递高电平。

2025-02-12 09:21:22 347

原创 32单片机学习记录2之按键

不要延迟函数要计数思想达到相同效果,就不会卡CPU了。

2025-02-12 09:20:30 1167

原创 32单片机学习记录1之GPIO

通过GPIO控制器内部框图可知,借鉴F103C8T6的框图可知,上面是F407的模拟模式也是复用模式通用推挽输出通用开漏输出复用推挽输出复用开漏输出浮空输入上拉输入下拉输入模拟输入主要区别在于输出方式(推挽/开漏)和工作状态(通用/复用)。STM32F103和407的芯片好像GPIO口的工作模式不一样,但是大致可以分为通用,复用,模拟结合输出类型形成的工作模式F103 采用 4 位模式配置(GPIO_CRH/CRL),较老旧,模式配置较复杂。

2025-02-11 11:51:58 1190

原创 32单片机学习记录0之前导

STM32由于硬件架构和调试器的设计,可以通过STLink实现高效的实时调试,适合现代复杂项目的开发。51单片机由于架构和工具的限制,实时调试能力有限,更适合简单应用或需要低成本方案的项目。如果希望在51平台上实现类似STM32的调试体验,可以考虑使用支持调试功能的仿真器,但通常成本较高且操作复杂。

2025-02-11 10:56:52 843

原创 C语言学习记录之构造类型

全局定义(文件开头)位置:定义在所有函数之外,通常在文件开头。用途:该结构体可以在整个文件内被所有函数访问,适合需要在多个函数中共享的结构体。int id;return 0;函数内部定义(局部定义)位置:结构体定义在某个函数的内部。用途只在该函数内有效,不会影响其他函数。int x;int y;return 0;头文件中定义位置:结构体定义在头文件(.h文件)中。用途:方便在多个.c文件中共享结构体定义。#endif。

2024-10-18 10:17:39 794

原创 Makefile工程管理

你想到的是 Maven 或 Gradle!这两个工具在Java中用于管理项目的构建、依赖和打包,与有类似之处。Makefile(C项目):Maven(Java项目的):解释:什么时候使用?总结所以,使用Makefile的成本较低,无需复杂的下载或配置,只要系统有命令,你就可以立即编写和使用它。管理多个源文件的编译:在简单的学习环境下,你可能只需要用一条命令编译一个文件,例如:但在生产环境中,一个项目通常会包含很多源文件(文件)和头文件(文件),这些文件之间还有复杂的依赖关系。逐个编译和手动处理依赖

2024-10-16 16:30:21 1158

原创 C语言学习记录4之动态内存管理

b) 如果没有足够的连续空间,它会分配一个新的更大的内存块,复制原数据,然后释放旧的内存块。这种写法是C99标准引入的"复合字面量"(compound literal)语法,用于结构体的初始化。是一个 Student 结构体的数组(准确地说,是指向 Student 结构体的指针)。是一个指向结构体的指针,它指向一块可以容纳多个 Student 结构体的连续内存。区别在于传递的是变量值的副本还是指针值(地址)的副本。但是,为了更好的错误处理,使用临时指针接收 realloc 的结果,然后检查是个好习惯。

2024-10-16 11:05:46 1019

原创 C语言学习记录3之构造类型

全局定义(文件开头)位置:定义在所有函数之外,通常在文件开头。用途:该结构体可以在整个文件内被所有函数访问,适合需要在多个函数中共享的结构体。int id;return 0;函数内部定义(局部定义)位置:结构体定义在某个函数的内部。用途只在该函数内有效,不会影响其他函数。int x;int y;return 0;头文件中定义位置:结构体定义在头文件(.h文件)中。用途:方便在多个.c文件中共享结构体定义。#endif。

2024-10-15 16:58:55 652

原创 C语言三座大山

C语言三座大山既然你已经有了Java和Python的基础,学习C语言时可以重点关注以下几个方面,因为它们和之前的语言有较大不同,并且是C语言的核心特性:指针和内存管理:这是C语言最显著的特性之一。C语言允许直接操作内存,通过指针来访问变量的地址。这是与Java和Python最大的不同,后两者有自动内存管理,而C需要你手动分配和释放内存。学习 malloc、free、指针运算和指针数组的用法。结构体(structs):C语言通过 struct 来实现用户定义的数据类型,这一点与Java中的类不同,

2024-10-14 09:59:11 969

原创 C语言学习记录

源文件.c) →预处理→预处理文件.i预处理文件.i) →编译→汇编文件.s汇编文件.s) →汇编→目标文件.o目标文件.o) →链接→可执行文件(无扩展名或.exegcc -E:只进行预处理,输出预处理文件(.igcc -S:进行编译(到汇编),输出汇编文件(.sgcc -c:进行汇编(生成目标文件),输出目标文件(.ogcc:默认进行预处理、编译、汇编和链接,最终生成可执行文件。无符号数据类型的最大值是由所有位都为 1 决定的,最小值是所有位都为 0。1 个字节的无符号整数能表示的范围就是。

2024-10-06 09:37:11 1189

原创 电脑日常问题记录

错误提示“找不到 VCRUNTIME140.dll”通常是由于系统中缺少 Microsoft Visual C++ 运行时库。这个库是很多应用程序运行时需要的,而恢复出厂设置后,可能缺少这些必备的组件。

2024-10-01 11:52:52 315

原创 坏习惯记录

在yaml配置文件中打注释,springboot项目启动会有问题,此问题出现多次。

2024-08-20 17:34:19 137

原创 区块链相关

比特币的去中心化和开源特性确保了它的发行和管理不受任何国家或机构的控制,而是由全球承认比特币存在的社区人员共同维护和监督。这种去中心化的管理结构是比特币的重要特征,使其成为一种独特且具有弹性的数字货币。用户直接交易比特币确实涉及一些技术步骤,但公司通过提供用户友好的应用和平台,大大简化了这一过程,使得普通用户可以轻松地进行比特币交易。

2024-08-07 21:36:53 966

原创 web应用网络相关知识

通过这种方式,尽管前台和后台的前后端分别运行在不同的端口上,用户依然可以通过统一的域名进行访问,Nginx 会根据请求的路径将其转发到相应的服务端口上。这不仅方便了用户访问,也简化了服务的部署和管理。

2024-08-07 21:35:24 1044

原创 vim编辑器常用操作

q!

2024-08-07 21:33:40 291

原创 spring boot项目部署linux

宝塔**服务器系统:**ubantu**开放端口:**服务器开放30158访问端口外网面板地址: https://118.178.133.110:30158/75261c53内网面板地址: https://172.22.112.27:30158/75261c53。

2024-08-07 21:32:37 329

原创 IDEA快捷键记录

IDEA快捷键Shift + Shift(Search Everywhere):更广泛的搜索,包括文件、动作、设置等。Ctrl + Shift + F(Find in Files):专注于项目文件内容的文本搜索。

2024-08-07 21:31:48 221

原创 git使用日志

请注意,强制推送可能会导致其他协作者的工作丢失或造成代码不一致,所以在使用时请务必谨慎。最好先确保你理解了远程仓库中的变更,以及你的推送对其他人的影响。(**因为我的2.0版本跟1.0完善不一样的开发,所以我并不在乎1.0。直接使用git push -f命令强制推送你的2.0版本到远程仓库,覆盖了远程仓库中的所有变更。这种操作会抹去远程仓库中除了标签之外的所有提交记录,并将远程仓库的内容替换为你本地的2.0版本)但这可能会覆盖远程仓库中的变更,所以请谨慎使用。要将标签推送到远程仓库,可以使用。

2024-08-07 21:30:36 1082

原创 docker学习笔记

可以说,容器化与跨平台运行 JAR 包的核心理念是相似的:通过标准化的运行环境来消除操作系统之间的差异,简化跨平台的部署和管理。容器化通过 Docker 容器镜像提供这种标准化的环境,而 JAR 包通过 JVM 提供这种标准化的环境。因此,容器化在一定程度上确实消除了操作系统的差异,类似于 JVM 消除了 Java 程序跨平台运行的差异,从而简化了跨环境的部署和管理。

2024-08-07 21:28:39 582

day09-ArrayList集合&学生管理系统.pdf

里面有学生管理系统的详细PPT

2021-08-17

动态生命游戏.cpp

刚学c语言,学校老师讲的太枯燥,这个很好,没有太复杂的东西

2021-02-19

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

TA关注的人

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