【全志D1-H 哪吒開發板】Debian系統安裝調教和點燈指南

全志D1-H開發板【哪吒】使用Deabian系統入門

特別說明:

  1. 因為涉及到操作較多,博文可能會導致格式丟失

  2. 其中內容,會根據后續使用做優化調整

目錄:

  • 參考資料
  • 固件燒錄
  • 啟動
  • 調教
  • 點燈
  • 問題

〇、參考資料

  1. 官方資料
    開發板-D1開發板【哪吒】
    全志在線開發者社區 - 資源下載
    RISC-V - Debian Wiki

  2. 學習資料
    參考的學習資料較多,感謝下列資料作者:
    Debian by Sipeed - D1-H
    D1 Nezha Debian鏡像基礎使用教程
    Nezha D1 debian鏡像更新帖 - Sipeed 開源社區
    「RVBoards-哪吒」開啟 SSH 和 VNC 遠程訪問,擺脫煩人的鼠標鍵盤顯示器 | RVBoards 論壇
    【Station M2】打造開發人員專用最強便攜小主機 - 廣受歡迎的專業電子論壇!
    Debian安裝中文支持 - Linux運維 - 運維網
    Habitat: Debian WQY
    debian stretch下的 lxde 配置 | Frapples的博客
    怎樣在 Debian 11 上設置靜態 IP | 月燈依舊
    全志D1開發板(哪吒 RISCV64)開箱評測_專欄RISC-V MCU中文社區
    生信之旅-debian11增加開機自啟腳本
    How to Change Your MAC Address on Linux
    全志在線 D1哪吒開發板開機連接wifi熱點, 啟動 sshd 服務
    How to set up static IP address on Debian Linux 10/11 - nixCraft
    如何在Debian 10安裝vscode | myfreax

一、固件燒錄

  1. 官方指導
    Debian by Sipeed - D1-H

  2. 固件下載
    鏈接: https://pan.baidu.com/s/1-3CocbTUWPLi2XKrb87LpA 提取碼:z4gn

  3. 燒錄工具
    PhoenixCard.zip

  4. SD卡準備
    準備一張8G以上的SD卡,建議至少32G,以免后悔來不及

  5. 燒錄

  • 將SD卡插到讀卡器,連接到電腦
  • 打開PhoenixCard,選擇好固件(需解壓),確認自動選擇的盤正確,勾選啟動卡,點擊燒錄即可
  • 預計15到30分鐘,先干點別的
  1. 分區大小調整
    務必要到Linux環境下,調整一下SD卡上分區的大小,不然后面的apt upgrade會掛了
# 查看sd卡掛載到哪個掛載點了,
sudo fdisk -l
Device            Start      End Sectors  Size Type
/dev/sda1   41464    49527     8064 3.9M Microsoft basic data
/dev/sda2   49528    50031      504 252K Microsoft basic data
/dev/sda3   50032    50535      504 252K Microsoft basic data
/dev/sda4   50536    71199    20664 10.1M Microsoft basic data
/dev/sda5   71200    72207     1008 504K Microsoft basic data
/dev/sda6   72208   100431    28224 13.8M Microsoft basic data
/dev/sda7  100432 16877647 16777216    8G Microsoft basic data
/dev/sda8 16877648 60504063 43626416 20.8G Microsoft basic data# sd卡會被分為八個區,sdX1-sdX8,將sdX替換為上一步實際顯示的即可
sudo e2fsck -f /dev/sdX7
sudo resize2fs -p /dev/sdX7

二、啟動:

  1. 插卡
    在背后插上SD卡,然后連接Type-C、網線,接上USB鍵盤,Type-C通電即可啟動
    在這里插入圖片描述

  2. 上電

  • 啟動時,會顯示SIPEED的圖標;然后會進入登錄界面;啟動速度不是很快,耐心等待
  • 默認賬戶:
    sipeed / licheepi
    root / licheepi
  1. 遠程ssh連接
  • 進入系統后,通過開始菜單中的Netwrok connection查看當前ip地址,然后連接
  • ssh sipeedd@ip

三、調教:

默認的系統,得好好調教才好使用

  1. 了解系統基本情況
sudo lsb_release -a
No LSB modules are available.
Distributor ID:   Debian
Description:  Debian GNU/Linux bookworm/sid
Release:   unstable
Codename:  sid
  • 通過以上輸出,可以了解系統為Debian 開發版;sid表示開發版
  1. 設置默認shell使用bash
