OrangePi Kunpeng Pro 开发板测评及Python开发实测

2024-05-28 05:28

本文主要是介绍OrangePi Kunpeng Pro 开发板测评及Python开发实测,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、背景

       首先感谢 创新乐知通过CSDN 邀请本人,参与这次 评测活动。这块开发板是香橙派联合华为精心打造,具有超强算力的鲲鹏开发板。本人使用最多的还是树莓派系列的板子,国产板子特别是华为为核心的板子还是头一次使用,特别感兴趣。稍有空就联系活动组织方,提交收货地址等必要信息后,创新乐知也是很快就把开发板寄了过来,平时工作时间比较忙,没有集中时间来玩,开箱时简单看了下外观,非常扎实。等到周末才有空做个详细的试用。下面我把试用情况和心得做个报告,供有兴趣的朋友做个参考。

二、开发板简介

官方介绍:

Orange Pi Kunpeng Pro 开发板是香橙派联合华为精心打造的高性能开发板,其 搭载了鲲鹏处理器,可提供 8TOPS INT8 计算能力,提供了 8GB 和 16GB 两种内存 版本。Kunpeng Pro 开发板结合了鲲鹏全栈根技术,全面使能高校计算机系统教学 和原生开发。同时支持 FPGA+ARM,从体系结构、数字逻辑设计、操作系统和编 译,再到嵌入式开发,可以基于同一套体系结构和一套开发板实现贯穿打通。

顶层视图:

底层视图:

Orange Kunpeng Pro 开发板硬件规格

处理器

4核64位Arm处理器

内存

• 类型:LPDDR4X
• 容量:8GB 或 16GB

存储

• 板载 32MB 的 SPI Flash
• Micro SD 卡插槽
• eMMC 插座:可外接 eMMC 模块
• M.2 M-Key 接口:可接 2280 规格的 NVMe SSD 或 SATA SSD

以太网

• 支持 10/100/1000Mbps
• 板载 PHY 芯片:RTL8211F

Wi-Fi+蓝牙

• 支持2.4G和5G双频WIFI • BT4.2
• 模组:欧智通 6221BUUC

USB

• 2 个USB3.0 Host接口
• 1 个 Type-C 接口(只支持 USB3.0,不支持 USB2.0)

摄像头

2个MIPI CSI 2 Lane接口

显示

• 2个HDMI接口
• 1个MIPI DSI 2 Lane接口

音频

• 1 个 3.5mm 耳机孔,支持音频输入输出

• 2个HDMI音频输出

40 pin 扩展口

用于扩展 UART、I2C、SPI、PWM 和 GPIO 等接口

按键

1 个复位键,1 个关机键,1 个升级按键

拨码开关

2 个拨码开关:用于控制 SD 卡、eMMC 和 SSD 启动选项

电源

支持 Type-C 供电,20V PD-65W 适配器

LED 灯

1 个电源指示灯和 1 个软件可控指示灯

风扇接口

4pin,0.8mm 间距,用于接 12V 风扇,支持 PWM 控制

电池接口

2pin,2.54mm 间距,用于接 3 串电池,支持快充

调试串口

Micro USB 接口的调试串口

支持的操作系统

openEuler 22.03

外观规格介绍

产品尺寸

107*68mm

重量

82g

rangePiTM是深圳市迅龙软件有限公司的注册商标

开箱介绍

除了盒装开发板外,同时还带了电源适配器和数据线,这个电源适配器做工非常好。

盒子上标明了入门使用指南,www.orangepi.cn

正面大风扇非常显眼,板子的做工很精致,接口也比较多。 

背面  已经带有一张32G 的SD卡。

整体看起来用料足,做工扎实,下面开始上电,进入正式试用。 这次测试重点是搭建Python基础开发环境,并完成一个控制外设的样例程序。

三、基础开发和运行环境搭建

硬件准备

除了上面开发板外,还用到了下面硬件:

键盘鼠标一套,显示器,HDMI线 等。

面包板一个,双色灯一个,导线若干条,

开发板系统安装和配置

寄来的开发板,自带了32GSD卡,并且已经安装了 openEuler 系统,可以直接开机登入。

关于 openEuler 操作系统 简介:

2021年9月25日,华为正式发布操作系统 openEuler 欧拉。

