自定义博客皮肤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)
  • 收藏
  • 关注

原创 蓝桥杯单片机小白的学习笔记(更新中)

小白的学习笔记参上!!点击我的蓝色字体去往我的笔记就行了,我来整合一下目录,方便大家一起交流准备*.1蓝桥杯的板子的初始化和蜂鸣器关闭1.流水灯流水灯学习2.独立键盘和矩阵键盘2.1 独立键盘2.2 矩阵键盘独立键盘练习时的插曲3.定时器与数码管3.1定时器的学习小白还在更新哦!...

2021-02-04 17:45:06 548 1

原创 小白的基础数据结构的学习(链接目录篇)

我最近在学习基础的数据结构,并在博客中详细介绍和c代码实现,特意放出目录链接来分享,希望大家一起进步:点击蓝色字体就可以看了哦1.链表1.1 链表之有头链表1.2 链表之无头链表1.3 链表之双向链表1.4 链表之双向循环链表2.栈2.1 栈之链式栈2.2 栈之数组栈2.3 栈之栈的寻路3.队列3.1 队列之链式队列3.2 队列之数组队列还在更新哦,小白已经够努力了...

2021-02-04 17:35:16 241

原创 我的第一次(滑稽)SCSS之旅——实现一下简单的手风琴式的图片展示

上个博客写了一下SASS的一些配置我现在来试试这个东西首先这个东西跟less比,功能只会强大不会比less$ 可以定义变量,可以在其中使用& 代表当前元素的父节点嵌套里面继续选择元素,代表是当前代码块(也就是一对花括号包括的一部分代码)的元素节点中的字节点钟选择新的节点,这点是跟less相似的那么就可以在代码块中有这种操作&::after 还有 &:hover 代表的都是当前代码块元素的一些新的特点悬停啊之类的那么我实现个简单的手风琴式的一个图片展示思路如下以横向的

2021-10-03 21:22:15 261

原创 SASS/SCSS安装与webstorm的SASS/SCSS的环境配置

sass的安装Ruby环境sass基于Ruby语言开发而成,因此安装sass前需要安装Ruby。(注:mac下自带Ruby无需在安装Ruby!)window下安装SASS首先需要安装Ruby,先从官网下载Ruby并安装。安装过程中请注意勾选Add Ruby executables to your PATH添加到系统安装完成后需测试安装有没有成功,运行CMD输入以下命令ruby -v//如安装成功会打印ruby 2.6.4p104 (2019-08-28 revision 67798) [x64

2021-10-03 20:38:57 1513

原创 Openc的基础数据类型(学习第二天)

OpenCV中的基础数据类型中有三大类别第一大类别是从C++中继承而来的基础数据类型(如int float等)包括数组,矩阵,可以来表示基础的几何概念如点,大小,矩形第二大类别是辅助对象,这类对象代表更抽象的概念,比如垃圾收集指针类,,数据切片的对象第三大类别是大型的数组类型,这类原本是涵盖数组或者一些原语、程序集或者更常见的数据类型,比如存储图片的cv::Matopencv 还会非常经常的使用stl的内容简单介绍cv::Vec<> 类,代表固定向量 cv::Matx<&

2021-09-03 22:20:06 1316

原创 虎牙弹幕器(自动发弹幕,导入导出文件,检测是否发出,自动化工具加虎牙人气)(具有图形化界面)

