91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 1.75MB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2023-10-15
  • 語言: 其他
  • 標簽: 超聲波??

資源簡介

超詳細的超聲波資料,附有代碼可直接下載。本人親自驗證過,有效

資源截圖

代碼片段和文件信息


/*============================================================
//HC-SRO4?超聲波測距模塊?DEMO?程序
//??QQ:?517535000
//淘寶店鋪:http://shop58246706.taobao.com
?????
==============================================================
SMC1602A(16*2)模擬口線接線方式
連接線圖:
???????---------------------------------------------------
???????|LCM-----51???| LCM-----51???| LCM------51??????|
???????--------------------------------------------------|
???????|DB0-----P1.0?| DB4-----P1.4?| RW-------P3.4????|
???????|DB1-----P1.1?| DB5-----P1.5?| RS-------P3.3????|
???????|DB2-----P1.2?| DB6-----P1.6?| E--------P3.5????|
???????|DB3-----P1.3?| DB7-----P1.7?| VLCD接1K電阻到GND|
???????---------------------------------------------------
接線:模塊TRIG接?P2.6??ECH0?接P2.7

本程序源碼只供學習參考,不得應用于商業用途,如有需要請聯系作者。

[注:AT89x51使用12M或11.0592M晶振實測使用11.0592M]
=============================================================*/
#include? //器件配置文件
#include?
#define??RX??P2_7
#define??TX??P2_6

sbit?LCM_RS=P2^6;
sbit?LCM_RW=P2^5;
sbit?LCM_E=P2^7;
#define?LCM_Data??P1

#define?Key_Data?P2_0?//定義Keyboard引腳
#define?Key_CLK??P3_2

#define?Busy????0x80?//用于檢測LCM狀態字中的Busy標識

void?LCMInit(void);
void?DisplayOneChar(unsigned?char?X?unsigned?char?Y?unsigned?char?DData);
void?DisplayListChar(unsigned?char?X?unsigned?char?Y?unsigned?char?code?*DData);
void?Delay5Ms(void);
void?Delay400Ms(void);
void?Decode(unsigned?char?ScanCode);
void?WriteDataLCM(unsigned?char?WDLCM);
void?WriteCommandLCM(unsigned?char?WCLCMBuysC);

unsigned?char?ReadDataLCM(void);
unsigned?char?ReadStatusLCM(void);
unsigned?char?code?mcustudio[]?={“mcustudio.com.cn“};
unsigned?char?code?email[]?=????{“fhwxaoo@163.com?“};
unsigned?char?code?Cls[]?=??????{“????????????????“};
unsigned?char?code?ASCII[15]?=????{‘0‘‘1‘‘2‘‘3‘‘4‘‘5‘‘6‘‘7‘‘8‘‘9‘‘.‘‘-‘‘M‘};

static?unsigned?char?DisNum?=?0;?//顯示用指針 ??
???????unsigned?int??time=0;
???unsigned?long?S=0;
???bit??????flag?=0;
???unsigned?char?disbuff[4] ???={?0000};


//寫數據
void?WriteDataLCM(unsigned?char?WDLCM)?
{
ReadStatusLCM();?//檢測忙
LCM_Data?=?WDLCM;
LCM_RS?=?1;
LCM_RW?=?0;
LCM_E?=?0;?//若晶振速度太高可以在這后加小的延時
LCM_E?=?0;?//延時
LCM_E?=?1;
}

//寫指令
void?WriteCommandLCM(unsigned?char?WCLCMBuysC)?//BuysC為0時忽略忙檢測
{
if?(BuysC)?ReadStatusLCM();?//根據需要檢測忙
LCM_Data?=?WCLCM;
LCM_RS?=?0;
LCM_RW?=?0;
LCM_E?=?0;
LCM_E?=?0;
LCM_E?=?1;
}

//讀數據
unsigned?char?ReadDataLCM(void)
{
LCM_RS?=?1;?
LCM_RW?=?1;
LCM_E?=?0;
LCM_E?=?0;
LCM_E?=?1;
return(LCM_Data);
}

//讀狀態
unsigned?char?ReadStatusLCM(void)
{
LCM_Data?=?0xFF;?
LCM_RS?=?0;
LCM_RW?=?1;
LCM_E?=?0;
LCM_E?=?0;
LCM_E?=?1;
while?(LCM_Data?&?Busy);?//檢測忙信號
return(LCM_Data);
}

void?LCMInit(void)?//LCM初始化
{
LCM_Data?=?0;
WriteCommandLCM(0x380);?//三次顯示模式設置,不檢測忙信號
Delay5Ms();?
WriteCommandLCM(0x380);
Delay5Ms();?
WriteCommandLCM(0x380);
Delay5Ms();?

WriteCommandLCM(0x381);?//顯示模式設置開始要

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????5287??2009-12-22?22:40??超聲波測距51C程序\51.C

?????目錄??????????0??2010-03-12?19:25??超聲波測距51C程序

-----------?---------??----------?-----??----

?????????????????5287????????????????????2


評論

共有 條評論