文章目录
Orangepi Zero2全志H616新手配置
简介
为什么学
- 学习目标依然是Linux系统,平台是ARM架构
- 蜂巢快递柜,配送机器人,这些应用场景用C51,STM32单片机无法实现
- 第三方介入库的局限性,比如刷脸支付和公交车收费设备需要集成支付宝SDK,提供的libalipay.so
- 是Linux的库,设备必须跑Linux系统
- 图像识别,音频,视频等领域的技术支撑也无法脱离Linux系统
- 人工智能型设备通常需要更好的系统和更高的算力,所以Linux也是必不可少
- 能跑Linux的一般为 X86,ARM,MIPS,PowerPC等架构,而ARM市场占有率最大
- 综上所述就是一句话:嵌入式软件工程师如果技术栈不存在Linux-ARM的开发经验,那么面向的工作岗
- 位就会带很多局限性,天花板有容易来的过早,在技术积累阶段对于这个知识的学习是必不可少的,但
- 是这个方向水深,需要客观且科学的选择适合的角度学习。
学什么
这个领域的程序员一般分三个方向:
- 应用开发,通过跟产品业务相关,比如智能家居中控板,可以是C++QT, 可以是C GTK, 也可以是Android页面,也可以是基于串口屏的UI交互,
后台数据交互和系统交互都是基于Linux系统的,初级工程师以这个方向入行居多,也容易上手,招聘岗位也很多 - 系统开发,主要任务是为硬件工程师设计的产品板操作系统,比如uboot,Linux内核,文件系统等,一般为中高级嵌入式工程师,新手如果以这个方向入行,压力相对更大,一般原厂公司会招聘,岗位相对少
- 算法工程师,此类算法跟数学模型挂钩,比如人脸识别的图像不调库处理,语音识别算法如讯飞语音的工程师,一般博士一大堆,硕士满天飞的现状
- 根据现有就业案例,大专本科生以应用开发入行为主,在工作一两年可能会根据公司安排走系统开发,也可能一直做应用,薪资待遇并不完全由技术方向决定,还是看个人发展和公司的关系,当然还有城市,学校等因素。硕士可根据面试结果选择应用,系统,算法都行
平台介绍
- 学习平台至于用树莓派,海思,全志都无所谓,初级工程师掌握的是Linux-ARM的软硬件架构开发,主要是Linux系统的学习,只有入职后的中高级工程师才会考虑算法或者协议对底层硬件的差异化,第一版本这部分的内容以树莓派讲解,就业学员入职海康威视,OPPO,全志,移远等公司可以完美过度,所以板材的选择根据教程就行,学的是Linux系统
- OrangePi开发板不仅仅是一款消费品,同时也是给任何想用技术来进行创作创新的人设计的。它是一款简单、有趣、实用的工具,你可以用它去打造你身边的世界。
特性
- CPU 全志H616四核64位1.5GHz高性能Cortex-A53处理器
- GPU MaliG31MP2 SupportsOpenGLES1.0/2.0/3.2、OpenCL2.0
- 运行内存 1GBDDR3(与GPU共享)
- 存储 TF卡插槽_课程配套硬件16G,测试128G可支持、2MBSPIFlash
- WIFI+蓝牙 AW859A芯片、支持IEEE802.11a/b/g/n/ac、BT5.0
- 视频输出 MicroHDMI20a
- 电源 USBTypeC接口输入
外设 带有I2Cx1、SPIx1、UARTx1以及多个GPIO口 - 电源指示灯和状态指示灯
配套操作系统支持
刷机和系统启动
就像买了电脑,出厂带有windows操作系统,才算是正在的电脑,开发板需要烧写对应的系统固件,才能正常发挥作用
工具
- Orangepi Zero2 全志H616开发板
- PC机
- TF卡及读卡器
- 操作系统镜像
- SDFormatter TF卡的格式化工具
- Win32Diskimager 刷机工具
- USB转TTL,用于系统烧写后的串口登录开发板
工具安装
SDFormatter傻瓜式安装,Win32Diskimager傻瓜式安装
刷机
课程使用的镜像:Orangepizero2_2.2.0_ubuntu_bionic_desktop_linux4.9.170
登录系统
供电
- TypeC口,需要插到5V/2A或者5V/3A的电源适配头,特别是开发板有接多个外设模块的时候
- 平常USB供电用电脑可以,前提是不接多外设模块
- 后面做小车等项目,用电池供电可以参考如下供电方式
登录
使用USB转TTL模块,使用MobaXterm免费好用,类似的工具还有Putty-相对太简陋,SecurityCRT老牌工具-需要付费或者破解
USB转TTL模块GND、TX和RX引脚需要通过杜邦线连接到开发板的调试串口上
a.USB转TTL模块的GND接到开发板的GND上
b.USB转TTL模块的RX接到开发板的TX上
c.USB转TTL模块的TX接到开发板的RX上
电脑安装ch340驱动
使用mobaXterm登陆,默认登陆密码:
用户:orangepi 密码:orangepi
用户:root 密码:orangepi
板载LED灯测试说明
修改登陆密码
默认密码是orangepi容易写错,为了使用方便,我改成密码为1
网络配置
命令扫描周围的WIFI热点 nmcli dev wifi
命令接入网络 nmcli dev wifi connect YXS1017 password yuanxueshe1017
查看IP地址 ip addr show wlan0
ifconfig也可以
SSH登陆开发板
这是企业开发调试必用方式,比串口来说不用接线,前提是接入网络并获得板子IP地址,且系统做了SSH的服务器,本镜像自带SSH服务器,所以通过mobaXterm登陆就行
基于官方外设开发
wiringPi外设SDK安装
git clone https://github.com/orangepi-xunlong/wiringOP //下载源码
cd wiringOP //进入文件夹
sudo ./build clean //清除编译信息
sudo ./build //编译
通过windows浏览器打开https://github.com/orangepi-xunlong/wiringOP 下载压缩包
把压缩包通过xterm传到开发板解压 unzip xxx.zip
cd xxx
sudo ./build
gpio readall
验证指令: gpio readall 如下方所示,外设库就完成安装了