使用Qt

Qt是跨平台的C++应用程序开发框架,广泛用于开发界面程序。Qt不仅仅是个强大的界面库,它的基础库同样强大,很多库用起来比STL还方便,所以我经常用Qt编写控制台(console)程序。本文介绍如何用Qt处理文本。

阅读全文 »

2014年我开始参与实验室的一个自然科学基金项目,从而接触了机器人操作系统(Robot Operating System, ROS),这真是个好东西,但在国内好像不是很普及。

阅读全文 »

岳麓山是块风水宝地,湖南省最好的三所大学坐落在山脚下。山从北到南绵亘几公里,走向略有弯曲,就好像面对湘江张开了双臂。而湖南大学就夹在这山水之间,安然地躺在岳麓山温暖的怀抱里,占据了最精华的一块土地。

阅读全文 »

需求

如果想在远程PC上看到树莓派摄像头拍摄的视频,可以将树莓派配置成一个视频流服务器。但要实现精细控制,比如得到每帧图像的时间戳,或用OpenCV处理每帧图像,这种方法就不行。

阅读全文 »

硬件PWM

本文针对的是Raspberry Pi 2 Model B硬件。从理论上讲,对于任意GPIO口,可以通过设定延时来输出PWM信号,这被称作软件PWM。由于Linux不是实时操作系统,对于一些要求硬实时的应用,例如通过PWM信号控制舵机,最好使用硬件PWM

阅读全文 »

简介

I/O多路复用(I/O multiplexing)使得程序可以同时监测多个文件描述符,查看它们是否就绪(ready),即能否进行I/O操作。能够进行I/O操作,具体来说就是,在描述符上执行I/O相关的系统调用时不会阻塞,函数要么成功返回,要么返回错误,进程不会进入睡眠状态。

阅读全文 »

数据结构

Linux内核的链表(linked list)实现比较特别。通常来说,链表的结构体会包含需要数据部分,例如下面结构体中的my_item成员:

阅读全文 »
0%