- 博客(13)
- 收藏
- 关注
原创 【使用C语言创建队列】
在做lvgl界面时,想用一种数据结构来创建一个缓冲区,负责保存网络通信传输过来的信息,然后一个一个去更新chart中的数据,很自然就想起来了C++中的队列,可是C语言没有显式定义这样的数据结构,怎么去实现呢?关键是区分队满和队空的两种情况,因为队首==队尾不能同时代表两种情况,所以只能牺牲一个内存区间,里面是不会存放数据的。之前看韦东山老师的课程,他就用了一个环形缓冲区的概念,也是防止发生丢数据的现象,好像都是一样的意思。后来发现,已经在Event那里实现了缓冲区,这里应该是不需要再搞一层了。
2023-07-15 15:27:05
103
1
原创 嵌入式应用开发之文字系统
可以看出,虽然同样是输入坐标是(100,100),但是应用基础的代码是做了坐标转换以后求出来origin的值,再输入freetype,文字系统是把(100,100)直接作为origin输入了,所以会有以上差别,但是为什么其中的坐标转换不一样还没想清楚,也许是这样根本不需要坐标转换,在GetBitMap函数中y坐标的计算绕开了屏幕的iresY,也许这就是区别,没想明白,但是降低了代码耦合性。存放用freetype字体引擎实现字符操作的函数实现。定义在可在主函数中调用的函数,完成结构体的注册及调用。
2023-07-02 21:28:43
158
1
原创 镭神C32测试LEGO-LOAM
其他雷达可能也有这个通道。LeGO-LOAM默认的接受的topic name是velodyne_points,点云的frame_id是velodyne,镭神驱动发布的topic name为lslidar_point_cloud,frame_id为laser_link。这个错误是因为 Lego LOAM 中原作者建议使用的 gtsam 版本为 4.0.0-alpha2,gtsam 是自带了一个 eigen 库的,而这个版本的 gtsam 中使用的是较低版本的 Eigen,还没有。以后的编译不需要“-j1”
2023-04-10 17:19:00
941
9
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人