# 選擇No即可
sudo dpkg-reconfigure dash# 查看默認shell,設置后,顯示為 /bin/sh -> bash 
ls -l /bin/sh
  1. 設置ssh證書登陸
sudo vim /etc/ssh/sshd.conf
# -------- 取消下面這行的注釋 --------
PubkeyAuthentication yes

重啟sshd服務

sudo systemctl restart sshd# 設置當前用戶的key登錄
mkdir ~/.ssh
chmod 0700 ~/.ssh# 設置登錄pub key
sudo vim ~/.ssh/authorized_keys
# -------- 將ssh登錄的pub key拷貝到這里 --------
ssh-rsa 公鑰 郵箱
  • 設置完成后,即可在主機或者其他電腦上,使用對應的私鑰登錄
  1. 時區設置
sudo tzselect# 依次選擇4-Asia、9-China、1-Beijing Time、1-Yes# 設置當前環境時區:TZ='Asia/Shanghai'; export TZ# 查看當前時間:date# 執行下面的指令,并在最后添加時區設置sudo vim /etc/profile# -----------以下內容為添加內容-------------TZ='Asia/Shanghai'; export TZ# -----------以上內容為添加內容-------------
  1. 設置apt更新源
  • 列表訪問:debian-ports阿里巴巴開源鏡像站 (aliyun.com)
# 備份原有的更新源配置
sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak# 使用阿里源,打開后輸入i即可開始填寫內容,按ESC,再按!wq回車,即可保存
sudo vim /etc/apt/sources.list
# -----------以下內容為填寫內容-------------
deb https://mirrors.aliyun.com/debian-ports/ sid main
# -----------以上內容為填寫內容-------------
  1. 更新系統
  • 先下載 https://www.ports.debian.org/archive_2022.key,然后導入并更新
sudo apt-key add archive_2022.key
sudo apt update
sudo apt upgrade -y    # 中途如彈出選擇界面,直接回車即可
sudo apt autoremove
  1. 安裝中文環境支持
  • 安裝中文locale、字體,并啟用中文支持
  安裝localessudo apt install -y locales# 所有的選項,都選擇zh_CN.UTF-8,然后等待完成sudo dpkg-reconfigure locales# 安裝中文字體sudo apt install -y fonts-arphic-ukai fonts-arphic-gkai00mp fonts-arphic-bkai00mpsudo apt install -y xfonts-wqy ttf-wqy-microhei ttf-wqy-zenhei# 設置當前用戶locale,按照如下信息進行設置vim /home/sipeed/.bashrcexport LC_ALL="zh_CN.UTF-8"export LANG="zh_CN.UTF-8"export LANGUAGE="zh_CN.UTF-8:zh:en_US.UTF-8:en"# 設置系統全局locale,按照如下信息進行設置sudo vim /etc/environmentLANGUAGE="zh_CN.UTF-8:zh:en_US.UTF-8:en"LANG="zh_CN.UTF-8"# 測試是否生效:設置生效后,執行data指令應返回中文source ~/.bashrcdate
  1. 啟用開機腳本
  • 后續有不少操作,需要設置開機啟動,所以此處縣啟動,方便后續操作
  • 在rc.local服務中添加下面的信息
sudo vim /lib/systemd/system/rc-local.service
# -----------以下內容為添加內容-------------
[Install] 
WantedBy=multi-user.target
# -----------以上內容為添加內容------------- # 設置/etc/rc.local啟動腳本
sudo vim /etc/rc.local
# -----------以下內容為填寫內容-------------
#!/bin/sh -e# 在這里輸入需要自啟的腳本
exit 0
# -----------以上內容為填寫內容-------------   # 設置啟動腳本執行權限
sudo chmod +x /etc/rc.local# 啟動對應的服務
sudo systemctl enable rc-local  # 啟用
sudo systemctl start rc-local.service # 開始運行
sudo systemctl status rc-local.service  # 查看狀態
  1. 設置有線使用固定mac地址
  • 這塊板子有個奇葩的地方,有線網卡的mac地址,重啟一次變一次,通過下面的方式,設置為固定值即可