最近又个老板让我给他写个虎牙自动弹幕机,我利用pyqt还有webdriver进行了实现大致图是这样的:选择保存有一万个虎牙账号的cookie文件这里是展示导出文件这里是普通界面这是大致一些运行图下面开始发送弹幕是这样的下面是我开发期间遇到的问题如果发送弹幕还是利用的单线程,那么显然,这个主界面跟这个弹幕就发生了阻塞,显然就会发生卡顿,非常不友好,所以我利用了qt的QThread类继承下来实现了多线程控制下面是我的部分的代码截图,供大家学习和参考完整代码和程序(qq.8

2021-09-03 16:31:06 2976 19

原创 Django做网页后端之解决Ajax的请求异域问题

最近学习了Django的框架嘛,写项目的时候,想前后端分离,就用Django做后端,遇到了典型的跨域问题,那么我的前端实力不够强,也不会用Ajax来解决这个跨域问题,于是着手于Django后端解决这个问题,也就是让服务器能够识别跨域的请求首先我用个前端的测试界面,这是我最近写的一个简单的前端测试界面<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title

2021-08-25 11:55:28 255

原创 MySQL基本操作(二)

查询语句selete 语句select 字段1,字段2,…字段n from 表名 where [条件]查询所有字段所有记录select * from 表名;‘*’ 统配标识符 匹配所有记录查询(指定)部分字段的记录select 字段1,字段2,…字段n from 表名;查询符合条件的记录条件语句where= 等于!=/<> 不等于< 小于大于<= 小于等于= 大于等于between… and … 在…和…之间 也可以查询

2021-04-12 21:16:57 155

原创 MySQL基本数据类型

基本数据类型1.数据类型1).整数类型tinyint 1个字节 -128->127,0->255smallint 2个字节 -2^15->2^15 0->2^16-1;mediumint 3个字节 .......int 4个字节 .......bigint 8个字节 . ........2).浮点数类型单精度类型 float 4个字节 双精度类型 doubl

2021-04-12 20:27:00 124 1

原创 MySQL的基本操作

首先登上我们的mysql1.显示数据库show databases;创建数据库create database 数据库名;不要学我,养成好习惯,加分号查看数据的定义show create database 数据库名删除数据库(删库跑路)drop database 数据库名安全删除方式drop database if exists 数据库 ;这个我就不展示了删除数据库是不能恢复的,一定要做好备份,删除的时候一定要小心谨慎数据库的数据存放在根目录的data目录里,比如我的gou

2021-04-12 13:19:28 163 1

原创 MySql的安装与初始化(数据库学习的开始)

很久之前,程序用文件操作存储数据,现在多出了数据库的存储,让我们的数据存储更方便下面就是我的MySQL的安装过程,来分享给大家,我最近也是刚开始搞数据库学习,大家一起进步这个是mysql的官方下载地址点第二个即可下载完毕之后启动安装选择自定义安装选择自己安装的,由于我java和c++都会所以两个版本的都安装了点上右下角的这样能自己更改路径(我大意了,没有闪,就直接安装到c盘,c盘的固定路径是C:\Program Files\MySQL,安装好后能看到,一会要用到路径信息)点上show

2021-04-12 10:48:39 697 1

原创 QT ui编辑器的ui文件生成相应头文件

QT ui编辑器的ui文件生成相应头文件用ui编辑器去编辑窗口确实少很多代码的功夫,不过本人喜欢用自己桥的代码来实现但是苦于自己空间想象能力不好,于是 ,我想到 ,用ui编辑好,然后 ui文件编译成 头文件继续用第一将编辑好的ui文件放入一个文件夹第二打开cmdcd指令移动到刚才的目录底下然后指令uic xxxx.ui -o xxxxx.h 生成相应的头文件然后就可以把该头文件移动到自己想要的工程底下使用...

2021-04-08 20:04:13 1152

原创 QT中文乱码问题

最近要开发一个信息管理系统软件,参加中国计算机设计大赛的软件设计类,我想基于qt开发这个软件最近遇到的问题:中文乱码最显著我的问题:以下有四种解决方法第一种:加上#include <qtextcodec.h>#include "helloqt.h"#include <QtWidgets/QApplication>#include <qlabel.h>#include <qtextcodec.h> int main(int argc, ch

2021-04-05 22:09:19 341

原创 STC15F2K60S2.H头文件缺失问题

编译错误显示test1(1): warning C318: can’t open file ‘stc15f2k60s2.h’查找是否有头文件需要到keil安装目录下寻找stc15f2k60s2.h文件笔者的文件在该目录下:D:\keil4\C51\INC\STC显然是有的,但是编译仍然显示无法打开说明问题没有解决可能是没有指定头文件所在目录的路径打开你的keil4/5 点击project->options for target ‘target 1’->Include paths

2021-03-29 20:31:44 5304 1

