自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (7)
  • 收藏
  • 关注

原创 Qt5-实现串口助手版“示波器”

一.前言闲了好久没更新博客,偷懒的我就拿了去年暑假备战电赛时做的一个串口版“示波器”来充充水。抛砖引玉哈。因为以前发过一篇主题一样的文章,所以就当该文就相当于上版的升级版(其实两者没啥关系,仅是主题一样,以前那篇是单纯为赛题弄的,这篇更有通用性)是当时为电赛准备的(吐槽一下,原本我组准备的电源题,怎么想着也会用上adc、pwm啥的吧,结果19年的A题一出来真是让我一言难尽啊)实现的功能有...

2020-02-16 18:57:50 3670 66

原创 驱动里调用I2c和Gpio,驱动里调用驱动

一. 简介来源:应项目需求,需将3个I2c和6个GPIO封装成一个驱动供上层应用层调用,遂有了此文。开发板:Halley2Linux版本:3.10.14开发环境:Manhattan(基于君正官方提供的开发环境,很好用)。经验:说实话,这是我第一个“正经”开发的驱动。二. 编写驱动前的准备先明确需求,3个I2c的设备地址和片上内存都为一个字节,6个Gpio分别为5输入1输出留给...

2019-12-05 12:55:46 508

转载 Vi快捷键总结大全

1. Vim的几种模式正常模式:可以使用快捷键命令,或按:输入命令行。插入模式:可以输入文本,在正常模式下,按i、a、o等都可以进入插入模式。可视模式:正常模式下按v可以进入可视模式, 在可视模式下,移动光标可以选择文本。按V进入可视行模式, 总是整行整行的选中。ctrl+v进入可视块模式。替换模式:正常模式下,按R进入。2. 启动Vimvim -c cmd file : 在打开...

2019-11-04 14:07:36 793

原创 总结几个Ubuntu(12.04、14.04、16.04、18.04、19.04)的iso下载地址

被官网下载的下载速度感动到了,遂总结了一下:(推荐中科大源,下载速度居然有10M/s,可能出现下载iso文件比预期的小,换个源试试)中科大源 http://mirrors.ustc.edu.cn/ubuntu-releases/阿里云开源镜像站 http://mirrors.aliyun.com/ubuntu-releases/北京理工大学开源 http://mirror.bit.edu...

2019-10-11 15:10:05 1416 1

原创 SecureCRT 简单配色和一些常规操作方式

前言. 皆于原本的SercureCRT的配色对本人来说简直辣眼睛,于是就有了下文。属抛砖引玉,可按自己需求来。一.下载并安装SercureCRT,这个百度一下就可以了,so easy.二.进行简单配色,先展示成果:先打开SecureCRT的会话设置再找到Terminal下的Emulation(参考下图设置)和Appearance,其实有很多选项,大家可以自己试试,适合自己的才...

2019-09-08 15:30:50 297

原创 stm32-硬件I2C的使用(以24C256举例)--基于HAL库和CubeMx

1.硬件清单stm32103c8核心板一块24C256DAP下载器(这个随自己的来)2.打开CubeMx,创建相关工程先是rcc和sys的配置I2C的配置,先说明I2C会有一个BUG,生成工程后可改。另外可配置串口,来观察是否通信成功时钟树的配置,就不啰嗦了,该怎么来就怎么来生成Keil 5工程3. 打开相关Keil 5工程先解决I2C的bugmai...

2019-08-01 10:35:55 3975

原创 stm32-利用stm32f334的Hrtim定时器创建多路互补pwm波--基于HAL和CubeMx

最近在用stm32f334,在此留个笔记有关f334的Hrtim定时器的高精度,大家可以自行百度,我就不做搬运工了。1.现在CubeMx中创建一个相关的工程,先是rcc和sys的设置2.HRTIM定时器的配置接着先配置时钟树再回到HRTIM定时器的配置中(图中的频率标错了,0太多没数清,实际是产生100kHZ)TimerB和TimerC与TimerA一样,就不贴图了生成项...

2019-07-23 21:10:57 6069

原创 stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库

1.开发板stm32f103c8系列,打开cubemx,选择单片机型号(实际可随自己的板子型号来)2.配置好相关rcc的HSE为外部晶振和sys的Debug模式其中sys的debug模式,我这里用的是DAP下载器,所以如下图,如果是其他下载器,建议自行百度如何选择。3.ADC的配置,实际按自己的需求来相关dma配置,这里模式选择循环,这就不需要每次调用相关函数去获取adc的值了。...

2019-07-23 09:30:59 20710 15

原创 初试--移植u8g2库到stm32

