【51单片机LCD1602显示矩阵键盘原始键值】2023-6-1

缘由https://ask.csdn.net/questions/7955623

#include "reg52.h"
sbit  LCD1602_RS = P3^5;//RS端数据命令选择(H/L)
sbit  LCD1602_RW = P3^6;//RW端读写选择(H/L)
sbit  LCD1602_EN = P3^7;//EN端使能信号上升沿25ns
void PanDuan1602(/*LCD1602忙判断*/)
{ LCD1602_RS = 0;/*根据规定,RS为低电平,RW为高电平时,可以读状态*/LCD1602_RW = 1;P0 = 0xFF;while(P0 & 0x80){LCD1602_EN = 0;P0 = 0xFF;LCD1602_EN = 1;}
}
void Xie_MinLin_ShuJu(unsigned char MinLin_ShuJu,bit XZ)/*LCD1602写入8位命令/数据函数*/
{unsigned char y=0;PanDuan1602();/*忙则等待*/LCD1602_RS = XZ;LCD1602_RW = 0;while(++y<47);//地址建立时间P0 = MinLin_ShuJu;/*写入命令*/LCD1602_EN = 1;/*拉高使能端 数据被传输到LCD1602内*/LCD1602_EN = 0;/*拉低使能以便于下一次产生上升沿*/
}	
void Xie_String(unsigned char *ShuJu,unsigned char w,bit x)/*LCD1602写入8位字符串数据子函数*/
{Xie_MinLin_ShuJu((x?0xC0:0x80) + w, 0);//1表示第二行0表示第一行     while (*ShuJu != '\0') Xie_MinLin_ShuJu(*ShuJu++, 1);         
}
void LCD1602ChuShiHua(/*LCD1602初始化子程序*/)	   
{LCD1602_RS = LCD1602_RW = LCD1602_EN = 0;Xie_MinLin_ShuJu(0x38, 0);/*显示模式设置16*2显示,5*7点阵,8位数据接口*/ Xie_MinLin_ShuJu(0x06, 0);/*显示光标移动设置读写一字节后地址指针加1*/Xie_MinLin_ShuJu(0x0C, 0);/*显示开及光标设置*/Xie_MinLin_ShuJu(0x01, 0);/*显示清屏*/
}
unsigned char JianPanShaoMiao(/*使用行列反转扫描法*/)
{    unsigned char H=15,L=240;static unsigned char Ys=0;P1=15;if(P1!=15&&++Ys==0){        H=P1;P1=240;L=P1;while(P1!=240);}P1 = 255;return (H+L);
}
void main()
{//缘由https://ask.csdn.net/questions/7955623unsigned char jz=0,sj[8]={"   "};LCD1602ChuShiHua();Xie_String("Key Values:",0,0);Xie_String("HJ7447",4,1);while(1){jz=JianPanShaoMiao();if(jz!=255){sj[0]=jz/100+'0';sj[1]=jz/10%10+'0';sj[2]=jz%10+'0';Xie_String(sj,11,0);}}
}

