因仑“3+1”工程特种兵精英论坛

标题: 006、数码管静态显示 [打印本页]

作者: 张衍波    时间: 2015-4-27 20:03
标题: 006、数码管静态显示
/********************************************************************
                            汇诚科技

实现功能:数码管静态显示程序
使用芯片:AT89S52
晶振:11.0592MHZ
波特率:9600
编译环境:Keil
作者:zhangxinchunleo
网站:www.ourhc.cn
淘宝店:汇诚科技 http://shop36330473.taobao.com
【声明】此程序仅用于学习与参考,引用请注明版权和作者信息!     

*********************************************************************/
#include<reg52.h>                 //库文件
#define uchar unsigned char//宏定义无符号字符型
#define uint unsigned int  //宏定义无符号整型
/********************************************************************
                            初始定义
*********************************************************************/
code uchar seg7code[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //显示段码 数码管字跟

sbit P2_0=P2^0; //定义按键的输入端(为单片机P2口的P2.0按键)
sbit P2_1=P2^1; //定义按键的输入端(为单片机P2口的P2.1按键)
sbit P2_2=P2^2; //定义按键的输入端(为单片机P2口的P2.2按键)
sbit P2_3=P2^3; //定义按键的输入端(为单片机P2口的P2.3按键)

/********************************************************************
                            主函数
*********************************************************************/
void main()
{
        P2=0X0f;//定义P2口输出00001111
        P0=seg7code[0]; //初始值显示0
        while(1)
        {
        if(P2_0==0)P0=seg7code[1];        //如果P2.0按键按下,数码管显示1
        if(P2_1==0)P0=seg7code[2];        //如果P2.1按键按下,数码管显示2
        if(P2_2==0)P0=seg7code[3];        //如果P2.2按键按下,数码管显示3
        if(P2_3==0)P0=seg7code[4];        //如果P2.3按键按下,数码管显示4
        }
}

       
/********************************************************************
                              结束
*********************************************************************/
[attach]2459[/attach]







欢迎光临 因仑“3+1”工程特种兵精英论坛 (http://bbs.enlern.com/) Powered by Discuz! X3.4