久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

倒車雷達

[復制鏈接]
跳轉到指定樓層
樓主
ID:317831 發表于 2018-4-27 15:27 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
/*-------------------------------------
超聲波測距器單片機程序
MCU AT89C51  XAL 12MHz
2009.5.25
#include<at89x51.h>
#include<intrins.h>
#define uchar unsigned unsigned char
#define uint unsigned int
#define ulong unsigned long
uchar code tab[]={0x18,0x7b,0x2c,0x29,0x4b,0x89, 0x 88, 0x3b, 0x 08, 0x 09, 0x f f, 0x 8e};//段碼
data uchar testok,num,keynum1,mao;
data uchar dispram[4]={0,0,0,0};//顯示初值
data uine i;
data ulong time,baojing;
sbit  set=P2^0;//定義位尋址,設置鍵
sbit  add=P2^1;//
sbit  dec= P2^2;//
sbit  ok= P2^3;//確定鍵
dalay(uchar t)//延時子程序
{
   uchar I;
   for(i=0;i<t;i++)
     for(j=0;j<10;j++)
}
init()//定時器初始化、啟動超聲波發送
{
   uchar i=4;
   TH0=0;
   TL0=0;
   TR0=1;
   while(i--)
   {
      P1_0=~p1_0
      dalay(1);
}
}
display()//顯示子程序
{
uchar i,temp=0xef;
  for{i=0;i<4;i++}
   {
       P2=temp;
      if(mao==1&&keynum-1==i)
        P0=0xff;//
       else
          p0=tab[dispram];//亮,送顯示數據
      temp=_crol_(temp,1);
      delay(10);
       P2=0xff;
   }
}
viod shanshuo()//閃爍
{
  if(keynum1<1)
   {
      keynum1++;
mao=1;
}
else
{
   keynum1++;
   mao=0;
   if(keynum1==2)
   keynum1=0;
}
}
void keyscan()//鍵盤掃描
{
      if(set==0)//設置鍵
        delay(10);
        if(set==0)
         {
            while(!set);
            delay(10);
            while(!set);
            keynum++;//鍵值加1
EX0=0;   //管定時器0和外部中斷1
ET0=0;
if(keynum==5)
    keynum=1;
}
if(keynum!=0)
{
    if(add==0)   //增加
        delay(10);
        if(add==0)
       {
            while(!add);
             delay(10);
             while(!add);
               dispram[keynum-1]++; //對應的緩沖區值加1
if(dispram[keynum-1]==10)
    dispram[keynum-1]=0;
}
          if(dec==0) //值減
              delay(10);
              if(dec=0)
{
while(!dec);
delay(10);
while(idec;
if(dispram[keynum-1]== 0)
dispram[keynum-1]=10;
dispram[keynum-1]--;//對應的緩沖區值減1
              }
}
if(ok==0)//確定鍵
    delay(10);
    if(ok==0)
    {
        while(!ok)
        delay(10);
        while(!ok);
        keynum=0;
baojing=dispram[3]*1000+dispram[2]*100+dispram[1]*10+disprm[0];//取出設置的報警值
        EX0=1;
        ET0=1;
}
}
/*主程序*/
void main(viod)
{
TMOD=0x01;//定時器0模式1
IE=0x80;//開總中斷,相當于EA=1;
while(1)
{
   testok=0;
     if(keynum!=0)
         shanshuo();
     else{ inie();//啟動定時器0和超聲波發送
          EX0=1;//開外部中斷0
          ET0=1;//開定時器0中斷
          while(!testok)display();
}
          keyscan();
            if(1==teskok)
            {
                time=TH0;
time=(time<<8)/TL0;//取出定時器0值
time*=172;
time/=10000;//變為厘米
if(time<baojing)
P1_1=0;//報警
else  P1_1=1;
dispram[0]=(uchar)(time%10);//距離計算送顯示緩沖
time/=10;
dispram[1]=(uchar)(time%10);
time/=10;
dispram[2]=(uchar)(time%10);
dispram[3]=(uchar)(time%10);
}
if(2==testok)//超時顯示OFF
{
dispram[0]=11;
dispram[1]=11;
dispram[2]=0;
dispram[3]=10;
             }
             for(i=0;i<300;i++) display();
}
}
/*超聲接收程序(外中斷0)*/
void cs_r(void) interrupt 0
{
TR0=0;
ET0=0;
EX0=0;
testok=1;
}
/*超時清除程序(內中斷T0)*/
void overtime(void)interrupt 1
{
EX0=0;
ET0=0;
TR0=0;
testok=2;
}

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久草网免费 | 日本涩涩视频 | 久久成人国产精品 | 欧美精品一二区 | 欧美高清性xxxxhd | 91久久国产| 国产日韩欧美 | 免费的黄色片子 | 中文字幕第一页在线 | 国产欧美在线 | 日韩精品免费 | 国产精品自拍视频 | www.狠狠干 | 激情欧美一区二区三区 | 午夜小电影 | 欧美亚洲视频在线观看 | 成人av一区二区三区 | 国产人成精品一区二区三 | 黄色片视频免费 | 成人性视频免费网站 | 一区二区三区四区免费观看 | 国产成人精品久久二区二区91 | 中文在线www| 亚洲久久一区 | 色婷婷久久 | 国产免费一区二区三区 | 中文字幕成人av | 日本在线视频一区二区 | 国产精品影视 | 欧美一区二区三区在线观看 | 亚洲欧洲精品成人久久奇米网 | 久久久综合精品 | 欧美精品一区二区在线观看 | 91在线视频观看免费 | 亚洲精品资源 | 谁有毛片 | 久久久成人免费一区二区 | 中国一级特黄真人毛片 | 天天干天天玩天天操 | 久久久一区二区三区 | 国产精品久久久久久亚洲调教 |