原创 数据结构之无向无权图邻接表存储

在我的图的基本知识的博客中说到有两种存储方法,这个博客我来分享无向图的存储方式,邻接表法名字中有邻接两个字,实际上就是跟邻接顶点有关的方法,也就是把邻接顶点,以链表的方式接在其相应顶顶点数组对应位置的后面。如下图:大概就是这样。那么我们要实现这种结构我们需要什么:1.表示顶点的字符串。2.表示存储顶点的数组。3.实现存储邻接顶点的链表,实际意义也就是边的意思。4.数组也要有个指针指向其所带的链表。所以得出结论就是,一个带着指针的数据数组,好多个链表节点以其规则指针链接。好,我们来实现基础

2021-02-20 15:09:44 2146

原创 数据结构之图的矩阵法存储

上个博客讲过了图的基本概念后,我们来实现图的存储之一————有向图的矩阵法存储。首先我们来看以下有向带权图:这样的图适合用矩阵法来存储。分析一下我们需要的结构:二维数组,表示顶点的字符串,存储顶点的容器,表示定点数量,表述边的数量,边的指向向用向量坐标的形式,也就是坐标法表示(A,B)和(B,A)在二维数组中表示的概念是不一样的是一个道理。所以我们来动手操作一下:第一步:我先准备表示顶点的字符串和边的类型表示typedef char VertexType[4];typedef int VR

2021-02-20 13:46:26 790 1

原创 数据结构之图的概念

定义:图 (Graph) 是由若干给定的顶点及连接两顶点的边所构成的图形,这种图形通常用来描述某些事物之间的某种特定关系。顶点用于代表事物,连接两顶点的边则用于表示两个事物间具有这种关系。图论 (Graph theory) 是数学的一个分支,图是图论的主要研究对象。表达式:G=(V, E)V:顶点(数据元素)的有穷非空集合。E:边的有穷集合。Graph = (Vertex, Edge)四种图形式:无向无权图:顶点之间相连的线我们称为边,每条边都是无方向的,边无权值。有向有权图:顶点之间相

2021-02-19 21:30:05 382

原创 数据结构之二叉搜索树

前言:这个结构不难,但是删除的时候的逻辑思维难,建议这个博客配合着自己画图理解来实现你的二叉搜索树二叉搜索树的概念二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。两句话:左节点比根节点的关键值小,右节点比根节点的关键值大我决定用二元组来当作数据,一个是键值,

2021-02-18 23:34:17 175

原创 数据结构之堆(大顶堆)实现

这个博客总结一下二叉树的堆概念首先我们要了解堆是什么:堆其实就是用一维数组实现二叉树。(当然你要是用二叉链表来实现我也没办法,只不过很占内存罢了)堆是一种非线性结构,可以把堆看作一个数组,也可以被看作一个完全二叉树,通俗来讲堆其实就是利用完全二叉树的结构来维护的一维数组按照堆的特点可以把堆分为大顶堆和小顶堆大顶堆:每个结点的值都大于或等于其左右孩子结点的值小顶堆:每个结点的值都小于或等于其左右孩子结点的值完全二叉树的概念在我之前博客已经整理过了。这里不再论述但是既然是一维数组实现,且为完全二

2021-02-17 20:50:55 4127

原创 数据结构之二叉树之二叉链表树代码实现

上个博客整理了二叉树的基础知识,这里是链接:二叉树的一些基本知识了解到基本要点和基本结构后,我们来实现一下这个数据结构:首先我们得了解到这个数据结构的单体是什么样子的,他单体包括了数据和两个指向左右孩子的指针所以我们用结构体写出来这个二叉树节点:typedef struct treenode { char data; struct treenode* Lchild; struct treenode* Rchild;}TREE,*LPTREE;因为这个节点名字太长了,我就起个别名,这里要注

2021-02-14 20:46:16 1252

原创 数据结构之二叉树基本概念

二叉树的基本概念二叉树(Binary tree)是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。二叉树特点是每个结点最多只能有两棵子树,且有左右之分来自百度词条二叉树的基本形态:1.空的二叉树:其实就是指向空的指针2.只有根节点的二叉树:也就是一个指针指向一个节点,这个节点是根节点3.只有左子树和右子树:只有左子树和右子树(又称斜树,其实也就成了链表):如下图:

