實驗二 I/O實驗
一、實驗目的
1. 掌握IO口的工作模式。
2. 能夠使用單片機控制簡單的外設。
3. 能夠使用單片機的IO輸入操作。
二、實驗內容
1. 用一個P口的兩位分別控制一個LED燈和一個蜂鳴器,當蜂鳴器響時LED燈熄滅,蜂鳴器停時LED燈點亮,時間間隔為500ms。
2. 編寫程序,用一個按鍵控制蜂鳴器,當按鍵按下時蜂鳴器響,松開后蜂鳴器停。
3. 編寫程序,用一個按鍵控制蜂鳴器,按鍵每按下一次實現(xiàn)蜂鳴器狀態(tài)翻轉。
//#include <stc15.h>
//#include <intrins.h>
//typedef unsigned int u16;
//void DelayNms(u16 a) //@11.0592MHz
//{
// unsigned char i, j;
// u16 b;
// for(b=0;b<a;b++)
// {
// i = 11;
// j = 190;
// do
// {
// while (--j);
// } while (--i);
// }
//}
//void main()
//{
// P0M0 |= 0x02;
// P0M1 &= ~0x02;
// while(1)
// {
// P00=0;P01=0;
// DelayNms(500);
// P00=1;P01=1;
// DelayNms(500);
// }
//}
////2. 編寫程序,用一個按鍵控制蜂鳴器,當按鍵按下時蜂鳴器響,松開后蜂鳴器停。
//#include <stc15.h>
//#include <intrins.h>
//typedef unsigned int u16;
//void main()
//{
// P0M0 |= 0x03;
// P0M1 &= ~0x03;
//
// while(1)
// {
//
// if(P00==0)
// {
// P01=1;
// }
// else
// {
// P01=0;
// }
//
// }
//}
//3. 編寫程序,用一個按鍵控制蜂鳴器,按鍵每按下一次實現(xiàn)蜂鳴器狀態(tài)翻轉。
#include <stc15.h>
#include <intrins.h>
void main()
{
P0M0 |= 0x03;
P0M1 &= ~0x03;
while(1)
{
if(P00==0)
{
P01=!P01;
}
}
}
|