2021/03/26 00:11:57
proestpa
Hello, I have a problem with HCSR04 ultrasonic distance sensor. I wrote a code that works perfectly in proteus simulator but when I uplode it in real mikrochip it stop working properly. Looks like it stucks at one while loop and never get a echo signal. Btw when im uploding the code with pickit that few seconds while code is uploding looks like system is working because led is blinking, after few seconds after upload the system stops and only one led shines without blinking. Thanks for help :/
#define _XTAL_FREQ 8000000
#include
#include
#pragma config FOSC = INTIO67
#pragma config WDTEN = OFF
#pragma config LVP = OFF
#define RB0 PORTBbits.RB0
#define RA1 PORTAbits.RA1
#define RA2 PORTAbits.RA2
#define RA6 PORTAbits.RA6
void delay (unsigned int ms)
{
unsigned int i;
while (ms--) {
for (i = 0; i < 398; i++);
}
}
void main(void) {
float time;
float distance;
OSCCONbits.IRCF2 = 1;
OSCCONbits.IRCF1 = 1;
OSCCONbits.IRCF0 = 0;
ANSELA = 0; //RA0,RA1- analoginis iejimas
ANSELB = 0;
ANSELC = 0;
LATA = 0;
TRISA = 0b00010000;
LATB = 0;
TRISB = 0;
LATC = 0;
TRISC = 0;
T0CON = 0x80; // Konfiguruojamas Timer0
while(1){
TMR0H = 0;
TMR0L = 0;
RB0 = 0; //Trigger 0
__delay_us(2);
RB0 = 1; //TRIGGER 1
__delay_us(10);
RB0 = 0; //TRIGGER 0
while(!PORTAbits.RA4); //Waiting for Echo
TMR0ON = 1;
TMR0=0;
while(PORTAbits.RA4); //Waiting for Echo goes LOW
TMR0ON = 0; //Timer Stops
time = TMR0;
distance = ((float)time/58.82);
distance = distance + 1;
RA2 = 0;
RA1 = 1;
delay(distance);
RA1 = 0;
RA2 = 1;
delay(distance);
}
}
[image]data:image/png;base64,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