time calculation

This commit is contained in:
clf3 2023-09-05 20:39:59 +08:00
parent 4a666d121d
commit af269dd20a
1 changed files with 25 additions and 15 deletions

View File

@ -23,7 +23,7 @@ int outcircle=80;
int midcircle=60; int midcircle=60;
int midcircle2=40; int midcircle2=40;
int incircle=20; int incircle=20;
unsigned long time=0;
Servo baseServo; Servo baseServo;
Ucglib_ST7735_18x128x160_HWSPI ucg(/*cd=*/ 9, /*cs=*/ 10, /*reset=*/ 8); Ucglib_ST7735_18x128x160_HWSPI ucg(/*cd=*/ 9, /*cs=*/ 10, /*reset=*/ 8);
@ -35,7 +35,7 @@ void setup(void)
pinMode(trigPin, OUTPUT); //设置trigPin端口模式 pinMode(trigPin, OUTPUT); //设置trigPin端口模式
pinMode(echoPin, INPUT); //设置echoPin端口模式 pinMode(echoPin, INPUT); //设置echoPin端口模式
Serial.begin(115200); //设置串口传输率 Serial.begin(9600); //设置串口传输率
baseServo.attach(ServoPin); //初始化舵机 baseServo.attach(ServoPin); //初始化舵机
//欢迎屏幕 //欢迎屏幕
@ -195,8 +195,10 @@ void loop(void)
fix(); fix();
fix_font(); //重绘屏幕背景元素 fix_font(); //重绘屏幕背景元素
Serial.print("clear:");
for (int x=180; x > 4; x-=2){ //底座舵机从180~0度循环 Serial.println(millis()-time);
time=millis();
for (int x=180; x >= 0; x-=2){ //底座舵机从180~0度循环
baseServo.write(x); //调整舵机角度 baseServo.write(x); //调整舵机角度
@ -228,9 +230,9 @@ void loop(void)
//调试代码,输出角度和测距值 //调试代码,输出角度和测距值
Serial.print(x); //Serial.print(x);
Serial.print(" , "); //Serial.print(" , ");
Serial.println(distance); //Serial.println(distance);
//if (x > 70 and x < 110) fix_font(); //扫描线和数字重合时,重绘数字 //if (x > 70 and x < 110) fix_font(); //扫描线和数字重合时,重绘数字
@ -247,14 +249,19 @@ void loop(void)
// ucg.print("cm "); // ucg.print("cm ");
//delay(10); //delay(10);
} }
Serial.print("left:");
Serial.println(millis()-time);
time=millis();
ucg.clearScreen(); //清屏 如果arduino供电不足可能会引起白屏显示信号中断可以用 cls();函数代替 ucg.clearScreen(); ucg.clearScreen(); //清屏 如果arduino供电不足可能会引起白屏显示信号中断可以用 cls();函数代替 ucg.clearScreen();
delay(50); delay(50);
//cls(); //如有频繁白屏情况,可以使用该函数 。或者增加外部供电 //cls(); //如有频繁白屏情况,可以使用该函数 。或者增加外部供电
fix(); fix();
fix_font(); //重绘屏幕背景元素 fix_font(); //重绘屏幕背景元素
Serial.print("clear:");
for (int x=1; x < 176; x+=2){ Serial.println(millis()-time);
time=millis();
for (int x=0; x <= 180; x+=2){
baseServo.write(x); //调整舵机角度 baseServo.write(x); //调整舵机角度
//绘制雷达扫描线 //绘制雷达扫描线
@ -284,9 +291,9 @@ void loop(void)
} }
//调试代码,输出角度和测距值 //调试代码,输出角度和测距值
Serial.print(x); //Serial.print(x);
Serial.print(" , "); //Serial.print(" , ");
Serial.println(distance); //Serial.println(distance);
//if (x > 70 and x < 110) fix_font(); //扫描线和数字重合时,重绘数字 //if (x > 70 and x < 110) fix_font(); //扫描线和数字重合时,重绘数字
@ -302,6 +309,9 @@ void loop(void)
// ucg.print("cm "); // ucg.print("cm ");
//delay(10); //delay(10);
} }
Serial.print("right:");
Serial.println(millis()-time);
time=millis();
ucg.clearScreen(); // ucg.clearScreen(); //
delay(50); delay(50);
//cls(); //cls();