# 安裝screen,防止網絡更改中途失聯,命令執行不完全sudo apt install -i screen macchanger# 開啟screenscreen# 查看當前的eth0 mac addrsudo macchanger -s eth0Current MAC:   86:53:0e:f0:ee:29 (unknown)Permanent MAC: 00:00:00:00:00:00 (XEROX CORPORATION)# 將上一步中顯示Current MAC,進行設置;請根據上一步顯示的實際結果設置sudo macchanger -m eth0 86:53:0e:f0:ee:29 eth0Current MAC:   86:53:0e:f0:ee:29 (unknown)Permanent MAC: 00:00:00:00:00:00 (XEROX CORPORATION)New MAC:       86:53:0e:f0:ee:29 (unknown)It's the same MAC!!# 重啟網絡sudo /etc/init.d/networking restart# 寫入到開機啟動中,將下面的對應內容,添加到/etc/rc.local啟動腳本sudo vim /etc/rc.local# 在這里輸入需要自啟的腳本# -----------以下內容為添加內容------------- # 設置網卡mac地址/usr/bin/macchanger -m 86:53:0e:f0:ee:29 eth0/etc/init.d/networking restart# -----------以上內容為添加內容-------------      exit 0
  • 設置完成后,可以嘗試重啟板子,查看mac地址是否已經固定
  1. 設置靜態IP地址
  • 請根據實際情況,設置對應的ip、掩碼、網關、DNS
# 備份默認配置sudo cp /etc/network/interfaces /etc/network/interfaces.baksudo vim /etc/network/interfaces# -------- 參考如下信息進行設置 --------#iface eth0 inet dhcp  # The loopback network interfaceauto loiface lo inet loopbackauto eth0iface eth0 inet staticaddress 192.168.1.141netmask 255.255.255.0gateway 192.168.1.1dns-domain wowodns-nameservers 192.168.1.1

11.遠程桌面登錄
11.1 安裝vnc

apt install tigervnc-standalone-server -y

11.2 啟停vnc

  • 首次啟動時,會提示設置用戶密碼,請仔細設置
# 啟動,可添加參數-geometry 1280x800設置分辨率
vncserver -localhost no -display :1# 查看
vncserver -list# 停止
vncserver -kill :1

11.3 設置開機啟動

#在開機腳本exit 0前面添加下面的腳本
sudo vim /etc/rc.local
# -----------以下內容為添加內容-------------
echo "start vnc server"
export HOME=/home/sipeed
/usr/bin/sudo -u sipeed -i vncserver -localhost no -display :1 -geometry 1280x800
echo "vnc server started"
# 這里需要先配置 HOME 環境變量, vncserver 需要
# -----------以上內容為添加內容-------------
exit 0
  • 列表設置完成后,重啟時,將會自動啟動vnc server,方便遠程桌面連接

11.4 遠程連接:

  • 在其他電腦上,使用vnc viewer進行連接
  • 連接地址: http://開發板ip:5901

在這里插入圖片描述

  1. 安裝vscode[跳過]
  • 安裝好vscode,就能當開發小強用了
  • vscode目前還沒有提供Debian@risc-v的運行版本,以下操作跳過
# 導入微軟GPG秘鑰:
sudo apt install -y software-properties-common apt-transport-https curl
curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -# 添加微軟vscode安裝源
sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"# 更新安裝源索引,并安裝vscode
sudo apt update
sudo apt install code

四. 點燈

  • 最激動人心的時刻,不就是點個燈么;好在這個Debian by Sipeed已經提供了LED支持,使用下面的代碼,就能很方便的點燈了
vim ~/test_led.sh# -----------以下內容為填寫內容------------- #!/bin/bashfunction set_led(){echo $1 > /sys/class/leds/sunxi_led0r/brightnessecho $2 > /sys/class/leds/sunxi_led0g/brightnessecho $3 > /sys/class/leds/sunxi_led0b/brightness}let type=8for i in $(seq 1 1000);doif [[ $((i % type)) -eq 0 ]];thenset_led 0 0 0elif [[ $((i % type)) -eq 1 ]];thenset_led 255 0 0elif [[ $((i % type)) -eq 2 ]];thenset_led 0 255 0elif [[ $((i % type)) -eq 3 ]];thenset_led 0 0 255elif [[ $((i % type)) -eq 4 ]];thenset_led 255 255 0elif [[ $((i % type)) -eq 5 ]];thenset_led 255 0 255elif [[ $((i % type)) -eq 6 ]];thenset_led 0 255 255elif [[ $((i % type)) -eq 7 ]];thenset_led 255 255 255fisleep 0.5done# -----------以上內容為填寫內容-------------     # 設置執行權限chmod a+x test_led.sh# 執行sudo ./test_led.sh

