Car12
嵌入式开发,爱好者
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
基于N32G45x+RTT驱动框架的定时器外部计数
通过配置 TIMx_CCMOD1.IC2F[3:0] 选择输入滤波器带宽(如果不需要滤波器,保持 IC2F 位为‘0000’) 配置 TIMx_CCMOD1.CC2SEL 等于‘01’,CC2 通道配置为输入,IC2 映射到 TI2。 配置 TIMx_SMCTRL.SMSEL 等于‘111’,选择定时器外部时钟模式 1。 配置 TIMx_SMCTRL.TSEL 等于‘110’,选择 TI2 作为触发输入源。 配置 TIMx_CCEN.CC2P 等于‘0’,选择时钟上升沿极性。原创 2025-07-31 11:47:50 · 3 阅读 · 0 评论 -
基于GD32F303从0搭建文件系统,挂载2个块设备到文件系统
本文详细记录了基于GD32F303芯片从零搭建RT-Thread文件系统的过程。第一阶段完成基础工程搭建,通过修改工程模板解决编译错误,并配置串口0实现打印输出。第二阶段添加nor flash支持,包括SPI0驱动配置和引脚检查,随后启用fal和sfud组件。遇到fal_cfg.c文件缺失问题时,通过复制模板文件解决。目前编译出现"stm32f2_onchip_flash"符号未定义错误,需进一步调试。整个过程涉及工程配置、驱动移植和组件集成,为后续文件系统挂载奠定了基础。原创 2025-06-24 15:53:08 · 156 阅读 · 0 评论 -
rt thread 挂载2个块设备
{"sd0", "/", "elm", 0, 0}, // 将sd0挂载在根目录下{"log", "/flash", "elm", 0, 0}, /**将log块设备挂载在/falsh目录下 */{0}};原创 2025-06-24 09:17:56 · 31 阅读 · 0 评论 -
RT Thread 块设备注册
RT-Thread–emmc 块设备对接及文件系统挂载_rtthread emmc-CSDN博客该结构体 [rt_device_blk_geometry](javascript:void(0)) 的定义如下:成员详解[sector_count](javascript:void(0))类型: 描述: 表示块设备中的扇区总数。作用: 文件系统需要知道总的扇区数量来分配空间和管理存储内容。例如,如果一个 SD 卡有 1024 个扇区,这个值就会是 1024。应用场景:类型: 描述: 表示每个扇区的字节数原创 2025-06-23 12:14:13 · 40 阅读 · 0 评论 -
rt thread 基于GD32F303的can驱动编写
模板可以时stm32或者是其他bsp支持的厂家,本人选的时N32的驱动作为模板编写。测试选择了can1,连续工作5000帧数据手法无丢帧,can过滤正常。原创 2025-06-20 10:27:29 · 76 阅读 · 0 评论 -
rt thread env2.0不能打开1.3.5的工程Malformed utf-8 in ‘board/Kconfig‘
【代码】rt thread env2.0不能打开1.3.5的工程Malformed utf-8 in ‘board/Kconfig‘原创 2025-06-18 16:33:08 · 37 阅读 · 0 评论 -
RT Thread 在N32G457下can驱动分析
核心文件。原创 2025-06-18 15:27:33 · 212 阅读 · 0 评论 -
RT Thread CAN驱动框架分析
技术点描述异步发送利用 completion 实现非阻塞发送资源池管理使用 freelist 和 semaphore 实现邮箱资源复用多邮箱支持支持多个 CAN TX 邮箱并发操作中断协同与 ISR 配合,实现事件驱动发送双链表管理使用 freelist/uselist 管理接收缓冲错误统计记录发送成功/失败次数、丢包数量等硬件过滤器支持多个硬件过滤器,减少无关帧干扰内存优化结构体内存连续分配,提升效率互斥锁保护防止多线程并发问题动态配置支持运行时修改波特率、过滤器等完整性检查大量断言确保安全性系统集成。原创 2025-06-18 15:20:03 · 401 阅读 · 0 评论 -
RT Thread 用于调试日志的头文件rtdbg.h
✅ 提供给用户的配置宏包括:日志开关控制:DBG_ENABLE, RT_USING_DEBUG日志级别控制:DBG_LVL, DBG_LEVEL日志标签设置:DBG_TAG, DBG_SECTION_NAME彩色日志支持:DBG_COLOR, RT_DEBUGING_COLOR日志后端切换:PKG_USING_DLOG, RT_USING_ULOG✅ 提供给用户的 API(宏)包括:级别日志打印:LOG_D, LOG_I, LOG_W, LOG_E。原创 2025-06-17 14:24:10 · 67 阅读 · 0 评论 -
ldkGUI如何添加自定义的字库
需求:我要添加一个自己的16x16的字库文件。原创 2025-06-11 11:47:46 · 36 阅读 · 0 评论 -
如何在RTT中添加ldkGUI组件
摘要:本文介绍了将ldkgui图形库集成到RT-Thread系统的步骤:1)将源码复制到utilities目录;2)修改Kconfig添加GUI配置选项和字体选择;3)创建SConscript文件管理编译过程,根据配置动态加载不同字体驱动;4)通过menuconfig配置工程并生成rtconfig.h;5)在MDK中查看文件分组验证集成成功。整个流程包含源码部署、构建系统配置和工程验证三个主要环节。(150字)原创 2025-06-11 11:38:40 · 31 阅读 · 0 评论 -
RT Thread平台下 基于N32G45x和N32L40x的drv_pwm驱动实现
pwm驱动框架分析。原创 2025-06-04 20:15:00 · 71 阅读 · 0 评论 -
RT Thread 基于N32G457实现UART V2驱动实现
libraries\N32G45x_Firmware_Library\SConscript修改文件根据串口驱动的版本选择驱动文件使能V2版本的串口驱动修改添加串口的配置,目前只添加了串口1,2,3原创 2025-05-27 17:27:11 · 64 阅读 · 0 评论 -
RT Thread串口V2版本的驱动框架分析和N32L40x的实现
串口外设的遵循如下规则配置结构体头文件rt-thread\components\drivers\include\drivers\serial_v2.h串口的操作接口串口设备驱动注册二、驱动框架分析串口V2注册 分析这里解释了如何从找到rt_serial_open打开分析fifo用于串口数据发送和接收rt_serial_open主要工作2.接收 接口函数赋值有fifo则申请fifo设置串口工作模式非阻塞模式阻塞模式1.RECV 没有buff的读接口函数 _serial_p原创 2025-05-27 10:00:06 · 164 阅读 · 0 评论 -
RT Thread Nano V4.1.1 rtconfig.h 注释 Configuration Wizard 格式
Configuration Wizard 格式🔧 Configuration Wizard 格式详解1. 基本结构该格式通过特定的注释标签来描述配置项类型和属性,IDE(如 Keil μVision、IAR Embedded Workbench、VSCode + 插件等)可以识别这些标签并生成图形化配置界面。所有配置都写在 C/C++ 头文件中,并以特殊注释标记包裹。原创 2025-05-24 17:02:22 · 365 阅读 · 0 评论 -
RT Thread 发生异常时打印输出cpu寄存器信息和栈数据
在发生 HardFault 时,打印当前栈的十六进制数据和 CPU 寄存器信息是非常重要的调试手段。以下是如何实现这一功能的具体步骤和示例代码。我们需要在 HardFault 中捕获异常上下文,并从中提取寄存器值和栈数据。当 HardFault 发生时,处理器会自动将寄存器压入栈中(通常是 PSP 或 MSP)。我们可以通过汇编代码获取当前栈指针,并将其传递给 C 函数。在 C 函数中,我们解析栈中的寄存器值,并打印栈数据和寄存器信息。原创 2025-04-25 21:31:17 · 196 阅读 · 0 评论 -
RTT添加一个RTC时钟驱动,以DS1307为例
这里多了一个选项复制drv_rtc.c,重命名为drv_rtc_ds1307.c添加到工程中。原创 2025-04-14 15:13:22 · 171 阅读 · 0 评论 -
at32f103a+rtt+AT组件+esp01s 模块使用
at32f103a+rtt+AT组件+esp01s 模块使用原创 2025-02-23 20:58:22 · 165 阅读 · 0 评论 -
at32f103a+rtt+组件cm_backtrace组件使用
mdk编译生成汇编文件汇编:fromelf --text!bin文件:fromelf --bin!处理编译问题修改线程名变量组件初始化rt_cm_backtrace_initRTT组件内部已经初始化完成,用户无需干预参数配置。原创 2025-02-23 09:37:58 · 90 阅读 · 0 评论 -
AT32F403A+RT THREAD+DFS文件系统
问题未解决,可能时at32f403的驱动问题,尝试了lsi和lse都不行,设置时间可行,就是不走秒。设置扇区大小,因为W25q128是4096个字节为一个扇区,SD卡一般是512(默认)获得可以用于挂载的块类型设备,那么移植的工作就算完成了。首次开启使能rtc驱动,发现可以设置时间,但是时钟不走。因为sfud需要spi驱动的支持需要使能spi驱动。格式化文件系统发现,缺少rtc驱动支持。使用软件rtc时间动起来了,哈哈哈。dfs文件系统跑起来需要的最低资源。依赖:rtc时间,块设备,dfs。原创 2025-02-23 09:29:02 · 219 阅读 · 0 评论 -
at32f403a rt thread led基础bsp工程测试
切换到V5.1.0分支(使用一个发布版本可以避免不必要的bug)导出一个独立的AT32F403A的BSP工程。3个led的引脚是PB1 ,PB2,PB10。编译发现了一堆问题,can fifo重复定义。导出一个独立的AT32BSP。根据自制的开发板点亮led。github版本更新最新。官方BSP编译失败处理。原创 2025-02-22 19:19:39 · 80 阅读 · 0 评论 -
AT32F403A+RT Thread标准版+fal组件+sfud使用教程
AT32F403A+RT Thread标准版+fal组件+sfud使用教程原创 2025-02-22 19:12:21 · 259 阅读 · 0 评论 -
RT Thread驱动框架分析--硬件定时器(hwtimer)分析
基于N32+RTthread硬件定时器驱动框架分析原创 2025-01-25 15:07:21 · 159 阅读 · 0 评论 -
RTT使用遇见的坑
栈线程的栈溢出:bus fault:解决办法:原创 2024-01-18 20:59:18 · 569 阅读 · 0 评论 -
【RTT驱动框架分析】-硬件定时器应用笔记和源码分析
硬件定时器应用笔记和源码分析原创 2023-10-26 20:03:15 · 471 阅读 · 0 评论 -
【RTT驱动框架分析】- 队列DataQueue源码分析
RTT内部队列数据结构的API和数据结构原创 2023-10-26 19:59:54 · 267 阅读 · 0 评论 -
【RTT驱动框架分析07】- adc驱动框架分析+adc中断唤醒adc驱动
实现了adc注册功能,在注册函数内部初始化io口,时钟,adc使能标定实现了adc的单通道采集功能即 convert 函数实现使能函数没有做什么工作,仅仅做了个通道的有效性判定。原创 2023-08-15 22:44:05 · 536 阅读 · 0 评论 -
【RTT驱动框架分析06】-pwn驱动框架分析+pwm驱动实现
因为有的芯片的PWM是具有互补输出功能的,即PWM的某一个通道是可以靠两个引脚来发出一对互补的波形。PWM 的输出频率由周期时间 period 决定,例如周期时间为 0.5ms (毫秒),则 period 值为 500000ns(纳秒),输出频率为 2KHz,占空比为 pulse / period,pulse 值不能超过 period。,第一个参数为命令,第二个参数为 PWM 设备名称,第 3 个参数为 PWM 通道,第 4 个参数为周期(单位纳秒),第 5 个参数为脉冲宽度(单位纳秒)。原创 2023-08-10 21:55:07 · 443 阅读 · 0 评论 -
【RTT驱动框架分析05】-spi驱动框架分析
获取到 SPI 设备句柄就可以使用 SPI 设备管理接口访问 SPI 设备器件,进行数据收发。参数描述deviceSPI 设备句柄message消息指针返回——RT_NULL成功发送非空指针发送失败,返回指向剩余未发送的 message 的指针此函数可以传输一连串消息,用户可以自定义每个待传输的 message 结构体各参数的数值,从而可以很方便的控制数据传输方式。/* 发送缓冲区指针 */ void * recv_buf;/* 接收缓冲区指针 */ rt_size_t length;原创 2023-08-02 22:24:18 · 394 阅读 · 0 评论 -
【RTT驱动框架分析04】-I2C驱动框架分析 at24cxx
和 SPI 总线的自定义传输接口一样,I2C 总线的自定义传输接口传输的数据也是以一个消息为单位。参数 msgs[] 指向待传输的消息数组,用户可以自定义每条消息的内容,实现 I2C 总线所支持的 2 种不同的数据传输模式。在使用 I2C 总线设备前需要根据 I2C 总线设备名称获取设备句柄,进而才可以操作 I2C 总线设备,查找设备函数如下所示,以下两个读写函数封装自 rt_i2c_transfer() 函数,用于读写I2C从设备的数据,更加简单易用,推荐使用。获取到 I2C 总线设备句柄就可以使用。原创 2023-08-02 22:03:57 · 531 阅读 · 0 评论 -
【RTT驱动框架分析03】- sfus flash 操作库的分析和基于STM32F103RCT6+CUBEMX的SFUS移植教程
sfus 是根据flash_table 数组内部提供信息初始化spi总线和初始化sfud_flash_chip (spi flash抽象结构)信息。由下面的信息可知,不同的spi flash擦除命令不一致,读写命令是一致的。修改flash设备列表和flash id。目前支持的spi flash的目标。main.c 文件添加如下内容。修改文件sfus_port.c。这里也是以后可以添加的。到此移植的基本条件满足。原创 2023-07-30 19:16:59 · 409 阅读 · 0 评论 -
【RTT驱动框架分析02】-串口驱动分析
0x00000001。原创 2023-07-29 17:15:20 · 394 阅读 · 0 评论 -
【RTT驱动框架分析01】-pin/gpio驱动分析
绑定的实质就是给pin_irq_hdr_tab 内部的对象成员赋值操作。在rtconfig.h中可能涉及需要开启gpio时钟。内部实质就是设置中断分组和中断的触发模式中断优先级。主要是存储用户注册中断处理函数。原创 2023-07-29 17:12:31 · 361 阅读 · 0 评论 -
【RTT驱动框架分析00】-应用层函数调用流程-串口为例
RTT内部有一个全局变量数组rt_object_container数组的数量就是 rt_object_info_type 内核对象的种类,其中包含一个RT_USING_DEVICE (设备的数据类型),数组内部的每一个变量包含一个链表,链表内部就构造了一个设备链表,rt_device_find函数就是在这个数组内部根据类型找到链表,然后在链表内部根据设备名字找到rt_device_t设备。原创 2023-07-29 17:20:29 · 408 阅读 · 0 评论 -
RTT应用编程_iic应用编程
和 SPI 总线的自定义传输接口一样,I2C 总线的自定义传输接口传输的数据也是以一个消息为单位。参数 msgs[] 指向待传输的消息数组,用户可以自定义每条消息的内容,实现 I2C 总线所支持的 2 种不同的数据传输模式。在使用 I2C 总线设备前需要根据 I2C 总线设备名称获取设备句柄,进而才可以操作 I2C 总线设备,查找设备函数如下所示,以下两个读写函数封装自 rt_i2c_transfer() 函数,用于读写I2C从设备的数据,更加简单易用,推荐使用。获取到 I2C 总线设备句柄就可以使用。原创 2023-08-02 22:06:46 · 426 阅读 · 0 评论 -
【N32L40X】学习笔记14-在RT-thread系统中读取eeprom数据
编写eeprom测试源码。原创 2023-08-06 19:21:51 · 897 阅读 · 0 评论 -
RTT学习笔记12-KConfig 语法学习
KConfig 语法学习RTT 官方教程。原创 2023-08-04 23:25:59 · 580 阅读 · 0 评论 -
极海APM32F4xx Tiny】学习笔记08-RTT 链表使用方法
极海APM32F4xx Tiny】学习笔记08-RTT 链表使用方法1.双向链表基本结构2.节点初始化—2个方法3.在某一个节点后边插入一个节点4.在某一个节点前边插入一个节点5.移除一个节点6.判定链表是不是空就是判定是不是自己指向自己7.获取链表长度已知结构体内部一个成员的地址can_dev,根据机构体类型struct ra_can和成员名字can_dev 得到结构体实例对象can的地址8.获取结构体的入口地址9.遍历整个链表10.已知成员的地址遍历整个链表原创 2023-07-29 17:07:04 · 331 阅读 · 0 评论 -
瑞萨RA系列mcu学习笔记--RTT-pwm驱动
通用 PWM 定时器(GPT,General PWM Timer)是 RA MCU 的其中一种 32/16 位的定时器外设。在 GPT 当中,可分为 GPT32 和 GPT16,它们最主要的区别是计数器的不同定时器(Timer)最基本的功能就是定时,比如定时发送串口数据、定时采集 AD 数据、定时触 发中断处理其它事务等等。如果把定时器与 GPIO 引脚结合起来使用的话可以实现更加丰富的功 能,可以对输入信号进行计数,可以测量输入信号的脉冲宽度,可以输出单个脉冲、PWM 等波 形,等等。原创 2023-06-16 21:09:38 · 1418 阅读 · 0 评论 -
RTT外设驱动使用2--ADC串口添加
1. 配置KConfig文件 2. 打开menuconfig选中ADC外设 3. 保存配置生成mdk工程 4. 修改CubuMX原创 2022-08-12 22:19:55 · 608 阅读 · 1 评论