自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (4)
  • 收藏
  • 关注

原创 树莓派4开启多路UART配置

树莓派4拥有多路UART,默认配置下只开启了1路。本教程详细介绍开启其他UART的过程。

2023-03-19 11:30:50 768 1

原创 Linux使用termios2结构体设置串口非标准波特率

Linux串口开发中内置了标准波特率的选项可以满足大部分需求,但是有些特殊的设备的波特率是非标准的(我接触到的有遥控接收机Sbus协议的波特率就为100k),因此需要特殊开发。已有很多方法来解决这个问题,本博客记录使用termios2结构体来配置非标波特率。:本方法包含的和这两个头文件里都定义了struct termios,需将其中一个注释。测试系统:树莓派4B+Raspberry系统。Serial.h头文件。Serial.cpp文件。

2023-03-17 10:01:41 760 3

原创 一款基于Qt的跨平台开源串口调试助手EasySerial

文章目录1.简述2.开发步骤3.Linux系统测试4.其他1.简述串口调试助手在调试串口设备是非常适用的一个工具,在Windows有很多很好用的串口调试助手,但是在Linux系统上好像还没找到一个好用的带界面的软件(用命令行调试的工具还是有很多的),但是总感觉没有那么方便使用。因此基于Qt良好的跨平台特性,开发一个跨平台简易的串口调试助手,满足基本的串口调试需求。最后开源分享出来。目前实现的功能有:1.搜索串口设备;2. ASCII/HEX接收;3. 接收数据保存到txt;4. ASCII/.

2022-05-26 21:36:56 2581

原创 QT5使用QFtp,编译、部署与使用

文章目录1.简述2.QFtp编译与部署2.1 下载2.2 修改2.3 编译2.4 部署2.5 使用3.QFtp运用3.1 Ftp客户端3.2 树莓派搭建FTP服务器3.3 测试效果1.简述有时在windows环境下通过远程访问操作另一台linux主机。如使用putty和xshell来实现远程终端,使用Xftp来相互传输文件。现在想自己使用Qt开发一个文件传输软件。FTP是基于TCP/IP的一种应用层文件传输协议,通过建立FTP服务器(默认端口21)-客服端的形式在各个主机间传输文件。SFTP是基.

2022-02-06 18:00:38 9676 12

原创 使用QT嵌入百度地图开发高B格岸基监控软件

1.简述小伙伴们在做一些空中、陆地、水下机器人时,通常会为其配套开发一个岸基监控软件,用于显示机器人状态、配置一些参数、下达任务等。通常为了让这个软件更加便于使用(看起来更加高B格),通常会嵌入一个地理地图在其中。在监控软件中嵌入地图有下述好处:可视化机器人的运动轨迹;在地图上选取位置(航点)用于设置机器人的任务。那么,如何简单而优雅的实现上述好处呢。本文将结合自己的研究经历,描述和分享出我设计出的小玩意,希望对有需求的小伙伴以帮助。开发岸基监控软件的软件有很多Qt、C#、MFC,目前最流行的

2022-01-24 22:19:00 3985 26

原创 树莓派采集MPU9250运行AHRS进行姿态解算

1.几种概念的区分IMU:全称Inertial measurement unit,惯性测量单元,由三个正交的加速度敏感元件和三个正交的角速度敏感元件组成,该模块只输出三轴加速度和三轴角速度,其中输出三轴加速度的输出量里包含了重力加速度g。IMU从精密程度可以分为微机电(MEMS)、光纤、激光等。SINS:全称Strapdown inertial navigation system,捷联惯性导航系统(该定义相对于平台惯性导航系统)。IMU的敏感轴与载具主轴固联对齐。SINS由IMU与惯导计算机里运行的

2021-08-06 21:46:21 4323 9

原创 树莓派采集温湿度传感器Si7021