此次华为宣布正式发布欧拉开源操作系统首个全场景版本;2022年3月,还将发布LTS版本,实现全场景融合 [3]。

华为未来将重点打造两个操作系统:鸿蒙,欧拉,同时都进行开源。鸿蒙应用于智能终端、物联网终端、工业终端;欧拉应用于服务器、边缘计算、云基础设施。两个操作系统可以覆盖各种场景,以解决国内缺芯少魂的现状

openEuler 是一个开源、免费的 Linux 发行版平台,将通过开放的社区形式与全球的开发者共同构建一个开放、多元和架构包容的软件生态体系。同时,openEuler 也是一个创新的平台,鼓励任何人在该平台上提出新想法、开拓新思路、实践新方案。

首次开机,建议直接接显示器和键盘鼠标,这样会简单一点,后续配置好 vnc 就可以通过自己电脑远程访问它了。

默认账号/密码  openEuler/openEuler,  root/openEuler  , 登入界面如下,root 和 openEuler 用户的密码都是 openEuler.

进入系统后,可以发现默认已经装了不少程序了,vscode都有了,太方便开发人员了。

首先我们要把网络搞通来,在设置里面可以,进行网络的配置。

我是用了无线网来链接的,都是图形化的设置,相对简单,这里就不过多介绍了,接网线的话也一样。

开启 ssh 服务 和 桌面共享服务

ssh 服务开启后,电脑链接正常(我自己用的是macbook)

屏幕共享 服务 我打开了,但一直不能正常工作,我电脑通过vcn客户端链接它时,总是会报错。

我分别用 root openEuler 账号都试过,打开屏幕共享,设置密码等等,都还是不行(据其他评测人员说他们是可以的),不清楚是不是我这块板子默认装的系统版本有问题。只能想其他办法了,我直接关掉了这个屏幕共享,然后自己装了一个 tigervnc-server,并设置自动开启服务。

  • 1.安装 VNC 服务器:

    yum install tigervnc-server

    2.修改下面文件,加入:1=openEuler , 表示 vcn 5901接入是,用的是 openEuler登入。
    sudo vim /etc/tigervnc/vncserver.users
     

    # TigerVNC User assignment

    #

    # This file assigns users to specific VNC display numbers.

    # The syntax is <display>=<username>. E.g.:

    #

    # :2=andrew

    # :3=lisa

    :1=openEuler

    3.配置vnc服务自动启动
    sudo systemctl enable --now vncserver@:1

    4.在 /etc/tigervnc/vncserver-config-defaults 配置文件中添加以下行

    session=gnome
    alwaysshared

    更详细可以参考redhat相关配置文档,openEuler 和 redhat大部分是一致的。

    5.3. 以多个用户身份远程访问桌面 Red Hat Enterprise Linux 8 | Red Hat Customer Portalicon-default.png?t=N7T8https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/8/html/using_the_desktop_environment_in_rhel_8/remotely-accessing-the-desktop-as-multiple-users_accessing-the-desktop-remotely至此 vnc 能正常远程访问了。

 我这里是尽量用默认自带的系统,如果想折腾系统的,可参考官方说明文档,有详细刷系统的教程:

Orange Pi - Orangepiicon-default.png?t=N7T8http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-kunpeng.html

百度网盘 请输入提取码百度网盘为您提供文件的网络备份、同步和分享服务。空间大、速度快、安全稳固,支持教育网加速,支持手机端。注册使用百度网盘即可享受免费存储空间icon-default.png?t=N7T8https://pan.baidu.com/share/init?surl=nM1ZHJtBYSI_47MAVJ29Lg&pwd=j912

开发板GPIO测试 

参考用户手册有  gpio操作的测试命令:

手册中是对 31号 针脚操作,按手册也能找到 39 号针脚是GND,那么我们可以接一个来测试一下。

分别给31号针脚 给 高低 电平,能控制小灯的亮与不亮。

OK!验证硬件操控是没有问题的。下一步写个python脚本来控制灯闪烁。重新接线。

代码如下,因为 gpio库是用 gpio序号来控制的,可以参考用户手册里 针脚的定义找到对应的序号。就能实现闪灯了。

