自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 代码规范模板

自用–代码规范模板

2021-01-01 14:53:17 237

原创 74hc165 编程注意事项

OE)来实现数据的串行输入、并行输出。在时钟信号的驱动下,数据逐位地从串行输入引脚SER进入寄存器。每次时钟上升沿到来时,数据都会向左移动一个位,移出的最高位进入级联器或下一个移位寄存器。74HC165 的工作原理基于移位寄存器的设计。它通过四个输入引脚( SER, SRCLK, RCLK,

2023-11-13 21:53:08 649

原创 Qt中各个编译器的作用

qmake : 把pro文件编译成makefile文件,然后可以调用make命令。moc:元对象编译器,将含有Q_OBJECT的头文件转换成标准.h文件。rcc:资源编译器,将.qrc文件转换成qrc_*.h文件。uic:UI编译器,将.ui文件转化为ui_*.h文件。

2023-06-24 15:45:21 708

原创 stm32 flash读保护失效问题

stm32 flash可以设置三个级别的读保护,实现读保护以后,flash将不可以从外部读取,如果想再次烧录代码,需要解除保护,解除读保护也可以使用代码,例如在代码中添加触发机制,比如串口收到某个特殊字符,则调用函数解除读保护。又或者使用软件,依然还是STM32 ST-LINK Utiltity,操作过程和打开读保护一致,只不过在选择等级的时候选择Level 0,则会将flash上的数据全部擦除,接着就可以重新烧代码。读保护、关闭保护代码实现在调试代码前,需要先了解怎样擦除读保护(isp\jlink\

2023-02-25 17:57:38 678

原创 六种常用滤波算法代码实现及效果

总结一下比较常用的一些数据滤波算法,一阶算法可以算是比较基础,通过基本的原理可以引出其他多阶算法或者组合算法。

2023-02-25 17:11:59 18349 21

原创 关于串口调试线延时问题的解决方法

使用后发现延时很高,数据接收时都是一坨一坨的,经过排查,才发现是驱动没设置好,ft232rl 芯片是FTDI设计的,芯片驱动有个延时计时器 ,默认是16ms ,当数据量过多时,在没有结束帧的情况下,驱动层认为数据帧还未传输完成,就会将其放在缓冲区,等到数据满或者空闲时才能从接口取出。注意:每次重新启动或者设备重新连接后将会重置默认值,并且早期的FTDI 芯片可能不能支持小于2的值。因为项目需要,在linux端写了上位机与单片机板进行串口通讯,为了数据稳定性,换了232串口线。型号:FT232RL。

2022-11-15 01:07:47 2972

原创 ubuntu 18.04安装 ros melodic提示: 有一些软件包无法被安装。如果您用的是 unstable 发行版...解决方法

sudo apt install ros-melodic-desktop-full正在读取软件包列表... 完成正在分析软件包的依赖关系树 正在读取状态信息... 完成 有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件包尚未被创建或是它们已被从新到(Incoming)目录移出。下列信息可能会对解决问题有所帮助:下列软件包有未满足的依赖关系: ros-melodic-desk

2021-12-27 00:11:03 2056 2

原创 vmware 15中 linux ubuntu 18.04配置静态ip方法

vmware 15中 linux ubuntu 18.04配置静态ip方法

2021-12-26 23:40:25 1095

原创 电机控制-H 桥电路 控制方式简单解析

声明:本片文章来自互联网,侵删电机控制-H 桥电路 控制方式简单解析什么是H桥一. 开关状态1.1、正转1.2、反转1.3、调速二. 停止状态2.1 第一种停止方式2.1 第二种停止方式什么是H桥H桥是一个比较简单的电路,通常它会包含四个独立控制的开关元器件(例如 MOSFET),它们通常用于驱动电流较大的负载,比如电机,至于为什么要叫H桥(H-Bridge),因为长得比较像 字母H,具体如下图所示这里有四个开关元器件 Q1 , Q2 , Q3 , Q4 ,另外还有一个直流电机M, D1.

2021-08-01 15:35:26 7944 2

原创 关于ws2811单片机控制方式的总结

关于ws2811单片机控制方式的总结芯片简介控制方式注意事项芯片简介ws2811 是一款rgb led 灯控制芯片,能够通过io 信号,将数据转成控制信号,进而实现各种颜色的设置rgb灯珠采用共阳方式控制,芯片通过di 与do 实现级联,因为内部实现了整流电路,所以能够提升级联的长度以及稳定性,通过输出rgb pwm信号进而实现灯颜色的控制控制方式di 引脚为控制信号输入引脚,通过输入一定时序规则下的数据,可以同时控制多栈灯理论上只要能够实现 0码与 1码 即可生成可以控制的数据

2021-07-19 01:15:00 15223 6

原创 内联函数变量问题

内联函数本质是代码展开,关键字inline。目的是为了解决宏定义时参数类型检查的问题,当条件允许时,内联函数会在编译时展开,相当于“宏定义” 的作用内联函数内变量的生命周期只存在于函数体内,用法于函数一致。内联函数的展开与否根据编译器的评估策略来决定是否进行调用点展开,不展开时,当作普通函数处理。...

2021-06-25 01:19:59 324

转载 stm32f407/stm32f405 Pinouts and pin description

stm32f407/stm32f405 引脚以及引脚描述

2021-05-05 15:46:13 1866

原创 c /c++注释规范

良好的注释习惯不仅可以提升代码阅读体验,也能减少不必要的误解,保证开发的效率以及工程的稳定一般来说注释可以这样// 单行注释/** 多行注释*//*** 多行注释*/第三种与第二种的区别在于它可以支持语法规则,在一些编译器上根据注释里的特殊字符串可以做到提示功能或者语法高亮,例如Doxygen是一种开源跨平台的,以类似JavaDoc风格描述的文档系统,完全支持C、C++、Java、Objective-C和IDL语言,部分支持PHP、C#。鉴于Doxygen良好的注释风格,故基

2021-04-29 20:53:14 1769

原创 ubnutu18.04 apt 命令之 Could not open lock file

在使用linux 安装软件时显示失败,使用apt-get 命令时显示如下原因有其他进程正在占用 apt-get 命令解决1. 杀死相关进程命令跑起来,找出这个进程,kill这个进程!ps -aux | grep "apt"sudo kill PID(进程编号)检查是否还有apt进程:ps -e | grep apt再试试sudo apt-get 命令2. 重新配置文件sudo rm -rf /var/lib/dpkg/locksudo rm -rf /var/cache.

2021-04-11 14:36:27 896

转载 STM32 串口1+DMA接收不定长数据

串口1配合DMA接收不定长数据(空闲中断+DMA接收)1、空闲中断和别的接收完成(一个字节)中断,发送完成(发送寄存器控)中断的一样是串口中断;2、空闲中断是接收到一个数据以后,接收停顿超过一字节时间 认为桢收完,总线空闲中断是在检测到在接收数据后,数据总线上一个字节的时间内,没有再接到数据后发生。也就是RXNE位被置位之后,才开始检测,只被置位一次,除非再次检测到RXNE位被置位,然后才开始检测下一次的总线空闲。一次RXNE位被置位只进行一次。实现思路:采用串口1,并配置成空闲中断模式且使能DM

2021-04-07 20:24:12 995

原创 shell-printf无法打印内容

linux shell 中, printf 由 POSIX 标准所定义,因此使用 printf 的脚本比使用 echo 移植性好。printf 使用引用文本或空格分隔的参数,外面可以在 printf 中使用格式化字符串,还可以制定字符串的宽度、左右对齐方式等。默认 printf 不会像 echo 自动添加换行符,我们可以手动添加 \n。printf 命令的语法:printf format-string [arguments...]$ echo "Hello, Shell"Hello, She

2021-03-24 23:16:27 733

原创 浅谈struct存放不同类型数据

结构体存放数据方式主要可以分为三种1.多种类型成员变量并存声明2.数据指针3.内嵌联合体各种方式各有千秋1.多种成员声明方式typedef struct { int a; double b[10]; char c;}Sdata;//使用Sdata stest; stest.a=1; stest.b[0]=1.1; stest.c='c';这种声明可以同时存放不同类型的数据,比较方便,使用时需要注意结构体内存存放方式,灵活性不高。

2021-03-23 18:20:15 1032

原创 stc52单片机物联网咖啡机实现

这个是18年的老项目了,整理电脑时发现的,都快忘记有这么个东西了,分享一下。没啥技术含量,资料基本都能在网上找到,就不仔细讲了。这里主要是对一款咖啡机进行改造因为当时正在学习51单片机,我的方案也是低成本+实用性,主要有以下几点:原来是lcd 段码屏->lcd 液晶屏重新打设置控制电路,在原来程序的功能上增加温湿度、声音提示3.增加物联网功能(这里主要是接入的机智云平台),实现温度报警app 查看咖啡机状态,预约等(时间关系这个当时是半成品,不做展示)首先是分析相关的咖啡机工作原

2021-03-17 21:43:22 1028 2

原创 基于mpu6050穿戴式传感器的机器人控制实现与反思

以前的东西了心血来潮,想做一个无线控制机器人的低成本方案,先上效果图思路如下在这里插入图片描述

2021-02-10 21:37:23 544 1

原创 C# 自写的一个串口机器人上位机

用于控制舵机组,因为某些未知品牌的舵机并没有相关的机器人调试软件,所以自己仿照市面上的软件自己做了一款上位机,功能如下:串口控制,将角度速度等参数明文显示出来并存于文本将动作分为动作组与动作帧,并且可以编辑调整参数命令写死了(懒),在代码中,需要换通讯协议时要修改代码emmm内嵌通讯协议(部分)上位机截图...

2021-02-10 00:17:31 429

原创 stm32f103zet6示波器 野火2.8英寸液晶显示屏上显示

建议示波器,采样后显示再液晶屏上,通过按键改变显示效果(频率、波幅单位值)本程序使用的是野火生产的2.8寸tft液晶屏幕,液晶的内部包含了一个型号为ILI9341的液晶控 制器芯片,该液晶控制器使用 8080 接口与单片机通讯, 图中液晶面板引出的 FPC 信号线即 8080 接口(RGB 接口已在内部直接与 ILI9341 相连),且 控制器中包含有显存,单片机把要显示的数据通过引出的 8080 接口发送到液晶控制器,这 些数据会被存储到它内部的显存中,然后液晶控制器不断把显存的内容刷新到液晶面板,

2021-02-09 23:58:35 3065 11

原创 stm32f103vet6 单片机信号发生器

产生方波,正弦波,三角波、锯齿波、噪音,可调波形该信号发生器用了PA0、PC13、PA7、PA6、PC4作为按键中断引脚,然后PB5、PB0、PB1作为RGB的低电平引脚,使用stm32f103vet6的内部自带的DAC将数字信号转成模拟信号,PA4作为输出通道。效果图...

2021-02-09 23:20:37 2080

转载 ubtech及某宝黑舵机分析-转载

几年前找到的资料了,觉得挺不错的,遂分享原文链接舵机协议

2021-02-09 22:46:04 1496 7

转载 优必选 UBT12HB舵机说明书

2021-02-09 22:25:48 3494

转载 stm32f103xxx(增强型)-模块框图及管脚图

STM32F103xx增强型模块框图STM32F103xx增强型VFQFPN36管脚STM32F103xx增强型LQFP100管脚STM32F103xx增强型LQFP64管脚STM32F103xx增强型BGA100管脚

2021-02-03 17:32:22 1417

原创 c# diy单词默写软件 (半成品源码)

在背单词的时候,很多时候都希望能够检查一下自己的熟悉程度,希望有一个能够根据自己背的单词进行听写的软件。主要想的功能能自定义单词组能够根据自定义的单词组设置随机听写默写能够导出默写文档,方便打印纸质版默写,加深印象找了很久,都没找到适合的,所以花几个小时自己写了一个,虽然只弄了一部分(没有弄语音),但还是能够实现根据自己的单词进行听写默写。截图(红叉部分)没弄语音部分是因为有很多软件有这种功能,也是自己懒得做,偷个懒自己的单词手动输入进文本,tab键分隔中英文,名称按照数字命名,我的是

2021-01-25 22:06:15 812

原创 linux下shell解释器 c实现

目录要求完成情况代码截图要求(1)要求实现的基本命令包括:pwd //显示当前所在目录的路径名list <目录名> //列出指定目录名中的所有目录及文件chadir <目录名或路径> //改变当前工作目录makedir <目录名> //新建目录deldir <目录名> //删除目录exit //退出命令解释程序(2)可选做的扩

2021-01-20 18:35:52 518

原创 纯c实现计算器 支持 +-*/%^(源码)

最近有些无聊,整理了以前的代码,添加了取模以及幂运算,之前的代码链接C+栈实现中缀转前、后缀并计算(四则计算器)+源码主要功能支持浮点计算支持 加减乘除 取模 幂运算支持括号以及括号嵌套较宽松的数据格式,比较符合书写规范 (例如-5+(-5))返回多种错误类型代码涉及:栈,结构体,联合体,链表主要分为几个文件栈文件(处理栈),链表文件(处理链表以及计算和转换)1.1 头文件 errorCode.h 定义异常类型#ifndef _ERROR_CODE_H_#define

2021-01-19 19:57:21 551

原创 vs2019中 关于typedef struct语法检的异常

vs 中偶尔会遇到一些语法检查上的异常这类异常通常是语法检查”认为“你的语法是正常的,但是编译器又不通过,然后就会出现一堆莫名其妙的error,这类error会给你错误的”错误提示“,让人很难定位到真正的错误。比如//栈节点typedef lNode *pNode;typedef struct lNode { elementData data; elementKind kind; pNode next;}lNode;这么写的时候,界面处没有提示错误,但是编译不.

2021-01-17 01:05:21 2410

原创 typedef 在 c/c++中 几种声明struct的区别和影响

typedef 用来声明新的数据类型,利用编译器来实现类型安全检查基本结构为typedef 原类型 新类型typedef int uint32typedef struct student stu //student 是已经声明好的类型。 //stu 是通过typedef 新声明的类型在c 中,不加typedef时,声明结构体类型主要有3种struct Student{ int data;};//常规型,使用时直接struct S

2021-01-16 00:15:39 287 1

原创 c-泛型栈的实现

作为素质练习,仅作参考,转载请标明出处链接本文代码实现内容链栈结构同一个栈中能够入栈不同类型,不同大小的数据代码头文件LStack.h#ifndef _LSTACK_H_#define _LSTACK_H_/************************************************************ Copyright (C), 1988-1999 FileName: LStack.h 2021.01.02 Author:hzp .

2021-01-15 18:02:17 180

原创 java-简单的五子棋(说明文档)

gitee源码链接目录概述程序概要设计文件结构程序主流程图程序结构(略写)1. class ChessPinal2. class 水波背景3. class 棋盘4. class Chess5. class 计时器6.class 数据程序详细设计模块1 游戏主界面模块1.1 ChessPinal模块1.2 计时器功能模块2 动态水波背景模块2.1 水波背景模块2.2 波纹扩散算法模块2.3 背景的paintComponent模块3 棋盘界面模块3.1 棋盘的paintComponent模块

2021-01-14 17:37:47 559

原创 c-简单的模拟餐厅管理系统(说明文档)

gitee源码链接目录概述程序概要文件结构程序流程图程序程序源程序模块设计说明模块2-1:文件检查函数模块2-3:数据保存函数(举例)模块3-1.1:树查找模块3-2.2:数组排序函数(举例)模块3-2.3:输入控制函数(举例)模块3-2.4:字符串比较函数模块4-1:注册账号函数模块4-2:点菜函数程序使用说明概述程序概要文件结构程序流程图程序程序源程序模块设计说明模块2-1:文件检查函数模块2-3:数据保存函数(举例)模块3-1.1:树查找模块3-2.2:数组排序函

2021-01-14 15:45:28 357

原创 快速访问github

仅仅解决访问速度问题,测试有效clone 问题可以试试gitee方法之一:修改host文件系统:win10时间:2021.1.13步骤1. dns 查询找到响应速度较低的ip地址查询工具网址举例:http://tool.chinaz.com/dns需要查询网址:github.comassets-cdn.github.comgithub.global.ssl.fastly.net2. 修改host文件以文本方式打开路径:C:\Windows\System32\drivers.

2021-01-14 00:38:45 2169 3

原创 数据库+c# 简易学生宿舍管理系统 (说明文档)

简单的数据库操作,增删改查

2021-01-10 23:52:21 2603 11

原创 c 模拟atm(说明文档)

来自古老世界的小实践,自挖坟、立碑目录一. 引言二.程序结构三.程序流图四. 程序源程序模块设计说明

2021-01-10 22:33:31 266

原创 小故障学习之 - SSD 写入放大

今天用着电脑,突然黑屏后重启,出现reboot and select proper boot device…第一反应是硬盘硬件坏了,实际有很多种可能系统更新后bios被修改–>进入bios修改相关参数磁盘引导分区损坏 ->修复引导分区硬盘损坏 或者主板损坏系统硬盘是256g 的m2 ,进入bios后识别不盘(p0、p4 两个m2口都识别不到)酒精擦拭后解决问题,故障初步诊断->金手指老化或接口松动,不用破财了,开心为了更进一步确定固态情况,用了两款软件查看固态信息

2021-01-07 15:18:27 3462

原创 google编程规范 在线版

Google编程命名规范(中文版)国内网站Google 开源项目风格指南 (中文版) 在线阅读最新版本Google 开源项目风格指南 (中文版) github开源项目

2021-01-01 18:27:59 383

原创 几种常见的命名法

文章目录驼峰(大驼峰、小驼峰)下划线匈牙利Google c/c++ 命名规范驼峰(大驼峰、小驼峰)驼峰命名比较常见于windows平台编程,这样的变量名看上去就像驼峰峰一样此起彼伏,采取此命名方法能够比较清楚地识别变量名含义,有较高的可读性和识别性小驼峰法(camel)第一个单词以小写字母开始第二个单词或后面每一个单词首字母大写例如myParam、myFunctionName大驼峰法(Upper Camel Case)也叫 帕斯卡命名法(pascal)每个单词首字母大写常用于类

2021-01-01 16:51:40 2571 1

原创 C+栈实现中缀转前、后缀并计算(四则计算器)+源码

以栈结构来实现四则计算器中缀表达式转后缀计算原理

2020-12-27 10:39:01 703

STM32F407xx封装.pdf

STM32F407xx封装.pdf

2021-05-05

c模拟atm.zip

c模拟atm.zip

2021-02-12

C# 串口机器人上位机.zip

用于优必选某一款舵机控制舵机组动作

2021-02-10

stm32f103zet6 示波器.zip

用了野火的2.8寸tft 显示屏 显示波形 可以按键调节显示量程

2021-02-10

stm32f103vet6 信号发生器.zip

可生成方波、正弦波、锯齿波、三角波、杂音,频率波幅可调

2021-02-09

c#单词默写软件(自写)免费下载

vs2019 工程文件 最终生成docx文件 可以打印纸质版

2021-02-02

纯c实现计算器 支持 +-*/%^

支持浮点计算 支持 加减乘除 取模 幂运算 支持括号以及括号嵌套 较宽松的数据格式,比较符合书写规范 (例如-5+(-5)) 识别多种错误类型

2021-01-19

空空如也

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

TA关注的人

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