单片机==独立按键+数码管计数+扫描法(8)
来源:互联网 发布:网络工程和网络布线 编辑:程序博客网 时间:2024/06/06 02:26
#include <reg52.h>#include "delay.h"sbit key1 = P2^0;sbit seg_select = P1^0;sbit bit_select = P1^1;#define SEGPORT P0unsigned char tempdata[2];unsigned char segdata[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};unsigned char bitdata[8] = {0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};void timer0_init(void){ EA = 1; TMOD |= 0x01; TH0 = (65536 - 10000) / 256; TL0 = (65536 - 10000) % 256; ET0 = 1; TR0 = 1;}void display(){ static unsigned char i = 0; SEGPORT = 0x0; seg_select = 1; seg_select = 0; SEGPORT = 0xff; bit_select = 1; bit_select = 0; SEGPORT = tempdata[i]; seg_select = 1; seg_select = 0; SEGPORT = bitdata[i]; bit_select = 1; bit_select = 0; i++; if(2 == i) { i = 0; }}void timer0_isr(void) interrupt 1{ TH0 = (65536 - 10000) / 256; TL0 = (65536 - 10000) % 256; display();}void main(){ unsigned char disdata = 0;; timer0_init(); while(1) { delay_ms(10); if(0 == key1) { while(!key1) delay_ms(10); while(!key1); disdata++; if(100 == disdata) { disdata = 0; } } tempdata[0] = segdata[disdata / 10]; tempdata[1] = segdata[disdata % 10]; }}
0 0
- 单片机==独立按键+数码管计数+扫描法(8)
- 单片机==独立按键+数码管计数+中断法(9)
- 8.5 单片机独立按键的扫描
- 单片机==独立按键led灯(7)
- 单片机==独立按键+蜂鸣器(10)
- 单片机==独立按键-秒表(14)
- 单片机开发——独立按键的扫描
- 单片机==独立按键之抢答器
- 独立按键数码管显示键值
- 单片机==单数码管(2)
- 单片机独立按键
- 单片机独立按键
- 单片机独立按键
- 单片机按键扫描
- 单片机控制独立按键读入
- 单片机——独立按键
- 51单片机—独立按键
- 单片机==共阴数码管(3)
- 字段名与实体类属性不匹配([尚硅谷]_张晓飞_Mybatis 学习笔记二)
- setting up a new remote git repository
- 表一对一关联([尚硅谷]_张晓飞_Mybatis 学习笔记三)
- Android应用间数据传递:ContentProvider
- 表一对多关联([尚硅谷]_张晓飞_Mybatis 学习笔记四)
- 单片机==独立按键+数码管计数+扫描法(8)
- 剑指offer--面试题24: 二叉搜索树的后序遍历序列
- curl命令
- 条件筛选([尚硅谷]_张晓飞_Mybatis 学习笔记五)
- 一、二级缓存([尚硅谷]_张晓飞_Mybatis 学习笔记六)
- [尚硅谷例题]_pl_sql
- 表达式求值
- jquery跨域办法
- solr测试项目(下)--索引数据与查询