自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (10)
  • 收藏
  • 关注

原创 Github profile Readme实现小游戏[github自述游戏]

Github profile Readme常用于个人主页介绍,将它与action自动化流程结合,可以实现一些小游戏例如:2048、五子棋。

2024-03-29 23:43:32 562

原创 泉盛UV-K5/K6全功能中文固件

UVK5中文固件

2023-11-19 13:13:25 5298 3

原创 自制摩斯电码连接器【CW-LINK】

大前天考了业余无线电A证,在网上疯狂补习,初中也接触过摩斯电码,对摩斯电码发报产生了浓厚的兴趣,看到B站一老哥做了一个连接器,功能大致如下:用于发摩斯电码的设备分为手键和自动键手键按下去就是信号,短按发" . " 长按发 " - "自动键有两个按钮,按下一个发" . " 按另一个发 " - "1.可以将手键/自动键信号转换为电脑上的HID键盘输出,然后使用各种软件练习2.可以将自动键信号转为手键信号输出3.蜂鸣器LED灯根据发报内容声光提示4.电脑上用串口助手实现自动发报。

2023-11-07 11:53:33 211

原创 智能车图像处理去畸变+逆透视教程

图像处理,去畸变与逆透视整合

2022-10-29 22:45:32 6124 4

原创 智能车图像处理去畸变教程

对于镜头而言,畸变是一种十分常见的现象,。对于镜头而言,同等条件下一般度数越大,视野越广,所造成的畸变也越严重。本文介绍了一种便捷去畸变法

2022-10-14 17:57:42 3354 6

原创 OPENCV相机标定+去畸变

将相机标定测量内参矩阵、畸变系数与去畸变返回无畸变图融合。使用时修改dir为存放图片的文件夹名称。修改board_size为行列的角点数。建议目录下存放多几张图片进行去畸变。

2022-09-25 22:44:41 1191

原创 MacOS使用clion配置mounriver 工具链

在macOS上配置mounriver studio工具链

2022-08-26 20:49:50 1603 9

原创 17届智能车-多车编队寻光测距

17届智能车-寻光测距

2022-08-14 11:34:39 2446 9

原创 智能车图像处理逆透视教程

智能车逆透视上位机以及详细教程

2022-08-13 14:52:42 16880 73

原创 直立车串级与并行PID结合

速度环->角度环->角速度环->PWM1转向角度环->转向角速度环->PWM2MOTO_OUT_LEFT=PWM1+PWM2MOTO_OUT_RIGHT=PWM1-PWM2

2021-10-28 17:21:26 6796 3

原创 中值滤波改进

按照:https://blog.csdn.net/aoamca84802/article/details/101811895的思路取中值时半径为三,改进后比一般bfptr算法快20倍以上以下代码模拟3e7次运算并输出时间,时间在40ms内#include "bits/stdc++.h"using namespace std;#define num_type intnum_type a[9],Max1, Max2, Max3, Med1, Med2, Med3, Min1, Min2, M

2021-08-20 17:45:07 873

原创 OPENCV二值化改进

效果图:左上角为原图,左下角为简单处理,右上角为效果图#include<opencv2/opencv.hpp>#include<iostream>using namespace cv;using namespace std;bool flag = false;Mat image,result;int val1, val2, val3;int solve(Mat &result);void mouse_call_back(int event..

2021-08-18 19:34:46 274 1

原创 OPENCV图片批量更换文字

团支书最头疼的事情莫过于假期收截图,例如当前的“暑假十课”,总有人久催不交看这图片上交的模板,通过改变右上角名字就能做到偷天换日,那么一个班近30,十课一共300张图片,人工肯定是不现实的,但是OPENCV给我们提供了很好的环境。方法:先采集RGB值,设置文字颜色阀值,然后将其与背景融合,再自行更换添加。#include <sys/stat.h>#include "opencv2/opencv.hpp"#include "bits/stdc++.h"#include .

2021-08-18 14:13:48 1207

原创 opencv鼠标取样+灰度简单二值化

鼠标右键取样,作为灰度分界线进行最简单的二值化处理效果图:#include<opencv2/opencv.hpp>#include<iostream>using namespace cv;using namespace std;bool flag = false;Mat image;int val1, val2, val3;void mouse_call_back(int event, int x, int y, int flags, void *..

2021-08-17 22:19:18 202

原创 正态分布滤波