unsigned char duli16()
{//缘由http://www.51hei.com/bbs/dpj-229608-1.htmlunsigned char jz=255;static unsigned char Ys=0;P1=239;if(P1!=239&&++Ys==0){jz=P1;while(P1!=239);}else P1=223;if(P1!=223&&++Ys==0){jz=P1;while(P1!=223);}else P1=191;if(P1!=191&&++Ys==0){jz=P1;while(P1!=191);}else P1=127;if(P1!=127&&++Ys==0){jz=P1;while(P1!=127);}P1 = 255;return jz;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1411100.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Webshell绕过技巧分析之-base64编码和压缩编码

在网络安全运营&#xff0c;护网HVV&#xff0c;重保等活动的过程中&#xff0c;webshell是一个无法绕过的话题。通常出现的webshell都不是以明文的形式出现&#xff0c;而是针对webshell关键的内容进行&#xff0c;混淆&#xff0c;编码来绕过网络安全产品&#xff0c;例如IDS…

docker系列9:容器卷挂载(下)

传送门 docker系列1&#xff1a;docker安装 docker系列2&#xff1a;阿里云镜像加速器 docker系列3&#xff1a;docker镜像基本命令 docker系列4&#xff1a;docker容器基本命令 docker系列5&#xff1a;docker安装nginx docker系列6&#xff1a;docker安装redis docker系…

百度地图推出「AI 导游」功能:限时免费 五一期间上线

​​​​​​ 分享一个AI工具、资料、课程资源平台&#xff1a;AI科技智库 百度地图推出了「AI 导游」功能&#xff0c;用户可以在景区使用手机打开百度地图&#xff0c;点击左上的「AI 导游」按钮即可使用。 这个功能可以提供智能讲解&#xff0c;根据用户的实时位置智能送景…

校园网访问云服务器IP地址大坑

问题 用云服务器配置入站规则时&#xff1a; 可以指定IP允许访问特定端口&#xff0c;比如说我就开放22和3306&#xff0c;但是千万别照搬网上的教程&#xff0c;把规则设置成0.0.0.0&#xff0c;就是允许所有IP访问的意思&#xff0c;我设置之后mysql就被删库勒索了。 然后想…

Golang | Leetcode Golang题解之第66题加一

题目&#xff1a; 题解&#xff1a; func plusOne(digits []int) []int {n : len(digits)for i : n - 1; i > 0; i-- {if digits[i] ! 9 {digits[i]for j : i 1; j < n; j {digits[j] 0}return digits}}// digits 中所有的元素均为 9digits make([]int, n1)digits[0]…

自动化滇医通

###我已经将数据爬取出来### 现在开源集合大家的思路一起研究 &#xff08;请更换ip 以及 暂停时间 不然会提示违规操作&#xff09; 脚本读取预约信息后开始随机抢一家的&#xff0c;qiang方法里面请自行修改抓包数据参数&#xff01;&#xff01; 现在开源大家一起讨论 pyt…

题目:吃奶酪

问题描述&#xff1a; 解题思路&#xff1a; 枚举每种吃奶酪顺序&#xff0c;并计算其距离&#xff0c;选择最小的距离即答案。v数组&#xff1a;记录顺序。 注意点&#xff1a;1. 每次用于min的s需要重置为0。 2. 实数包括小数&#xff0c;所以结构体内x,y为double类型。 3. 第…

【iOS】pthread、NSThread

文章目录 前言一、pthread 使用方法pthread 其他相关方法 二、 NSThread创建、启动线程线程相关用法线程状态控制方法NSThread 线程安全和线程同步场景 线程的状态转换 前言 五一这两天准备将GCD相关的知识完&#xff0c;同时NSOperation与NSThread、pthread也是相关知识&…

向量体系结构(4):多条车道内存组

笔记来源《计算机体系结构 量化研究方法》。 接着向量体系结构(2)讲&#xff0c;解决最后留下的问题中的两个问题 向量体系结构&#xff1a;向量执行时间-CSDN博客 &#xff08;1&#xff09;向量处理器如何实现每个时钟周期处理多于一个元素的能力? &#xff08;2&#x…

Hdfs小文件治理策略以及治理经验

小文件是 Hadoop 集群运维中的常见挑战&#xff0c;尤其对于大规模运行的集群来说可谓至关重要。如果处理不好&#xff0c;可能会导致许多并发症。Hadoop集群本质是为了TB,PB规模的数据存储和计算因运而生的。为啥大数据开发都说小文件的治理重要&#xff0c;说HDFS 存储小文件…

Echarts关系图的配置项,一文全解,一目了然。

一、什么是关系图 ECharts 是一个由百度开发的开源可视化库&#xff0c;用于创建丰富的交互式数据可视化图表。关系图&#xff08;Relationship Graph&#xff09;是 ECharts 中的一种图表类型&#xff0c;用于展示节点之间的关系和连接。 关系图通常用于展示复杂的网络结构&a…

2024年 Java 面试八股文——Mybatis篇

目录 1. 什么是Mybatis&#xff1f; 2. 说说Mybatis的优缺点 3. Xml映射文件中&#xff0c;都有哪些标签 4. #{}和&{}有什么区别 5. Mybatis是如何进行分页的,分页插件的原理是什么 6. Mybatis是如何将sql执行结果封装为目标对象并返回的&#xff1f; 7. Mybatis是怎…

vscode远程免密ssh原理与实操方法

什么是SSH SSH是一种加密协议&#xff0c;全称为Secure Shell&#xff0c;用于安全地远程登录到服务器或其他远程设备上执行命令或传输文件。它提供了一种安全的加密通信机制&#xff0c;使得远程登录和文件传输等操作不会被恶意攻击者窃取或篡改&#xff0c;确保了数据的保密…

5.3 进程间通信管道和共享内存

每次打开一个网页都是一个进程 进行管道之间通信的方式&#xff1a;以前学到的有可以在磁盘上开辟空间进行交互&#xff0c;也可以在内存中开辟缓冲区进行交互。 一定注意可读性 管道就是属于在内存中的一片缓冲区&#xff0c;管道可以在命令行中创建管道mkfifo也可以在vim中…

(优作)基于STM32蓝牙控制小车系统设计(硬件+源代码+论文)竞赛作品

基于STM32蓝牙控制小车系统设计&#xff08;硬件源代码论文&#xff09;竞赛作品 基于意法半导体与ARM公司生产的STM32F4 DISCOVERY开发板的集电机驱动模块、电源管理模块、stm32f4主控模块、蓝牙串口通信模块、android控制端模块。电机驱动模块使用了两个L298N芯片来驱动4路电…

基于SSM SpringBoot vue教务排课系统

基于SSM SpringBoot vue教务排课系统 系统功能 登录 个人中心 学生信息管理 教师信息管理 课室信息管理 班级信息管理 系别信息管理 专业信息管理 课程信息管理 选课信息管理 课表信息管理 开发环境和技术 开发语言&#xff1a;Java 使用框架: SSM(Spring SpringMVC Myba…

【Qt基础教程】QGridLayout与QFormLayout

文章目录 前言一、QGridLayout二、QFormLayout总结 前言 在Qt应用程序开发中&#xff0c;布局管理器是一种关键的技术&#xff0c;用于管理和安排窗口小部件的位置和大小。QGridLayout和QFormLayout是两个常用的布局管理器&#xff0c;它们分别适用于网格状和表单状的界面布局…

创新指南 | 围绕“获客、转化、增长”三要素,构建 PLG线上运营 体系

构建一个高效的 PLG线上运营 体系&#xff0c;对于任何希望利用产品本身优势推动业务增长的公司来说都是至关重要的。PLG模式通过产品本身的力量来驱动用户增长、促进转化并提升用户体验&#xff0c;从而实现自然而持续的增长。 一、PLG线上运营的整体框架和思路 PLG线上运营 …

百度网盘里的文件怎么打印?

在日常生活和工作中&#xff0c;我们经常需要打印各种文件&#xff0c;包括学习资料、工作报告、合同文件等。有时候&#xff0c;这些文件保存在百度网盘等云存储服务中&#xff0c;我们该如何方便地打印出来呢&#xff1f;今天&#xff0c;就为大家介绍一种便捷的方法——通过…

InfiniFlow 創始人兼CEO張穎峰確認出席“邊緣智能2024 - AI開發者峰會”

隨著AI技術的迅猛發展&#xff0c;全球正逐步進入邊緣計算智能化與分布式AI深度融合的新時代&#xff0c;共同書寫著分布式智能創新應用的壯麗篇章。邊緣智能&#xff0c;作為融合邊緣計算和智能技術的新興領域&#xff0c;正逐漸成為推動AI發展的關鍵力量。借助分布式和去中心…