需要的软件工具及其他配置
ADB工具、Putty超级终端、共享文件夹
配置编译环境
第一步:更新 Ubuntu 系统中软件包列表的
sudo apt-get update
第二步:安装软件包
sudo apt-get install build-essential subversion git-core libncurses5-dev zlib1g-dev gawk flex quilt libssl-dev xsltproc libxml-parser-perl mercurial bzr ecj cvs unzip lib32z1 lib32z1-dev lib32stdc++6 libstdc++6 -y
如果有报错:
sudo apt-get install libc6:i386 libstdc++6:i386 lib32ncurses5 lib32z1
源码下载与安装repo
下载源码首选要注册全志客户服务平台的账号:
注册账号后,在虚拟机进行如下操作:
输入:
ssh-keygen
用于获取钥匙买之后会问你保存位置,直接默认回车:
接下来:cat ~/.ssh/id_rsa.pub,这个代码会导出秘钥:
接下来去全志客户服务平台来到这个位置:
将刚才获得的公钥添加到此处(cat命令输出的全部内容),名称可以随便起一个,不影响其他操作。
然后:
git clone ssh://username@sdk.allwinnertech.com/git_repo/repo.git
上面的username换成你刚才注册的用户名
之后在本地ls能看到自己的repo
然后vim /repo/repo
修改:
REPO_URL='ssh://username@sdk.allwinnertech.com/git_repo/repo.git'
将上面的username替换为你刚才的注册用户名
最后还需要把repo引导脚本添加到自己计算机环境变量中
cp repo/repo /usr/bin/repo
chmod 777 /usr/bin/repo
接下里我们去拉取SDK
首先自己找个目录存放SDK,我放在home里了,在你的目录里创建:
mkdir tina-D1-H
进入你创建的文件夹,然后输入以下命令:
tina-D1-H$ repo init -u ssh://username@sdk.allwinnertech.com/git_repo/D1_Tina_Open/manifest.git -b master -m tina-d1-h.xml
其中username要替换为你刚才注册的用户名
然后来取SDK:
repo sync
时间很长,慢慢等。
然后使用命令 repo start
创建开发环境分支
$ repo start product-smartx-d1-h-tina-stable-v2.0 --all
官网的操作里接下来是制作打包镜像并刷写固件,这个开发板里已经烧过了,不用再烧。可以直接用,如果想要刷机参照:编译和烧写 - D1-H (aw-ol.com)
这个SDK里面有编译链,位置是:/prebuilt/gcc/linux-x86/riscv/toolchain-thead-glibc/riscv64-glibc-gcc-thead_20200702/bin
这个时候我们还不能开始我们的helloworld,因为还没有将交叉编译工具添加到环境变量里:
##首先去根目录
cd /root
##然后
vim .bashrc
输入:
export PATH=$PATH:你创建tina-d1-h的路径/tina-d1-h/prebuilt/gcc/linux-x86/riscv/toolchain-thead-glibc/riscv64-glibc-gcc-thead_20200702/bin
之后保存退出,输入下面命令式变量生效:
source .bashrc
然后就可以编译我们的第一个helloworld了
编译第一个hello
首先找个地方写一个hello.c
vim hello.c
#include <stdio.h>
int main(int argc, char const *argv[])
{
printf("Hello NeZha\n");
return 0;
}
然后我们开始编译:
riscv64-unknown-linux-gnu-gcc -o hello hello.c
编译后我们获得hello文件
然后我将hello复制到共享文件夹,这个要看你自己的共享文件夹地址及名字
cp hello /mnt/hgfs/share
这之后在windows里就可以在共享文件夹里看到hello文件
硬件连接
打开包装盒我们看到两根白色的typec接口的数据线,和一根带有接口的串口线(一端是蓝色USB接口)。
关于串口线的接线:黑色-GND,绿色-RX,白色-TX,红色不接
白色的typec接OTG接口
使用putty在shell中操作开发板
首先按照上一步接好线后,查看端口号,如果没有尽可能是没装驱动
这个链接里有关于这块板子的一些工具的下载及使用研发生产工具 - D1-H (aw-ol.com)
然后代开putty,出现的第一个界面:
之后进入系统之前,会出现一个please enter……的语句,大概是连接后10s出现吧,这时按回车进入系统:
我创建了一个叫mycode的来存放我的代码
知识后我们要使用ADB工具来将刚才传到windows共享文件夹里的hello传到开发板上:
adb push <你电脑上存储hello的地址> <开发板上存放hello的地址>
可以看到已经出进去了
接下来运行:
先赋予权限:
chmod +x hello
./hello
运行成功输出:Hello NeZha