51单片机控制交通灯原理图及C语言程序

时间:2019-05-14 03:57:57下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《51单片机控制交通灯原理图及C语言程序》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《51单片机控制交通灯原理图及C语言程序》。

第一篇:51单片机控制交通灯原理图及C语言程序

Proteus仿真原理图:

Keil C源程序:

#include #define uchar unsigned char #define uint

unsigned

int sbit

RED_DONGXI

= P1^0;//南北方向红灯亮 sbit

YELLOW_DONGXI = P1^1;//南北方向黄灯亮 sbit

RED_NANBEI

= P1^3;//东西方向红灯亮 sbit

GREEN_DONGXI = P1^2;//南北方向绿灯亮 sbit

YELLOW_NANBEI = P1^4;//东西方向黄灯亮 sbit

GREEN_NANBEI = P1^5;//东西方向绿灯亮

sbit

DXweixuan1

= P1^6;//南北方向数码管位选1 sbit

DXweixuan2

= P1^7;//南北方向数码管位选2 sbit

NBweixuan1

= P3^0;//东西方向数码管位选1 sbit

NBweixuan2

= P3^1;//东西方向数码管位选2 sbit

L1=P3^5;sbit

L2=P3^6;sbit

L3=P3^7;uint aa, bai,shi,ge,bb;uint shi1,ge1,shi2,ge2;uint code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};uint code table1[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6};void delay(uint z);void init(uint a);void display(uint shi1,uint ge1,uint shi2,uint ge2);void xtimer0();void init1();void init2();void init3();void init4();void init5();void xint1();void xint0();void LED_ON();void LED_OFF();

void main(){ P0=0xFF;P1=0xFF;P2=0x00;

P3=0xFF;EA=1;EX0=1;IT0=0;

init1();while(1)

{

init2();//第2个状态

init3();//第3个状态

init4();//第4个状态

init5();//第5个状态

} } void init1()//第一个状态:东西、南北方向均亮红灯5S { uint temp;temp=5;TMOD=0x01;TH0=(65535-50000)/256;TL0=(65535-50000)%256;EA=1;ET0=1;TR0=1;while(1){

RED_DONGXI=0;

//第一个状态东西、南北均亮红灯5S

RED_NANBEI=0;

GREEN_DONGXI=1;

GREEN_NANBEI=1;

YELLOW_DONGXI=1;

YELLOW_NANBEI=1;

if(aa==20)//定时20*50MS=1S

{

aa=0;

temp--;

}

shi1=shi2=temp/10;

ge1=ge2=temp%10;

if(temp==0)

{

temp=5;

break;

}

display(ge1,shi1,ge2,shi2);} } void init2()//第二个状态:东西亮红灯30S~5S、南北亮绿灯25~0S;{ uint temp;temp=26;TMOD=0x01;TH0=(65535-50000)/256;TL0=(65535-50000)%256;EA=1;ET0=1;TR0=1;while(1){

RED_DONGXI=1;

RED_NANBEI=0;

GREEN_DONGXI=0;

GREEN_NANBEI=1;

YELLOW_DONGXI=1;//第二个状态:东西亮绿灯25S、南北亮红灯

YELLOW_NANBEI=1;

if(aa==20)//定时20*50MS=1S

{

aa=0;

temp--;

shi1=(temp+5)/10;

}

}

} ge1=(temp+5)%10;shi2=temp/10;ge2=temp%10;if(temp==0){ temp=26;break;} display(ge1,shi1,ge2,shi2);void init3()//第三个状态:东西绿灯变为黄灯闪5次、南北亮红灯5S { uint temp;temp=6;TMOD=0x01;TH0=(65535-50000)/256;TL0=(65535-50000)%256;EA=1;ET0=1;TR0=1;while(1){

RED_NANBEI=0;

GREEN_DONGXI=1;

if(aa==20)//定时20*50MS=1S

