当前位置: 首页 > news >正文

网页链接成整体通过网站网站文章没有被收录吗

网页链接成整体通过网站,网站文章没有被收录吗,建设银行长清网站,seo的优化方案内容 按下S1-S16键#xff0c;对应数码管最左边显示0-F 矩阵按键简介 独立按键与单片机连接时#xff0c;每一个按键都需要单片机的一个I/O 口#xff0c;若某单片机系统需较多按键#xff0c;如果用独立按键便会占用过多的I/O口资源#xff1b;而单片机 系统中I/O口资…内容 按下S1-S16键对应数码管最左边显示0-F 矩阵按键简介 独立按键与单片机连接时每一个按键都需要单片机的一个I/O 口若某单片机系统需较多按键如果用独立按键便会占用过多的I/O口资源而单片机 系统中I/O口资源往往比较宝贵当用到多个按键时为了减少I/O口引脚引入了矩阵按键 以4*4矩阵键盘为例键排成4行4列第一行将每个按键的一端连接在一起构成行线第一列将每个按键的另一端连接在一起构成列线这样便一共有4行4列共8根线我们将这8根线连接到单片机的8个I/O口上通过程序扫描键盘就可检测16个键 用这种方法也可实现3行3列9个键、5行5列25个键、6行6列36个键甚至更多 无论是独立键盘还是矩阵键盘单片机检测其是否被按下的依据都是一样的也就是检测与该键对应的I/O口是否为低电平 独立键盘有一端固定为低电平此种方式编程比较简单而矩阵键盘两端都与单片机I/O口相连因此在检测时需编程通过单片机I/O口送出低电平 检测方法有多种最常用的是行列扫描和线翻转法 行列扫描法检测时可以看作是每次把一列当作独立按键来检测依次送一列为低电平其余几列全为高电平行全为高电平如果检测到该列有行电平变低即该列有按键按下就可以确定列然后立即检测该行哪列为低电平则可确定行这样我们就可确认当前被按下的键是哪一行哪一列的当然我们也可以依次将行线置低电平其余行列为高电平扫描列是否有低电平线翻转法就是使所有行线为低电平时检测所有列线是否有低电平如果有就记录列线值然后再翻转使所有列线都为低电平检测所有行线的值由于有按键按下行线的值也会有变化记录行线的值得到的行列值就是按下的按键 矩阵键盘也少不了按键消抖的环节 原理图 线路图 由线路图可知P17-14控制行P13-10控制列 思路 使用行列扫描法每次把一列当作独立按键来检测依次让每列为低电位如果某列有行变为低电位则该行和列即是按下的按键 注意消抖 编码 main.c /** Description: 矩阵按键-按下S1-S16键对应数码管最左边显示0-F*/ #include reg52.htypedef unsigned int u16; // 对系统默认数据类型进行重定义 typedef unsigned char u8;#define KEY_MATRIX_PORT P1 // 使用宏定义矩阵按键控制口#define SMG_A_DP_PORT P0 // 使用宏定义数码管段码口// 共阴极数码管显示0~F的段码数据 u8 gsmg_code[17] {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71};/*** description: 延时函数循环一次大约10us* param {u16} ten_us* return {*}*/ void delay_10us(u16 ten_us) {while (ten_us--); }/*** description: 使用行列式扫描方法检测矩阵按键是否按下按下则返回对应键值* return {u8} key的键值*/ u8 key_matrix_ranks_scan(void) {u8 key_value 0;KEY_MATRIX_PORT 0xf7; // 给第一列赋值0其余全为1if (KEY_MATRIX_PORT ! 0xf7) // 判断第一列按键是否按下如果有按键按下即其中有行变为低位则两边就不相等{delay_10us(1000); // 消抖switch (KEY_MATRIX_PORT) // 保存第一列按键按下后的键值{case 0x77:key_value 1;break;case 0xb7:key_value 5;break;case 0xd7:key_value 9;break;case 0xe7:key_value 13;break;}}while (KEY_MATRIX_PORT ! 0xf7); // 等待按键松开KEY_MATRIX_PORT 0xfb; // 给第二列赋值0其余全为1if (KEY_MATRIX_PORT ! 0xfb) // 判断第二列按键是否按下{delay_10us(1000); // 消抖switch (KEY_MATRIX_PORT) // 保存第二列按键按下后的键值{case 0x7b:key_value 2;break;case 0xbb:key_value 6;break;case 0xdb:key_value 10;break;case 0xeb:key_value 14;break;}}while (KEY_MATRIX_PORT ! 0xfb); // 等待按键松开KEY_MATRIX_PORT 0xfd; // 给第三列赋值0其余全为1if (KEY_MATRIX_PORT ! 0xfd) // 判断第三列按键是否按下{delay_10us(1000); // 消抖switch (KEY_MATRIX_PORT) // 保存第三列按键按下后的键值{case 0x7d:key_value 3;break;case 0xbd:key_value 7;break;case 0xdd:key_value 11;break;case 0xed:key_value 15;break;}}while (KEY_MATRIX_PORT ! 0xfd); // 等待按键松开KEY_MATRIX_PORT 0xfe; // 给第四列赋值0其余全为1if (KEY_MATRIX_PORT ! 0xfe) // 判断第四列按键是否按下{delay_10us(1000); // 消抖switch (KEY_MATRIX_PORT) // 保存第四列按键按下后的键值{case 0x7e:key_value 4;break;case 0xbe:key_value 8;break;case 0xde:key_value 12;break;case 0xee:key_value 16;break;}}while (KEY_MATRIX_PORT ! 0xfe); // 等待按键松开return key_value; }/*** description: 使用线翻转扫描方法检测矩阵按键是否按下按下则返回对应键值* return {u8} key的键值*/ u8 key_matrix_flip_scan(void) {static u8 key_value 0;KEY_MATRIX_PORT 0x0f; // 给所有行赋值0列全为1if (KEY_MATRIX_PORT ! 0x0f) // 判断按键是否按下{delay_10us(1000); // 消抖if (KEY_MATRIX_PORT ! 0x0f){// 测试列KEY_MATRIX_PORT 0x0f;switch (KEY_MATRIX_PORT) // 保存行为0按键按下后的列值{case 0x07:key_value 1;break;case 0x0b:key_value 2;break;case 0x0d:key_value 3;break;case 0x0e:key_value 4;break;}// 测试行KEY_MATRIX_PORT 0xf0;switch (KEY_MATRIX_PORT) // 保存列为0按键按下后的键值{case 0x70:key_value key_value;break;case 0xb0:key_value key_value 4;break;case 0xd0:key_value key_value 8;break;case 0xe0:key_value key_value 12;break;}while (KEY_MATRIX_PORT ! 0xf0); // 等待按键松开}}elsekey_value 0;return key_value; }void main() {u8 key 0;while (1){key key_matrix_ranks_scan();if (key ! 0)SMG_A_DP_PORT gsmg_code[key - 1]; // 得到的按键值减1换算成数组下标对应0-F段码} }编译和结果 按F7编译无错误生成.hex文件使用pz-isp将hex文件下载到单片机 结果按下S1-S16键对应数码管最左边显示0-F
http://www.pierceye.com/news/342121/

