亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.c

?? 超聲波測距,包括有pcb原理圖
?? C
字號:
/--------------------------------------------------------------------------------
** 修改人: li
** 版  本: 2.0
** 日 期: 2009年3月20日
** 描 述: 在硬件上與原始版本不同的是超聲波發射電路采用MAX232來提高發射電壓
	   在軟件上與原始版本不同的是打開接收超聲波中斷時間不同,比原始版本加了一點延時(做這個作品時仔細想下為什么)
   注  意:超聲波探頭之間的距離與發射的振幅有關。 
***********************************************************************************************************/


#include<STC12C5410AD.h>
#include<intrins.h>

#define uint   unsigned  int
#define uchar  unsigned	 char

#define	 duan_ma   P1			 
sbit	 H1 = P3^3;
sbit	 H2 = P3^4;
sbit	 H3 = P3^5;
sbit	 chaosb_t = P3^7;

uchar map[10]={0x14,0xf6,0x1a,0x52,0xf0,0x51,0x11,0x76,0x10,0x70};   //七段共陽LED顯示數碼轉換為筆段碼0--9。

uint juli=0;	 //juli用于存放距離值
uint t_no=0;	 //t_no用于存放發射到接受的T0的計數值

//uchar pulse_t = 0;	 //pulse_t用于存放發射的脈沖個數
uchar pulse_r = 0;	 //pulse_r用于存放接收的脈沖個數

bit b=1;
//uint dd=0;

//STC12C4052在11.0592MHz晶振下(1T時鐘時)的1毫秒延時子程序
//---------------------延時------------------------
void delay1ms(uint time)  //11.0592M晶振 1ms
{
  uint i;
  uint j;
//  k=time*3;	 //修正值
 for (i=0;i<time;i++)
 { 
   j=690;		 //164	//j=680:1s==990ms;5s==4.940s;8s==7.910s	 j=690:100ms==101ms;500ms==501ms;1s==1.004s
   while(j--);
 } 	
}

///////////////////////////////////////////////------------------------------------
void display(uint number)  //數碼管顯示程序,可以顯示的數值范圍為十進制的0~999。
{
 uchar bai=0,shi=0,ge=0;

 bai= number%1000/100;
 shi= number%100/10;
 ge = number%10;

 duan_ma=map[bai];
 H1=0;
 H2=1;
 H3=1;
 delay1ms(1);  //保證每一位都顯示一定的時間,否則數碼管會點不亮并且閃爍。
 H1=1;H2=1;H3=1;
 duan_ma=map[shi];
 H2=0;
 H1=1;
 H3=1;
 delay1ms(1);  //
 H1=1;H2=1;H3=1;
 duan_ma=map[ge];
 H3=0;
 H1=1;
 H2=1;
 delay1ms(1); // 
 H1=1;H2=1;H3=1;
 
}
//---------------------------------------------------------------------------------
void IOinit()	//復位時默認為傳統的準雙向I/O口。
 {
   P0M0 = 0;	   //PnM0 PnM1 :00 設置I/O口為準雙向輸出;01推挽輸出,10僅為輸入(高阻),11開漏
   P0M1 = 0;
   P1M0 = 0x00;
   P1M1 = 0xff;	   //設P1口為推挽輸出
   P2M0 = 0;     
   P2M1	= 0;
   P3M0 = 0x00;
   P3M1 = 0xf8;	   //設P3.3、P3.4、P3.5、P3.7為推挽輸出
   
   P1=0xFF;	   //主要是向段碼端口寫入1初始化
   P37=0;	   //
	 H1=1; //
	 H2=1;
	 H3=1;
 }

//***********************************以下是中斷等初始化程序**********************************
void INT_System_init() //外部中斷初始化
{
//   IT0=0;   //外部中斷0,低電平觸發
   IT0=1;   //外部中斷0,下降沿觸發
   EX0=1;   //使能外部中斷0
//   IT1=0;   //外部中斷1,低電平觸發
// IT1=1;   //外部中斷1,下降沿觸發
   EX1=0;   //禁能外部中斷1
//   
} 


//////////////////////
void T0init()
  {
    TMOD |= 0x01;  //設置T0為十六位定時模式,
	TH0 = 0x00;	  //
	TL0 = 0x00;	  //
	AUXR =0;  //  T0工作在12T模式,注意:系統指令周期依然是1T,0.0904224us,不能改變的。
	TR0 = 0;	  //
	ET0 = 0;
   }

void T1init()
  {
    TMOD |= 0x20;  //設置T1為八位自動重裝模式,作為波特率發生器9600
	TH1 = 0xFD;	  //
	TL1 = 0xFD;	  //
	AUXR =0;  //  T1工作在12T模式
	TR1 = 1;	  //
	ET1 = 0;
   }

void UARTint()
  {
   SCON = 0x40;      //串口工作在方式1,波特率可變的8位異步通信方式。串口不接收數據。
   PCON = 0;         // 波特率不倍增
  }

///////////////////////////

