- 博客(48)
- 收藏
- 关注
原创 STM32 单片机开发 - FreeRTOS 实时操作系统
FreeRTOS 实时操作系统是一种轻量型实时操作系统,实现快速响应FreeRTOS 实时操作系统是 RTOS 实时操作系统下的一个版本(子集)RTOS 实时操作系统具有很多版本:FreeRTOS、RT-Thread、Thread-X……
2025-09-26 13:29:29
1065
原创 STM32 单片机开发 - WiFi
WiFi 模块是一个 ESP32 的芯片,型号是 ESP8266,实际上是一个单片机,芯片中运行已经编写好的程序。遵循 IEEE802.11b 通信协议。
2025-09-23 11:43:18
501
原创 STM32 单片机开发 - TIM 定时器(PWM)
本文摘要:文章详细介绍了STM32定时器的分类(高级控制、通用、基本定时器)及其工作原理,重点阐述了PWM(脉宽调制)技术的基本原理、参数(周期、频率、占空比)及应用场景。
2025-09-17 20:18:36
1014
原创 STM32 单片机开发 - SPI 总线
SPI总线是一种串行同步全双工通信接口,采用三线/四线制(时钟线、数据输入输出线、片选线),支持主从模式和多设备通信。
2025-09-13 11:56:11
1469
原创 STM32 单片机开发 - I2C 总线
本文介绍了I2C总线在STM32开发中的应用,重点讲解了通过I2C总线与SHT20温湿度传感器通信的实现方法。
2025-09-11 21:54:44
1451
原创 STM32 单片机开发 - USART 总线
图 6 DB9 公母头引脚定义单位时间内传输数据的位数。单位:bps(bit per second),每秒传输多少位的数据。使用 UART 总线进行数据传输时,通信双方需要确保 协议格式 和 比特率 一致;常用串口协议格式:8N1 协议格式 + 9600 / 115200.
2025-09-09 21:09:00
880
原创 ARM - GPIO 标准库开发
摘要:本文详细介绍了STM32MP157AAA开发板套件(FS-MP1A)的硬件组成及功能特性。该开发板采用异构核设计(双核Cortex-A7+单核Cortex-M4),配备4GB eMMC存储、512MB DDR3内存和千兆网卡等外设。文章重点阐述了硬件术语(原理图、芯片手册、PCB板等)和电路分析方法,特别针对GPIO引脚配置进行了深入解析,包括8种工作模式、寄存器配置方法,并以LED控制为例演示了从外设到主控芯片的完整引脚追踪过程,为嵌入式开发者提供了详实的硬件开发指南。
2025-09-02 21:27:50
949
2
原创 ARM 裸机开发 知识点
本文主要介绍了ARM架构的基础知识、发展历史和汇编指令集。内容包括:1)机器码、汇编指令和指令集等基础概念;2)ARM公司发展历程及主要产品发布;3)复杂指令集与精简指令集的区别;4)ARM内核的工作模式和寄存器组织;5)特殊功能寄存器(SP、LR、PC、CPSR、SPSR)的作用;6)汇编指令分类和格式,包括数据操作、移位运算、位运算、算术运算、比较、跳转、内存读写、栈操作、CPSR读写以及软中断指令等。通过详细的代码示例,展示了ARM汇编语言的基本语法和编程方法。
2025-08-30 13:50:57
1195
1
原创 7月30日作业
有一个英雄类,拥有私有成员: hp ,atk,dep 英雄可以打怪掉落武器:怪物可以掉落3种武器: 长剑,匕首,斧头 英雄装备长剑,获得2点hp 英雄装备匕首,获得2点atk 英雄装备斧头,获得2点def 英雄装备不同的武器,使用策略模式去实现 注意:测试的时候,英雄在更换武器的时候,记得使用策略模式,将英雄之间装备的武器属性扣除后,再增加新属性 打败怪物掉落什么武器,自己设计,但是要求怪物掉落武器是一个简单工厂模式。
2025-07-30 20:47:55
235
原创 7月23日作业
/ 这段代码要求一定为mystring类写一个可隐式调用的单参构造函数 mystring ptr = "world";// 最后再写一个 show 函数,用来在终端输出 str 里面保存的字符串 cout << str.at(0) << endl;// 再写一个 at 函数,用来输出 str中第0个字符。str.compare(ptr) str.compare("你好")str.append(ptr) str.append("你好")str.copy(ptr);str.copy("你好");
2025-07-23 21:24:56
153
原创 7月16日作业
摘要:该代码使用SQLite3数据库实现用户密码管理功能。首先创建名为"tb"的表(若不存在),包含name(主键)和pswd字段;然后插入初始记录(name="123",pswd="abcdefg");接着提示用户输入新密码,并通过sqlite3_exec执行UPDATE语句将"123"用户的密码更新为输入值。代码包含数据库连接、表创建、数据插入和更新操作,最后关闭数据库连接。注意存在SQL注入风险,因未对用户输入进行过滤处理
2025-07-16 21:19:34
176
原创 7月15日作业
本文介绍了基于epoll模型的UDP通信实现方法,包括单播、广播和组播三种通信模式。epoll作为Linux高效I/O事件通知机制,能有效管理大量UDP套接字。单播采用点对点通信,广播实现局域网内一对多传输,组播则支持特定组内成员间的数据分发。文章通过思维导图形式梳理了三种通信方式的特点、实现流程及epoll事件处理机制,为开发高性能UDP网络应用提供了技术参考。
2025-07-15 20:10:24
105
原创 7月11日作业
本文展示了基于C语言Socket编程实现的简单聊天程序,包含服务端和客户端代码。服务端通过创建套接字、绑定端口、监听连接,使用多线程处理消息收发;客户端连接服务端后同样采用双线程实现异步通信。程序实现了基本的文本消息双向传输功能,并包含连接状态检测,当一方断开时会提示并终止会话。代码结构清晰,展示了TCP网络通信的基本流程,包括套接字创建、连接管理、数据读写等核心操作。
2025-07-14 09:10:19
249
1
原创 7月4日作业
摘要:该代码展示了一个生产者-消费者模型的线程同步实现。使用互斥锁(pthread_mutex_t)和条件变量(pthread_cond_t)进行线程间协调,其中生产者线程负责生产产品(flag=1),消费者线程(5个)负责消费产品(flag=0)。代码通过while循环检查flag状态防止虚假唤醒,并使用pthread_cond_signal进行线程间通信。主函数创建1个生产者和5个消费者线程,最后进行资源回收和锁/条件变量的销毁。运行结果显示生产者生产产品和消费者购买产品的交替过程。(150字)
2025-07-05 09:05:14
185
原创 数据结构大项目
本项目是一个基于 C 语言实现的通讯录管理系统,提供了用户注册、登录功能,以及对通讯录联系人信息的创建、添加、查找、修改、删除、插入、展示、排序等操作。系统采用链表数据结构来存储联系人信息,方便对数据进行动态管理。
2025-06-26 11:28:07
2099
原创 6月25日作业
摘要:本文实现了一个链式队列数据结构,包含队列创建、节点申请、判空、入队、出队和输出操作。通过link_q.h定义队列结构体和操作函数,link_q.c实现具体功能,main.c测试队列操作。测试结果显示队列能正确完成元素入队(3→5→7→9→2→12)、出队(移除3→5)和打印队列内容(如"5→NULL")等基本操作。该实现采用链式存储结构,动态分配内存,具有较好的灵活性。
2025-06-24 11:01:25
341
原创 6月24日作业
【摘要】本文实现了一个基于栈的括号匹配程序。通过创建顺序栈结构(stack_p)及相关操作函数(创建、判空、判满、入栈、出栈),核心功能是检查输入字符串中的括号是否匹配。算法逻辑为:遇到左括号入栈,遇到右括号时弹出栈顶元素进行配对检查。程序能正确处理三种括号类型(圆/方/花括号),并识别"右括号过多"、"括号类型不匹配"和"左括号过多"三种错误情况。测试时输入带括号字符串即可输出匹配结果,示例显示该实现能有效完成括号匹配验证。
2025-06-23 20:28:01
634
原创 6月17日作业
摘要:本文介绍了双向循环链表的基本操作实现,包括创建链表、创建节点、判空、头插尾插、任意位置插入、输出链表、头删尾删、按位置删除、按值查找、按位置修改以及释放链表等12个核心操作。每个操作都给出了具体的C语言实现代码,通过指针操作实现节点的前后连接关系维护,并考虑了边界条件的处理。这些操作涵盖了双向循环链表的主要功能,为数据结构的实际应用提供了基础支持。
2025-06-17 21:15:34
675
原创 6月5日作业
本文展示了五个递归和字符串处理的C语言编程实例:1) 递归计算数字各位之和(DigitSum);2) 递归实现字符串逆置(fun);3) 递归生成斐波那契数列;4) 字符串比较函数(my_strcmp);5) 含静态变量的函数(sum)运行分析。这些代码示例涵盖了递归的基本应用、字符串操作技巧以及变量作用域的理解,通过具体案例展示了C语言编程中递归和字符串处理的典型实现方法。
2025-06-05 21:19:05
405
2
原创 端午假期作业
本文整理了多个C语言编程题目及其解答:1)百钱买百鸡问题的三重循环解法;2)计算日期为当年第几天的算法;3)回文数判断程序;4)数组求和找目标值的实现;5)整数反转的逻辑;6)还包括宏定义、结构体内存对齐、预处理功能等基础知识考察;7)最后提供了两道编程题(斐波那契数列和字符串反转)的提示。这些题目覆盖了C语言的常见算法、数据类型处理和基础概念,通过代码实例展示了编程问题的解决思路。
2025-06-01 18:54:30
2307
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