- 博客(7)
- 资源 (6)
- 问答 (1)
- 收藏
- 关注
原创 FreeRTOS内核配置说明
1.调度器模式:#define configUSE_PREEMPTION 11:抢占式调度;2:合作式调度器2.钩子函数2.1#define configUSE_IDLE_HOOK 0空闲任务钩子函数,常用来进入低功耗模式(不可以使用阻塞进程的API)2.2#define configUSE_TICK_HOOK 0滴答定时器中的钩子函数,函数在中断服务程序中执行,因此这个函数必须非常短小,不能大量使用堆栈,只能调用以”FromISR" 或 "FROM_ISR”结尾的API函数
2021-11-10 09:25:52
584
原创 《编程精粹》摘录
1.假想的编译程序1.1使用编译程序所有的可选警告设施:要把所有的警告开关都打开,除非有极好的理由才不这样做。1.2使用 lint 来查出编译程序漏掉的错误。1.3如果有单元测试,就进行单元测试。2.自己设计并使用断言3.为子系统设防3.1如果某件事甚少发生的话,设法使其经常发生:如果某事件很少发生并没有什么问题,只要在程序的交付版本和调试版本中不少发生就行。3.2保存调试信息,以便进行更强的错误检查。3.3仔细设计程序的测试代码,任何选择都应该经过考虑。4.对程序进行逐条跟踪4.1不
2021-11-04 13:38:51
178
原创 取消嵌入式C字节优化对齐的方法
attribute ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐,是GCC特有的语法。这个功能是跟操作系统没关系,跟编译器有关,gcc编译器不是紧凑模式的,我在windows下,用vc的编译器也不是紧凑的,用tc的编译器就是紧凑的。例如:在TC下:struct my{ char ch; int a;} sizeof(int)=2;sizeof(my)=3;(紧凑模式)在GCC下:struct my{ char ch; int a;} sizeof(
2021-07-23 09:54:47
297
原创 notepad++ 过滤掉不需要的文本信息
notepad++ 过滤掉不需要的文本信息1.标记需要的信息2.搜索-》书签-》-》删除未标记行3.效果
2021-07-09 10:38:35
6199
1
原创 QT打包发布脚本
QT打包发布脚本利用bat脚本可识别拖拽的文件信息,写个简易的打包发布脚本,内容如下:64位版本---------:set path=E:\Qt\5.14.1\mingw73_64\binset pathset path=E:\Qt\Tools\mingw730_64\bin;%PATH%set pathwindeployqt.exe %~1del %032位版本---------:set path=E:\Qt\5.14.1\mingw73_32\binset pathset pat
2021-05-08 16:39:01
251
原创 QT调用windows函数实现USB的热插拔产生报错
QT调用windows函数实现USB的热插拔产生报错qt版本:5.14编译器:vs2017报错:mainwindow.obj???? error: LNK2019: 无法解析的外部符号 __imp_RegisterDeviceNotificationW,该符号在函数 “private: void __cdecl MainWindow::setupNotification(void)” (?setupNotification@MainWindow@@AEAAXXZ) 中被引用分析:通常出现无法解析的
2021-05-08 14:25:29
286
原创 记录c++加载DLL无法初始化的一种原因
记录c++加载DLL无法初始化的一种原因其一:DLL在发布过程被设置为默认管理员权限启动,这时就需要调用者同样在管理员全下启动。
2021-05-07 08:55:40
585
GD32F350-Freertos.rar
2021-06-03
hid设备通讯过程如果字节数少于报告描述符中规定的字节数上位机无法接收到。
2020-11-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人