51單片機100例實例之19例
2021-03-01 23:37 作者:技術(shù)流阿宅 | 我要投稿

//項目19:繼電器控制照明設(shè)備
//項目再創(chuàng)作者:科技小宅神
//說明:? 按下K1鍵燈點亮,再次按下時燈熄滅
//資源來自網(wǎng)絡(luò),由小宅神收集,整理,注釋,講解,說明,修正。
仿真圖:

代碼:
#include <reg51.h>
#define uchar unsigned char
#define uint? unsigned int
//位定義
sbit K1=P1^0; //控制按鍵接口
sbit RELAY=P2^4;//繼電器接口
sbit led=P2^2; //開啟指示燈接口
//1毫秒延時子程序
void DelayMS(uint ms)
{
? uchar t;
??while(ms--)
??{
????????for(t=0;t<120;t++);
????}
}
//主程序
void main()
{
? ??????P1 = 0xff;//初始化或者接通P1口
????????RELAY = 1;//接通PNP晶體管
????????while(1)//死循環(huán)
????????{
????????????if(K1==0)//如果按鍵按下
????????????{
????????????????while(K1==0);//按鍵按下時
????????????????RELAY =~RELAY;//取反,就是輸出0低電壓,亮
????????????????led=~led;//取反,就是輸出1高電壓,滅
????????????????DelayMS(20);//延時
????????????}
????????}
}
祝大家學(xué)(白)習(xí)(嫖)愉快!喜歡可以關(guān)注,三連up主一波!
標(biāo)簽: