资源简介

超声波测距模块源代码及上位机调试软件,以及模块原理图

资源截图

代码片段和文件信息


#include “US100Test.h“

void Delay1Ms(void);
void Delay5Ms(void);
void Delay400Ms(void);

void UART_ISR(void);
void UARTSnd(unsigned char dat);
void UART_init();
void init(void);

sbit RCK_STMM = P2^7;
sbit DIO_DS   = P2^6;
sbit SCK_SHBit = P2^5;

sbit Trig_Mode = P2^0;
sbit UART_Mode = P2^1;
sbit UART_TEMP  = P2^2;

sbit Trig_Pin = P1^7;
sbit Echo_Pin = P1^6;

void InitIOPort()
{
// P0M1 = 0XFF //p0口设为输入。
P0M1 = 0;//P0口设为双向口,可输入输出
P0M2 = 0;//P0口设为双向口,可输入输出

P2M1 &= 0X0F;//P2口的P2.5,P2.6,P2.7设为双向口,可输入输出
P2M2 &= 0X0F;//P2口的P2.5,P2.6,P2.7设为双向口,可输入输出
}


void DisplayLED(unsigned char LEDid unsigned char Value unsigned char Isdot)
{
unsigned char tempa tempb;
unsigned char tempc tempd;
const unsigned char NumValue[11] = {0X40 0X79 0X24 0X30 0X19 0X12 0X02 0X78 0X00 0X10 0X3F};//0 1 2 3 4 5 6 7 8 9 -.

tempa = 1;
tempa <<= (LEDid-1);
if(Value >= 11)//value should little than 10
Value = 0;
tempb = NumValue[Value];
if(Isdot == 0)
tempb += 0X80;

//begin output
tempd = 0X80;
for(tempc = 0; tempc < 8; tempc++)
{
SCK_SHBit = 0;
SCK_SHBit = 0;
DIO_DS  = (tempa&tempd);
SCK_SHBit = 1;
SCK_SHBit = 1;
tempd >>= 1;
}

tempd = 0X80;
for(tempc = 0; tempc < 8; tempc++)
{
SCK_SHBit = 0;
SCK_SHBit = 0;
DIO_DS  = (tempb&tempd);
SCK_SHBit = 1;
SCK_SHBit = 1;
tempd >>= 1;
}

RCK_STMM = 0;
RCK_STMM = 0;
RCK_STMM = 0;
RCK_STMM = 0;
RCK_STMM = 1;
RCK_STMM = 1;
RCK_STMM = 1;
RCK_STMM = 1;
//Delay1Ms();
}

void DisplayLength(unsigned long number)
{
unsigned char Thousand Hundred Decade Unit;
if(number > 9999)
number = 0;
Thousand = number/1000;

number = number%1000;
Hundred = number/100;

number = number%100;
Decade = number/10;

Unit = number%10;

DisplayLED(1 Thousand 0);
DisplayLED(2 Hundred 0);
DisplayLED(3 Decade 0);
DisplayLED(4 Unit 0);
}


unsigned long MeterByTrig()
{
unsigned char tempa;
unsigned char IsOverFlow;
unsigned long PresentTime tempb;
IsOverFlow = 0;

//Delay1Ms();

P1M1 &= 0X7F;
P1M2 &= 0X7F;

P1M1 |= 0X40;
P1M2 &= 0XBF;


//Timer Init
TMOD = 0X11;
TAMOD = 0X00;
TCON = 0X00;
TH1 = 0;
TL1 = 0;

Trig_Pin = 0;
for(tempa = 0; tempa < 10; tempa++)
{
Trig_Pin = 1;
}
Trig_Pin = 0;

while(1)
{
if(Echo_Pin == 1)
{//Start Timer;
TCON = 0X40;//start timer
break;
}
if(TCON&0X80)
{
IsOverFlow = 1;
break;//overflow;
}
}

while(1)
{
if(Echo_Pin == 0)
{//Stop Timer;
TCON = 0X00;
break;
}
if(TCON&0X80)
{
IsOverFlow = 1;
break;//overflow;
}
}

// unsigned long PresentTime tempb;
PresentTime = TH1;
PresentTime <<= 0X08;
PresentTime += TL1;

tempb = PresentTime/137;
PresentTime /= 7;//*3

PresentTime -= tempb;//time us

tempb = PresentTime/150;
PresentTime /= 3;
PresentTime += tempb;
//Delay1Ms();
return

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1672  2010-06-20 22:41  超声波测距\超声波PIC单片机C程序.rar

     文件       2229  2010-06-20 22:41  超声波测距\超声波测距51C程序.rar

     文件      26951  2010-06-20 22:41  超声波测距\超声波测距LC1602显示.rar

     文件      32489  2010-06-20 22:41  超声波测距\超声波测距LCD12864显示.rar

     文件      79344  2010-06-20 22:41  超声波测距\超声波测距串口显示.rar

     文件      76598  2010-06-20 22:41  超声波测距\超声波测距数码管显示.rar

     文件      38912  2011-01-19 13:47  超声波测距\SDM-IO超声波测距传感器.doc

     文件     228932  2010-03-26 17:35  超声波测距\HC-SR04超声波测距模块.pdf

     文件      42496  2011-04-15 16:54  超声波测距\SRF06热卖超声波资料\SRF06-US100改进型产品介绍.doc

     文件      11683  2002-12-04 09:54  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\START900.A51

     文件      22791  2010-12-05 17:11  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\START900.lst

     文件       1006  2010-12-05 17:11  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\START900.obj

     文件      10195  2010-12-27 10:35  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US-100LPC932

     文件       3894  2010-12-27 10:35  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US-100LPC932.hex

     文件      15599  2010-12-27 10:35  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US-100LPC932.M51

     文件       4882  2010-12-27 10:37  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US-100LPC932.plg

     文件       1876  2010-12-27 10:32  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US-100LPC932_Opt.Bak

     文件          0  2010-11-28 17:41  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US-100LPC932_Uv2.Bak

     文件       3708  2010-12-27 10:35  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US100Test.c

     文件        150  2010-12-27 10:14  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US100Test.h

     文件       9220  2010-12-27 10:35  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US100Test.LST

     文件      11040  2010-12-27 10:35  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US100Test.OBJ

     文件         39  2010-12-27 10:35  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US100Test.__i

    .......      2434  2010-11-28 18:13  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US-100LPC932.Uv2.bak

    .......     14087  2013-05-14 22:03  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US-100LPC932.uvproj

    .......      1876  2010-12-27 10:37  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US-100LPC932.opt.bak

    .......      8211  2013-05-14 22:03  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US-100LPC932.uvopt

    .......     71070  2013-05-14 22:03  超声波测距\SRF06热卖超声波资料\超声波P89LPC932A1FDH电平触发测距\US-100LPC932.uvgui.Administrator

     文件      39554  2010-12-27 10:58  超声波测距\SRF06热卖超声波资料\原理图及Datasheet\US100_使用参考.pdf

     文件     144079  2010-12-12 17:14  超声波测距\SRF06热卖超声波资料\原理图及Datasheet\datasheet\74HC_HCT595.pdf

............此处省略9个文件信息

评论

共有 条评论