相关文章:

  • 网站如可引导客户义乌小程序开发制作公司
  • 环境设计排版素材网站周口市住房和城乡建设局网站
  • 建设部资质查询网站wordpress采集英文
  • 深圳北站设计方案高质量网站外链平台
  • 苏州做网站优化的公司国外 网站页面
  • 网站建设流程发布网站和网页制作鲜花网站建设论文百度文库
  • 建个人网站赚钱吗手机网站页面大小
  • php简单购物网站源码海口网红美食餐厅
  • 傻瓜式建站软件长沙做软件的公司
  • 旅行社营业网点可以做网站吗别人网站建设多少钱
  • 南宁设计网站建设教程网站建设
  • 柯城区住房和城乡建设局网站wordpress仿fe素材
  • 黄岛建设局网站用什么建设网站
  • 桂林dj网站郑州上海做网站的公司
  • 进入江苏省住房和城乡建设厅网站网络舆情监测 toom
  • 延安市建设工程交易中心网站seo网络营销推广优化
  • 网站一条龙服务教育类网站前置审批
  • 安徽省建设厅网站首页wordpress和typecho
  • 网站开发考试题torrentkitty磁力猫引擎
  • 如何把电脑改成服务器 做网站微信网站背景图片
  • 淘宝客网站建设详细教程链接交换平台
  • 外贸门户网站深圳网站制作开发排名
  • 如何建设一个稳定的网站photoshop网页制作视频教程
  • 企业网站建设合作合同28招商加盟网
  • 国外设计灵感网站WordPress数据库添加管理员
  • 山东省建设备案网站审批表免费设计手写签名
  • 家庭电脑做网站深圳罗湖网站制作公司
  • 聊城做wap网站服务有哪些做特卖的网站有哪些
  • wordpress後台建站flash美食网站论文
  • 网站服务器ip地址在哪里看用记事本做电影介绍的网站