2021-02-13 22:21:09 1929

原创 数据结构之哈希表之跳表

上次写的博客总结了数组实现哈希表,这次总结一下链表实现哈希表。哈希表的基础知识在上次的数组实现哈希表里讲过了,这是链接:数组哈希跳表结构如下:那么我们来写它需要的结构体以及所需函数:先是数据类型的结构体:struct datatype { int first; char second[20];};这里跟数组哈希是一样的,一个是需要取余的键值,一个是存放的数据既然是链表结构,那么该有的链表节点我们得写一下,这个看我的数据结构专栏的帅哥都很熟悉,或者经常写链表的靓仔都很熟悉,所以直接上了:

2021-02-09 19:33:28 689

原创 数据结构之哈希表

哈希表的数组实现哈希表的概念:哈希,又叫做散列表,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。哈希两大重点:哈希映射(也就是确定哈希地址的函数):y(x)=F(x);比如y(x)=x;这是直接取址法;哈希地址不是真正意义上的地址,是抽象

2021-02-09 11:54:22 359

原创 数据结构之顺序表

顺序表(一直都不知道还有这玩意?)所以以下是来自百度百科:顺序表是在计算机内存中以数组的形式保存的线性表,线性表的顺序存储是指用一组地址连续的存储单元依次存储线性表中的各个元素、使得线性表中在逻辑结构上相邻的数据元素存储在相邻的物理存储单元中,即通过数据元素物理存储的相邻关系来反映数据元素之间逻辑上的相邻关系,采用顺序存储结构的线性表通常称为顺序表。顺序表是将表中的结点依次存放在计算机内存中一组地址连续的存储单元中其实我也不太懂,直到后来自己实现了一下这个结构,这貌似就是个容器的作用?相当于c++的v

2021-02-06 20:22:23 2285 1

原创 数据结构之优先队列(线性结构的优先队列,数组实现和链表实现)

优先队列(priority queue)普通的队列是一种先进先出的数据结构,元素在队列尾追加,而从队列头删除。在优先队列中,元素被赋予优先级。当访问元素时,具有最高优先级的元素最先删除。优先队列具有最高级先出 (first in, largest out)的行为特征优先队列是0个或多个元素的集合,每个元素都有一个优先权或值,对优先队列执行的操作有1) 查找;2) 插入一个新元素;3) 删除.在最小优先队列(min priority queue)中,查找操作用来搜索优先权最小的元素,删除操作用来删除该元素

2021-02-06 16:17:22 1990

原创 蓝桥杯单片机学习之动态数码管

继我的上一个博客数码管之后是动态数码管由于蓝桥杯的特殊设置,具体请看我的初始化解释,所以蓝桥杯的不同数字展示是和其他数码管有区别的,因为蓝桥杯的寄存器比较少,所以就是需要另一个知识来实现这个不同数字显现问题。那就是利用人眼视觉的暂留效应来实现这个功能也就是不停转换位选来显现不同位置上的数字,通过分流轮流控制各个数码管的com端,这就是动态驱动在一定时间范围内,尽管不是同时显示,但扫描足够快,给人印象就是一组稳定的数据。在我的数码管学习的博客上介绍了数码管的工作原理,我们也就不多哔哔,直接起飞~~~

2021-02-05 16:19:11 619

原创 蓝桥杯单片机学习之数码管

这里是我的数码管的学习笔记,欢迎大家一起进步数码管的初始化原理参照以下链接(本人写的博客)初始化原理请务必多看一下,里面还有关于P0口的一些信息那么看一下原理图,了解一下数码管的工作原理可以看到我所画的大致示意图,也就是Y6C控制com一系列引脚来选择要显示的数码管然后选择哪个灯管亮的是Y7C控制的abcdefg。也就是说,先用Y6C位选数码管,Y7C位选亮的数码管比如Y6C开启,P0=0xff,也就是选中所有的数码管展示然后Y7C开启,P01=0;所有的数码管的a管亮,也就是全是最上面

