- 博客(198)
- 收藏
- 关注
原创 rt-studio+clion+cubemx联合使用(使用scons进行整合)
本次是最初的构建方案,可能在一些方面做的不是很好,后面学会了更好的解决方案再来处理.本次是需要编写一些SConscript脚本文件(这里是参考rt-thread的官方源码进行的)本次是使用的是stm32f407zgt6为硬件环境本次使用的版本为rt-thread 5.0.2如果在rt-studio中开启某个组件或软件包的时候,都需要在Env控制台中构建一下,用于动态更新CMakelists文件中的配置。
2024-08-25 21:54:44
198
原创 clion开发之threadx+gd32f4xx驱动(gpio驱动)
前言本次使用的os为threadx,版本为6.4芯片使用的是gd32f425,开发库为GD官方提供的标准库开发环境使用的使用clion参考驱动程序为rt-thread的pin组件和相关驱动所编写GPIO 驱动IO口宏定义(便于快速定义,不用去底层进行找对应关系)/** ****************************************************************************** * @file : bsp_gpio_
2024-08-18 17:17:23
176
原创 clion开发stm32f4系列(2)————使用rt-thread提供的libc库时遇到的问题
CMakeList文件配置问题1解决方式问题2(在链接过程中,出现重复定义)解决编译结果(解决ok)
2024-08-11 01:38:32
127
原创 clion开发stm32f4系列(一)————移植rt-thread os系统
libcpu目录配置components目录(此CMAkeLists文件主要用于添加具体的组件)driver目录(此文件添加共有源码和管理抽象层的具体组件)core 目录msic 目录serial目录硬件实现层(drivers目录)改造cmake目录中根CMakeLists文件调整调整链接文件和汇编文件测试结果
2024-08-06 23:04:27
365
原创 rt-thread硬件定时驱动(裸机版)
**/#if01/* 禁止全局中断 */0/* 使能全局中断 */#else#define BSP_ENTER_CRITICAL TX_DISABLE /* 禁止全局中断 */#define BSP_EXIT_CRITICAL TX_RESTORE /* 使能全局中断 */#endifenum {
2024-08-06 08:00:00
222
原创 clion开发stm32f4系列(一)————工程的搭建
cmake方式生成是需要新版的cubemx。不会涉及到cmakelist在生成代码时被覆盖的情况。针对每个模块采用一个CMakelists文件管理,增加层次结构,复用性增强。
2024-08-05 08:00:00
344
原创 stm32之hal库spi驱动封装(实现阻塞,中断,dma三种方式)
此版本的驱动,并没有做相关宏定义的显示,所以可以直接通过参数配置来进行切换,如果需要限定的话,可以根据以上代码进行调整。这里只添加了spi1,如果需要其他的spi,需要添加spi硬件部分io,dma配置部分,spi中断部分即可,整体的spi逻辑框架无需修改。
2024-05-04 15:47:31
908
原创 stm32开发之threadx+lvgl组合示例记录
项目中使用LVGLlvgl自定义配置文件显示设备驱动(根据官方提供的模板,编写对应的驱动)lvgl输入设备驱动(触摸)LVGL组件定义代码(组件初始化)创建lvgl的GUI任务线程测试
2024-04-22 13:05:22
1188
原创 AppWizard的软件开发GUI的使用记录
前言这个软件是针对于EmWin6.0以上的这个软件在emWin的基础上又封装了一层,也只提供的API函数.基于消息事件为核心(个人理解)一些组件的之间的交互可以通过软件界面进行配置,比较方便本次是基于模拟器进行测试记录,观察api按键和文本之间的关联通过工具生成按键关联文本的事件在代码中怎么修改?不通过appwizard来设置文本(先在软件中去除掉)用vs2022打开模拟器软件代码,(这里我用的是ridder,反正差不多)需要改变一些配置,sdk要变成10.0, 初始的话是8
2024-04-21 21:03:08
495
原创 stm32开发之threadx+emwin+awizard使用记录
1、这里是剔除了很多兼容其他显示屏部分的代码,只保留具体信号的代码,把一些全局变量放到结构体中源文件硬件初始化触摸驱动(基于源文件修改)头文件源文件项目添加emwin头文件和链接静态库(采用CMakeLists来管理的)EmWIn源码实现GUI_X_OS.c (与os相关的)GUIConf.c 配置相关GUIDRV_Template.c (驱动,画点,读点)显示屏相关配置触摸配置与threadx 项目组合GUI组件(app_gui_emwin_componen
2024-04-21 19:56:01
935
原创 stm32开发之threadx+modulex+filex+shell组件(实现命令行动态加载程序)
在txm_module_port.h中加入,不在txm_module_user.h加,由于我们编译模块的时候,是没有加入相关宏定义的,所以txm_module_user.h中是不会生效的2048# define FX_FILEX_PRESENT # define TXM_MODULE_KERNEL_STACK_SIZE 2048 // 内核栈设置大一些,由于使用了filex目前已经可以动态加载模块了,后面再补充两个模块之间通信的记录。
2024-04-20 18:10:04
593
原创 stm32开发之threadx之modulex模块文件的生成脚本项目
【代码】stm32开发之threadx之modulex模块文件的生成脚本项目。
2024-04-19 15:09:27
484
原创 stm32开发之threadx+filex+levelx结合使用(底层设备使用的是w25q128)
说明sd卡的扇区大小一般是512字节,w25q128的扇区大小是4096,所以在分配的缓冲区的时候按最大的来分配5124096/*4KB*/
2024-04-18 19:41:17
653
原创 stm32开发之threadx+letter-shell+filex+ymodem组合使用(实现文件上传和文件shell命令)
需要对filex的api函数有个基本的认识和理解filex组件使用起来,相较于其他的文件系统,更加容易和方便。
2024-04-17 19:22:35
696
原创 vscode 搭建stm32开发环境记录(eide+cortex-debug+jlink)
前言clion使用的快过期了,所以就准备使用vscode 来代替clion作为代码开发环境vscode 插件安装创建个空白工程添加项目相关的源文件,和配置宏定义和头文件目录编译和烧录(ok)结合cortex-debug结果(测试ok)
2024-04-17 07:45:39
873
原创 stm32开发之threadx+letter-shell+ymodem实现串口上传文件记录(ota模板)
ymodem 协议组件已可以在裸机上运行,只需要修改对接letter-shell组件的回调函数即可。
2024-04-16 13:43:05
418
2
原创 stm32开发之threadx整合letter-shell 组件记录
在使用shell 和threadx 组合的时候,shell 加锁和解锁时,判断os是否启动,没有启动直接返回即可。
2024-04-16 01:20:49
525
原创 threadx之levelx组件的使用记录(结合w25q128)
**//** 外部引入变量*//** 变量*//* 用于printf互斥 *//** 静态全局变量*//** 函数声明*//*** @brief 组件初始化开始* @return*//*** @brief 组件初始化开始* @return*//* 创建互斥信号量 */这里使用lx_nor_flash_open打开设备的时候会出现状态不正确的情况,原因可能是flash中的数据格式问题,需要格式化一次。
2024-04-15 18:59:43
489
原创 stm32开发之threadx+modulex组合开发使用记录
这里设置的启动地址为0x08020000为的第一个模块的地址。上述名称,可自行定义。
2024-04-15 01:11:29
1021
原创 rt-thread的spi驱动抽离,做成独立的驱动(适用于f4)
1, 基于rt-thread的spi驱动进行修改,得到独立的spi驱动spi头文件配置dma驱动配置和定义(公共部分)spi驱动spi msp (硬件io层.用于初始化对应的gpio)spi bus (用于配置spi相关设置,给spi层提供调用接口)头文件源文件spi(应用层)头文件源文件测试(使用w25q128来测试)
2024-04-11 09:30:00
677
原创 stm32开发之threadx+netxduo(结合 modbus 编写tcp接口程序)
【代码】stm32开发之threadx+netxduo(结合 modbus 编写tcp接口程序)
2024-04-11 09:00:00
919
原创 stm32开发之threadx+netxduo(udp 接收端使用记录)
【代码】stm32开发之threadx+netxduo(udp 接收端使用记录)
2024-04-10 09:30:00
323
原创 stm32开发之threadx+netxduo(udp 发送端使用记录)
【代码】stm32开发之threadx+netxduo(udp 发送端使用记录)
2024-04-10 09:00:00
398
原创 stm32开发之threadx+netxduo(tcp 客户端使用记录)
【代码】stm32开发之threadx+netxduo(tcp 客户端使用记录)
2024-04-09 17:16:25
588
原创 stm32开发之实现代码之间解耦(借助链接文件和关键字section)
原文件链接文件修改源文件组件注入通过map映射文件也可以观察出函数地址之间的关系查看keil的map文件在keil中,不需要去修改链接文件,也可以实现组件自动注入,唯一的耦合,就是需要在合适的地方调用bsp_components_app_init 函数即可
2024-04-09 17:08:17
487
原创 stm32开发之threadx+netxduo(tcp 服务端使用记录)
【代码】stm32开发之threadx+netxduo(tcp 服务端使用记录)
2024-04-09 13:29:16
714
原创 stn32开发之threadx使用记录(一)
sizeof1sizeof/** tx_kernel_enter() 执行逻辑(关键)* TX_PORT_SPECIFIC_PRE_INITIALIZATION----可扩展* _tx_initialize_low_level() --- 设备层(寄存器)初始化* _tx_initialize_high_level() --- tx os 内部相关初始化* TX_INITIALIZE_KERNEL_ENTER_EXTENSION----可扩展。
2024-04-07 13:53:50
352
原创 threadx源码阅读记录之(_tx_initialize_high_level函数)
2. 提示,指针之间的加减的大小为指向类型的大小决定;这里的类型定时器的一级指针,还是个指针,所以加1,等于在地址上向后偏移4字节(仅指的是32位)
2024-04-07 12:34:51
192
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人