滤波前:滤波后:double bei=2;double average(int a[],int cnt);double StandardDeviation(int a[],int cnt);int judge_point(int a[],int cnt);double StandardDeviation(int a[],int cnt){ double sum=0; double ave=average(a,cnt); for(int i=0;i&...

2021-07-18 13:49:21 612

原创 利用call与ret实现段内子函数

CALL 标号:1.指令加载进指令缓冲器2.(IP)=(IP)+3(CALL 标号所占字节)3.(SP)=(SP)-24.IP的值入栈((SS)*16+SP)=(IP)5.IP跳转至标号行偏移地址6.执行CS:IPRET1.指令加载进指令缓冲器2.(IP)=((SS)*16+SP)3.(SP)=(SP)+24.执行CS:IP程序设计结构:ASSUME CS:CODE,SS:STACKSTACK SEGMENT ;建立栈空间 ......

2021-06-21 23:25:33 103

原创 使用汇编在屏幕上打印字符

以下代码在piASSUME CS:T17,DS:DATADATA SEGMENT DB 'HELLO WORLD!'DATA ENDST17 SEGMENTSTART: MOV AX,DATA MOV DS,AX MOV CX,25 MOV AX,0B800H MOV ES,AX MOV BP,0HS: MOV DX,CX MOV CX,12 MOV SI,0 MOV BX,0S0: MOV AL,DS:[BX] MOV AH,02H.

2021-06-20 21:14:22 1689

原创 实验7 寻址方式在结构化数据访问中的应用

ASSUME CS:T13,DS:DATA,ES:TABLEDATA SEGMENT ;YEAR db '1975','1976','1977','1978','1979','1980','1981','1982','1983' db '1984','1985','1986','1987','1988','1989','1990','1991','1992' db '1993','1994','1995' ;MONEY dd 16,22,382,1356,2390,8...

2021-06-19 15:47:59 137

原创 STM32-输入捕获实验

原理简介:如图,假定定时器初始为向上计数模式,t1~t2 时间,即为测量的高电平时间测量方法:首先,设置定时器通道 x 为上升沿捕获,于是在 t1 时刻,就会捕获到当前的 CNT 值。然后立即清零 CNT,并设置通道 x为下降沿捕获。到 t2 时刻,又会发生捕获事件,得到此时的 CNT 值,记为 CCRx2。计算方法:CNT计数的次数等于: N*ARR+CCRx2,有了这个计数次数,再乘以 CNT 的计数周期,即可得到 t2-t1 的时间长度,即高电平持续时间。实验方..

2021-05-31 20:03:31 709 2

原创 STM32 PWM模板

感谢PWM,让模拟信号的实现不用再拖着一个大盒子,还要忍受磁场、温度等环境带来的极大误差的影响。通过导通时间的改变,从而实现稳压电源输出的改变,可以实现输出模拟信号void pwm_init(u32 arr, u32 psc){ GPIO_InitTypeDef GPIO_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_OCInitTypeDef TIM_OCInitStructure; RCC_

2021-05-27 21:17:01 191

原创 STM32看门狗

简介:“看门狗”如其名,即检测软硬件故障,当出现错误无法及时,响应时自动复位种类:1.独立看门狗 2.窗口看门狗独立看门狗(IWDG):IWDG由一个独立的低速时钟(LSI)驱动,主时钟发生故障时,其仍能正常工作故IWDG 最适合应用于:能够完全独立工作,并且对时间精度要求较低的场合。主要特性:● 自由运行递减计数器● 时钟由独立 RC 振荡器提供(可在待机和停止模式下运行)● 当递减计数器值达到 0x000 时产生复位(如果看门狗已激活)功能说明:向关键字寄..

2021-05-15 22:12:29 292

原创 STM32-矩阵键盘(中断)

原理矩阵键盘在其中3列加上低电平,第x列加上高电平,当检测到第y行出现低电平,说明x行y列有按键按下执行上述步骤四次,就可以准确知道那个键位按下中断原理行的GPIO设置输入,上拉(不输入时默认高电平)列的GPIO设置推挽输出,初始化低电平行GPIO对应LINE5~8,使用中断服务函数EXTI9_5_IRQHandler当中断产生,先判断是哪一根中断线,再开始逐列扫描注意:不要把多个GPIO映射到同一个中断线上,但多条中断线可以对应一个中断服务函数实现GPIO.

2021-05-12 16:51:20 4687 2

原创 STM32F407-中断笔记

NVIC中断优先级管理中断优先级分组:STM32F407系列把中断分为5个组:(0~4)对0-4每个中断设置一个抢占优先级和响应优先级值(值越小优先级越高)且第n个分组来说,有n位抢占优先级(值0~2^n-1)和4-n位响应优先级(值0~2^(4-n)-1)抢占优先级:高抢占优先级可以打断低抢占优先级响应优先级:抢占优先级相同时,先执行相应优先级值高的事件;若抢占优先级相同,响应优先级高的事件要等正在执行的低响应优先级执行完后执行。中断优先级分组函数(一般放在main

2021-05-09 20:08:46 1073

原创 STM32F407-GPIO笔记

浮空输入:I/O口无输入时不确定上拉输入:I/O无输入时输入高电平注:上拉电阻的电源电压小于等于单片机的电源电压下拉输入:I/O无输入时输入低电平模拟输入:I/O模拟信号直接输入开漏输出:控制输出低电平时引脚接地;控制输出高电平时,若上拉,输出上拉电阻的电源电压,若下拉,输出低电平推挽输出:当IO口为低电平时接地,IO口为高电平时直接输出STM32电源电压,这种方式可以不接上拉电阻。...

2021-05-08 18:42:47 2289

原创 2021.4.25ACM校内选拔

总结了一下,水平不够,练得太少,反应不够快,面对题目背后的数学问题没能很好的转化。A题:黑白球再复习一下中学知识因为每次可以选A或者B,每次也就是会有两条分支,第n次A球的个数应该满足树状,与杨辉三角符合首位对称,第n次期望就是#include "bits/stdc++.h"using namespace std;int main() { double n; scanf("%lf", &n); printf("%.5lf", 1 + n * 0.

2021-04-28 17:34:59 254

原创 DFS基础入门

DFS思想:通过迭代递归进行搜索要点:1.注意搜索的初始条件 2.搜索的结束条件 3.确定下层搜索入口 4.重复判断例:N数中选K数和为质数#include "bits/stdc++.h"using namespace std;int k, n;int num[20], a[20];//num用来储存选中的数int ok = 0;bool is_prime(int a) { //质数判断 if (a =...

2021-03-21 11:43:28 412

原创 中缀表达式转化为后缀表达式

运算规则具体操作如下:1》遇到数字,直接将其输出。2》遇到运算符,且栈顶元素优先级低于当前运算符优先级,则我们将其放入到栈中,遇到左括号时我们也将其放入栈中。3》遇到运算符,且栈顶元素优先级高于当前运算符优先级,则弹出栈中元素,直至栈空或栈顶元素优先级低于当前运算符优先级。再将遇到的运算符压入栈中。4》只有在遇到" ) "时弹出" ( ",其他情况不弹出" ( "," ( "只弹出并不输出。5》如果遇到一个右括号,则将栈元素弹出,将弹出的操作符输出直到遇到左括号为止。6》如果我们

2021-02-26 23:08:18 111

原创 C语言-栈模版

要实现逆波兰表达式+高精度字符串的计算器,栈必不可少C语言缺少各种数据结构库,于是写了一个栈这里的ElemType是栈中元素的类型,我要存放的是长度很大的字符串指针,所以用的是char*别的情形下更改,即可实现各种类型的栈#include<stdio.h>#include<stdlib.h>#include<malloc.h>#include<string.h>#define stack_staIZE 500typedef cha

2021-02-24 18:31:38 233

原创 离散化+树状数组

树状数组log(N)的良好性能广泛适用于大数据的区间和修改,例如代码仓库查询通过构建A[i]和C[i]对数据进行树状修改A[i]:储存数据C[i]:存放了A[0]~A[i]的和,C[x]母节点为C[x+lowbit(x)]#define lowbit(x) (x&(-x))单点修改&&更新后缀和:void add(int x,int k){ for (; x <= 200; x += lowbit(x)) c[x]+=k;}查询前缀

2021-02-22 12:46:48 1352 2

原创 stm32高精度计算器

寒假作业要交一个电子计算器过考核,这就很烦人。关于计算器,怎么说我stm32平台也不能太寒酸,该有的功能都得有,借鉴CASIO fx-991es计算器(CAS功能就不考虑了),做出升级,最长显示串N百,计算结果2*N百位以上但是小数点后的浮点计算,符号判断,各种函数识别,语法错误判断,格式转换实属不易,还有自然输入(过难,日后研究)keil5反人类编辑器,先用gcc+codeblock在电脑上模拟,移植到stm32时再对数据类型进行替换更加恶心的是,用厂家自带的驱动,无法使用C++编译,更改

2021-01-30 23:57:47 1314 2

原创 STM32F4定时器中断理解

作用:1.使用定时器可以替代延延时函数,延时函数占用CPU。2.定时器计算固定脉冲,时间可准确计算:公式: Ft=168Mhz/4*时钟分频 Tout(us)=((arr+1)*(psc+1))/Ft(Mhz) arr:自动重装载值 psc:定时器分频 (分频系数) //-1为参考手册要求 Ft:定时器时钟频率 Mhz例: 定时器时钟84Mhz,8400分频,500重装值 Tout=(8400*500)/84M=0.05us=500ms 500ms定时器溢出一次

2021-01-27 21:59:08 3169

原创 Bugku CTF Reverse.7 逆向入门

https://ctf.bugku.com/challenges/detail/id/118.html

2020-12-17 16:07:55 183

原创 Bugku CTF Reverse.5 Easy_vb

真-Easy_vb拖进IDA直接出答案flag{MCTF{_N3t_Rev_1s_E4ay_}}

2020-12-17 13:06:26 152

原创 Bugku CTF Reverse.4 游戏过关

题目:https://ctf.bugku.com/challenges/detail/id/116.htmlIDA打开无壳1.SHIFT+F12打开string窗口2.ALT+T查找flag3.双击查看该字符串的内存地址

2020-12-17 12:30:00 285

原创 联想拯救者R7000安装ubuntu20.04,解决GTX1650驱动问题

其实挺简单的,没网上的那么复杂1.先进BIOS使用独显模式2.启动后安全模式进入系统3.更新软件源(清华源里带NVIDIA驱动,略)4.安装显卡驱动(建议安装440)sudo apt install nvidia-driver-4405.安装窗口管理器 (lightdm或者gdm3)个人推荐gdm3,方便换壁纸sudo apt install gdm36.重启,正常进入系统7.检查安装是否成功若成功,设置-关于-图形应该会出现NVIDIA或者终端输入nvi

2020-12-16 20:01:21 1644 1

原创 联想R7000 Ubuntu解决触摸板失灵

该BUG在论坛上有讨论并已解决网址:https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1887190/+index?comments=all必要文件下载:https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1887190/+attachment/5422428/+files/i2c-hid_standalone.zip1.下载后解压并make$ make2.将得到的i2c-hi

2020-12-14 12:03:54 4107 19

原创 解决联想R7000安装Ubuntu后快捷键无法调节亮度问题

此处联想拯救者搭载的是AMD R7 4800H的CPU以及NVIDIA GTX1650显卡,笔记本在Windows下表现良好,但是在Linux环境下,问题百出。例如在安装好独显闭源驱动后,虽然使用一切正常,可以流畅运行CSGO等游戏,但是笔记本自带的Fn+F5 ,Fn+F6的功能键失灵,无法调节亮度,但是依然显示调节。两者亮度没有差距。但是如果在nvidia-settings中调整,发现明显有用,但是这样调整十分不方便,每次都要先打开nvidia-settings。通过对nvidia

2020-09-08 22:14:58 5271 7

MacOs M1 mounriver 工具链openocd

mounriver studio 官网上的macos M1 openocd存在问题,此为修复版本

2022-08-26

图像处理逆透视、去畸变上位机以及代码

# RUBO-UDIPM github:https://github.com/wu58430/RUBO-UDIPM 提供了能同时完成去畸变与逆透视或去畸变+逆透视图像处理的上位机软件 请为下载和使用此软件的每个用户阅读以下内容: RUBO UDIPM遵循GPLv3协议,是开源的。 仅用于竞争、学习和交流,不用于商业或付费教学目的!!!!!!! 特别鸣谢 华北电力大学(保定)欧 da jun 广东工业大学 刘 jun fan 安徽财经大学 陈 xin yun 山东农业工程学院 刘 hao xiang 哈尔滨工程大学 17届东北林业大学智能车战队 感谢TWU的兄弟提供的测试集,希望作为透视变换最快速度的指针映射法能够帮助更多队伍在智能车竞赛上大放光彩

2022-08-13

cncalc论坛开源计算器Arithmax模拟器

为cncalc论坛开源计算器Arithmax(AMEV3)的模拟器

2022-05-10

DAC输出正弦波.zip

使用DAC输出正弦波50~20Khz

2021-07-21

50~20KHz方波发生器.zip

50~20KHZ方波输出

2021-07-19

EASYX绘制精美时钟.zip

使用EASYX图形库,C++,VS2017环境绘制的表盘

2021-06-05

修复联想R7000亮度调节.zip

适用于UBUNTU系统下R7000无法调节屏幕亮度问题

2021-05-13

R7000触摸板失灵修复.zip

适用于UBUNTU系统下R7000触摸板失灵修复

2021-05-13

Fx-9860中文阅读器.zip

包含两个中文阅读器,可调整字体,文本搜索,设置标签,跳转

2021-05-13

STM32计算器.zip

STM32计算器,支持输入正则式,除零检测,括号匹配,左移右移

2021-05-13

STM32电子锁.zip

基于STM32F407开发

2021-05-13

高精度浮点正则计算器.zip

支持高精度浮点计算,部分语法错误自动检测纠正,支持+ - * / ( ) 左移 右移

2021-05-13

空空如也

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

TA关注的人

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