无独有偶来想来移植u8g2来玩玩硬件清单: stm32f334核心板一块(没用stm32f1是因为f1的排针焊反了,不好直插,f1类似) 0.96寸的Oled屏,为4线SPI连接 还有一个下载器DAP软件清单: keil5和cubemx先在cubemx创建一个相关的工程并生成代码,用软件模拟spi:(总览)然后去u8g2的githu...

2019-07-13 15:38:48 9404

原创 stm32-利用cubemx创建互补pwm---基于HAL库

1.打开CUBEMX,创建一个工程,我用的是stm32f407,这个随自己的板子型号来选,然后点击RCC,如图操作:2.点左边的Timers,我这里选用Tim1,实际可以随你自己的选,具体如图:3.进行Tim1的相关配置4.相关管脚的配置:5.时钟树的配置,这个没啥好讲的,根据自己的开发板来:6.项目名和存放位置(最好全英文,免得出现莫名其妙的错误):...

2019-03-21 18:44:03 13175 14

原创 Qt5-可视化九大经典排序算法(九)桶排序

本章依旧建立开始两篇文章的基础上(冒泡排序、插入排序的传送门)。介绍一下,本程序可视化条件已经在冒泡排序中实现完成,避免重复,就只需将剩下的排序算法函数实现下就可以了,另外在插入排序重新实现了随机生成数组数据rand函数(可生成不带重复的数据的放入数组中,让动图显得更好看点)先引用一下Wiki的介绍:桶排序(Bucket sort)或所谓的箱排序,是一个排序演算法,工作的原理是将阵列分到有...

2019-02-16 14:08:09 780

原创 Qt5-可视化九大经典排序算法(六、七、八)快速排序、基数排序、归并排序

本章依旧建立开始两篇文章的基础上(冒泡排序、插入排序的传送门)一.快速排序来自Wiki的介绍:Quicksort(有时称为分区交换排序)是一种O(N log N)有效 排序算法,用作按顺序放置数组元素的系统方法。由英国计算机科学家Tony Hoare于1959年开发[1]并于1961年发表,[2]它仍然是一种常用的排序算法。如果实施得当,它可以比其主要竞争对手快两到三倍,合并排序和堆垛...

2019-02-12 14:03:35 1845 1

原创 Qt5-可视化九大经典排序算法(三、四、五)选择排序、堆排序、希尔排序

有了前两篇文章的基础(冒泡排序、插入排序的传送门),到这里可以加快速度,就将这三个排序算法放在了一起写了,以免一篇文章字数过少。1.选择排序先引用下Wiki(或百度百科)的介绍:在计算机科学中,选择排序是一种排序算法,特别是就地 比较排序。它具有O(n^2)时间复杂度,使其在大型列表上效率低,并且通常比类似的插入排序更差。选择排序因其简单性而着称,并且在某些情况下具有优于更复杂算法的性...

2019-02-11 12:23:36 952

原创 Qt5-可视化九大经典排序算法(二)插入排序

本文将在可视化算法一(传送门)的基础上实现插入排序,其实就是多添加了一个实现插入排序的函数,再将Widget里的构造函数中的goBubble更换成goInsertion就可以了。先介绍一下插入排序,先给俩个官方介绍的传送门(百度百科和Wiki对插入排序的介绍)插入排序又可分为直接插入排序和折半插入排序,其中折半插入排序只是折半查找合适的位子。其实也可以结合扑克牌的理牌过程来理解。直接插...

2019-02-10 11:42:59 954

原创 Qt5-可视化九大经典排序算法(一)冒泡排序

先引用Wiki的介绍(链接在这):冒泡排序,有时也称为沉没排序,是一种简单的排序算法,它重复遍历列表,比较相邻的对,如果它们的顺序错误则交换它们。重复传递列表,直到列表排序。该算法是一种比较排序,以较小或较大元素“冒泡”到列表顶部的方式命名。虽然算法很简单,但即使与插入排序相比,它对于大多数问题来说太慢而且不切实际。如果输入大多是按顺序排列的,并且一些无序元素几乎就位,则冒泡排序可以是实用的。...

2019-02-09 13:42:20 3396 21

原创 Qt5-将手机上B站下载的视频提取到到电脑上并批量移动到指定文件夹和重命名

本人喜欢在B站上看视频,无奈B站的资源有时候会突然就没了,就会把那些好的资源下载到手机上,主要是PC端的B站貌似不直接支持下载,然后再传到电脑上。在PC端打开相关资源一看,全是数字命名,有用的资料全在JSON文件里。一个俩个还可以手动命名,这一下有几十个,就有点考验人了。遂想利用所学的Qt将其自动命名并移动到特定的文件夹里,而且那个视频的格式是blv的,一般播放器压根打不开,幸好我用的是PotPl...