{

aa=0;

temp--;

YELLOW_DONGXI=~YELLOW_DONGXI;

shi1=temp/10;

shi2=shi1;

ge1=temp%10;

ge2=ge1;

}

if(temp==0)

{

temp=6;

break;

}

display(ge1,shi1,ge2,shi2);} } void init4()//第四个状态:东西亮绿灯25~0S,南北方向亮红灯30~5S; { uint temp;temp=26;TMOD=0x01;TH0=(65535-50000)/256;TL0=(65535-50000)%256;EA=1;ET0=1;TR0=1;while(1){

RED_DONGXI=0;

RED_NANBEI=1;

YELLOW_DONGXI=1;//第一个状态东西、南北均亮红灯5S

GREEN_NANBEI=0;

if(aa==20)

{

aa=0;

temp--;

shi1=temp/10;

shi2=(temp+5)/10;

ge1=temp%10;

ge2=(temp+5)%10;

if(temp==0)

{

temp=26;

break;

}

}

display(ge1,shi1,ge2,shi2);} } void init5()//第五个状态:东西亮红灯、南北绿灯闪5次转亮黄灯5S { uint temp;temp=6;TMOD=0x01;TH0=(65535-50000)/256;TL0=(65535-50000)%256;EA=1;ET0=1;TR0=1;while(1){

RED_NANBEI=1;

RED_DONGXI=0;

GREEN_DONGXI=1;

GREEN_NANBEI=1;

if(aa==20)

{

aa=0;

temp--;

YELLOW_NANBEI=~YELLOW_NANBEI;

shi1=temp/10;

shi2=shi2;

ge1=temp%10;

ge2=ge1;

if(temp==0)

{

temp=6;

break;

}

}

display(ge1,shi1,ge2,shi2);} }

void display(uint shi1,uint ge1,uint shi2,uint ge2){ DXweixuan1=0;DXweixuan2=1;NBweixuan1=1;NBweixuan2=1;P0=table[ge1];delay(5);DXweixuan1=1;DXweixuan2=0;NBweixuan1=1;NBweixuan2=1;P0=table[shi1];delay(5);DXweixuan1=1;DXweixuan2=1;NBweixuan1=0;NBweixuan2=1;P0=table[ge2];delay(5);DXweixuan1=1;DXweixuan2=1;NBweixuan1=1;NBweixuan2=0;P0=table[shi2];delay(5);} void xint0()interrupt 0 { RED_NANBEI=0;RED_DONGXI=0;GREEN_NANBEI=1;GREEN_DONGXI=1;

YELLOW_NANBEI=1;YELLOW_DONGXI=1;P0=0x00;NBweixuan1=0;NBweixuan2=0;DXweixuan1=0;DXweixuan2=0;delay(2);return;} void xint1()interrupt 2 { RED_NANBEI=1;RED_DONGXI=1;GREEN_NANBEI=0;GREEN_DONGXI=0;

YELLOW_NANBEI=1;YELLOW_DONGXI=1;P0=0x00;NBweixuan1=0;NBweixuan2=0;DXweixuan1=0;DXweixuan2=0;delay(2);return;} void xtimer0()interrupt 1 { TH0=(65535-50000)/256;TL0=(65535-50000)%256;aa++;} void delay(uint z){uint x,y;for(x=0;x

for(y=0;y<110;y++);}

第二篇:单片机AT89C52十字路口交通灯控制C语言程序

单片机AT89C52十字路口交通灯控制程序

东西方向60秒,南北方向57秒

#include #define uchar unsigned char #define uint unsigned int

#define ON 0 #define OFF 1 sbit NS_G=P2^5;//南北绿灯

sbit NS_Y=P2^4;//南北黄灯 sbit NS_R=P2^3;//南北红灯

sbit EW_G=P2^2;//东西绿灯 sbit EW_Y=P2^1;//东西黄灯 sbit EW_R=P2^0;//东西红灯

sbit LED_D1=P3^7;//南北方向数码管位控制 sbit LED_C1=P3^6;//南北方向数码管位控制 sbit LED_B1=P3^1;//东西方向数码管为控制 sbit LED_A1=P3^0;//东方向数码管位控制

/*********倒计时赋初值*************/ uchar EWF=20,NSF=17,X=20,Y=17,Z=20,SHU=20;uchar count;

void Init(void){ TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;} /*******************中断服务程序**************************/ void timer1(void)interrupt 1 {

TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;

count++;if(count>19){

EWF--;

NSF--;

X--;

Y--;

Z--;

SHU--;

count=0;

}

} /******************延时**********************/

void Delay10uS(uchar z){ uchar x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}

/******************led控制*******************/ unsigned char table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共阴极数码管赋值

void display1(uchar num1,uchar num2)

//控制东西方向led显示 {

P0=table[num1];

LED_A1=ON;

Delay10uS(1);

LED_A1=OFF;

P0=table[num2];

LED_B1=ON;

Delay10uS(1);

LED_B1=OFF;

} void display2(uchar num3,uchar num4)//控制南北方向led显示 {

