현재 위치 - 인적 자원 플랫폼망 - 미니프로그램 자료 - 도움말 : 기능을 달성하기위한 51 마이크로 컨트롤러 프로그램 : P3.0-P3.2 두 개의 조명을 제어하는 3 개의 스위치, P3.0을 누르면 조명이 1 번 깜박이고 주파수가 1HZ입니다.
도움말 : 기능을 달성하기위한 51 마이크로 컨트롤러 프로그램 : P3.0-P3.2 두 개의 조명을 제어하는 3 개의 스위치, P3.0을 누르면 조명이 1 번 깜박이고 주파수가 1HZ입니다.
# 포함 & ltreg 51 . H & GT;

SBIT LED 1 = P1^0;//LED1

SBIT LED 2 = P1^1;//LED2

SBIT K 1 = P3^0;

SBIT K2 = P3^1;

SBIT K3 = P3^2;

INT FLAG;<

Time0_init() //타이밍 50밀리초

{

TMOD = 0x 01;

TH0 = 0x3c

TL0 = 0xb0

EA = 1;

ET0 = 1;

TR0 = 1;

}

잘못된 지연 (부호 없는 문자 밀리초)//millisecond delay

{

부호 없는 문자 ti;

언제 (밀리초)

{

for(ti = 0; ti & lt112;ti++){}

}

p>잘못된 마스터 (유효하지 않음)< /p>

{

부호 없는 문자 I = 0;

time 0 _ init();

while(1)

{if ((P3 & amp; 0x07)! = 0x07)

{

delay(10); //지터링 제거 지연

If ((P3 & amp; 0x07)! = 0x07)

{

if(k 1 = = 0 & amp; flag = = 1)//k 1 press LED1 깜박임, 1Hz.

{

flag = 0;

led 1 ^= 1;

}

else if(k2 = = 0 & amp; Flag == 1) //K2 누름 LED2 깜박임, 1Hz.

{

flag = 0;

led 2 ^= 1;

}

Else if(K3 == 0) //P3.2 한번 누르면 정지, 다시 누르면 시작됩니다.

{

If (++i == 1)

{

led 1 = 1;

led 2 = 1;

TR0 = 0;

}

Other

{

led 1 = 0;

led 2 = 0;

I = 0;

TR0 = 1;

}

}

}

void time0_int(void) interrupt 1

{

정적 부호 없는 문자 I;

If(i++ == 20) //20배는 1S와 1Hz입니다.

{

I = 0;

flag = 1;

}

TH0 = 0x3c

TL0 = 0xb0

}

제가 설계했습니다. 이해가 되시나요?

오, 행운을 빌어요 &; 연구 진행 상황 ..........