Академический Документы
Профессиональный Документы
Культура Документы
void port_init(void)
{
P0 = 0x00;
P2 = 0x00;
P3 =0x04;
}
void measure(){
repeat=1;
InitTimer1();
trig=1;
for(i=0;i<10;i++);
trig=0;
TR1=1;
while(repeat){}
}
void InitTimer1(){
TH1=0x00;
TL1=0x00;
TMOD&=0x0F;
TMOD|=0x10; //timer to find time
elapsed in return of echo
ET1 = 1;
EA = 1;
}
void timer1_interrupt() interrupt 2
{
TR1=0;
timer&=0x00;
timer|=TH1;
timer=(timer<<8);
timer|=TH0;
repeat=0;
dist=(timer*(1/100000)*0.342)/2;
}
/*
int main(void)
{
port_init();
t
InitPWM();
write_PWM(127);
}
// Timer0 initialize
void InitTimer0(void)
{
TMOD &= 0xF0; // Clear 4bit field for timer0
TMOD |= 0x01; // Set timer0 in mode 1 = 16bit mode
// PWM initialize
void InitPWM(void)
{
// Timer0 ISR
void Timer1_ISR (void) interrupt 1
{
TR1 = 0; // Stop Timer 0
sbit rs=P1^3;
sbit rw=P1^4;
sbit e= P1^5;
void delay(unsigned int);
void cmd(unsigned char);
void dat(unsigned char);
cmd(0x38);
cmd(0x01);
cmd(0x0c);
cmd(0x83);
cmd(0x06);
for(i=0;ch[i]!='\0';i++)
dat(ch[i]);
cmd(0xc3);
ch1=((dist/10)+48);
dat(ch1);
ch1=a;
dat((dist%10)+48);
/*
while(1){
for(k=0;k<16;k++)
{
cmd(0x1c);
}
}
*/
}
void delay(unsigned int t)
{
unsigned int i,j;
e=1;
for(i=0;i<t;i++)
for(j=0;j<1275;j++);
e=0;
}
rs=1;
rw=0;
P2=ch;
delay(20);
}
void InitTimer1(){
TMOD&=0x0F;
TMOD|=0x10; /*initialize
Timer*/
//TF1=0;
//TR1 = 0;
//ET1=0;
}
/*void Delay_us()
{
TL1=0xF5;
TH1=0xFF;
TR1=1;
while (TF1==0){}
TR1=0;
TF1=0;
}
*/