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

相关文章

2024.6.24 IDEA中文乱码问题(服务器 控制台 TOMcat)实测已解决

1.问题产生原因: 1.文件编码不一致:如果文件的编码方式与IDEA设置的编码方式不一致,就会产生乱码。确保文件和IDEA使用相同的编码,通常是UTF-8。2.IDEA设置问题:检查IDEA的全局编码设置和项目编码设置是否正确。3.终端或控制台编码问题:如果你在终端或控制台看到乱码,可能是终端的编码设置问题。确保终端使用的是支持你的文件的编码方式。 2.解决方案: 1.File -> S

ONLYOFFICE 8.1 版本桌面编辑器测评

在现代办公环境中,办公软件的重要性不言而喻。从文档处理到电子表格分析,再到演示文稿制作,强大且高效的办公软件工具能够极大提升工作效率。ONLYOFFICE 作为一个功能全面且开源的办公软件套件,一直以来都受到广大用户的关注与喜爱。而其最新发布的 ONLYOFFICE 8.1 版本桌面编辑器,更是带来了诸多改进和新特性。本文将详细评测 ONLYOFFICE 8.1 版本桌面编辑器,探讨其在功能、用户

Python 字符串占位

在Python中,可以使用字符串的格式化方法来实现字符串的占位。常见的方法有百分号操作符 % 以及 str.format() 方法 百分号操作符 % name = "张三"age = 20message = "我叫%s,今年%d岁。" % (name, age)print(message) # 我叫张三,今年20岁。 str.format() 方法 name = "张三"age

Eclipse+ADT与Android Studio开发的区别

下文的EA指Eclipse+ADT,AS就是指Android Studio。 就编写界面布局来说AS可以边开发边预览(所见即所得,以及多个屏幕预览),这个优势比较大。AS运行时占的内存比EA的要小。AS创建项目时要创建gradle项目框架,so,创建项目时AS比较慢。android studio基于gradle构建项目,你无法同时集中管理和维护多个项目的源码,而eclipse ADT可以同时打开

一道经典Python程序样例带你飞速掌握Python的字典和列表

Python中的列表(list)和字典(dict)是两种常用的数据结构,它们在数据组织和存储方面有很大的不同。 列表(List) 列表是Python中的一种有序集合,可以随时添加和删除其中的元素。列表中的元素可以是任何数据类型,包括数字、字符串、其他列表等。列表使用方括号[]表示,元素之间用逗号,分隔。 定义和使用 # 定义一个列表 fruits = ['apple', 'banana

Python应用开发——30天学习Streamlit Python包进行APP的构建(9)

st.area_chart 显示区域图。 这是围绕 st.altair_chart 的语法糖。主要区别在于该命令使用数据自身的列和指数来计算图表的 Altair 规格。因此,在许多 "只需绘制此图 "的情况下,该命令更易于使用,但可定制性较差。 如果 st.area_chart 无法正确猜测数据规格,请尝试使用 st.altair_chart 指定所需的图表。 Function signa

python实现最简单循环神经网络(RNNs)

Recurrent Neural Networks(RNNs) 的模型: 上图中红色部分是输入向量。文本、单词、数据都是输入,在网络里都以向量的形式进行表示。 绿色部分是隐藏向量。是加工处理过程。 蓝色部分是输出向量。 python代码表示如下: rnn = RNN()y = rnn.step(x) # x为输入向量,y为输出向量 RNNs神经网络由神经元组成, python

python 喷泉码

因为要完成毕业设计,毕业设计做的是数据分发与传输的东西。在网络中数据容易丢失,所以我用fountain code做所发送数据包的数据恢复。fountain code属于有限域编码的一部分,有很广泛的应用。 我们日常生活中使用的二维码,就用到foutain code做数据恢复。你遮住二维码的四分之一,用手机的相机也照样能识别。你遮住的四分之一就相当于丢失的数据包。 为了实现并理解foutain

python 点滴学

1 python 里面tuple是无法改变的 tuple = (1,),计算tuple里面只有一个元素,也要加上逗号 2  1 毕业论文改 2 leetcode第一题做出来

OpenCompass:大模型测评工具

大模型相关目录 大模型,包括部署微调prompt/Agent应用开发、知识库增强、数据库增强、知识图谱增强、自然语言处理、多模态等大模型应用开发内容 从0起步,扬帆起航。 大模型应用向开发路径:AI代理工作流大模型应用开发实用开源项目汇总大模型问答项目问答性能评估方法大模型数据侧总结大模型token等基本概念及参数和内存的关系大模型应用开发-华为大模型生态规划从零开始的LLaMA-Factor