8路抢答器(带倒计时)
倒计时
2023-09-14 08:56:48 时间
#include reg52.h //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 #define uchar unsigned char #define uint unsigned int sbit SPK=P1^2; unsigned char code seg[]={0,1,2,3,4,5,6,7}; unsigned char code dofly[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f, 0x77,0x7c,0x39,0x5e,0x79,0x71};//0-F uchar keyscan(); //键盘扫描 void play(); /******************************************************************/ /* 延时函数 */ /******************************************************************/ void delay(unsigned int cnt) while(--cnt); void delay1() int i,j; for(i=200;i i--) for(j=1000;j j--); /******************************************************************/ /* 主函数 */ /******************************************************************/ void main() uint gewei,shiwei,i,j,k,flag=1; uchar key; uint time=11; while(time--) //十秒倒计时 if(time==0) break; shiwei=dofly[time/10]; gewei=dofly[time%10]; for(j=0;j j++) //数码管动态扫描,只显示前两位 delay(300); P0=gewei; //段选 P2=1; //位选 delay(300); P0=shiwei; P2=0; for(k=5;k k--) //无源蜂鸣器响5声 for(i=0;i i++)//喇叭发声的时间循环,改变大小可以改变发声时间长短 delay(80); //参数决定发声的频率,估算值,可以自行更改参数并 SPK=!SPK; SPK=1; //喇叭停止工作,间歇的时间,可更改 delay(80); while(1) //8路抢答器抢答 key=keyscan(); //调用键盘扫描, if(key==0x7e) { P0=dofly[1],P1=0x00;play();} if(key==0xbe) { P0=dofly[2],P1=0x00;play();} if(key==0xde) { P0=dofly[3],P1=0x00;play();} if(key==0xee) { P0=dofly[4],P1=0x00;play();} if(key==0x7d) { P0=dofly[5],P1=0x00;play();} if(key==0xbd) { P0=dofly[6],P1=0x00;play();} if(key==0xdd) { P0=dofly[7],P1=0x00;play();} if(key==0xed) { P0=dofly[8],P1=0x00;play();} /*------------------------------------------------ 键盘扫描程序 ------------------------------------------------ */ uchar keyscan() //键盘扫描函数,使用行列反转扫描法 uchar cord_h,cord_l;//行列值中间变量 P3=0xf0; //行线输出全为0 P1=0xff; cord_h=P3 0xf0; //读入列线值 if(cord_h!=0x0f) //先检测有无按键按下 delay(100); //去抖 if(cord_h!=0x0f) cord_h=P3 0xf0; //读入列线值 P3=cord_h|0x0f; //输出当前列线值 cord_l=P3 0x0f; //读入行线值 return(cord_h+cord_l);//键盘最后组合码值 // return(0x00); //返回该值
800行代码实现春节倒计时与烟花祝福 春节就快要到了,在这里先祝愿大家,2022年,如虎添翼万事圆!吉祥如意平安年,开心快乐幸福年,喜气冲天幸运年,财源滚滚发财年,万事大吉顺心年,美满团圆喜庆年,愿君新年事事顺利,岁岁平安,年年如意!
智慧阿里云,点亮新里程 阿里云可以让使用者更方便,更直接的了解当今社会,让开发者在一些技术上需要解决的问题,阿里云的题库非常丰富,可以帮助我更好的学习知识,在这上面有很多之前想要找却没有找到的软件,同时,阿里云还有很多免费的福利供大家领取。阿里云,你值得拥有!
一起玩转树莓派(4)——用开关控制蜂鸣器发声 在本系列的前几篇博客中,我们使用桌面软件控制过红绿灯,也编程点亮过炫彩的3色LED 灯。在这些实验的过程中,相信你对树莓派GPIO引脚如何输出高低电平,以及如何使用PWM技术来控制电压输出等都有了了解。本篇博客,我们将再探索一些树莓派编程更多新鲜好玩的领域,来尝试使用硬件来控制硬件。
白天我在阿里写代码,入夜还有我的麦克风! 昨天下班,IT小哥过来神神秘秘地说,走吗?去酒吧听我唱歌。 说着往我手里塞了个手牌,自己往格子衬衫外面套个黑色皮衣,头也不回地走入夜色。 五新?原来他就是传说中那个白天写代码,入夜唱摇滚的“阿里汪峰”五新? ——啊,等等我啊喂! 推门进入前,我抬头看了看,霓虹招牌在夜色里闪烁: Happy Honey Badger (快乐的平头哥) 欸,这造型有点眼熟——欢迎来到阿里十派年度歌王总决选。