car_control_test.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:SelfDrivingRCCar 作者: sidroopdaska 项目源码 文件源码
def steer(self):
        complex_cmd = False

        while self.send_inst:
            for event in pygame.event.get():
                if event.type == KEYDOWN or complex_cmd:
                    key_input = pygame.key.get_pressed()
                    complex_cmd = False

                    # complex car controls
                    if key_input[pygame.K_UP] and key_input[pygame.K_RIGHT]:
                        print("Forward Right")
                        complex_cmd = True
                        self.ser.write(b'5')

                    elif key_input[pygame.K_UP] and key_input[pygame.K_LEFT]:
                        print("Forward Left")
                        complex_cmd = True
                        self.ser.write(b'6')

                    elif key_input[pygame.K_DOWN] and key_input[pygame.K_RIGHT]:
                        print("Reverse Right")
                        complex_cmd = True
                        self.ser.write(b'7')

                    elif key_input[pygame.K_DOWN] and key_input[pygame.K_LEFT]:
                        print("Reverse Left")
                        complex_cmd = True
                        self.ser.write(b'8')

                    # simple car controls
                    elif key_input[pygame.K_UP]:
                        print("Forward")
                        self.ser.write(b'1')

                    elif key_input[pygame.K_DOWN]:
                        print("Reverse")
                        self.ser.write(b'2')

                    elif key_input[pygame.K_RIGHT]:
                        print("Right")
                        self.ser.write(b'3')

                    elif key_input[pygame.K_LEFT]:
                        print("Left")
                        self.ser.write(b'4')

                    # exit
                    elif key_input[pygame.K_x] or key_input[pygame.K_q]:
                        self.close_serial_connection()
                        break

                elif event.type == pygame.KEYUP:
                    self.ser.write(b'0')

                elif event.type == pygame.QUIT:
                    self.close_serial_connection()
                    break
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号