#!/usr/bin/env python
# -*- coding: utf-8 -*-# Project: opitest
# File   : orangepi_kunpeng_test.py
# Author : Long.Xu <fangkailove@yeah.net>
#          http://gnolux.blog.csdn.net
#          QQ:26564303 weixin:wxgnolux
# Time   : 2024/5/25 21:41
# Copyright 2024 Long.Xu All rights Reserved.
import time
import gpio#  31号针脚 序号 84
red = gpio.GPIOPin(pin=84, direction=gpio.OUT, initial=gpio.LOW)
#  33号针脚 序号 128
green = gpio.GPIOPin(pin=128, direction=gpio.OUT, initial=gpio.LOW)def turn_off_all():green.write(gpio.LOW)red.write(gpio.LOW)def turn_on_red():green.write(gpio.LOW)red.write(gpio.HIGH)def turn_on_green():green.write(gpio.HIGH)red.write(gpio.LOW)print("开始闪烁")
turn_off_all()
exit
try:while True:time.sleep(0.5)print("绿灯亮")turn_on_green()time.sleep(0.5)print("红灯亮")turn_on_red()
except KeyboardInterrupt as e:turn_off_all()#green.cleanup()#red.cleanup()gpio.cleanup()print('\ncleanup')

运行是可能会报错

这是因为 gpio模块是通过读写 export  和 unexport  两个设备映射文件的方式来读写设备的,所以要给运行的程序相应的权限。

[root@openEuler ~]# chmod  u+rwx  /sys/class/gpio/export /sys/class/gpio/unexport

这篇关于OrangePi Kunpeng Pro 开发板测评及Python开发实测的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1009661

相关文章

python panda库从基础到高级操作分析

《pythonpanda库从基础到高级操作分析》本文介绍了Pandas库的核心功能,包括处理结构化数据的Series和DataFrame数据结构,数据读取、清洗、分组聚合、合并、时间序列分析及大数据... 目录1. Pandas 概述2. 基本操作:数据读取与查看3. 索引操作:精准定位数据4. Group

Python pandas库自学超详细教程

《Pythonpandas库自学超详细教程》文章介绍了Pandas库的基本功能、安装方法及核心操作,涵盖数据导入(CSV/Excel等)、数据结构(Series、DataFrame)、数据清洗、转换... 目录一、什么是Pandas库(1)、Pandas 应用(2)、Pandas 功能(3)、数据结构二、安

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

Python安装Pandas库的两种方法

《Python安装Pandas库的两种方法》本文介绍了三种安装PythonPandas库的方法,通过cmd命令行安装并解决版本冲突,手动下载whl文件安装,更换国内镜像源加速下载,最后建议用pipli... 目录方法一:cmd命令行执行pip install pandas方法二:找到pandas下载库,然后

Python实现网格交易策略的过程

《Python实现网格交易策略的过程》本文讲解Python网格交易策略,利用ccxt获取加密货币数据及backtrader回测,通过设定网格节点,低买高卖获利,适合震荡行情,下面跟我一起看看我们的第一... 网格交易是一种经典的量化交易策略,其核心思想是在价格上下预设多个“网格”,当价格触发特定网格时执行买

Python标准库之数据压缩和存档的应用详解

《Python标准库之数据压缩和存档的应用详解》在数据处理与存储领域,压缩和存档是提升效率的关键技术,Python标准库提供了一套完整的工具链,下面小编就来和大家简单介绍一下吧... 目录一、核心模块架构与设计哲学二、关键模块深度解析1.tarfile:专业级归档工具2.zipfile:跨平台归档首选3.

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

Python进行JSON和Excel文件转换处理指南

《Python进行JSON和Excel文件转换处理指南》在数据交换与系统集成中,JSON与Excel是两种极为常见的数据格式,本文将介绍如何使用Python实现将JSON转换为格式化的Excel文件,... 目录将 jsON 导入为格式化 Excel将 Excel 导出为结构化 JSON处理嵌套 JSON:

Python操作PDF文档的主流库使用指南

《Python操作PDF文档的主流库使用指南》PDF因其跨平台、格式固定的特性成为文档交换的标准,然而,由于其复杂的内部结构,程序化操作PDF一直是个挑战,本文主要为大家整理了Python操作PD... 目录一、 基础操作1.PyPDF2 (及其继任者 pypdf)2.PyMuPDF / fitz3.Fre