2021-02-05 13:36:35 1595 2

原创 蓝桥杯单片机的初始化原理和蜂鸣器关闭学习

之前看视频什么学习什么的,我总是靓仔疑惑哈,为什么P0等于什么什么,然后P2等于什么什么,然后就初始化好了,什么玩意,现在,我知道了原理蓝桥杯的单片机和别的单片机不同之处就是在于这个初始化程序的不一样,别的单片机一个IO口控制一个设备或者是有跳线帽能控制,但是蓝桥杯的不一样,它的P0口控制了led灯,数码管,蜂鸣器,等等,所以它的初始化程序写起来比较麻烦,下面是我关于这个初始化的笔记看我们的原理图:可以看到,我们蓝桥杯的板子上的led灯其实是M74HC573M1R控制的,要使用这个芯片需要Y4C的

2021-02-04 16:19:38 4098 7

原创 数据结构之数组队列

建立顺序队列结构必须为其静态分配或动态申请一片连续的存储空间,并设置两个指针进行管理。一个是队头指针front,它指向队头元素;另一个是队尾指针tail,它指向下一个入队元素的存储位置我的链式队列里面讲到,队列的概念和实现方式,现在我们来用数组实现:首先是比较麻烦的方法,但是是比较能理解的方法#include<stdio.h>#include<stdlib.h>const int MAX = 20;struct queue { int* queuem; //数组队列

2021-02-04 14:37:11 201

原创 数据结构之链式队列

我们今天来学习队列,这个博客我写的是链式队列首先我们来了解一下什么是队列队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。队列有两种实现方式,他跟栈极其相似,只不过他是先进先出,顾名思义,他就跟我们现实排队是一模一样的。跟栈一样,两种实现方式,一种是链式队列,一种是数组队列链式队列的实现方式就是无头链表的头删

2021-02-04 13:50:07 266

原创 蓝桥杯单片机定时器学习

矩阵键盘学习过了,该轮到定时器和中断程序设计了首先我来说一下51单片机的定时器的工作原理TMOD : 控制定时器的工作方式。8个bit,高四位 bit 控制 T1,、低四位 bit 控制 T0。因为定时器有4种工作方式;TMOD = 0x00(工作方式0),TMOD = 0x01(工作方式0),TMOD = 0x02(工作方式2),TMOD = 0x03(工作方式3)。以上是控制低4位的,所以是对应着T0。TR0:T0定时器 使能开关,TR0 = 1,开始工作; =0停止工作。ET0:T0定时器中断

2021-02-03 20:29:27 1448 1

原创 数据结构之利用栈寻路(深度优先搜索)

写完了栈的两种实现方式的博客,我们来看利用栈来寻路:栈的特性适合来存储路径坐标,并且撞墙后可以以栈的弹顶元素来实现回退功能,所以用栈来实现这个算法,我这里运用的是深度优先搜索思想了(虽然我没有特别明显的dfs函数,大佬请不要喷,本菜面对的是新手)首先我们绘迷宫肯定是二维数组实现了,但是存储这个点就需要结构体了所以我们来封装一下:struct point { int x; int y;};接下来用栈来存储路径struct point path[100];//存放路径int stacktop

2021-02-03 19:27:22 859 3

原创 数据结构之数组栈

