找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3710|回复: 0
打印 上一主题 下一主题
收起左侧

单片机I/O控制LED灯与蜂鸣器交替使用实验(时间间隔为500ms)

[复制链接]
跳转到指定楼层
楼主
ID:448670 发表于 2018-12-21 17:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
实验二 I/O实验
一、实验目的
1. 掌握IO口的工作模式。
2. 能够使用单片机控制简单的外设。
3. 能够使用单片机的IO输入操作。
二、实验内容
1. 用一个P口的两位分别控制一个LED灯和一个蜂鸣器,当蜂鸣器响时LED灯熄灭,蜂鸣器停时LED灯点亮,时间间隔为500ms。
2. 编写程序,用一个按键控制蜂鸣器,当按键按下时蜂鸣器响,松开后蜂鸣器停。
3. 编写程序,用一个按键控制蜂鸣器,按键每按下一次实现蜂鸣器状态翻转。


//#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. 编写程序,用一个按键控制蜂鸣器,按键每按下一次实现蜂鸣器状态翻转。
#include <stc15.h>
#include <intrins.h>

void main()
{
    P0M0 |=  0x03;
    P0M1 &= ~0x03;
   
    while(1)
    {
      
        if(P00==0)
        {
           P01=!P01;
           
        }


        
    }
}


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表