独立键盘操作数码管(C源码)

此源码在protues 7.5下测试通过。源码最下面是连线图。使用了两个74HC573锁存器,4个独立按键。

 

/*/****************************************/*/

 

 

 

#include <reg51.h>

unsigned char code show_code[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; //数码管编码

 

sbit num_add=P1^0;  // 加1功能

sbit num_dec=P1^1; //减1功能

sbit num_clear=P1^2;//清零功能

sbit num_auto=P1^3; //自动计数功能

 

sbit contrl_place=P2^1; //位选 

sbit contrl_segment=P2^0;//段选

unsigned char show_one_digit=0; //个位

unsigned char show_ten_place=0; // 十位

unsigned char loop_ms=0;//毫秒用循环变量

unsigned char nums=0; //显示用变量 

 

void delayms(unsigned int xms); //延时

void scan_key(); //键盘扫描

void display(unsigned char show_num);//显示

 

/*程序说明:用数码管的后两位循环显示数值,变化范围为00-59,上电显示为00。每按一次“加”按键,数值加1;

每按一次“减”按键,数值减1;按一次“清零”键,数码管显示为00;按一次自动计数键,将利用定时器零,

进行每一秒自动加1显示,再按一次,停止自动加1,保持原数显示。

*/

void main()

{

TMOD=0x01; //定义定时器

TH0=(65536-45872)/256; //初值50ms

TL0=(65536-45872)%2

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值