P0=table[num3];

LED_C1=ON;

Delay10uS(1);

LED_C1=OFF;

P0=table[num4];

LED_D1=ON;

Delay10uS(1);

LED_D1=OFF;

} void main(){ int i;/************初始状态东西南北禁止通行************/

NS_R=ON;//南北方向红灯打开

EW_R=ON;

//东西方向红灯打开

for(i=0;i<600;i++)

{

Delay10uS(20);

} NS_R=OFF;//南北方向红灯关闭

EW_R=OFF;//东西方向红灯关闭

while(1)

{

Init();

// 初始化计时器

/****************状态1:东西绿灯(57s),南北红灯(60s)**************/ /***************状态2:东西黄灯(3s),南北红灯(60s)****************/

EW_G=ON;//东西方向的绿灯打开

NS_R=ON;//南北方向的红灯打开

while(EWF!=0)

{

display1(EWF/10,EWF%10);// 东西方向红灯(60s)

display2(NSF/10,NSF%10);// 南北方向绿灯(57s)

while(EWF==3)

{

while(X!=0)

{

display1(EWF/10,EWF%10);// 东西方向红灯(3s)

display2(X/10,X%10);// 南北方向黄灯(3s)

EW_G=OFF;// 东西方向的绿灯关闭

EW_Y=ON;// 东西方向的黄灯打开

}

}

}

NS_R=OFF;// 南北方向的红灯关闭

EW_G=OFF;// 东西方向的绿灯关闭

EW_Y=OFF;// 东西方向的黄灯打?

/*=*************状态3:东西红灯(60s),南北绿灯(57s)************/ /****************状态4:东西红灯(60s),南北黄灯(3s)***************/

EW_R=ON;// 东西方向的红灯打开

NS_G=ON;// 南北方向的绿灯打开

while(Z!=0)

{

display2(Z/10,Z%10);// 南北方向红灯(57s)

display1(Y/10,Y%10);// 东西方向绿灯(57s)

while(Z==3)

{

while(SHU!=0)

{

display2(Z/10,Z%10);// 东西红灯(3s)

display1(SHU/10,SHU%10);// 南北绿灯(3s)

NS_G=OFF;//南北方向的绿灯关闭

NS_Y=ON;// 南北方向的黄灯打开

}

}

}

} EW_R=OFF;// 东西方向的红灯关闭

NS_G=OFF;// 南北方向的绿灯关闭

NS_Y=OFF;// 南北方向的黄灯关闭

EWF=60,NSF=57,X=60,Y=57,Z=60,SHU=60;//重新赋值

}

第三篇:单片机定时器控制交通灯程序1

定时器控制交通指示灯

