MaixII M2dock 上手使用

    认识 openwrt 系统

    全志 V831 使用 Tina Linux 系统,移植自 openwrt 。

    OpenWrt 可以被描述为一个嵌入式的 Linux 发行版,可见 官方网址 & 官方开源仓库

    OpenWRT 是一个高度模块化、高度自动化的嵌入式 Linux 系统,拥有强大的网络组件和扩展性,常常被用于工控设备、电话、小型机器人、智能家居、路由器以及 VOIP 设备中。 同时,它还提供了 100 多个已编译好的软件,而且数量还在不断增加,而 OpenWrt SDK 更简化了开发软件的工序。

    opkg 包管理器

    Opkg 是一个轻量快速的套件管理系统,目前已成为 Opensource 界嵌入式系统标准。常用于 路由、 交换机等 嵌入式设备中,用来管理软件包的安装升级与下载。

    root@sipeed:/# opkg list
    MaixPy3 - 0.2.5-1
    alsa-lib - 1.1.4.1-1
    busybox - 1.27.2-3
    busybox-init-base-files - 167-1612350358
    ca-certificates - 20160104
    curl - 7.54.1-1
    dropbear - 2015.71-2
    e2fsprogs - 1.42.12-1
    eyesee-mpp-external - 1.0-1
    eyesee-mpp-middleware - 1.0-1
    eyesee-mpp-system - 1.0-1
    ......
    

    常用命令

    • opkg update 更新可以获取的软件包列表
    • opkg upgrade 对已经安装的软件包升级
    • opkg list 获取软件列表
    • opkg install 安装指定的软件包
    • opkg remove 卸载已经安装的指定的软件包

    pip 包管理器

    pip 是 Python 包管理工具,该工具提供了对 Python 包的查找、下载、安装、卸载的功能。

    以下讯息由YanxingLiu提供与测试。

    pip换源

    在安装系统后可以更换镜像源,加速 pip 安装。

    临时使用

    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
    

    some-package 请自行更换成你想要安装的包

    设为默认

    升级 pip 到最新的版本 (>=10.0.0) 后进行配置:

    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
    

    设置清华镜像源为默认:

    pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
    

    常用 Linux 命令

    • ls 查看目录下文件
    • cd pwd mv cp rm 一套文件管理命令
    • vi 编辑文件内容
    • top 查看系统内存
    • df 查看磁盘信息
    • time 查看时间
    • ifconfig 查看网络信息
    • free 查看剩余内存
    • ps 查看运行的进程
    • kill killall 杀死指定进程
    • chmod 给某个文件权限
    • passwd 设置用户的密码
    • more cat 查看文件内容
    • ping 检测某网址是否连通
    • wget 下载某链接文件
    • grep 搜索文件内容
    • ln 建立文件链接

    测试屏幕方法

    请测试前观察系统上电后屏幕是否会闪烁一次,这表示屏幕已经通电、驱动起来,并对其复位(RST)后产生的。

    在 Linux Shell 运行 cat /dev/urandom > /dev/fb0 就会输入随机数据到 fb0 产生雪花屏了,这表示屏幕显示是正常的。

    帧缓冲(framebuffer)是 Linux 为显示设备提供的一个接口,把显存抽象后的一种设备,他允许上层应用程序在图形模式下直接对显示缓冲区进行 读写操作。framebuffer 是 LCD 对应的一种 HAL(硬件抽象层),提供抽象的,统一的接口操作,用户不必关心硬件层是怎么实施的。这些都是由 Framebuffer 设备驱动来完成的。帧缓冲设备对应的设备文件为 /dev/fb*,如果系统有多个显示卡,Linux下还可支持多个帧缓冲设备,最多可达 32 个,分别为 /dev/fb0 到 /dev/fb31,而 /dev/fb 则为当前缺省的帧缓冲设备,通常指向 /dev/fb0,在嵌入式系统中支持一个显示设备就够了。帧缓冲设备为标准字 符设备,主设备号为 29 ,次设备号则从 0 到 31 。分别对应 /dev/fb0-/dev/fb31 。

    运行 Python3 解释器

    在 Linux 上使用 Python 编程只需要在 shell 命令行交互的接口输入 python3 即可启动,可直接复制代码粘贴后按回车键运行。

    import platform
    print(platform.uname())
    

    2021年02月23日 实际操作结果:

       __  ___     _        __   _               
      /  |/  /__ _(_)_ __  / /  (_)__  __ ____ __
     / /|_/ / _ `/ /\ \ / / /__/ / _ \/ // /\ \ /
    /_/  /_/\_,_/_//_\_\ /____/_/_//_/\_,_//_\_\ 
     ----------------------------------------------
    Linux sipeed 4.9.118 #77 PREEMPT Wed Feb 3 11:06:36 UTC 2021 armv7l GNU/Linux
    Please press Enter, then input maixpy3_config.py complete your configuration.
    
    root@sipeed:/# python3
    Python 3.8.5 (default, Jan 17 2021, 06:07:56) 
    [GCC 6.4.1] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import platform
    >>> print(platform.uname())
    uname_result(system='Linux', node='sipeed', release='4.9.118', version='#77 PREEMPT Wed Feb 3 11:06:36 UTC 2021', machine='armv7l', processor='')
    >>> 
    

    测试拍照功能

    from maix import display, camera
    display.show(camera.capture())
    

    如果发现屏幕没有亮起显示摄像头内容,确保系统是最新的,排查硬件接线与通电方面的问题,通常产品出厂前都会做外设硬件测试的。

    使用 Jupyter 开发

    注意!!!! MaixPy M2dock 不支持在本机安装 Jupyter !!!

    请看左侧目录的【常用的开发工具】>>>【Jupyter】 学习安装和使用。

    在配置系统后会开机启动远程调用服务(RPyC),你可以在 ps 命令中得知是否开启了 rpyc 远程调用服务,如:python3 -c from maix import rpycs; rpycs.start() 命令。

    相关参考资料

    有些不属于 MaixPy3 的文档资料,但它对于你使用和理解 Linux 系统操作会有帮助。

    想知道更多?请往左侧目录的【一些使用案例】上前进吧!