- 博客(405)
- 资源 (10)
- 收藏
- 关注
原创 LCEDA原理图DRC检查时提示,网络标签 +5V 没有连接导线或总线
点中这个报错,然后把鼠标移到原理图的任意位置,按DELETE键删除,再重新DRC检查就没有了。
2024-03-23 22:09:21 304
原创 RT-Thread 27. UART设备
MSH命令输入:uart_data_sample,开启线程执行。输入一段字符串,以’\r’ (0x0D)结尾,回显输入的字符串。//增加GPIOE的存储位置,不然GPIOF会出错。这里实现uart0的485通信。//增加tx_af,rx_af。
2024-01-31 10:43:16 358
原创 RT-Thread 25. 信号-按键发送
如果线程要处理某一信号,那么就要在线程中安装该信号。安装信号主要用来确定信号值及线程针对 该信号值的动作之间的映射关系,即线程将要处理哪个信号,该信号被传递给线程时,将执行何种操作。
2024-01-26 09:35:52 381
原创 RT-Thread 23. 队列中消息大小及数量
消息池有32字节,每隔消息大小为4字节,消息池能放4个消息。查看rt_mq_init()源码。可以看出,实际的消息大小和消息数量需特别注意是否符合任务需求。
2024-01-25 14:39:31 444
原创 RT-Thread 19. 互斥量避免优先级反转
优先级,t21>t22>t23。t23先先持有互斥量,t21试图持有互斥量(#0),此时线程 3 的优 先级被提升为和线程 2 的优先级相同。通过线程t22打印出优先级提升后的,见#1,#2。t23的优先级提升到t21相同。这样中间优先级的t22执行时间不会影响t21的执行。
2024-01-23 16:22:28 334
原创 RT-Thread 17. 中断发送信号量后线程去处理信号量
按键一次,rt_sem_release(&keyPress1_sem);执行一次信号量值value加1。按键可以很快,但rt_thread3_entry()执行以下需要1s多。即生产过快,消耗过慢。
2024-01-22 11:19:20 417
原创 RT-Thread 15. list_timer与软定时器
timer_static_sample()会执行,timer1和timer2会开始工作。输入list_timer,发现多了timer1、timer2。0x0000012c: 300个时钟周期,即处于rt_thread_mdelay(3000);0x00000032: 50个时钟周期,即处于rt_thread_mdelay(500);
2024-01-17 10:40:30 848
原创 RT-Thread 14. GD32F330 Keil4移植RT-Thread
主要修改Usr(App)、rt-thread_bsp_board(BSP)文件,但rtconfig.h使用ENV菜单方式menuconfig命令修改后保存自动得到。rt-thread_components_board:bsp\gd32f330_v1\drivers文件夹,板级BSP。rt-thread_components_driver:components\drivers文件夹。rt-thread_libcpu:\libcpu文件夹,rt-thread内核源码。CMSIS:硬件层,启动文件、系统文件。
2024-01-04 18:00:41 491
原创 RT-Thread 13. menuconfig 中的选项从哪里来
RT-Thread 系统通过 menuconfig 的方式进行配置,而 menuconfig 中的选项是由 Kconfig 文件决定的,因此想要对 RT-Thread 系统进行配置,需要对 kconfig 语法有一定了解。//GD32系列BSP制作教程.md。
2024-01-03 09:33:47 370
原创 RT-Thread 12. BSP根目录下SConscript分析
(1)menuconfig 命令通过读取工程的各个Kconfig 文件,生成配置界面供用户配置内核,最后所有配置相关的宏定义都会自动保存到 BSP 目录里的rtconfig.h 文件中,每一个 BSP 都有一个 rtconfig.h 文件,也就是这个 BSP 的配置信息。(2)SCons 使用 SConscript 和 SConstruct 文件来组织源码结构,通常来说一个项目只有一 SConstruct,但是会有多个 SConscript。
2023-11-09 14:27:30 306
原创 RT-Thread 11. Scons 选择不同的编译器编译BSP
双击它打开,就可以使用 MDK 来编译、调试。如果是 ARM 平台的芯片,则可以使用 Env 工具,输入 scons 命令直接编译 BSP,这时候默认使用的是 ARM GCC 编译器,因为 Env 工具带有 ARM GCC 编译器。如果使用 mdk/iar 来进行项目开发,当使用ENV 打开或者关闭某些组件时,需要使用以下命令中的其中一种重新生成对应的定制化的工程,然后在 mdk/iar 进行编译下载。在 bsp/simulator 下,可以使用下面的命令生成 vs2012 的工程。
2023-11-09 09:41:57 253
原创 error #20 identifier xxxxx is undefined 结构体未定义
原因分析:main.h包含了“ipMsg_Def"”,这里Line1的存在,导致在“ipMsg_Def”定义前在main.h中引用了ipMsg_Def,导致未定义出错。所以这里把Line1注释掉即可。
2023-11-06 10:06:55 2230
原创 MFC 窗体插入图片
放到res文件夹下,资源视图界面导入res文件夹下的1.bmp。图像,选择IDB_BITMAP1。1.制作BMP图像1.bmp。控件类型修改为Bitmap。
2023-11-03 13:32:22 850
原创 RT-Thread 6. ENV增加组件(从服务器下载得到)
如果用keil4编译的话,输入:scons --target=mdk4,重新生成keil4工程,双击“project.uvproj”可以看到lwIP文件夹加进来了。保存之后,自动修改这个文件。键入“Y”、或者空格选中。
2023-10-26 07:24:22 103
原创 RT-Thread 5. ENV添加自定义模块
/gd32103c-eval 下Kconfig 最后一行增加source “hello/Kconfig”导入RT-Thread Studio。
2023-10-26 07:21:08 117
原创 RT-Thread 4. ENV安装
https://www.rt-thread.org/download.html#download-rt-thread-env-toolenv_released_1.3.5.7z
2023-10-26 07:16:51 122
原创 MQTT 主题通配符
有效sensor/+ 有效sensor/+/temperature 有效sensor+ 无效(没有占据整个层级)加号 (“+” ) 是用于单个主题层级匹配的通配符。MQTT 主题通配符包含单层通配符 + 及多层通配符 #,主要用于客户端一次订阅多个主题。注意:通配符只能用于订阅,不能用于发布。
2023-10-12 21:09:24 413
原创 cJson堆内存释放问题
cJSON_Delete(),是用来释放json对象的,释放父JSON对象后,子JSON对象也会被释放。CJSON_free(),是用来释放其他对象的。
2023-10-12 20:43:30 479
原创 Qt 7. 在自定义类TcpClient类中使用信号槽功能
使用信号和槽还必须在类声明的最开始处添加Q_OBJECT宏,在这个程序中,类的声明是自动生成的,已经添加了这个宏。UI类继承自QDialog,QDialog类又继承自QWidget类,QWidget类是QObject类的子类,所以可以使用信号和槽。槽中参数的类型要和信号参数的类型相对应,且不能比信号的参数多;信号只用声明,没有定义,且返回值为void类型。在类声明的最开始处添加Q OBJECT宏;需要继承自QObject或其子类;
2023-08-11 20:30:28 553
ServiceTest(Android创建服务实例图文实测)
2020-10-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人