/* 名称:定时器控制交通指示灯

说明:东西向绿灯亮5s后,黄灯闪烁,闪烁5次亮红灯,红灯亮后,南北向由红灯变成绿灯,5s后南北向黄灯闪烁,闪烁5次后亮红灯,东西向绿灯亮,如此往复。*/ #include #define uchar unsigned char #define uint unsigned int sbit RED_A=P0^0;//东西向指示灯

sbit YELLOW_A=P0^1;sbit GREEN_A=P0^2;sbit RED_B=P0^3;//南北向指示灯

sbit YELLOW_B=P0^4;sbit GREEN_B=P0^5;//延时倍数,闪烁次数,操作类型变量

uchar Time_Count=0,Flash_Count=0,Operation_Type=1;//定时器0中断函数 void T0_INT()interrupt 1 { TL0=-50000/256;TH0=-50000%256;switch(Operation_Type){

case 1: //东西向绿灯与南北向红灯亮5s

RED_A=0;YELLOW_A=0;GREEN_A=1;

RED_B=1;YELLOW_B=0;GREEN_B=0;

if(++Time_Count!=100)return;//5s(100*50ms)切换

Time_Count=0;

Operation_Type=2;

break;

case 2: //东西向黄灯开始闪烁,绿灯关闭

if(++Time_Count!=8)return;

Time_Count=0;

YELLOW_A=~YELLOW_A;GREEN_A=0;

if(++Flash_Count!=10)return;//闪烁

Flash_Count=0;

Operation_Type=3;

break;

case 3: //东西向红灯与南北向绿灯亮5s

RED_A=1;YELLOW_A=0;GREEN_A=0;

RED_B=0;YELLOW_B=0;GREEN_B=1;

if(++Time_Count!=100)return;//5s(100*50ms)切换

Time_Count=0;

Operation_Type=4;

break;

case 4: //南北向黄灯开始闪烁,绿灯关闭

if(++Time_Count!=8)return;

Time_Count=0;

YELLOW_B=~YELLOW_B;GREEN_A=0;

if(++Flash_Count!=10)return;

Flash_Count=0;

Operation_Type=1;

break;}

} //主程序 void main(){ TMOD=0x01;

//T0方式1 IE=0x82;TR0=1;while(1);}

//闪烁

第四篇:单片机带应急的交通灯控制实验程序(精选)

单片机带应急的交通灯控制实验(汇编)

org 00h ajmp main org 0003h ajmp int_

red_we equ p1.1 yel_we equ p1.2 gre_we equ p1.3 red_sn equ p1.5 yel_sn equ p1.6 gre_sn equ p1.7 org 0030h main: mov sp ,#65h call init_int clr red_we clr red_sn call delay3 loop: clr gre_we setb red_we call delay5

setb gre_we clr yel_we mov r4,#10 sight:call delay_200ms cpl yel_we djnz r4,sight setb yel_we

call delay_200ms clr gre_sn setb red_sn clr red_we call delay5 setb gre_sn

clr yel_sn mov r4,#10 sight1:

call delay_200ms cpl yel_sn djnz r4,sight1 setb yel_sn

clr red_sn clr red_we call delay_200ms sjmp loop

;;;;;;;;;;;;;;;;;;;;;;;;;;;中断服务程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;int_: push psw push 04h setb gre_sn setb yel_sn setb gre_we setb yel_we clr red_sn clr red_we call delay5 call init_int pop 04h pop psw reti;;;;;;;;;;;;;;;;;;;;;;;;;;外部中断初始化

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;init_int: setb ex0 setb it0 setb ea ret

;;;;;;;;;;;;;;;;;;;;;;;5秒延时

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;delay5: mov r4,#5 delay5_ : call delay_1s djnz r4,delay5_ ret;;;;;;;;;;;;;;;;;;;;;;;3秒延时

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;delay3: mov r4,#3 delay3_: call delay_1s djnz r4,delay3_ ret

;;;;;;;;;;;;;;;;;;;;;;

delay_200ms: mov r5,#20 s: call delay_10ms djnz r5,s ret

0.2秒延时

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;