現在請看板子,板載WS2812 LED歡快的亮起來了,顏色還是變化的!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/718716.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/718716.shtml
英文地址,請注明出處:http://en.pswp.cn/news/718716.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++:函數模板整理

函數模板: 找到函數相同的實現思路&#xff0c;區別于函數的參數類型。 使用函數模板使得函數可容納不同類型的參數實現函數功能&#xff0c;而不是當類型不同時便編譯大量類型不同的函數&#xff0c;產生大量重復代碼和內存占用 函數模板格式&#xff1a; template<typ…

[Vulnhub]靶場 Red

kali:192.168.56.104 主機發現 arp-scan -l # arp-scan -l Interface: eth0, type: EN10MB, MAC: 00:0c:29:d2:e0:49, IPv4: 192.168.56.104 Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan) 192.168.56.1 …

ARM64匯編02 - 寄存器與指令基本格式

最近的文章可能會有較多修改&#xff0c;請關注博客哦 異常級別 ARMv8處理器支持4種異常等級&#xff08;Exception Level&#xff0c;EL&#xff09;。 EL0 為非特權模式&#xff0c;用于運行應用程序&#xff0c;其他資源訪問受限&#xff0c;權限不夠。 EL1 為特權模式&…

【王道操作系統】ch1計算機系統概述-06虛擬機

文章目錄 【王道操作系統】ch1計算機系統概述-06虛擬機01傳統計算機02虛擬機的基本概念&#xff08;1&#xff09;第一類虛擬機管理程序&#xff08;2&#xff09; 第二類虛擬機管理程序&#xff08;3&#xff09; 兩類虛擬機管理程序的對比 【王道操作系統】ch1計算機系統概述…

效果炸裂、刷爆各大視頻網站的EMO到底是怎么做到的?

文章鏈接&#xff1a;https://arxiv.org/abs/2402.17485 今天分享的工作是刷爆各大視頻平臺的EMO的背后的工作原理。提出的初衷是著手解決增強發言者的頭部特寫視頻生成中的現實感和表現力的挑戰&#xff0c;重點關注音頻提示與面部動作之間的動態和微妙關系。傳統技術具有局限…

【HarmonyOS】鴻蒙開發之Stage模型-UIAbility的啟動模式——第4.4章

UIAbi lity的啟動模式簡介 一共有四種:singleton,standard,specified,multion。在項目目錄的:src/main/module.json5。默認開啟模式為singleton(單例模式)。如下圖 singleton&#xff08;單實例模式&#xff09;啟動模式 每個UIAbility只存在唯一實例。任務列表中只會存在一…

測試管理進階 | 量力而行:避免成為替罪羊

職場中,我們常常面臨是否幫助他人的抉擇。盡管善良是美德,但過度的好人卡可能會給自己帶來麻煩。本文將探討如何在職場中量力而行,避免成為替罪羊,以及如何保持高效和合理的職責劃分。 我們在工作中常常會遇到一些需要幫助他人的情況,作為團隊的一員,我們希望能夠積極地協…

Linux運維_Bash腳本_編譯安裝libGD-2.3.3

Linux運維_Bash腳本_編譯安裝libGD-2.3.3 Bash (Bourne Again Shell) 是一個解釋器&#xff0c;負責處理 Unix 系統命令行上的命令。它是由 Brian Fox 編寫的免費軟件&#xff0c;并于 1989 年發布的免費軟件&#xff0c;作為 Sh (Bourne Shell) 的替代品。 您可以在 Linux 和…

六、繼承(一)

1 繼承的引入 以往我們想分別實現描述學生、老師的類&#xff0c;可能會這樣子做&#xff1a; class Student {string _name;string _number;int _tel;int id;string _address;int _age; }; class Teacher {string _name;int _level;int _tel;int id;string _address;int _ag…

【歸并排序】 詳細解析 動圖演示 逐圖解析 洛谷P1177【模板】排序 sort【快速排序】

文章目錄 歸并排序1.歸并排序的復雜度分析2.細節解釋3.歸并排序動圖演示3(1) 我們的拆分過程如下↓ 4.code↓ 洛谷P1177【模板】排序數據規模與約定code&#xff08;歸并排序&#xff09;↓code&#xff08;sort排序【快速排序】&#xff09; 完結撒花(&#xffe3;▽&#xff…

