嵌入式实训day4

1、

# 82261773
# y6ufuT9yGQxddpSzSe3zZpbP
# BJsEfKFNGOwHtLuKoHsfVIWrGWjXVKut



"""
    1、PC需要联网
    2、不能使用MicroPython解释器
"""
from aip import AipFace
import base64

# 查看REST-API-SDK
if __name__ == "__main__":
    # 设置APP_ID、API_KEY、SECRECT_KEY
    APP_ID = "82261773"
    API_KEY = "y6ufuT9yGQxddpSzSe3zZpbP"
    SECRECT_KEY = "BJsEfKFNGOwHtLuKoHsfVIWrGWjXVKut"
    # 连接百度人脸识别库
    client = AipFace(APP_ID, API_KEY, SECRECT_KEY)

    # 配置选项
    options = {
        # 人脸检测选项:年龄,颜值,表情,脸型,性别,眼镜,人种,脸的形状
        "face_field":
        "age,beauty,expression,face_shape,gender,glasses,race,face_type"
    }

    # 指定要识别的图片
    filename = './images/test1.WEBP'
    #filename = './images/test2.jpg'

    # 打开图片,对图片进行识别并打印结果
    image_file = open(filename, 'rb')
    # 将读取到的内容经过编码base64成字符串
    image = str(base64.b64encode(image_file.read()), 'utf-8')
    # 类型为BASE64
    data = client.detect(image, 'BASE64', options)
    print(type(data))
    # 获取人脸检测结果
    face = data['result']['face_list'][0]

    # 对结果进行解析
    print('age:', face['age'])
    print('beauty:', face['beauty'])
    print('expression:', face['expression']['type'])
    print('face_shape:', face['face_shape']['type'])
    print('gender:', face['gender']['type'])
    print('glasses:', face['glasses']['type'])
    print('race:', face['race']['type'])

    # 关闭图片文件(释放资源)
    image_file.close()







2、

class Student:
    def __init__(self,name,age,score):
        self.name=name
        self.age=age
        self.score=score
        print("我叫{},今年{}岁,四级考试分数是{}".format(
        self.name,self.age,self.score))
        
    def learn(self,course):
        print("{}在学习{}课程".format(self.name,course))
    
    
if __name__=="__main__":
    student1=Student("老张",20,426)
    student2=Student("老王",22,459)
    student3=Student("老吴",28,498)
    student1.learn("英语")
    student1.learn("python")
    student1.learn("嵌入式软件开发")

3、

SyntaxError: 发生在代码中有语法错误时
 IndentationError: 缩进错误,通常是因为缩进不一致导致
NameError: 使用了未定义的变量或函数
TypeError: 数据类型不匹配或操作不支持
ValueError: 函数的参数值不合法
ImportError: 导入模块失败或不存在
KeyError: 字典中查找不存在的键
IndexError: 访问列表或元组的索引超出范围
ZeroDivisionError: 除以0的错误
FileNotFoundError: 文件不存在或无法打开
TypeError: 不支持的操作类型. 


4、

# try:
#     num1=int(input("num1="))
#     num2=int(input("num2="))
#     print("num1/num2=",num1/num2)
# except ZeroDivisionError:
#     print("除0错误")
# except ValueError:
#     print("输入的数据不是数字")
#     
# print("执行其他代码")

try:
    num1=int(input("num1="))
    num2=int(input("num2="))
    print("num1/num2=",num1/num2)
except Exception as ex:
    print("Error:",ex)
   
print("执行其他代码")

5、

#直流电机控制实验
from machine import Pin
import time
if __name__=="__main__":
    #直流·电机控制对象
    dc_motor=Pin(15,Pin.OUT,value=0)
    #GPIO-->电机驱动芯片-->直流电机
    dc_motor.value(1)#电机开启
    time.sleep(3)
    dc_motor.value(0)#电机关闭

6、

"""
    按键控制实验(轮训)
"""

from machine import Pin
import time

# 定义按键的控制引脚
key1 = Pin(27, Pin.IN, Pin.PULL_UP)
key2 = Pin(26, Pin.IN, Pin.PULL_UP)

# LED控制对象
led1 = Pin(15, Pin.OUT, value=0)
led2 = Pin(2, Pin.OUT, value=0)

# 定义按键值
KEY1_PRESS = 101
KEY2_PRESS = 102

# 0有某个按键按下,1没有按键按下
key_flag = 1 

# 按键扫描函数,有按键按下返回按键值,没有返回0
def key_scan():
    global key_flag # 声明是全局变量
    if key_flag==1 and (key1.value()==0 or key2.value()==0):
        time.sleep_ms(10) # 按键消抖
        key_flag=0
        if key1.value() == 0:
            return KEY1_PRESS
        elif key2.value() == 0:
            return KEY2_PRESS
    elif key1.value()==1 and key2.value()==1:
        key_flag = 1
            
    return 0 # 没有按键按下   

if __name__ == "__main__":
    while True:
        key = key_scan()
        if key == KEY1_PRESS:
            print("Key1按下")
            led1.value(not led1.value())
        elif key == KEY2_PRESS:
            print("Key2按下")
            led2.value(not led2.value())
        else:
            pass 



  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值