资源简介

采用MAX7219并行显示时间及设定的交通灯控制系统。包括两种中断源应用及串口通信。-The MAX7219 parallel display time and set of traffic light control system. Including two interrupt source application and serial interface communication.

资源截图

代码片段和文件信息

#include//头文件

/*********************** 定义MAX7219 内部寄存器 **********************/
#define REG_DECODE        0x09            // 译码方式寄存器
#define REG_INTENSITY     0x0a            // 亮度寄存器
#define REG_SCAN_LIMIT    0x0b            // 扫描界限寄存器
#define REG_SHUTDOWN      0x0c            // 停机寄存器
#define REG_DISPLAY_TEST  0x0f            // 显示测试寄存器
#define INTENSITY_MIN     0x00            // 最小显示亮度
#define INTENSITY_MAX     0x0f            // 最大显示亮度

/*********************** 定义各路交通灯信号 ************************/
sbit   ALG  =  P1^2;//  A路左转绿灯
sbit   ALR  =  P1^0;//  A路左转红灯
sbit   ALY  =  P1^1;//  A路左转黄灯
sbit   ASG  =  P1^5;//  A路直行绿灯
sbit   ASR  =  P1^3;//  A路直行红灯
sbit   ASY  =  P1^4;//  A路直行黄灯
sbit   BLG  =  P2^0;//  B路左转绿灯
sbit   BLR  =  P1^6;//  B路左转红灯
sbit   BLY  =  P1^7;//  B路左转黄灯
sbit   BSG  =  P2^3;//  B路直行绿灯
sbit   BSR  =  P2^1;//  B路直行红灯
sbit   BSY  =  P2^2;//  B路直行黄灯

/*********************** 定义MAX7219 端口信号 ************************/
sbit   DATA =  P2^5;
sbit   LOAD =  P2^6;
sbit   CLK  =  P2^7;


/*********************** 定义设定按键 端口信号 ************************/

sbit next_switch = P0^5;
sbit add_switch =  P0^6;
sbit sub_switch =  P0^7;

/*********************** 时间及显示全局变量 ************************/
int aashigeshi1ge1temp1;
int p=0;
int set1=10;
int set2=5;
int flag = 0;

int gt[4] = {14131211};



/*数码管显示0-9AL*/
unsigned char table[]={0x7e0x300x6d0x790x330x5b0x5f0x700x7f0x7b0x770x0e};

unsigned char table0[]={0x000x010x020x030x040x050x060x070x08};


/*子函数声明*/
void  delay(int z);//延迟
void  xtimer0();//定时中断
void  xtimer1();
void  check();
void  step1();
void  step2();
void  step3();
void  step4();
void  step5();
void  step6();
void  step7();
void  step8();
void  step9();

void  xint0();
void  xint1();
void  A_S_G();
void  B_S_G();

int judge_key();
void set_led_time();

static void Write (unsigned char reg_number unsigned char dataout);//向指定的MAX7219内部寄存器写入数据
static void SendByte (unsigned char dataout);//向MAX7219发送一个字节串行数据
static unsigned char LookupCode (int num);//查段码表将显示字符转换为显示段码
static unsigned char LookupNum (int num);
void Init (void);//对MAX7219进行初始化,调用任何其他函数之前必需先调用此函数
void ShutdownStart (void);//进入停机方式
void ShutdownStop (void);//结束停机方式
void DisplayTestStart (void);//启动显示测试
void DisplayTestStop (void);//结束显示测试
void SetBrightness (char brightness);//设置LED显示亮度亮度值(brightness = 0-15)
void Clear (void);//关闭全部显示器


void display (int num0 int num);//在指定数位上显示字符
     

/*主函数*/
void  main()
{
EA=1;//开中断
EX0=1;//允许外部中断INT0中断
IT0=0;//定义INT0触发方式
PX0=1;//中断优先级高
EX1=1;//允许外部中断INT1中断
IT1=0;//定义INT1触发方式
PX1=1;//中断优先级高
check();//开机自检
step1();//第1个状态
P0=0xff;
   while(1)
   {
   step2();//第2个状态
  step3();//第3个状态
  step4();//第4个状态
  step5();//第5个状态
step6();//第6个状态
step7();//第7个状态
step8();//第8个状态
step9();//第9个状态
   }
}
void  check()//开机自检子程序
{
ASG=1;
ALG=1;
ASR=1;
ALR=1;
ASY=1;

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     129372  2011-12-15 09:38  _gao\Last Loaded traffic.DBK

     文件       5115  2004-08-31 19:16  _gao\STARTUP.A51

     文件      11665  2011-12-15 11:13  _gao\STARTUP.lst

     文件        749  2011-12-15 11:13  _gao\STARTUP.OBJ

     文件      29011  2011-12-15 11:13  _gao\traffic

     文件      14505  2011-12-15 11:13  _gao\traffic.c

     文件     129372  2011-12-15 09:42  _gao\traffic.DSN

     文件       9205  2011-12-15 11:13  _gao\traffic.hex

     文件      35852  2011-12-15 11:13  _gao\traffic.LST

     文件      45162  2011-12-15 11:13  _gao\traffic.M51

     文件      35890  2011-12-15 11:13  _gao\traffic.OBJ

     文件       1395  2011-12-15 16:00  _gao\traffic.Opt

     文件        163  2011-12-15 16:00  _gao\traffic.plg

     文件        768  2011-12-15 16:00  _gao\traffic.PWI

     文件       2051  2011-12-14 12:39  _gao\traffic.Uv2

    .......      1301  2011-12-15 11:12  _gao\traffic_Opt.Bak

    .......      2076  2011-12-14 12:35  _gao\traffic_Uv2.Bak

     文件        326  2011-12-08 08:52  _gao\数码管.txt

     目录          0  2011-12-15 16:00  _gao

----------- ---------  ---------- -----  ----

               453978                    19


评论

共有 条评论