閱讀筆記 | REFORMER: THE EFFICIENT TRANSFORMER

閱讀論文&#xff1a; Kitaev, Nikita, ?ukasz Kaiser, and Anselm Levskaya. “Reformer: The efficient transformer.” arXiv preprint arXiv:2001.04451 (2020). 背景與動機 這篇論文發表較早&#xff0c;主要關注Transformer的效率問題。標準的Transformer模型在許多自然…

數據中臺:數字中國戰略關鍵技術實施

這里寫目錄標題 前言為何要建設數據中臺數據中臺建設痛點數據中臺學習資料聚焦前沿&#xff0c;方法論體系更新與時俱進&#xff0c;緊跟時代熱點深入6大行業&#xff0c;提煉實踐精華大咖推薦&#xff0c;數字化轉型必備案頭書 前言 在數字中國這一國家戰略的牽引下&#xff0…

測試基礎|質量保障體系從1到N的思考

在2023年,重點構建了團隊的質量保障體系,基本完成了從0到1的過程積累,也在多個不同的場合做了相關的分享,收獲了很多同行給的建議和意見。今年的首個工作目標是把這套質量保障體系運營好,去覆蓋更多的團隊,完成從1到N的過程,讓更多的團隊從這個質量體系中獲益,保障基本…

Node插件開發(1)-快速入門

在使用Electron開發客戶端時&#xff0c;如果現有Node模塊所提供的功能無法滿足需求&#xff0c;我們可以使用C開發自定義的Node模塊&#xff0c;也稱插件&#xff08;addon&#xff09;。 Node.js插件的擴展名為.node&#xff0c;是二進制文件&#xff0c;其本質上是動態鏈接…

基于springboot+vue的響應式企業員工績效考評系統(源碼+論文)

文章目錄 前言 一、功能設計 1 普通員工功能 2 主管功能 3 系統管理員功能 4 評分標準功能 5 PC端與手機端 6 制圖 二、功能實現 普通員工 1普通員工登錄 2公告板塊 3日志板塊 主管 1主管登錄 2公告板塊 3日志板塊 4績效評分板塊 5個人信息板塊 系統管理員…

TypeScript 日期格式化工具方法

工具方法 創建工具文件&#xff1a;util.ts /*** 獲取時間并格式化函數* param M 格式模板 如: YYYY-MM-DD ...* param Time 可選傳入時間參數 默認為 Now*/ export const getFormatDate (M: string, Time: Date | null | string | number null) > {let date: Date Tim…

在 Linux 環境下安裝 Kibana

目錄 一、Kibana 是什么 二、在 Linux 環境下安裝 Kibana 1、下載安裝包 2、解壓 3、修改 Kibana的配置文件 config/kibana.yml 4、啟動 5、瀏覽器登錄 Kibana 6、測試查詢 一、Kibana 是什么 Kibana 是通向 Elastic 產品集的窗口。 它可以在 Elasticsearch 中對數據進…

品牌推廣的兩種飛輪:非酋飛輪與歐皇飛輪

在品牌推廣的世界里&#xff0c;存在著兩種截然不同的飛輪效應&#xff0c;我們稱之為“非酋飛輪”與“歐皇飛輪”。這兩種飛輪象征著品牌發展的兩種不同路徑和策略&#xff0c;而迅騰文化則以其獨特的“繁”的原則&#xff0c;巧妙地將這兩種飛輪結合&#xff0c;助力品牌形成…

Linux安裝JumpServer并結合內網穿透實現公網訪問本地服務

&#x1f49d;&#x1f49d;&#x1f49d;歡迎來到我的博客&#xff0c;很高興能夠在這里和您見面&#xff01;希望您在這里可以感受到一份輕松愉快的氛圍&#xff0c;不僅可以獲得有趣的內容和知識&#xff0c;也可以暢所欲言、分享您的想法和見解。 推薦:kwan 的首頁,持續學…

Kubernetes 學習總結(46)—— Pod 不停重啟問題分析與解決

我們在做性能測試的時候&#xff0c;往往會發現我們的pod服務&#xff0c;頻繁重啟&#xff0c;通過kubectl get pods 命令&#xff0c;我們來逐步定位問題。 現象:running的pod&#xff0c;短時間內重啟次數太多。 定位問題方法:查看pod日志 kubectl get event …