专栏文章

机器人等级考试六级游(fa)记(feng)

个人记录参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@miqsl3qy
此快照首次捕获于
2025/12/04 10:03
3 个月前
此快照最后确认于
2025/12/04 10:03
3 个月前
查看原文
这把是真裸考了
啥玩意都不会,100%过不了
考前两天开始复习,做题几乎没几个对的,也就20分左右
实操也在补,根本不会。
听天由命

12.14

最死的一次。
考前一天上吐下泻,去打针,一点都没复习,都不知道还有没有精神考。

12.15

考理论问的豆包,应该没太大问题,我觉着应该能上60
实操本来死了,结果面试的时候一共4个功能,2个实现,一个没调代码结果歪打正着,刚好对了,还有一个电机在转的过程中他没看见我转错了!!!所以本来70的实操因为考官变成100了!!!考官万岁!!!!!!!
这次考的是串口+步进电机,本来以为考直流电机的,结果他考了个步进电机
我写的意义不明的代码
C
#include<AccelStepper.h>
#define dW digitalWrite
#define dR digitalRead
#define Ser Serial
#define aW ledcWrite
#define aWS ledcSetup
#define lAP ledcAttachPin
#define aRS analogSetWidth
#define aR analogRead
#define printf Ser.printf
#define rd read
#define pmO(pin) pinMode(pin,OUTPUT)
#define pmI(pin) pinMode(pin,INPUT)
#define rep(i,a,b) for(int i=a;i<=b;i++)
#define per(i,a,b) for(int i=a;i>=b;i--)
#define string String
#define atoi(s) s.toInt()
#define substr substring
#define find indexOf
#define i2cfasong requestFrom
#define i2cchuanshu beginTransmission
#define i2cjieshuchuanshu endTransmission
#define spichuanshu beginTransaction
#define spijieshuchuanshu endTransaction
#define spifasong transfer
#define W Wire
#define wifi WiFi
#define bujindianji AccelStepper
#define zuidasudu setMaxSpeed
#define hengdingsudu setSpeed
#define hengsuzhuandong runSpeed
#define dangqianweizhi currentPosition
#define jiasudu setAcceleration
#define shezhiweizhi setCurrentPosition
#define haiyoujibu distanceToGo

bujindianji bjdj(4, 5, 19, 18, 23);
string xinweizhi;
bool moveflag = true;
void setup() {
  Ser.begin(115200);
  pmO(2);
  bjdj.zuidasudu(800);
  bjdj.jiasudu(70.0);
  bjdj.shezhiweizhi(0);
  bjdj.moveTo(1024);
  while (bjdj.haiyoujibu()){ dW(2,1);bjdj.run();}
  dW(2,0);bjdj.moveTo(0);
  while (bjdj.haiyoujibu()) {dW(2,1);bjdj.run();}
  dW(2,0);bjdj.moveTo(-1024);
  while (bjdj.haiyoujibu()){ dW(2,1);bjdj.run();}
  dW(2,0);bjdj. ``      .moveTo(0);
  while (bjdj.haiyoujibu()){ dW(2,1);bjdj.run();}
  dW(2,0);
} int state = 0;
string s, c, p;
int s1, c1, p1;
bool flag=1;
void loop() {
//Ser.println("111");
  
  while (Ser.available() > 0) {
    char buf = Ser.rd();

    if (buf == 'S') {
      state = 1;
    } if (buf == 'C') {
      state = 2;
    } if (buf == 'P') {
      state = 3;
    }Ser.println(state);
    if (buf == '\n') {
      if (state == 1) { //S
//        int f=xinweizhi.find('S');
        s = xinweizhi.substr(1);
        s1 = atoi(s);
        Ser.println(s1);
      }
    } else xinweizhi += buf;
  } xinweizhi = "";
  int dq=0;
  if (state == 1 && s1 == 2048) {
    bjdj.moveTo(dq+2048);
    while (bjdj.haiyoujibu()) {
      dW(2, 1);
      bjdj.run();
    } dW(2, 0);
  }
//  if ((state == 1 && s1 == -1024||state==2)&&flag) {
//    bjdj.moveTo(0);
//    while (bjdj.haiyoujibu()) {
//      dW(2, 1);
//      bjdj.run();
//    } dW(2, 0);
//    Ser.println("111");
//    flag=0;
//  }
  if(state==1&&s1==-1024){
//    dq=1024;
    bjdj.moveTo(2048+1024);
    while (bjdj.haiyoujibu()) {
      dW(2, 1);
      bjdj.run();
    } dW(2, 0);Ser.println("222");
    } if (state == 2) {
//    bjdj.moveTo(0);
//    while (bjdj.haiyoujibu()) {
//      dW(2, 1);
//      bjdj.run();
//    } dW(2, 0);
    dq=-1024;
    bjdj.moveTo(-1024);
    while (bjdj.haiyoujibu()) {
      dW(2, 1);
      bjdj.run();
    } dW(2, 0);
  } if (state == 3) {
    dq=0;
    bjdj.moveTo(0);
    while (bjdj.haiyoujibu()) {
      dW(2, 1);
      bjdj.run();
    } dW(2, 0);
  }
}

评论

0 条评论,欢迎与作者交流。

正在加载评论...