news 2026/5/11 9:52:39

作业四:独立按键+数码管实操

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
作业四:独立按键+数码管实操

文章目录

  • 1.测试代码照片
  • 2.流水灯视频
  • 3.独特按键视频(点亮4个灯)
  • 4.独立按键视频(思考点亮8个灯)
  • 5.数码管显示“00000”或者“111111”(照片或者视频)![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/78374bddd2164097abe1e278944d3e40.jpeg#pic_center)
  • 6.数码管显示“123456”(照片或者视频)
  • 7.数码管显示“11.12.13”(照片或者视频)
  • 8.数码管显示“HH8800”(照片或者视频)

1.测试代码照片

2.流水灯视频

流水灯

#include<reg51.h>#defineucharunsignedcharuchar a;voiddelay(unsignedinttime){unsignedinti,j;for(i=0;i<time;i++)for(j=0;j<120;j++);}voidmain(){P1=0xfe;while(1){a=P1;a=a<<1;a=a|0x01;delay(200);if(a==0xff){a=0xfe;}P1=a;}}

3.独特按键视频(点亮4个灯)

VID_20260510_142313

#include<REGX51.H>sbit KEY1=P3^4;// 按键连接sbit KEY2=P3^5;// 按键连接sbit KEY3=P3^6;// 按键连接sbit KEY4=P3^7;// 按键连接sbit LED1=P1^0;// LED连接sbit LED2=P1^2;// LED连接sbit LED3=P1^4;// LED连接sbit LED4=P1^6;// LED连接// 延时函数voiddelay_ms(unsignedintms){unsignedinti,j;for(i=0;i<ms;i++)for(j=0;j<123;j++);}voidmain(){P0=0xFF;// 初始所有LED熄灭(因低电平点亮)while(1){if(KEY1==0)// 按键按下[[{delay_ms(10);// 消抖if(KEY1==0)// 再次确认按下{while(!KEY1);// 等待按键松开,防止连发LED1=~LED1;// 控制小灯}}if(KEY2==0)// 按键按下{delay_ms(10);// 消抖if(KEY2==0)// 再次确认按下{while(!KEY2);// 等待按键松开,防止连发LED2=~LED2;// 控制小灯}}if(KEY3==0)// 按键按下{delay_ms(10);// 消抖if(KEY3==0)// 再次确认按下{while(!KEY3);// 等待按键松开,防止连发LED3=~LED3;// 控制小灯}}if(KEY4==0)// 按键按下{delay_ms(10);// 消抖if(KEY4==0)// 再次确认按下{while(!KEY4);// 等待按键松开,防止连发LED4=~LED4;// 控制小灯}}}}

4.独立按键视频(思考点亮8个灯)

mm

5.数码管显示“00000”或者“111111”(照片或者视频)

6.数码管显示“123456”(照片或者视频)

7.数码管显示“11.12.13”(照片或者视频)

8.数码管显示“HH8800”(照片或者视频)

#include<reg52.h>#defineucharunsignedchar#defineuintunsignedintsbit dula=P2^6;// 段选锁存器sbit wela=P2^7;// 位选锁存器// 数码管段码表:0~9 + Huchar code TableDula[]={0x3F,// 00x06,// 10x5B,// 20x4F,// 30x66,// 40x6D,// 50x7D,// 60x07,// 70x7F,// 80x6F,// 90x76// H 新增:字母H的段码};// 位选:第1~6位数码管uchar code TableWela[]={0xfe,// 第1位0xfd,// 第2位0xfb,// 第3位0xf7,// 第4位0xef,// 第5位0xdf// 第6位};// 延时函数voiddelay(uchar x){uchar j;while(x--){for(j=0;j<125;j++);}}voidmain(){uchar i;// 6位数码管显示:H H 8 8 0 0uchar displayData[6]={10,10,8,8,0,0};// 不需要小数点uchar pointFlag[6]={0,0,0,0,0,0};while(1){for(i=0;i<6;i++){P0=0x00;dula=0;wela=0;// 选中第i位数码管P0=TableWela[i];wela=1;wela=0;// 输出段码P0=TableDula[displayData[i]];dula=1;dula=0;delay(2);}}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/11 9:51:36

Rusted PackFile Manager (RPFM):全面战争模组制作的终极利器

Rusted PackFile Manager (RPFM)&#xff1a;全面战争模组制作的终极利器 【免费下载链接】rpfm Rusted PackFile Manager (RPFM) is a... reimplementation in Rust and Qt6 of PackFile Manager (PFM), one of the best modding tools for Total War Games. 项目地址: http…

作者头像 李华
网站建设 2026/5/11 9:49:50

终极鼠标优化指南:如何让普通鼠标在macOS上超越苹果触控板

终极鼠标优化指南&#xff1a;如何让普通鼠标在macOS上超越苹果触控板 【免费下载链接】mac-mouse-fix Mac Mouse Fix - Make Your $10 Mouse Better Than an Apple Trackpad! 项目地址: https://gitcode.com/GitHub_Trending/ma/mac-mouse-fix 还在为macOS对第三方鼠标…

作者头像 李华
网站建设 2026/5/11 9:48:34

基于Nostr协议构建去中心化AI社交网络:clawstr实战指南

1. 项目概述&#xff1a;一个基于Nostr协议的AI智能体社交网络最近在捣鼓AI智能体&#xff08;Agent&#xff09;相关的项目&#xff0c;发现一个挺有意思的开源工具&#xff0c;叫clawstr。这名字听起来有点怪&#xff0c;但它的定位很清晰&#xff1a;一个基于Nostr协议构建的…

作者头像 李华
网站建设 2026/5/11 9:47:14

升级到 Claude Opus 4.7?这 5 个Prompt 改法不做等于白升级

上周&#xff0c;有个用户问我一个很扎心的问题&#xff1a; "我升级到 Opus 4.7 已经一个月了&#xff0c;为什么感觉和 4.6 没什么区别&#xff1f;听说 4.7 更聪明&#xff0c;但我没感觉到啊。" 我问他&#xff1a;"你改过 Prompt 吗&#xff1f;" …

作者头像 李华
网站建设 2026/5/11 9:43:36

Sunshine配置终极指南:从零开始打造完美游戏串流体验

Sunshine配置终极指南&#xff1a;从零开始打造完美游戏串流体验 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine Sunshine是一款强大的自托管游戏串流服务器&#xff0c;让你在任何…

作者头像 李华
网站建设 2026/5/11 9:40:34

避震不是“越硬越好”:拆解阻尼、弹簧与预载的黄金三角法则

在改装领域&#xff0c;“避震越硬操控越好”几乎成了一条默认的“铁律”。不少玩家升级绞牙避震后&#xff0c;第一反应就是将阻尼旋钮拧至紧&#xff0c;以“颠”为荣&#xff0c;仿佛不如此便无法体现硬核姿态。但Cornerspeed必须指出一个被长期忽视的工程事实&#xff1a;刚…

作者头像 李华