void INT0_serve() interrupt 0  using 0			//IE0_VECTOR   外部INT0中斷服務程序
{
 pulse_r++;

 if(pulse_r==5)
 {
    TR0=0;
//	pulse_r=0;
	b=0;  
	 EA=0;

 }
}
/*
void T0_serve() interrupt 1 using	1	//定時器T0中斷服務程序,用于控制測量超時,若在測量的過程中T0溢出,則說明出錯,中斷本次測量。
{
  EA = 0;
  TL0 = 0;	   //
  TH0 = 0;	   //

  b=0;
  pulse_r=0;
  juli=888;
  display(juli);  //數碼管顯示程序
//  EA = 1;
}
*/

//---------------------------------------------------------------------------

void send40K()		      //發40KHz脈沖函數,脈沖個數應大于或等于5個。	 
{uchar i,j;
 uchar f=0;
 uchar k=0;
    pulse_r=0;
	TH0 = 0x00;	  //
	TL0 = 0x00;	  //
	TR0=0;
	b=1;	
 chaosb_t = 0;
 EA=0;

 for(f=0;f<5;f++)	      //發5個預測試脈沖距離
 {
  chaosb_t=~chaosb_t;	  //經過二次取反得到一個完整的40K方波信號。
  for(k=0;k<17;k++);
  _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
  _nop_();_nop_();_nop_();                                  
  chaosb_t=~chaosb_t;
  for(k=0;k<16;k++);
  _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();//
  _nop_();_nop_();                                          
 }
  TR0=1;
  for(i=0;i<68;i++) {for(j=0;j<25;j++);};		  
  EA=1;
  for(i=0;i<33;i++)  {  display(juli); }; //數碼管顯示程序
  TR0=0;
  EA=0; 
  if(pulse_r!=5)   //用于控制測量超時,若在以上延時過后還收不夠脈沖則說明本次測量出錯,距離顯示為888,表示錯誤值。
   juli=888;	  //測量有效距離不大于888cm,實際測量距離為2--300cm。
				 
  else			
  {	 		      
   t_no=TH0;	      
   t_no<<=8;
   t_no|=TL0;

   display(juli);  //數碼管顯示程序  //
  juli=((t_no*1.05)/1000000)*345*50-1;	  //計算距離值,單位是厘米
 // juli=((t_no*1.0850694)/1000000)*345*50-1;	  //計算距離值,單位是厘米。
} 
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------

void main()
{
 
 uint a=0;
 uchar juli_h=0;
 uchar juli_l=0;


 IOinit();            	//
 INT_System_init();     //
 T0init();
 T1init();
 UARTint();

 EA =1;
 while(1)
 {
  a++;	
  if(a==2)		//
  {
    a=0;
	juli_l=juli&0x00ff;
	juli_h=juli>>8;	

	display(juli);  //數碼管顯示程序   //	  //	delay1ms(2);  //

    SBUF=juli_h;					   //先發高八位,后利用顯示函數延時大概6ms后再發低八位。距離單位為厘米。
    while(!TI);
	TI=0;
	SBUF=juli_l;
  }

  display(juli);  //數碼管顯示程序

  send40K();			//  pulse_t
								  
  display(juli);  //數碼管顯示程序

 }										
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜臀av性久久久久av蜜臀妖精| 欧美在线不卡视频| 91精品国产综合久久久蜜臀粉嫩| 日韩精品自拍偷拍| 日韩成人一级大片| 欧美日韩一区二区在线观看| 中文字幕在线观看不卡| 成人久久视频在线观看| wwww国产精品欧美| 黄色精品一二区| 在线播放91灌醉迷j高跟美女| 一个色妞综合视频在线观看| 成人毛片在线观看| 中文字幕视频一区| 色天天综合久久久久综合片| 美腿丝袜亚洲综合| 风间由美一区二区三区在线观看| 中文字幕高清一区| 一本高清dvd不卡在线观看| 亚洲高清不卡在线观看| 91精品欧美福利在线观看| 国产在线精品不卡| 亚洲欧美日韩国产一区二区三区| 欧美肥妇毛茸茸| 国产一区二区电影| 亚洲女与黑人做爰| 日韩一本二本av| 国产二区国产一区在线观看 | 91在线精品一区二区三区| 亚洲在线免费播放| 精品久久久三级丝袜| 91一区一区三区| 视频一区二区三区在线| 中文字幕欧美日韩一区| 在线播放视频一区| a级精品国产片在线观看| 日日夜夜精品免费视频| 国产亚洲欧美一级| 69堂国产成人免费视频| bt7086福利一区国产| 久久成人免费日本黄色| 亚洲中国最大av网站| 欧美激情一区二区三区蜜桃视频| 在线播放一区二区三区| 99精品久久99久久久久| 激情五月播播久久久精品| 亚洲一区国产视频| 亚洲视频一区在线| 久久久美女毛片| 日韩欧美资源站| 欧美日韩一区二区不卡| 99国产一区二区三精品乱码| 精品无人区卡一卡二卡三乱码免费卡 | 一区二区三区在线观看国产| 精品成人私密视频| 欧美久久久影院| 91久久人澡人人添人人爽欧美| 国产麻豆9l精品三级站| 麻豆免费精品视频| 日本美女一区二区三区| 亚洲国产精品一区二区久久恐怖片 | 日韩中文字幕区一区有砖一区 | 日韩精品一区二区三区四区视频| 欧美视频一区二区三区在线观看 | 精品少妇一区二区三区在线视频| 欧美亚洲国产一区二区三区va| 成人av在线影院| 国产精品自拍一区| 精品一区二区免费在线观看| 日韩在线a电影| 日韩一区精品视频| 日韩精品成人一区二区在线| 亚洲国产成人av| 亚洲大片免费看| 婷婷六月综合亚洲| 水蜜桃久久夜色精品一区的特点 | 2021国产精品久久精品| 欧美一区二区三区男人的天堂| 欧美高清视频一二三区| 91精品国产综合久久久久| 制服丝袜中文字幕一区| 717成人午夜免费福利电影| 日韩一二在线观看| 欧美zozo另类异族| 日本一区二区免费在线观看视频| 久久精品人人做人人爽人人| 国产日产欧美精品一区二区三区| 中文字幕欧美激情| 亚洲欧美日韩人成在线播放| 亚洲已满18点击进入久久| 亚洲bt欧美bt精品777| 日韩影院精彩在线| 精品亚洲国产成人av制服丝袜 | 国产日韩欧美一区二区三区乱码| 久久婷婷成人综合色| 国产亚洲欧美色| 中文字幕佐山爱一区二区免费| 亚洲你懂的在线视频| 亚洲一区二区五区| 免播放器亚洲一区| 风间由美一区二区三区在线观看| 91在线porny国产在线看| 欧美日精品一区视频| 日韩欧美久久一区| 中文字幕成人在线观看| 一区二区欧美在线观看| 日本欧美在线看| 成人深夜福利app| 欧美网站大全在线观看| 精品国产乱码久久久久久久| 国产精品欧美久久久久无广告| 一区二区高清免费观看影视大全| 麻豆一区二区三| gogo大胆日本视频一区| 在线播放91灌醉迷j高跟美女 | 日韩欧美激情四射| 国产精品沙发午睡系列990531| 亚洲一区欧美一区| 国模一区二区三区白浆| 欧美日韩国产首页在线观看| 国内外成人在线视频| 日日噜噜夜夜狠狠视频欧美人 | 青青草97国产精品免费观看无弹窗版 | 精品精品欲导航| 一区免费观看视频| 日产国产欧美视频一区精品 | 欧美在线一二三| 精品国精品国产尤物美女| 日韩美女视频一区二区 | 中文字幕在线不卡国产视频| 日本欧美肥老太交大片| 91香蕉视频在线| 国产亚洲精品7777| 日本不卡123| 欧美吻胸吃奶大尺度电影 | 一区二区三区四区在线| 免费av成人在线| 欧美影院精品一区| 国产精品久久久久久久久久久免费看| 免费成人结看片| 日韩视频123| 69堂国产成人免费视频| 久久久.com| 蜜桃av一区二区| 欧美日韩国产系列| 日韩精品一区二区三区swag | 国产精品高潮久久久久无| 亚洲愉拍自拍另类高清精品| 日韩欧美一级片| 日韩欧美二区三区| 香蕉成人伊视频在线观看| 99精品黄色片免费大全| 欧美激情资源网| 国产福利一区二区三区在线视频| 日韩视频免费观看高清完整版| 午夜欧美一区二区三区在线播放| 91亚洲精品一区二区乱码| 国产精品大尺度| 成人app网站| 欧美激情一区在线| 国产电影精品久久禁18| 久久久国产精华| 国精产品一区一区三区mba桃花| 欧美一区二区三区在| 亚洲成av人片在线观看无码| 在线视频综合导航| 亚洲精品久久久久久国产精华液| 99久久综合精品| 亚洲免费观看在线观看| 日本韩国一区二区三区视频| 91麻豆精品国产91久久久久| 欧美第一区第二区| 亚洲美女屁股眼交| 一本色道久久综合亚洲91 | 亚洲国产成人av好男人在线观看| 欧美无砖砖区免费| 日本成人中文字幕在线视频| 欧美一区二区成人| 国产欧美日韩另类视频免费观看 | 暴力调教一区二区三区| 国产精品视频一二三| av网站一区二区三区| 亚洲人吸女人奶水| 在线免费亚洲电影| 视频一区免费在线观看| 日韩一区二区三| 国产成人aaaa| 亚洲免费观看高清完整| 欧美日韩国产影片| 久88久久88久久久| 国产精品久久精品日日| 91精品福利视频| 免费在线看一区| 国产欧美一二三区| 一本到不卡精品视频在线观看| 日韩精品免费视频人成| 国产亚洲一区字幕| 欧美日免费三级在线| 精品无人区卡一卡二卡三乱码免费卡| 国产精品久久一级|