文章目录1.前言2.Si70213.在树莓派移植Si7021库1.前言Si7021是一款微型数字温湿度传感器,其通过IIC与外部处理器通信,常用于采集环境信息。。本文首先介绍Si7021芯片关键特性,再在树莓派基于Bcm2835库开发Si7021驱动库。2.Si7021Si7021供电1.9-3.6V,湿度量程0-80%,最高精度±3%,温度量程-10-85℃,最高精度±0.4℃。其通过IIC与外部芯片通信,芯片地址0x40。他有以下基础指令:重置(0xFE),软件重置需要等待芯片15.

2021-08-06 14:10:31 1126

原创 树莓派读取MS5837压力计

1.前言MS5837-30BA(或MS5837-02BA)是一款小型数字压力变送器,其通过IIC与微控制器通信,2个24位ADC通道采集温度和压力,内置出场校准参数,温度补偿后的压力精度达0.2mbar(20Pa,换算成深度精度2mm)。该压力变送器常被制作作为无人机的高度计,水下机器人的深度计。本文首先介绍MS5837-30BA(下文简写为MS5837)的特性,再在树莓派中基于Bcm2835移植MS5837的驱动库。2.MS5837-30BAMS5837供电电压1.5-3.6V,通过IIC与外部处理

2021-08-06 10:25:27 1526

原创 树莓派拓展模拟量采集(AD)功能

1.前言树莓派自身不带有模拟量采集功能(A/D)功能,当需要AD功能时,常通过IIC外接一个A/D模块来实现,如8位A/D芯片PCA9685。本文首先简要介绍PCA9685特性,然后基于树莓派的Bcm2835库开发PCA9685的驱动库。树莓派安装Bcm2835库参考这篇文章。2.PCA9685PCA9685芯片有4路8位的A/D采集通道和一路8位D/A输出通道,其他通过IIC与外部通信。其芯片引脚见下图,其工作电压VDD可以2.5-6V,参考电压VREF为A/D转化参考电压可以与VDD一致也可不一致

2021-08-05 19:19:37 3895 1

原创 树莓派使用C/C++基于Bcm2835操作GPIO学习记录

1.前言借助Bcm2835库可以快速使用C/C++开发树莓派的GPIO功能,像玩单片机一样玩树莓派。安装教程可以参考这篇文章2.Bcm模块

2021-05-30 14:24:13 2101 1

原创 树莓派用WiringPi和Bcm2835库和PCA9685输出PWM

1.前言PWM(脉宽调制)被常用于控制直流电机转速、舵机、电调等。树莓派可以通过WiringPi,Bcm2835或通过16路PWM芯片PCA9685产生。测试环境见我的这篇博客。2.Bca2835发生PWMBCM2835 在指定的GPIO 引脚上支持硬件 PWM。此 bcm2835 库提供配置和控制这些引脚上的 PWM 输出的功能。(官方文档又说当前版本只能用BCM的18号引脚,即RPi pin 1-12。)BCM2835 包含 2 个独立的 PWM 通道 (0 和 1),每个通道都只能连接到指定

2021-05-27 22:59:16 2827 1

原创 树莓派通过C/C++操作GPIO

1.前言树莓派自带2*20引脚,可以像玩单片机一样玩树莓派,其有普通的GPIO,也有复用为串行通信的UART、IIC、SPI。与Arduino库和stm32的Hal库一样,树莓派也有wiringPi和Bcm2835用于IO的基础库可以使用,帮助开发者快速开发应用。WiringPi是应用于树莓派平台的GPIO控制库函数,其使用C或者C++开发并且可以被其他语言包转,例如python、ruby等。WiringPi中的函数类似于Arduino的wiring系统,这使得熟悉arduino的用户使用wringPi

2021-05-26 22:35:31 4497 1

原创 一阶高低通滤波器设计及实现

1.一阶低通滤波器一阶低通滤波器的s域的传递函数为:Y(s)X(s)=1RCs+1=1sw0+1\frac{Y(s)}{X(s)}=\frac{1}{RCs+1}=\frac{1}{\frac{s}{w_0}+1} X(s)Y(s)​=RCs+11​=w0​s​+11​其中w0=1RCw_0 = \frac{1}{RC}w0​=RC1​滤波器的截止频率定义:截止频率时输出功率为传导频率的一半,在波德图相当于为降低3分贝的位置所表示的功率,因为此时功率比例 传到频带上的输出功率。一阶低通滤波器的截至

