【行空板 Python编程学习主控板】 二、上电及Mind+ 图形化点灯及音乐时钟运行评测
[复制链接]
本帖最后由 kit7828 于 2022-11-3 18:44 编辑
一、上电
行空板是通过Type-C线连接到电脑后上电的,上x电后,需要等待一会,依次出现字符界面的Linux运行记录
而后,停留在行空板的初始主界面,即等待Home按键的界面
按下Home 按键后出现主菜单界面
此时,可以使用触摸,以及通过按键A、B切换菜单。
测试了应用程序下的屏幕校准
二、Mind+开始第一个图形化例程
测试运行Mind+图形化编程,需要连接硬件
然后,在扩展这里增加行空板的支持,可参考本人上一篇评测帖子-开箱贴 https://bbs.eeworld.com.cn/thread-1223052-1-1.html
在Mind+的图形编程界面,通过拖拉组件,更改字符、数字等,多次修改后,完成本次评测的图形工程
连接行空板后,只需要点击右侧的运行按钮就可以看到效果了
具体运行效果
对于不熟悉Pathon代码的人来说,仅仅1-2小时左右完成这样的界面,的确要归功于图形化编程的魅力。(感觉可以脱离具体编程语言的限制,非常奈斯)
三、代码及运行log
后台自动生成Pathon代码以及运行过程中的log信息
具体的代码为
# -*- coding: UTF-8 -*-
# MindPlus
# Python
from pinpong.extension.unihiker import *
from pinpong.board import Board,Pin
from unihiker import GUI
import time
# 事件回调函数
def on_buttona_click_callback():
buzzer.play(buzzer.ENTERTAINER,buzzer.Once)
p_p25_out=Pin(Pin.P25, Pin.OUT)
p_p25_out.write_digital(1)
time.sleep(1)
p_p25_out=Pin(Pin.P25, Pin.OUT)
p_p25_out.write_digital(0)
u_gui=GUI()
Board().begin()
u_gui.on_a_click(on_buttona_click_callback)
Hour = 10
Min = 0
Sec = 0
u_gui.draw_text(text="你好,行空板",x=40,y=20,font_size=20, color="#0000FF")
u_gui.draw_text(text="By Kit7828",x=110,y=52,font_size=12, color="#0000FF")
clock=u_gui.draw_clock(x=120,y=200,r=50,color="#FF0000")
while True:
clock.config(h=Hour,m=Min,s=Sec)
time.sleep(1)
Sec = (Sec + 1)
if (Sec > 59):
Sec = 0
Min = (Min + 1)
if (Min > 59):
Min = 0
Hour = (Hour + 1)
if (Hour > 23):
Hour = 0
运行过程中的log信息
root@unihiker:~/mindplus/cache 项目1、点灯及时钟显示正在上传中,请稍后...
项目上传成功,开始运行
root@unihiker:~/mindplus/cache/1、点灯及时钟显示# access control disabled, clients can connect from any host
root@unihiker:~/mindplus/cache/1、点灯及时钟显示# cd "/root/mindplus/cache/1、点灯及时钟显示"
root@unihiker:~/mindplus/cache/1、点灯及时钟显示# python /root/mindplus/cache/1 、点灯及时钟显示/.cache-file.py
___________________________
| |
| PinPong v0.4.9 |
| Designed by DFRobot |
|___________________________|
[01] Python3.7.3 Linux-4.4.143-67-rockchip-g01bbbc5d1312-aarch64-with-debian-10.11 Board: UNIHIKER
selected -> board: UNIHIKER serial: /dev/ttyS3
[10] Opening /dev/ttyS3
[32] Firmata ID: 3.3
[22] Arduino compatible device found and connected to /dev/ttyS3
[40] Retrieving analog map...
[42] Auto-discovery complete. Found 30 Digital Pins and 30 Analog Pins
------------------------------
All right. PinPong go...
------------------------------
四、视频
按键点灯、播放音乐的效果参考下面视频
行空板点灯播放音乐及时钟
五、总结
图形化编程的魅力,确实很强,不需要熟悉具体编程语言的风格,代码规范等等,不用敲代码,只需要关注逻辑就可以,而且快速、便捷。
需要吐槽的是中间经常发送运行时的错误,主要是经常检测不到行空板上的版本信息导致,中间插拔数据线多次,检测到版本后就正常运行了。
六、建议
对于时钟类的应用,个人觉得公司应该提供定时器等这样的图形化组件,用于精确定时,通过纯软件的定时,应该是达不到精确的要求的,另外,对于线程间的数据通信和交互,没找到合适的组件,也没找到合适的参考帖子,或许是查找的范围不够吧。
|