2019-02-08 14:06:41 1120

原创 基于Qt5-将串口助手打造成“示波器”

有段时间,做电赛题的时候,在那看波形调PID参数,因为要同时观察电压和两路电流,无奈只有一台示波器,遂有一想法,将单片机采集的电流数据通过串口发送给上位机,然后在上位机上以波形的形式显示出来,方便观察。因为时间问题,都是现学现用,整体做的很简陋,只是实现了要用到的功能,还请选择性浏览。1.上位机是基于Qt5编写的,还用到了用于绘图第三方库--qcustomplot,具体使用可以百度,我这里...

2019-02-06 11:35:18 3837 5

原创 C++ 用一维数组加递归完成八皇后至N皇后的解答

先上代码,其中是用p[0]来存储当前符合的次数,基本思路就是一行一行寻找合适的位子,若本行没有则返回上一行,在上一行查找合适的位子。相对于用循环,递归的整体代码思路更清晰。//检查当前行上的皇后位子是否合理,是返回truebool Check(vector<int>&p,int line){ //当前行与前几行的皇后位子进行规则比较,判断当前行皇后位子是否合理...

2019-02-04 11:24:20 526 1

原创 在单片机上利用一个定时器和二行代码轻轻松松实现多任务的运行(基于时间片)

因为我常用的是stm32F4系列单片机,所以采用其滴答定时器作为时基定时器(如果你使用的单片机是别款,只要单片机上有个定时器都可以,另外也得有中断处理函数)(另外如果用的是stm32等单片机,片上具有滴答定时器,可以省掉1、2步骤,在HAL库下直接用HAL_GetTick()代替GetCount()即可,其他类似)1.首先初始化定时器,本人一般设置定时时间为1ms,这个可以是具体情况而定。...

2019-02-03 12:33:12 3265

原创 教你简单几步使用Qt5.12的多线程技术

本文只是讲解如何使用,并不讲解其中实现原理。1.首先在Widget或者其他你认为要用到地方包含相关的头文件(以下皆是在Widget下用)#include <QThread>#include <QDebug> //方便打印因Qt5的线程运用结合了信号与槽,这跟Qt4和C++本身的线程运用有点不一样。2.先添加一个自定义类,一定要继承QObject类或...

2019-02-03 11:52:47 2443

原创 在Qt上实现无边框效果,窗口的移动和关闭

先直接上代码setWindowFlags( Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint | windowFlags());setAttribute(Qt::WA_TranslucentBackground);第一个函数的第一个枚举数是表示置顶显示窗口,第二个是无边框显示,第三个是保留原来的窗口的一些标志。第二个函数就是就是部...

2019-02-02 21:19:37 1501 1

原创 在sublime text3中配置c/c++运行环境

在参考网上诸多大神配置sublime text3后,自己也想写一篇有关在sublime中配置c/c++的运行环境的文章,顺便总结一下。安装sublime text3:下载地址(官方地址):https://www.sublimetext.com/3当然这个,你也可以直接百度sublime text3就可以找到。安装MinGW:如果你电脑上已经安装了Code...

2018-02-09 17:38:22 18312 8

SecureCRT_v8.0+注册机.zip

SecureCRT_v8.0外加注册机,方便连接ssh和串口等连接,强大好用,易于个性化配置。

2019-09-08

基于51的智能频率计的设计,Proteus仿真和代码

单片机根据外界输入的脉冲信号来自动识别其频率,基于Proteus仿真

2019-08-01

stm32f103硬件I2C通信24C256,基于CubeMx

利用stm32F103自带的I2C与24C256模块通信成功,并解决硬件I2C的BUG。

2019-08-01

stm32f334的高精度定时器HRTIM产生三路互补pwm波

利用Stm32F334的HRTIM定时器产生3路互补PWM波,占空比可变

2019-07-23

STM32CubeMX_5-2-1.7z

Stm32CubeMx5.21下载,更友好的界面的和更便捷的操作。支持Linux、window、mac。

2019-07-17

基于Qt5-实现九大排序算法的代码汇总

本项目用C++中实现了冒泡排序、插入排序、堆排序、希尔排序、归并排序、基数排序、选择排序、桶排序、快速排序

2019-02-16

Proteus-基于51实现波形发生器

在Proteus,基于51单片机,实现一个波形发生器,可在三角波、方波、正弦波三种波形之间转换,可手动调节(用矩阵键盘实现按键输入效果)频率(1到400HZ)和幅度。

2019-02-10

空空如也

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

TA关注的人

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