非中断精确1MS定时程序

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;delay_1ms: push 07h MOV R7 ,#249 signed:

;循环部分4机器周期 nop

nop djnz R7 ,signed pop 07h ret

;返回指令2机器周期

;2+249*4+2=1000us 可以精确定时1MS,假设外部晶振是12M

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;非中断精确10MS定时程序

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;delay_10ms: push 06h mov r6,#9

;2个机器周期用2us

delay_10ms_sined:;9次循环共用9(1ms+4us)=9036us acall delay_1ms djnz r6,delay_10ms_sined

MOV r6 ,#240

;2个机器中期用2us signed_10ms :

;循环部分4机器周期 共240次 nop

nop djnz r6 ,signed_10ms pop 06h ret

;返回指令要2us;2us+9036us+240*4us+2us = 10ms 即可精确定时10ms;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

非中断精确定时1s

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

delay_1s: push 05h mov r5,#99

;两个机器周期2us

delay_1s_signed:

;循环指令周期为4us,加上延时10ms

;(10ms+4us)*99 = 990.396ms acall delay_10ms djnz r5,delay_1s_signed mov r5 ,#9

;两个机器周期2us signed_1s:

;循环指令周期为4us,加上延时1ms

;(1ms+4us)*9 = 9ms+36us acall delay_1ms djnz r5 ,signed_1s

mov r5 ,# 140

;机器周期2us signed_1s_:

;一次循环4us共有140次。140us*4 = 560us nop nop djnz r5,signed_1s_ pop 05h ret

;2us

;2us+990ms+396us+2us+9ms+36us+2us+560us+2us = 999ms+1000us = 1s

end

第五篇:单片机控制交通灯的案例

单片机控制交通灯

AT89C51单片机及由Keil 软件编写单片机程序,并且通过Proteus仿真测试,设计一个交通灯系统,实现简单的交通灯的管理功能。在交通灯系统的管理中,用发光二极管模拟交通信号灯,用逻辑电平开关模拟控制开关。在交通繁忙时,交通信号灯控制系统应有手控开关,可人为地改变信号灯的状态,以缓解交通拥挤状况。

工作内容及最终成果:

十字路口的交通指挥信号灯控制要求如下:

(1)信号灯受一个起动开关控制,当起动开关接通时,信号系统开始工作,且先南北红灯亮,东西绿灯亮。当起动开关断开时,所有信号灯都熄灭。(2)南北绿灯和东西绿灯不能同时亮,如果同时亮时应关闭信号灯系统,并报警。

(3)南北红灯亮维持25S。在南北红灯亮的同时东西绿灯也亮,并维持20S。到20S时,东西绿灯闪烁,闪烁3S后熄灭。在东西绿灯熄灭时,东西黄灯亮,并维持2S。到2S时,东西黄灯熄,东西红灯亮。同时,南北红灯熄灭,南北绿灯亮。

(4)东西红灯亮维持30S。南北绿灯亮维持25S。然后闪烁3S,熄灭。同时南北黄灯亮,维持2S后熄灭,这时南北红灯亮,东西绿灯亮。(5)周而复始。

ORG

0000H

LJMP START

ORG

0040H START:

MOV

SP,#60H

LCALL STATUS0;初始状态(都是红灯)CIRCLE:

LCALL STATUS1;南北绿灯,东西红灯

LCALL STATUS2;南北绿灯闪转黄灯,东西红灯

LCALL STATUS3;南北红灯,东西绿灯

LCALL STATUS4;南北红灯,东西绿灯闪转黄灯

LJMP CIRCLE STATUS0:

;南北红灯,东西红灯

MOV DPTR,#8300H

MOV A,#0FH

MOVX @DPTR,A

MOV R2,#10

;延时1秒

LCALL DELAY

RET STATUS1:

;南北绿灯,东西红灯

MOV DPTR,#08300H

MOV A,#96H

;南北绿灯,东西红灯

MOVX @DPTR,A

