- 博客(15)
- 收藏
- 关注
原创 RT_Tread Studio导入项目和添加头文件路径
RT-Thread项目导入指南摘要:本文介绍了在RT-Thread Studio中导入已有RTT项目的详细步骤。通过File→Import或欢迎页选项进入导入界面,选择RT-ThreadProject类型后指定项目根目录(需包含rtconfig.h等核心文件)。导入后可能出现项目重名、头文件缺失或board文件夹为空等问题,可通过重命名、添加头文件路径或重新选择BSP解决。添加头文件路径时建议使用相对路径以确保项目可移植性。整个导入过程简单快捷,小项目通常只需1-3秒即可完成加载。
2025-09-12 15:19:05
490
原创 RTT学习笔记3
操作系统中的线程间通信机制包括邮箱和消息队列。邮箱用于传递4字节的简单消息,支持发送/接收操作,当邮箱满/空时可选择等待。消息队列能处理更复杂的结构化数据,适合传递传感器数据等较大消息。两种机制都支持动态/静态创建方式,并提供带超时的发送/接收功能。此外,信号机制支持线程间异步通知,通过安装信号处理函数和发送信号实现事件驱动通信。这些机制为线程间数据交换和事件通知提供了灵活高效的解决方案。
2025-09-08 17:07:19
948
原创 RTT学习笔记2
RT-Thread提供了多种内核对象实现任务同步:硬件定时器和软件定时器分别适用于高精度和一般定时需求;信号量通过资源计数实现任务同步与互斥,适用于资源共享场景;互斥量确保对临界资源的独占访问;事件集支持多事件等待,可配置逻辑与/或触发条件。开发中需根据具体场景选择合适机制:定时任务用定时器,资源共享用信号量/互斥量,多事件等待用事件集,同时注意动态/静态创建方式的差异和资源释放。
2025-09-08 17:05:41
672
原创 RTT学习笔记1
本文介绍了RT-Thread实时操作系统中线程的创建与管理方法。主要内容包括:1)线程创建步骤,通过rt_thread_create函数设置线程名称、入口函数、参数、栈大小、优先级和时间片;2)线程参数传递方式,可使用结构体封装参数;3)线程调度机制,系统根据优先级分配CPU资源;4)延时函数rt_thread_mdelay的使用,可实现非阻塞式延时并释放CPU资源。文章通过工厂工人的类比和LED控制示例,详细解释了多线程编程的关键概念和实现方法,适合嵌入式开发者快速上手RT-Thread的线程管理。
2025-09-08 17:03:18
621
原创 立创k230码类识别例程
文章摘要: 该程序基于立创·庐山派-K230-CanMV开发板,实现实时二维码识别与出库统计功能。系统通过摄像头捕捉图像,检测二维码/条形码并进行去重计数,在屏幕上显示识别结果和出库总数(支持LCD/HDMI显示模式)。核心流程包括:图像捕获、二维码检测与去重计数、结果可视化(绘制红色边框和内容文本)以及统计信息显示。程序预留多类型条形码识别功能,采用集合存储已扫描码值确保准确计数。开发资料已在官网开源,体现培养工程师的理念。
2025-07-14 17:51:20
483
原创 24年e题三子棋视觉部分(立创k230实现)
摘要:本文介绍了基于立创·庐山派-K230-CanMV开发板的矩形识别技术实现,重点针对三子棋棋盘检测。代码通过摄像头采集图像,使用灰度处理和矩形检测算法识别符合条件的矩形区域(面积>12000且宽高比0.8-1.2),并计算九宫格各小格的中心坐标。系统支持三种显示模式(虚拟显示器、3.1寸屏幕和HDMI),自动进行坐标缩放适配。检测结果实时显示矩形角点、九宫格中心点坐标及FPS信息,为后续三子棋游戏逻辑提供视觉定位基础。
2025-07-14 17:40:39
653
1
原创 适用于任何一款stm32系列的hal库配置
本笔记聚焦 STM32 HAL 库配置,以 stm32f429zgt6 为实例展开。在 CUBE 配置环节,先阐述时钟源全选外部时钟的选择依据,接着对比 HSE 和 HSI 特性、适用场景,强调依原理图确定外部晶振大小并填入时钟树及自动分配频率要点,还说明了 SYS 串口调试配置及未配置生成代码就烧录的风险与解决办法,同时对工程配置关键参数作了提示。Keil 配置部分,涉及魔术棒各选项卡功能概述、头文件路径管理及添加错误处理,以及不同调试方式特点和选择方法,旨在为 STM32 HAL 库配置学习提供系统、详
2025-05-04 22:47:13
733
原创 esp8266联网开发(基于onenet云平台)
聚焦单片机联网开发领域,深度剖析联网原理、通信协议等关键技术,通过丰富案例实操,助力开发者快速掌握从硬件连接到软件编程的全流程开发技巧,提升在物联网场景下单片机应用开发能力。
2025-04-22 21:23:44
1421
原创 51单片机sbit的应用
用sbit定义引脚的固定格式sbit允许我们定义多个定义指向同一个地址位,也就是说Tx和P10都可以被正确调用,指向P1.0引脚这相当于给同一个物理引脚(P1.0)起了两个别名(P10和Tx),代码中可以通过任意一个名称操作该引脚,但需要避免逻辑混淆。// 将P1.0引脚定义为Tx// 将P1.1引脚定义为RxTx = 1;// 将P1.0引脚设置为高电平Rx = 0;// 将P1.1引脚设置为低电平系统已经定义的引脚,但是不能用来重复定义//按键的控制引脚正确定义//按键的控制引脚。
2025-02-11 18:45:07
1516
原创 10分钟速通Python
函数代码块以def关键词开头,后接函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。函数内容以冒号起始,并且缩进。return [表达式]结束函数,选择性地返回一个值给调用方,不带表达式的 return 相当于返回 None。def 函数名(参数列表):函数体。
2024-11-18 23:14:03
2013
原创 51单片机基本模块
在Seg_mode不同时,按键的功能不同,在模式一下,按下保存当前的流转间隔;在模式二下,按下第一次按键6->设置是哪个彩灯运行模式,第二次按下->调整的那个彩灯运行模式的流转时间。使用switch函数和取反标志位set_flag。Key_Up->抬起判断按键完成功能。Key模块,Seg模块共同操作。用Key_Down完成长按操作。变量分为显示数组和设置数组。->中断计时时间判断长短按。Key_Old->长按。->在模式一下输入数据。Key_Down计时。
2024-11-18 20:54:07
430
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