Embedded_game/002_B_Car/time函数.py
2025-01-02 12:48:11 +08:00

64 lines
1.8 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import math
import sensor, image, time, lcd
import binascii
from Maix import GPIO
from machine import Timer, PWM, UART, Timer
from fpioa_manager import fm
import KPU as kpu
lcd.init() # lcd初始化
# 映射串口引脚
fm.register(6, fm.fpioa.UART1_RX, force=True)
fm.register(7, fm.fpioa.UART1_TX, force=True)
# 初始化串口
uart = UART(UART.UART1, 115200, read_buf_len=4096)
# 初始化摄像头阈值
def canera_init():
# 摄像头模块初始化
sensor.reset() # 复位和初始化摄像头
sensor.set_pixformat(sensor.RGB565) # 设置像素格式为彩色 RGB565
# sensor.set_pixformat(sensor.GRAYSCALE) # 设置像素格式为灰色
sensor.set_framesize(sensor.QVGA) # 设置帧大小为QVGA320×240
sensor.set_vflip(1) # 后置模式
sensor.skip_frames(30) # # 跳过前30帧
canera_init()
def Servo(angle):
'''
说明:舵机控制函数
功能180度舵机angle:-90至90 表示相应的角度
360连续旋转度舵机angle:-90至90 旋转方向和速度值。
【duty】占空比值0-100
'''
#PWM通过定时器配置接到IO17引脚
tim_pwm = Timer(Timer.TIMER0, Timer.CHANNEL0, mode=Timer.MODE_PWM)
S1 = PWM(tim_pwm, freq=50, duty=0, pin=17)
S1.duty((angle+90)/180*10+2.5)
Servo(0)
res_QR = []
timeflag = 0
while (timeflag < 30):
# for i in range(9):
img = sensor.snapshot() # 获取图像
lcd.display(img) # 在LCD显示
TS_QR = img.find_qrcodes() # 再次寻找二维码
for qr in TS_QR:
if all(qr.payload() != existing_qr.payload() for existing_qr in res_QR):
res_QR.append(qr)
timeflag+=1
time.sleep(0.001)
print(timeflag)
print(len(res_QR))
for res in res_QR:
result = res.payload()
print(result)