写过了链式栈,我也提到了,有两种写栈的方法,剩下的就是数组栈数组可用于实现(有界)堆栈,如下所示。第一个元素(通常在零点偏移处)是底部,导致数组[0]成为被推到堆栈上的第一个元素,最后一个元素弹出。程序必须跟踪堆栈的大小(长度),使用一个可变的顶部记录到目前为止推送的项目数,从而指向数组中下一个元素要插入的位置(假设从零开始的索引约定)。因此,堆栈本身可以有效地实现为三元素结构。我们先看一些书上实现的数组栈:struct mystack { int* stackme;//整形指针用来开辟数组 in

2021-02-03 15:53:34 703

原创 数据结构之链式栈

链式结构我的博客已经写完了,那么我就开始栈的内容了,栈的结构非常简单就是后进先出的一种结构堆栈可以通过数组或链表轻松实现。在这两种情况下,将数据结构标识为堆栈的不是实现,而是接口:只允许用户将项目弹出或推送到数组或链表上,几乎没有其他辅助操作。这个博客我来实现链式栈,也巩固一下链表的写法:链表栈大概是这样子的:可以看到,使用无头链表就行所以我们做一下准备工作,也是我们之前写链表经常有的一些基础struct node { int data; struct node* next;};str

2021-02-03 14:41:55 344

原创 数据结构之双向循环链表

双向循环链表:就是在双向链表的基础之上把头节点和尾结点也用两个指针相互链接,形成一个环:结构我们懂了那么接下来开始我们的准备工作:#include<stdio.h>#include<stdlib.h>struct node { int data; struct node* left; struct node* right;};struct list { int size; struct node* headnode; struct node* tailno

2021-02-02 16:46:40 540 5

原创 蓝桥杯单片机学习之矩阵键盘

这里是我的矩阵键盘学习笔记,大一学生,希望共同进步,错误地方大佬指点一下先看原理图吧,只有了解怎么工作的,咱才能设计程序要使用矩阵键盘,就先吧J5跳线帽跳到key上面,也就是1,2上面,这样才是矩阵键盘模式接下来看这个是怎么工作的如图,P34表示第四列,P35表示第三列,P44表示第二列,P42表示第一列(IAP15F2K61S2芯片)P30表示第一排,P31表示第二排,P32表示第三排,P33表示第四排那么我们只需要监视他们的上电情况就行先写一个第二列按键的程序:#include "r

2021-02-01 22:05:09 9044 13

原创 数据结构之双向链表

讲过无头链表之后,双向链表就更好理解了它的大致结构是这样子的:那么就是设计一个结构体来表示节点,很多人都用front,next来表示,但是我觉得左右更适合这样的图来理解,重要的不是变量名而是实现功能,数据结构就是为了存取数据存在的,所以这个我觉得只要自己能理解,就行:struct node { int data; struct node* left; struct node* right;};我还用给我上一个数据结构的博客————数据结构之无头链表所用的结构体封装来表示,这样的结构利于我

2021-02-01 20:53:02 186

原创 数据结构之无头链表

数据结构之无头鱼 咳咳无头链表上次我介绍了有头链表,这次我来写无头链表,其中有两种形式——————1.二级指针 2.利用结构体封装第一种用二级指针:顾名思义,利用一个node指针来充当一个头,然后就不用创建新的链表,只需要一个指针指向链表开始的地方:struct node { int data; struct node* next;};struct node* creatnode(int data) { struct node* newnode = (struct node*)ma

2021-02-01 14:27:56 623 2

原创 音乐相册(程序员表白必备,或者生日礼物)(小白学习向)

啊,抱歉,本人是单身狗,呜呜呜废话少说,我来展示我的音乐相册的开发历程(也是为了更好的让你们学习)首先我先想好我要实现的功能1.音乐播放2.在某个位置显示字符串3.字符串组合成心形4.一个个字符串出现5.滚动6.贴图7.图片切换大概就是这么个顺序首先是音乐播放#include<Windows.h>#include<mmsystem.h>//一定要加Windows头文件#pragma comment(lib,"winmm.lib")int main(){

2021-01-31 17:50:46 458 1

原创 蓝桥杯单片机按键学习之独立按键

流水灯我们已经学过了,那么我们来学习行列式键盘的实现。我的依旧是IAP15F2K61S2芯片,建的工程是IAP89C52的首先要是写行列式键盘,请将J5跳线帽跳到2,3上,这样才是只有s4-s7起作用,我们来看原理图这样很清晰能看出来哪个引脚控制哪个,也就不用多讲如果按下s4那么P33为0,则能表示出来按键情况我们先来写一个程序,让s4按下后led灯全亮:#include "reg52.h"sbit P30 = P3^0;sbit P31 = P3^1;sbit P32 = P3^2;

2021-01-31 11:36:28 997 2

空空如也

空空如也

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

TA关注的人

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