- 博客(28)
- 收藏
- 关注
原创 stm32f103c8t6hal库使用看门狗
STM32F103C8T6是一款性能强大的微控制器,它具有丰富的外设和功能,其中之一就是看门狗(Watchdog)。看门狗是一种重要的硬件设备,它可以在系统出现异常时自动重启系统,以保证系统的稳定运行。我们将详细介绍如何在STM32F103C8T6上使用HAL库来配置和使用看门狗。看门狗是一种定时器,它会在预设的时间内计数。如果在这个时间内没有被主程序“喂狗”(即重置计数器),那么看门狗就会触发系统复位。这样,如果主程序由于某种原因(如死循环)无法正常运行,看门狗就会自动重启系统,防止系统长时间处于异常状
2024-04-14 20:59:28 943
原创 ThreadX:怎么确定一个线程应该开多少内存
在实时操作系统(RTOS)ThreadX中,线程的大小是一个重要的参数。这个参数决定了线程的堆栈大小,也就是线程可以使用的内存空间。那么,我们应该如何确定一个线程需要多大的字节呢?
2024-04-13 13:27:00 1129 1
原创 stm32重写printf函数串口调试---环境:stm32+hal+cubeide
【代码】stm32重写printf函数串口调试---环境:stm32+hal+cubeide。
2024-03-24 15:29:34 347
原创 在ThreadX中如何使用信号量详解
信号量是一种常用的线程间同步和资源管理的机制,它可以用来表示信号对象或资源的数量。在ThreadX中,信号量是一个32位的计数值,它可以通过函数tx_semaphore_create创建,并指定一个初始值。信号量的值可以通过函数tx_semaphore_get和tx_semaphore_put来增加或减少,从而实现线程间的协调和通信。信号量还有一些高级的功能,如信号量的任务通知,信号量的扩展功能,信号量的性能分析等,用来满足更多的需求。
2024-02-01 16:21:36 1100
原创 ThreadX系列note-前言
Azure RTOS ThreadX 是 Microsoft 提供的高级工业级实时操作系统 (RTOS)。它是专门为深度嵌入式实时 IoT 应用程序设计的。
2024-02-01 14:27:21 480
原创 ThreadX手动移植到stm32f103c8t6_hal库
ThreadX是由Express Logic公司开发的一款实时操作系统(RTOS),2019年被微软收购,成为了微软的一款Azure RTOS。ThreadX是专门为深度嵌入式,实时应用和IoT应用而设计。点击获取模板 密码:6666大家有什么问题可以留言,我会尽力帮助大家解决。
2024-01-22 16:12:25 1318 3
原创 硬件iic和软件iic的区别
IIC,也被称为I²C或者I2C,全称为Inter-Integrated Circuit,是一种串行通信协议。这种协议由Philips Semiconductor(现在的NXP Semiconductors)在1980年代早期为了在主板、电视以及其他设备中使得芯片能够进行通信而开发的。
2024-01-15 15:49:43 1440
原创 CRC-16 Modbus校验含代码
CRC-16 Modbus校验是一种用于检测数据传输错误的算法。它是CRC(循环冗余校验)的一种变体,特别适用于Modbus协议。CRC-16 Modbus校验可以提供一种有效的方式来保护数据的完整性,确保在数据传输过程中没有发生错误。
2023-11-08 23:05:55 655
原创 大小端问题以及转换——C语言
联合体是一种特殊的数据结构,它允许在相同的内存位置存储不同的数据类型。我们可以利用这个特性来读取或写入数据的不同字节,从而实现端序的转换。如果你需要转换其他类型的数据,你可能需要修改这个函数。的是,这种方法依赖于具体的硬件和编译器实现,并且可能不适用于所有情况。这个函数可以用于任意大小的数据,只要你能提供一个指向数据的指针和数据的长度。以下是一个函数,它接受一个字节数组和数组的长度,然后在。是1,那么我们知道系统是小端序,因为最低有效字节被存储在最低的地址。这个函数首先接受一个指向数据的指针和数据的长度。
2023-10-18 19:55:15 1287
原创 C语言结构体--->位域
C语言中的位域是一种特殊的数据结构,它允许我们在一个字节内存中存储多个不同的值。这种特性使得位域在嵌入式系统和硬件接口编程中非常有用,因为它们通常需要对硬件的特定位进行精确控制。
2023-10-18 19:41:23 217
原创 C语言printf输出不了,缓冲区问题---------->C语言printf缓冲区详解
在C语言中,printf函数是我们常用的输出函数,但是你知道它背后的缓冲区机制吗?本文将详细介绍printf函数的缓冲区。
2023-10-14 13:45:40 818
原创 C语言实现队列
data:一个数组,用来存储队列中的元素。front:一个整数,表示队头元素的下标。rear:一个整数,表示队尾元素的下标。maxsize:一个整数,表示队列的最大容量。// 队列的结构体定义int *data;// 队列元素数组int front;// 队头下标int rear;// 队尾下标// 队列最大容量} Queue;
2023-09-25 18:33:35 498
原创 C语言使用cjson解析json数据
在现代开发中,JSON已经成为了一种非常流行的数据格式。C语言是一种非常古老的编程语言,但是在某些场合下,仍然需要使用C语言来进行开发。那么,在C语言中如何使用cjson来解析JSON数据呢?本文将会为大家进行详细介绍。什么是cjsoncjson是一个轻量级的JSON解析器,它的代码量非常少,但是功能却非常强大。cjson的特点是速度快、占用内存小,非常适合在嵌入式设备上使用。cjson的安装。
2023-09-20 13:33:49 1690
原创 C语言实现队列接收数据
队列是一种特殊的线性表,其特点是先进先出(FIFO)的原则。队列只允许在表的一端进行插入操作,在另一端进行删除操作。插入操作叫做入队,删除操作叫做出队。队列的两个基本操作是入队和出队。数组实现是一种比较简单的队列实现方法。可以通过定义一个数组和两个指针front和rear来实现。front指向队头元素,rear指向队尾元素。当队列为空时,front和rear指向同一个位置。数组实现的优点是简单易懂,适用于数据量比较小的情况。但是当数据量比较大时,需要频繁地进行数据搬移,效率比较低。链表实现是一种比较灵活的队
2023-09-11 18:18:26 610
转载 ubuntu 22.04国内镜像阿里云/163源/清华大学/中科大
【代码】ubuntu 22.04国内镜像阿里云/163源/清华大学/中科大。
2023-09-11 13:18:20 2404
原创 智能家居必不可少的通信协议ZigBee(概念:什么是zigbee)
低功耗:Zigbee协议采用了睡眠模式和广播机制,使得设备在不工作时可以进入低功耗状态,从而延长电池寿命。高可靠性:Zigbee协议采用了自组织网络结构,当一个节点失效时,其他节点可以自动接管其任务,从而保证整个网络的稳定性和可靠性。网络规模大:Zigbee协议支持最多65535个节点,可以满足大规模网络的需求。低成本:Zigbee协议采用了低成本的硬件和简单的协议,使得其成本较低。易于部署:Zigbee协议支持自组织网络结构,节点可以自动加入或退出网络,无需手动配置。
2023-08-27 20:13:44 558
原创 记录:clion上开发stm32 环境配置(保姆级详细教程)----->2023_7_1
用了半年stm32cubeide 用不习惯,最后还是换成了程序员都爱的clion
2023-06-30 12:26:32 7150 3
原创 cannot find -lGL: No such file or directory ---->Qt in Ubuntu
Ubentu系统安装qt-creator少了一个依赖,
2023-01-17 12:39:59 789
各种类型的PID控制算法详解
2023-10-19
USB4扩展坞主控芯片VL830原理图
2023-10-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人