---
# System prepended metadata

title: 【軟體】不同通訊下的開發方式（以樹梅派為例）
tags: [TTennis Pickup Robot]

---

---
title: 【軟體】不同通訊下的開發方式（樹梅派）
tags: TTennis Pickup Robot
disqus: hackmd
---

<h1 style="text-align: center; color: orange;">
🛠️ 【軟體】網路、通訊 🛠️
</h1>

<h2 style="text-align: center; color: skyblue;">不同通訊下的開發方式（樹梅派）</h2>

<center>

:::info
因為不知道樹梅派燒錄筆記要放哪，就順便放這吧~
:::
</center>

:::spoiler 樹梅派 燒錄教學

<h3><font color="magenza"> 派的前置作業 </font></h3>

這裡是在 <font color = "yellow">Raspberry PI 4 </font>上裝 <font color = "yellow">Ubuntu Server 20.04 </font>。請根據自己需求更換版本。

需要的東西有：
* 樹梅派、筆電
* micro SD 卡 / micro SD 讀卡機
* micro HDMI to HDMI 轉接線
* Raspberry Pi 燒錄器


<h3><font color="magenza"> 燒錄 Ubuntu 至 microSD </font></h3>

<font color="yellow">1. 下載 [RPi燒錄器](https://www.raspberrypi.com/software/)。</font>


<font color="yellow">2. 將裝有 micro SD 卡的讀卡機插進電腦。</font>

接著就照著下面按就可以了。

![](https://hackmd.io/_uploads/S1qMDjPac.png =48%x) ![](https://hackmd.io/_uploads/HySuvjv69.png =48%x)

此裝 Ubuntu Server 20.04 LTS x64，新手可裝 Desktop 版本（有 GUI）。

![](https://hackmd.io/_uploads/HyyiDswpc.png =48%x) ![](https://hackmd.io/_uploads/ByNlYoPp9.png =48%x)

<font color="yellow">3. 按右下角的齒輪或是用快捷鍵 `ctrl+shift+x` 進入高級設置。</font>

請自行調整主機名（hostname）及 Wi-Fi SSID/pswd。

![](https://hackmd.io/_uploads/rkwFexda9.png =48%x) ![](https://hackmd.io/_uploads/BJhVxxuTc.png =48%x) 

![](https://hackmd.io/_uploads/SJDPxedac.png =48%x) ![](https://hackmd.io/_uploads/Hksqlgd6c.png =48%x)

<font color="yellow">4. 燒錄</font>
就按燒錄，等他燒完就可以直接拔出來了。
:::

<br />


<h3><font color="magenza"> 
1. 開發方式一： 外接螢幕與鍵盤
</font></h3>

樹莓派開發最直接的方式是 RPi 外接螢幕和鍵盤，但個人覺得這樣很麻煩。

<br />

<h3><font color="magenza"> 
2. 開發方式二： UART 串口通訊
</font></h3>

可改用 UART 串口通訊，只要準備 **USB2TTL 模組** 就可以了。

<font color="yellow">1. 筆電插上 micro SD 讀卡機，在 boot/config.txt 的末端新增一行。</font>
```
enable_uart=1
```

<font color="yellow">2. 筆電安裝[XShell 7](https://www.netsarang.com/en/xshell/)。</font>

<font color="yellow">3. 將樹莓派連 USB2TTL，並插上筆電 USB 槽即可。 </font>
（若怕 GPIO 供電不穩，可以移除 5V 線，改用 Type-C 供電。）
	
![image](https://hackmd.io/_uploads/BkZE5EikR.png =48%x) ![image](https://hackmd.io/_uploads/r1y9dSoJC.png =25%x)

<font color="yellow"> 4. 開啟 XShell</font>

* **檔案** > **新增** > **連線** > **通訊協定**，選擇 **SERIAL**。
* **串口** > **端口號**，選擇自己的 port。其他設定使用預設值。
	![image](https://hackmd.io/_uploads/BypjRBiyA.png =90%x)


<br />

<h3><font color="magenza"> 
3. 開發方式三： SSH 遠端連線
</font></h3>

最優雅的方式還是遠端開發，SSH 訪問。樹莓派上電即可遠端連線開發。

<font color="yellow"> 1. 連網</font>
用 `sudo apt update` 測試網路運作，不正常請回燒錄步驟確認網路設置。

<font color="yellow"> 2. 查 IP</font>
```shell=
sudo apt install net-tools
ifconfig
```
![image](https://hackmd.io/_uploads/HyGXWIiy0.png =80%x)

<font color="yellow"> 3. VSCode 中設置 C:\Users\User\.ssh\config。</font>

VSCode 中左下角，**開啟遠端視窗** > **在目前的視窗中連線至主機** > **設定 SSH 主機** > **C:\Users\User\.ssh\config** 。

```py=
# 留意空格和空行
Host 192.168.50.103 #填入RPi的IP
  HostName ditrobotics #不確定可輸入hostname查詢
  User pomelo #不確定可輸入whoami查詢
```

儲存後，**開啟遠端視窗** > **在目前的視窗中連線至主機** > **192.168.50.103** > **linux** > **繼續**。


<center>
	
:::success

**每次都要查 IP 很麻煩?
那你可以到 router 設定 static DHCP/IP 或是 [使用mDNS](/@925/mdns)。**
:::
</center>

<br />