MOV R2,#200

;延时20秒

LCALL DELAY

RET STATUS2:

;南北绿灯闪转黄灯,东西红灯

MOV DPTR,#8300H

MOV R3,#03H

;绿灯闪3次 FLASH:

MOV A,#9FH

MOVX @DPTR,A

MOV R2,#03H

LCALL DELAY

MOV A,#96H

MOVX @DPTR,A

MOV R2,#03H

LCALL DELAY

DJNZ R3,FLASH

MOV A,#06H

;南北黄灯,东西红灯

MOVX @DPTR,A

MOV R2,#10

;延时1秒

LCALL DELAY

RET STATUS3:

;南北红灯,东西绿灯

MOV DPTR,#8300H

MOV A,#69H

MOVX @DPTR,A

MOV R2,#200

;延时20秒

LCALL DELAY

RET STATUS4:

;南北红灯,东西绿灯闪转黄灯

MOV DPTR,#8300H

MOV R3,#03H

;绿灯闪3次 FLASH1:

MOV A,#6FH

MOVX @DPTR,A

MOV R2,#03H

LCALL DELAY

MOV A,#69H

MOVX @DPTR,A

MOV R2,#03H

LCALL DELAY

DJNZ R3,FLASH1

MOV A,#09H

;南北红灯,东西黄灯

MOVX @DPTR,A

MOV R2,#10

;延时1秒

LCALL DELAY

NOP

RET DELAY:

;延时子程序

PUSH 2

PUSH 1

PUSH 0 DELAY1:

MOV 1,#00H DELAY2:

MOV 0,#0B2H

DJNZ 0,$

DJNZ 1,DELAY2;延时 100 mS

DJNZ 2,DELAY1

POP 0

POP 1

POP 2

RET

END

下载51单片机控制交通灯原理图及C语言程序word格式文档
下载51单片机控制交通灯原理图及C语言程序.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    基于51单片机的交通灯控制电路设计

    交通灯 一、功能要求 要求甲车道和乙车道两条交叉道路上的车辆交替运行,每次通行时间都设为25秒,黄灯先亮5秒钟,才能变换运行车道;黄灯亮时,要求每秒钟闪亮一次。 二、电路图 说......

    基于单片机控制的交通灯设计系统

    基于单片机控制的交通灯设计系统 班级: 姓名: 学号: 第一章 概述 1. 设计内容 本系统需要采用AT89C51单片机AT89C5中心器件来设计交通灯控制器,实现以下功能: 1.1初始东西绿......

    单片机C语言学习

    单片机C语言之一___________________________________________________________________ _____________________ 预处理 一》宏定义: 1、不带参数: #define 标识符 常量表达......

    单片机c语言学习心得转载

    单片机c语言学习心得(一)相信很多爱好电子的朋友,对单片机这个词应该都不会陌生了吧。不过有些朋友可能只听说他叫单片机,他的全称是什么也许并不太清楚,更不用说他的英文全称和......

    单片机C语言学习心得

    8、指针的使用 8.1 在定义的时候,*ap中的‘*’是指针类型说明符;在进行指针预算时,x = *ap 中的‘*’是指针运算符。 8.2 如果在已定义好的指针变量,并引用,即 int *ap, int a; a......

    单片机C语言知识点大全

    【C语言】 【数据类型】 【转义字符】 【语句】 【#define】 #define 新名 原名 【typedef】 typedef 原类型名 新类型名; 【sbit】 sbit P1_0=P1^0; 在reg52.h或reg51.h的......

    单片机C语言学习心得

    8、指针的使用 8.1 在定义的时候,*ap中的‘*’是指针类型说明符; 在进行指针预算时,x = *ap 中的‘*’是指针运算符。 8.2 如果在已定义好的指针变量,并引用,即 int *ap, int a;......

    单片机交通灯控制程序

    #include #define uchar unsigned char #define uint unsigned int uchar code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x40 }; //*************d......