零基础搭建小安派Linux开发环境之【编译运行Hello world】

[复制链接]
查看10639 | 回复56 | 2023-7-30 17:36:19 | 显示全部楼层 |阅读模式
本帖最后由 起个名字好难啊 于 2023-7-30 17:45 编辑

一、依赖工具安装
       新装好的Ubuntu 太干净了,要成功编译代码的话,是需要安装一些依赖和工具的,比如:“make”、“gcc”之类的。
  1. sudo apt-get install make gcc vim cmake git ninja-build -y
复制代码

二、克隆SDK

在linux的终端下输入:
  1. git clone https://github.com/Ai-Thinker-Open/AiPi-Open-Kits.git
复制代码
如果觉得太慢也可以使用:
  1. git clone https://gitee.com/Ai-Thinker-Open/AiPi-Open-Kits.git
复制代码

将整个开源硬件的DEMO仓库克隆下来,克隆成功的样子:
8741F5B3-EF46-4edb-81C5-85BFAC39B4DF.png

进入AiPi-Open-Kits目录下,并逐行运行下面的指令:
  1. cd AiPi-Open-Kits
复制代码
  1. git submodule init
复制代码
  1. git submodule update
复制代码
  1. cd aithinker_Ai-M6X_SDK/
复制代码
  1. . install.sh
复制代码
  1. .  export.sh
复制代码

成功之后会显示:

1FD053E9-6088-4a9b-A0E8-D6A66928EF0A.png
三、编译
直接编译SDK中的"Hello world" 例程。
  1. cd examples/helloworld/
复制代码
  1. make
复制代码


编译成功截图

C7182537-5B9D-42a1-A495-5874F33C34AE.png

四、下载和查看log打印

1、挂载USB
把TTL串口工具插入电脑之后,虚拟机会提示挂载,这时候选择挂载到虚拟机就行了:
3268D3AF-1DCF-40ce-8816-4139898E18D7.png
如果已经插入TTL串口工具,但是虚拟机没有识别,也可以这样挂载:
3F178EB8-92E7-42b2-93D4-04F61DC4C883.png

挂载完成之后,查看USB设备是否已经被Ubuntu 识别,使用指令:
  1. ls /dev/ttyUSB0
复制代码
正确识别会提示:
C5350D3E-2456-4e98-A9FF-95F991676B7D.png

2、USB授权
新的Ubuntu用户 是没有权限使用USB设备的,所以需要给用户授权,才能使用USB设备,使用指令:
  1. sudo chmod 777 /dev/ttyUSB0
复制代码
  1. sudo usermod -a -G dialout $USER
复制代码

3、下载程序
在运行指令之前,需要让小安派进入烧录模式,先摁住BURN 键不放,再按一下RST键,进入烧录模式
就能成功进入烧录模式,之后在终端用指令:
  1. make flash COMX=/dev/ttyUSB0
复制代码
烧录成功截图:
FF27EBFA-44C4-416b-A9E1-C45FAE3096C3.png

4、查看log 输出
Ubuntu 终端默认情况下是没办法查看小安派输出的log的,需要依靠工具才能做得到,我自己使用 picocom ,它可以在终端查看TTL的输出,能够直接在终端进行下载:
  1. sudo apt-get install picocom
复制代码
安装完成之后,使用指令:
  1. picocom /dev/ttyUSB0 -b 2000000
复制代码
/dev/ttyUSB0 是USB的名字,类似Windows的COM口
-b 2000000 是指定串口波特率为2000000

运行成功之后,按一下小安派的复位键,你就可以看到log了。
B5DAD382-B0C1-49c2-B5FF-29EDF3E86CB2.png

关闭picocom 快捷键: Ctrl+A+Q

到此位置,小安派的开发环境就已经搭建好了,天气站和智能桌面助手还不是信手拈来?
五、常见问题及使用技巧
问题1:运行 git submodule init 时,卡得太久或者直接报错。
这是因为子模块使用的还是github的路径,子需要把子模块的路径改成gitee的,可以解决。就像这样:
  1. vi .gitmodules
复制代码
0D9EEDAC-1631-40b9-A43F-85C4338117E3.png
然后重新拉取子模块就能解决

问题2:烧录时提示 "请按照以下描述排查问题:xxxx "。
这是小安派没有进入烧录模式导致的,先摁住BURN 键不放,再按一下RST键,进入烧录模式

问题3:烧录天气站或者小安派其他工程时,会提示“Please Press Reset Key!"。
小安派工程和SDK的例程不同,它使用串口打断的方式下载,不需要按BURN键,看到这个提示,只需要按一下复位键后松开就能进入下载。

技巧1:在Linux终端输入指令时,使用“Tab”键可以自动补全指令。
技巧2:在Ubuntu 终端输入时,可以使用鼠标的 “中键”粘贴复制的内容,比如 仓库的路径。
其他:
"ls" 是查看文件的指令
"ls -a" 可以查看所有文件,包括隐藏的文件
"cd 文件夹名称" 是进入文件夹的指令
"cd .." 是回到上一层目录的指令
"rm" 是删除文件的指令
"rm 文件名 -rf" 是删除文件夹的指令
"vi 文件名" 是打开文件的指令,没有编辑器时,可以使用这个指令在终端查看和编辑文件内容

本帖被以下淘专辑推荐:

回复

使用道具 举报

Ai-thinker-ESP | 2023-7-31 08:20:33 | 显示全部楼层
学到了
回复

使用道具 举报

yangguoyi | 2023-8-19 14:57:53 | 显示全部楼层
一直卡在这里git submodule update是什么原因,也改过子模块的路径了
回复 支持 2 反对 0

使用道具 举报

不是你的猫 | 2023-8-31 12:01:29 | 显示全部楼层
666
回复

使用道具 举报

ckdsx.cn | 2023-8-31 16:37:51 | 显示全部楼层
插眼打卡,今晚实践,明天汇报!
回复 支持 反对

使用道具 举报

李白百 | 2023-9-1 09:43:38 | 显示全部楼层
电脑拉不起来这些软件了,等开学换新
回复 支持 反对

使用道具 举报

王乐乐 | 2023-9-15 10:24:59 | 显示全部楼层
打卡学习
回复

使用道具 举报

王乐乐 | 2023-9-16 16:05:23 | 显示全部楼层
打卡
回复

使用道具 举报

WangChong | 2023-9-21 01:28:15 | 显示全部楼层
等两天到了 看看mac 会不会更方便点
回复 支持 反对

使用道具 举报

is麟儿 | 2023-9-21 13:25:22 | 显示全部楼层
本帖最后由 is麟儿 于 2023-9-21 13:30 编辑

楼主,看了你的介绍,在make 一步出错了,也是刚接触linux编程,是不是交叉编译工具链没有设置对?编译报错,能帮我看看什么原因吗





2023-09-21_13-29.png
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则