• 大小: 3.8MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-16
  • 语言: 其他
  • 标签: C+  

资源简介

包含US-100超声波串口测温、测距的说明书资料及例程,原理图和数据手册,电平测距

资源截图

代码片段和文件信息


#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;

unsigned char LastRcvData;
unsigned char GLengthHigh GLengthLow GTempera;
unsigned char RcvIndex;

void UART_ISR(void) interrupt 4
{
RI = 0; // clear receive interrupt flag
LastRcvData=SBUF; // copy input bufffer to ch
if(RcvIndex == 0)
{
GLengthHigh = LastRcvData;
RcvIndex++;
}
else if(RcvIndex == 1)
{
GLengthLow = LastRcvData;
RcvIndex = 150;
}
else if(RcvIndex == 100)
{
GTempera = LastRcvData;
RcvIndex++;
}
}

void UARTSnd(unsigned char dat)
{

TI=0; // clear transmit interrupt flag
SBUF=dat; // start sending one byte
while (!TI); // wait until sent

}

 
void UART_init()
{
SCON=0x50; // select BRG as UART Baud Rate Gen
SSTAT=0x60; // separate Rx / Tx interrupts
BRGR0=0xF0; // setup BRG for 9600 baud @ 7.373MHz internal RC oscillator
BRGR1=0x02;
//BRGR0=0x70; // setup BRG for 9600 baud @ 12MHz external Crystal
// BRGR1=0x04;
BRGCON = 0x03;      // enable BRG

P1M1 = 0x00;     //push pull except RX
P1M2 = 0xFD;
ES = 1; // enable UART interrupt
EA = 1;

RcvIndex = 0;
}


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 DisplayTemperature(unsigned char tempa)
{
unsigned char Decade Unit;
unsigned char FlagPosi;
if(tempa >= 45)
{
tempa -= 45;
FlagPosi = 1;
}
else
{
tempa = 45-tempa;
FlagPosi = 0;
}

if(tempa > 99)
tempa = 0;

Decade = tempa/10;
Unit = tempa%10;

if(FlagPosi == 0)

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

     文件     686600  2011-04-30 22:29  US-100资料及例程\US-100超声波模块测试板使用说明V1.pdf

     文件     595049  2017-07-22 10:37  US-100资料及例程\US-100超声波测距模块RS232底板使用说明(1).pdf

     文件     595049  2011-06-19 21:22  US-100资料及例程\US-100超声波测距模块RS232底板使用说明.pdf

     文件     392696  2017-07-22 10:37  US-100资料及例程\US-100超声波测距模块在Arduino平台上的使用说明(1).pdf

     文件     392696  2011-06-19 16:17  US-100资料及例程\US-100超声波测距模块在Arduino平台上的使用说明.pdf

     文件     337356  2017-07-11 11:22  US-100资料及例程\US100产品介绍V2.01.pdf

     文件        811  2010-12-27 10:32  US-100资料及例程\使用说明.txt

     文件     144079  2010-12-12 17:14  US-100资料及例程\原理图及Datasheet\datasheet\74HC_HCT595.pdf

     文件      35226  2010-12-12 17:24  US-100资料及例程\原理图及Datasheet\datasheet\LG3641BH.jpg

     文件    1678896  2010-11-28 18:09  US-100资料及例程\原理图及Datasheet\datasheet\UM_P89LPC932_1.pdf

     文件      39554  2010-12-27 10:58  US-100资料及例程\原理图及Datasheet\US100_使用参考.pdf

     文件      11683  2002-12-04 09:54  US-100资料及例程\超声波P89LPC932A1FDH串口测温\START900.A51

     文件      22791  2010-12-05 17:11  US-100资料及例程\超声波P89LPC932A1FDH串口测温\START900.lst

     文件       1006  2010-12-05 17:11  US-100资料及例程\超声波P89LPC932A1FDH串口测温\START900.obj

     文件       9922  2010-12-27 10:45  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US-100LPC932

     文件       2274  2010-12-27 10:45  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US-100LPC932.hex

     文件      15879  2010-12-27 10:45  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US-100LPC932.M51

     文件       1876  2010-12-27 10:47  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US-100LPC932.Opt

     文件       3626  2010-12-27 10:47  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US-100LPC932.plg

     文件       2434  2010-11-28 18:13  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US-100LPC932.Uv2

     文件       1876  2010-12-27 10:32  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US-100LPC932_Opt.Bak

     文件          0  2010-11-28 17:41  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US-100LPC932_Uv2.Bak

     文件       3907  2010-12-27 10:44  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US100Test.c

     文件        150  2010-12-27 10:14  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US100Test.h

     文件       9436  2010-12-27 10:44  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US100Test.LST

     文件      10498  2010-12-27 10:44  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US100Test.OBJ

     文件         39  2010-12-27 10:44  US-100资料及例程\超声波P89LPC932A1FDH串口测温\US100Test.__i

     文件      11683  2002-12-04 09:54  US-100资料及例程\超声波P89LPC932A1FDH串口测距\START900.A51

     文件      22791  2010-12-05 17:11  US-100资料及例程\超声波P89LPC932A1FDH串口测距\START900.lst

     文件       1006  2010-12-05 17:11  US-100资料及例程\超声波P89LPC932A1FDH串口测距\START900.obj

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

评论

共有 条评论