亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3032|回復: 0
打印 上一主題 下一主題
收起左側

單片機學習筆記(二)驅動蜂鳴器

[復制鏈接]
跳轉到指定樓層
樓主
ID:108531 發表于 2016-3-12 16:49 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
利用單片機驅動蜂鳴器發聲:
C語言源程序:
#include<reg52.h> //包含52單片機的頭文件
#inlcude<intrins.h> //該頭文件包含了各種移位函數
//_crol_ 字符循環左移
//_cror_ 字符循環右移
//_irol_ 整數循環左移
//_iror_ 整數循環右移
//_lrol_ 長整數循環左移
//_lror_ 長整數循環右移
//_nop_ 空操作8051 NOP 指令
//_testbit_ 測試并清零位8051 JBC 指令
#define uint unsigned int   //定義uint為無符號整型
#define uchar unsigned char   //定義uchar為無符號字符型
uchar temp,num,num1; //定義temp,num,num1為三個無符號字符變量
sbit beep=P3^4; //定義蜂鳴器所在的端口位
void delay(uint); //延時函數原型聲明
void main() //主函數
{
  temp=0xfe;  //對應二進制11111110 賦值給P1可點亮第一個發光二極管
  while(1)  //主循環
  {
    for(num1=0;num1<3;num1++)  //子循環循環三次
    {
      for(num=0;num<8;num++)  //子循環循環8次
      {
        P1=temp; //將temp賦值給P1點亮發光二極管
        beep=0;  //蜂鳴器發聲
        delay(100); //延時
        temp=_crol_(temp,1);//將temp字符變量中的值左移一位
        P1=0xff; //熄滅所有發光二級管
        beep=1; //蜂鳴器停止發聲
        delay(100);延時
      }
    }
    for(num1=0;num1<3;num1++)  //子循環循環三次
    {
      for(num=0;num<8;num++)  //子循環循環8次
      {
        P1=temp; //將temp賦值給P1點亮發光二極管
        beep=0;  //蜂鳴器發聲
        delay(100); //延時
        temp=_cror_(temp,1);//將temp字符變量中的值右移一位
        P1=0xff; //熄滅所有發光二級管
        beep=1; //蜂鳴器停止發聲
        delay(100);延時
      }
    }
  }
}
void delay(uint a)  //延時函數
{
  uint x,y;    //定義無符號變量X,Y
  for(x=a;x>0;x--)  //外循環將x的值循環減1 直到小于0
    for(y=100;y>0;y--);  //內循環將y的值循環減1 直到小于0
}
//程序效果 發光二極管依次從左到右閃亮 每閃亮一次 蜂鳴器發聲 循環3次 然后倒過來再次循環閃亮 每閃亮一次 蜂鳴器發聲

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表