2021-05-07 16:57:35 4195 1

原创 Linux中c/c++获取时间

1.纳秒级时间精度纳秒级时间精度timespec和int clock_gettime(clockid_t, struct timespec *)配合使用,其中:第一个参数clockid_t,时钟类型:CLOCK_REALTIME 统当前时间,从1970年1.1日算起CLOCK_MONOTONIC 系统的启动时间,不能被设置(和单片机启动后开始计时类似)CLOCK_PROCESS_CPUTIME_ID 本进程运行时间CLOCK_THREAD_CPUTIME_ID 本线程运行时间第二个参数获取的时

2021-02-05 16:03:47 2090 1

原创 电脑远程访问连接树莓派

1.概述PC和树莓派在同一局域网下,可以使用putty、vnc等工具远程控制树莓派,前提是需要知道树莓派IP;广域网可使用teamviewer。2.树莓派和PC在同一个路由器产生的局域网下查到树莓派IP的办法:1.登录到路由器的后台,查看树莓派的IP;2.使用Network Scanner扫描局域网内的设备;(树莓派的网卡mac地址一般以字母d开头)。3.树莓派网线直连PC进入PC的CMD,输入arp -a可以看到此时PC连上了一个Wifi,分配得到的IP为192.168.0.113。设置

2021-01-28 17:01:01 4431

原创 Mavlink Generator的安装与使用教程

Mavlink Generator的安装与使用教程1.Mavlink Generator介绍Mavlink Generator可以根据xml格式的消息生成可供调用的库。其中xml文件中定义的为枚举类型和消息负载(Mavlink Frame中payload),Mavlink Generator会自动生成各种语言的解析和封包函数库,用户只需关注并设计消息负载即可。Mavlink Generator为一个python脚本,其运行需要python环境,并且,需要python中的future包。Python2

2021-01-22 22:32:03 2440 2

原创 QT在MainWindow中加载qml界面,并实现简单交互

QT在QWidget中加载qml界面本文简要介绍在QWidget中加载qml文件,并通过信号与槽实现双向交互。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展...

2019-12-19 14:08:35 3459 5

一款基于Qt的跨平台开源串口调试助手EasySerial

串口调试助手在调试串口设备是非常适用的一个工具,在Windows有很多很好用的串口调试助手,但是在Linux系统上好像还没找到一个好用的带界面的软件(用命令行调试的工具还是有很多的),但是总感觉没有那么方便使用。因此基于Qt良好的跨平台特性,开发一个跨平台简易的串口调试助手,满足基本的串口调试需求。最后开源分享出来。目前实现的功能有: 1. 搜索串口设备; 2. ASCII/HEX接收; 3. 接收数据保存到txt; 4. ASCII/HEX发送; 5. 周期发送; 6. 读取txt发送; 7. 收发字节计数; 源码在Window系统,Qt5.12.1环境下编写,并在树莓派上的Raspbian上进行跨平台测试。

2022-05-26

一个基于Qt5.12开发的Ftp客户端,使用了QFtp类。

在Qt5.12环境下,使用QFtp类开发的一个Ftp客户端。QFtp类在Qt 5以上的环境编译见https://blog.csdn.net/qq_43015524/article/details/122674300

2022-02-06

使用Qt开发的轨迹回放软件源码。嵌入百度在线地图,读取csv运动数据,绘制动态轨迹

使用Qt5.12.1开发的轨迹回放软件源码。软件嵌入百度在线地图,读取csv格式的机器人运动数据,在地图上动态绘制出机器人的运动轨迹。回放速度可灵活调节。申请一个百度地图开发平台密钥即可使用。

2022-01-25

MainWindowAndQml.rar

使用Qt在Mainwindow界面使用QQuickWidget控件加载Qml文件,并实现MainWindow和Qml的简单交互

2019-12-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除