iccavr编译的4*4独立按键Mega16(mega8和mega128等都可以用)绝对好用!全部文件都有,直接都可以用,端口不都改一下就可以用,我绝不传垃圾上去,用的是数码管显示!请给个好评,嘻嘻
1
以16进制发送一个0-65536之间的任一数,当单片机收到后在数码管上动态显示出来,波特率自定
2023-04-04 21:39:43 2KB 串口通信
1
前几天,51单片机课设写的,保证好使,如不会操作,可联系,文档有联系方式.通过按键输入密码,通过数码管显示当前输入的密码,当密码位数输入完毕按下确认键时,对输入的密码与设定的密码进行比较,密码输入正确,蜂鸣器提示。若密码不正确,则可以从新输入密码。如连续三次输入错误,则禁止输入,蜂鸣器长鸣报警。
1
#include #define uchar unsigned char #define uint unsigned int uchar buff,times,j; unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f, //0,1,2,3 0x66,0x6d,0x7d,0x07, //4,5,6,7 0x7f,0x6f,0x77,0x7c, //8,9,A,B 0x39,0x5e,0x79,0x71,0x00}; //C,D,E,F,null unsigned char idata value[8]; void delay1ms(void) //消抖动 { uchar i; for(i=200;i>0;i--); } void delay5ms(void) //延时5ms { unsigned char i,j; for(i=5;i>0;i--) for(j=248;j>0;j--); } void key_scan(void) //键盘输入扫描函数 { uchar hang,lie,key; P3=0xf0; if((P3&0xf0)!=0xf0) //行码为0,列码为1 { delay1ms(); if((P3&0xf0)!=0xf0) //有键按下,列码变为0 { hang=0xfe; //逐行扫描 times++; if(times==2) times=1; while((hang&0x10)!=0) //扫描完4行后跳出 { P3=hang; if((P3&0xf0)!=0xf0) //本行有键按下 { lie=(P3&0xf0)|0x0f; buff=((~hang)+(~lie)); switch(buff) { case 0x11: key=0;break; case 0x21: key=1;break; case 0x41: key=2;break; case 0x81: key=3;break; case 0x12: key=4;break; case 0x22: key=5;break; case 0x42: key=6;break; case 0x82: key=7;break; case 0x14: key=8;break; case 0x24: key=9;break; case 0x44: key=10;break; case 0x84: key=11;break; case 0x18: key=12;break; case 0x28: key=13;break; case 0x48: key=14;break; case 0x88: key=15;break; } value[times-1]=key; //按下的键值 } else hang=(hang<<1)|0x01; //下一行扫描 } } } } void main(void) { uchar key; while(1) { key_scan(); P0=0; for(j=times;j>0;j--) { P2=j-1; //数码管列扫描 P0=dispcode[value[times-j]]; //A-G数据 delay5ms(); } } }
2023-04-04 03:08:28 84KB 51单片机 键盘 数码管
1
七段码显示汇编语言程序设计 微机原理接口技术 七段数码管 汇编程序设计
2023-03-28 13:29:28 264KB 微机原理接口技术 七段数码管
1
  设计一个模10的计数器,其变换规律为:1、3、5、7、9、0、2、4、6、8,间隔时间为1S,如此反复,并将数字显示在一个数码管上。要求电路具有:         1)启动开关,当该开关断开时,数码管没有显示,当开关闭合后,电路开始运行;         2)暂停键,在电路运行过程中按下此键,数码管显示停在此时正在显示的某一个数值上并保持,当再按下此键,电路继续计数显示;         3)复位按钮,当按下此按钮时,数码管显示初值为1,合上启动开关后,电路按照要求的顺序进行显示。
2023-03-20 19:33:45 392KB 数电 Multisim 计数器 数码管
1
包含KEIL源代码和Proteus仿真文件,其中Proteus版本为8.13,不兼容低版本,此外打开仿真文件时,需要重新勾选hex文件,再进行仿真,不然容易报错。
2023-03-19 16:27:03 4.9MB 嵌入式 STM32F103R6 六位数码管 数码管
1
教程使用博途V15.1制作,需要此版本及以上才能打开。压缩包内含程序和HMI仿真,可以直接使用HMI仿真查看效果,与实际效果一样。数码管的显示可以作为西门子离散自动化赛道的电梯楼层显示的子程序。 硬件电路:直接按键控制LED灯。 PLC型号:西门子s7-1200系列 项目要求:按照项目的功能完成按键控制数码管的技术显示。 项目目的:学习比较指令、数学函数指令和加减计数指令和数码管的显示原理。 项目功能:数码管可以显示两位数00-99,然后可通过四个按键完成数码管的技术显示。其中四个按键功能如下:ESC按键为取消按钮,按下它之后计数器清零,回车按钮,按下它之后计数器直接装载为99。UP按键为加计数按钮,按下之后计数器加一,相应的DOWN按键为减计数按钮,按下之后计数器减一。
2023-03-13 21:43:39 6.02MB PLC S7-1200/1500 西门子 电气控制
1
基于MSP430F149/169单片机DS18B20温度采集数码管显示例程
2023-03-06 20:12:46 28KB MSP430F149 DS18B20
1
采用飞思卡尔的MC9S12DG128开发的,内有数码管与按键采集程序,采用HD7279调试,非常稳定,能显示各种需要的数值,内有程序说明。 DS18B20数字温度传感器,采用多种方法采集其温度。有SKIP ROM方式,直接读取一个芯片的温度数据。也有采用SEACH ROM方式搜索固定编号的温度数据。另外还有用IIC总线调试通的EEPROM芯片存储程序。此都为原创。网上虽有一些简单的例子,我试过很多不能用,连教材上的程序例子都有错误的地方;此为用手册自己写的程序。有问题可以直接找我。QQ:308807389,需要验证。说明原因即可。
2023-03-04 08:56:03 302KB DG128 单片机 DS18B20 数字温度传感器
1