第一章:初識pcDuino
一.概述:
pcDuino是一款高性能的,成本效益極高的迷你PC平台,它能運作像 Linux 3.0和Ubuntu 12.10這樣的作業系統。通過内置HDMI接口即可直接輸出視訊到電視或顯示器螢幕而不需要像正常嵌入式開發闆那樣外接LCD顯示屏。這是一款專門針對開源社群快速增長的需要,即希望有一個平台可以運作完整的PC作業系統,容易使用的工具鍊和相容流行的Arduino開放的生态系統,如Arduino shield和開源項目等而精心打造的國産PC平台。
二. 硬體規格:
CPU: 1GHz ARM Cortex A8核心
GPU: OpenGL ES2.0, OpenVG 1.1 Mali 400 core
DRAM: 1GB
闆載存儲: 2GB Flash,microSD 插槽擴充至 32GB
視訊輸出: HDMI
作業系統: Linux3.0 +Ubuntu12.10
擴充接口: 2.54mmHeaders相容Arduino
以太網: RJ45接口以及可擴充 USB WiFi (未包括)
電源: 5V 2A
尺寸:125mm X 52mm
三. pcDuino正反面視圖:
1.正面:
2.反面:
四. pcDuino I/O口描述:
1. 14個GPIO(通用輸入輸出)引腳;
2. UART(通用異步收發器)收發接口各1個;
3. 2個PWM(脈沖調變)引腳;
4. 6個ADC(模拟數字)轉換引腳,ADC 0和ADC 1都是6位分辨率的,其餘是10位分辨率;
5. 4個SPI引腳;
6. 2個I2C引腳。
可以通過上述的任意接口連接配接Arduinoshield和pcDuino。并且可以在pcDuino上使用Arduino代碼。
五. 基本用途:
pcDuino的目标市場分為兩大塊Raspberry Pi的客戶群以及Arduino市場。它是一個完美的把開源軟體和開源硬體想結合的平台産品。使用者可以用pcDuino做出下面甚至比下面更多的應用:
1.程式設計教學和學習 ;
2.使用硬體接口 ;
3.在Ubuntu系統裡使用網頁浏覽器和辦公軟體;
4.學習Linux系統 ;
5.建立XMBC媒體中心;
6.玩遊戲 ;
7.DIY實作自己的創意。
第二章:拿到闆子之後
一.相關硬體要求:
迷你USB接口電源擴充卡 (5V,2A): 注意Micro USB的電線要足夠粗能帶動2A的大電流;
支援HDMI接口的高清顯示器;
USB轉TTL子產品;
HDMI連接配接線: 如果使用者沒有HDMI顯示器。 可以使用HDMI到VGA轉換線或者 HDMI到DVI轉換線;
USB接口鍵盤 (必要);
USB HUB 和 USB 滑鼠 ( 可選但是強烈推薦);
杜邦線若幹:可以用來連接配接硬體子產品;
microSD卡和讀卡器:推薦使用者有兩張2GB以上的microSD 卡。 一張用來更新核心, 另外一張用來更新Ubuntu檔案系統。
注意:
在開始進一步的工作之前,先保證pcDuino和相關裝置連接配接正确:
USB 接口 => USB 集線器 => 鍵盤和滑鼠
HDMI 接口 => HDMI 線 => HDMI 顯示器
二.相關軟體要求:
1.PhoenixCard:
PhoenixCard 軟體用于将待量産的固件通過SD卡讀卡器寫入SD卡中。使用者可以選擇不同的模式将SD卡燒寫成量産模式或者是啟動模式,燒寫完成後可以用燒寫好的SD卡來進行裝置量産或者啟動。
2.超級終端:
通過USB轉TTL子產品建立電腦與pcDuino的硬體連接配接,即可在終端中看到相關指令行界面,可供更新系統時作為提示資訊,也可以在該界面下輸入相關指令對系統進行間接控制,适合沒有HDMI顯示器的使用者。網絡上有很多終端工具,有些終端工具可能會出現無法輸入指令的情況,這裡推薦使用SecureCRT。
三. 搭建PC機相關環境:
1. 将USB轉TTl子產品插到電腦的USB口系統會自動安裝相關驅動,若未能自動安裝可手動安裝PL2303晶片驅動,完成之後可在裝置管理器檢視相應CMO口。
2.運作終端工具SecureCRT.exe,點選檔案選擇快速連接配接,在彈出的對話框中選擇相關屬性為:
協定:Serial
port:裝置處理器中相應CMO口
波特率:115200
資料位:8
奇偶校驗:None
停止位:1
流控:一個都不選
點選連接配接,成功後會有一個小對勾提示,失敗則提示“unable to open serial port com-”,自行檢察錯誤直至成功。
當Android系統啟動後,向終端輸入“sh”指令系統會在終端列印出“[email protected]:/#”字樣并等待你的指令。
當Ubuntu系統啟動後,終端會直接進入linux指令行界面模式,可直接輸入linux指令。
第三章:pcDuino的ubuntu介紹:
一. ubuntu目錄介紹:
1.根目錄下目錄簡介:
Ubuntu使用的檔案系統結構遵守Linux的标準結構和命名原則。 這樣能保證使用者和軟體能正确地預測檔案和目錄的位置。根目錄很簡單的用 '/.' 來表示。 在根目錄層次, Ubuntu系統包括以下目錄:
目錄 | 内容 |
Bin | 必要的指令 |
Boot | 靜态 boot loader 檔案 |
Dev | 裝置檔案,驅動 |
Etc | 主機專有的系統配置 |
home | 使用者的home目錄 |
Lib | 必要的共享目錄和核心子產品 |
media | 對可移除盤包括裝載的連結點 |
Mnt | 臨時裝載檔案系統的裝載點 |
Proc | 放系統資訊的虛拟目錄 |
Root | 超級使用者root的根目錄 |
Sbin | 必要的系統可執行檔案 |
Sys | 放系統資訊的虛拟目錄 |
Tmp | 臨時檔案 |
Usr | 第二個目錄結構 |
Var | 計算型資料 |
Srv | 系統提供的服務需要用到的資料 |
Opt | 添加應用軟體包 |
2.重點目錄詳解:
下面是一些對目錄和分區清單需重點考慮的因素。需要特别注意的是在不同的系統配置和使用模式下,對硬碟容量的要求是相差很大的。這裡所推薦的是通用指引,為分區的建設提供一起點。
1.根分區 / :
必須總是實體地包含 / etc,/ bin,/ sbin,/ lib 和/ de,否則,系統将不能夠啟動。通常需要150-250MB的根分區。
2./ usr:
包含所有的使用者程式(/ usr /bin),庫(/ usr/ lib),文檔(/ usr/ share / doc)等,這是一般的檔案系統,塔占用最多的空。你應該提供至少500MB的磁盤空間。這一數字随您計劃安裝的軟體包的數量和類型将會快速增加。一個标準的Ubuntu桌面最少需要1.5GB。寬松的工作站或伺服器安裝應該需要4-6GB。
3./ VAR:
可變資料,如新聞文章,電子郵件,網站,資料庫,軟體包系統的緩存等等,将被放置在這個目錄下。這個目錄的大小在很大程度上取決于你的系統的使用,但對于大多數人來說,将取決于包的管理工具。如果你打算做一個完整的安裝一切隻是Ubuntu有提供2或3 GB的空間給/ var應該是足夠的。如果你要安裝(也就是說,安裝服務和工具,其次是文本處理工具,然後是X,...),放300-500 MB就行。如果硬碟空間受到限,你不打算做主要的系統更新,你可以得到30或40 MB。
4./ tmp目錄:
由程式建立的臨時資料将最有可能在這個目錄中去。 40-100MB通常足夠了。一些應用程式 ,包括歸檔處理程式,CD/ DVD制作工具和多媒體軟體可能會使用/ tmp臨時存儲圖像檔案。如果您打算使用此類應用程式,你應該調整空間/ tmp。
5./ home:
每個使用者将放置他的個人資料到這個目錄的子目錄。其大小取決于有多少使用者會使用系統和有什麼檔案放在他們的目錄。根據規劃的用途,你應該為每個使用者準備100MB空間,但這個數字應該根您的需求來定。如果你打算在你的home目錄中放大量的多媒體檔案(圖檔,MP3,電影),你應該預留足夠的空間。
二. Ubuntu 指令:
1.如何切換到指令行模式:
按 CTRL+ALT+F1 到 CTRL+ALT+F6切換到指令模式。
按 CTRL+ALT+F7 切換回Ubuntu 圖形界面。
2.停止或者重新開始Ubuntu 圖形界面:
1.停止圖形界面(GUI)
$ sudo stop lightdm
2.開啟圖形界面(GUI)
$ sudo start lightdm
3.重新開機圖形界面(GUI)
$ sudo restart1lightdm
當 lightdm GUI啟動的時候, 它将使用的配置檔案是: /etc/X11/xorg.conf
3.如何設定程式在桌面啟動後自動執行
建立一個檔案:/home/ubuntu/.config/autostart/YOURAPP-autostart.desktop , 内容如下:
[Desktop Entry]
Type=Application
Name=app name
Exec=YOUR_APP
OnlyShowIn=LXDE
4.變更目錄:
改變目錄的指令是 $cd。
你可以用 '$cd /'來退檔案系統的頂。任何以 ‘/’ 開始的目錄的改變都和檔案系統的頂級目錄有關系。鍵入 ‘cd folder/subfolder’,将相對于你現在系統中的檔案(目錄)改變目前目錄。是以,例如,如果你在你的home目錄中輸入‘$cd Arduino' ,你會去到 'home/arduino'。 但如果你已經代替輸入 ’cd/arduino'的,Linux會試圖把你切換頂層的檔案系統下的 arduino(類似于C:\ arduino的視窗),在大多數系統上這是不存在的。
在目錄中顯示出所有檔案:
要做到這一點,輸入‘$ ls'。
此功能是在目錄中“顯示”所有檔案。添加 '-a' 到指令( $ls- a)也将顯示任何隐藏的目錄下的檔案。添加 '-l'('$ ls -l')會顯示檔案的權限、類型、所有者和建立/編輯日期。
5.更改使用者:
在Ubuntu系統中,我們可以使用指令'su'切換到root使用者模式。由于很多指令需要root權限,我們在指令的開頭可以添加“su”。
root在Linux上是超級使用者(管理者)。 sudo是指令,它允許其他使用者以管理者身份發出的指令。 sudo就相當于“管理者執行”。使用sudo普通使用者就可以執行一般不允許的操作。這個詞就隻是一個super-do 和pseudo的縮寫。使用sudo需慎用!Sudo會對您的系統做很多破壞,最典型的就是,您的正常帳戶不允許執行特定的動作。'sudo rm-rf *' 将完全删除檔案系統中的一切,摧毀系統。
6.安裝軟體包
apt-get是Debian / UbuntuLinux的包或者軟體管理。安裝就是讓apt-get示範和讓包的名稱跟着安裝的關鍵字或行動。可以同時将多個軟體包進行安裝。
1.如何解除安裝/删除/删除軟體包
要解除安裝軟體包,我們可以使用‘dpkg –list’列出所有已安裝的軟體包。一旦發現安裝的軟體包,我們可以使用‘sudo apt-get --purge remove”指令删除某個特定的軟體包。例如:
$sudoapt-get --purge remove lighttpd
2. 壓縮和解壓安裝軟體包
Tar是在Linux壓縮檔案中非常流行的檔案格式。最大的優勢是,它可以使用很少的CPU資源壓縮檔案。它是唯一一個隻打包的實用程式,它不負責壓縮。壓縮由gzip和bzip2完成。現在讓我們使用檔案格式*.tar, *.tar.gz, and *.tar.bz2 作為例子:
如果我們要在 / var / tmp下壓縮和打包目錄到目前目錄,
$ tar -cvf test.tar test
上面的指令僅包含目錄和檔案,并沒有做壓縮。
$ tar -zcvf test.tar.gz test
上面的指令包含了目錄和檔案,然後使用gzip進行了壓縮。
$ tar -jcvf test.tar.bz2 test
上面的指令包含了目錄和檔案,然後使用bzip2進行了壓縮。
下面的指令是對生成檔案的大小做對比:
$ ll test.tar*
-rw-r--r-- 1 Lee mock 10240 01-18 17:05 test.tar
-rw-r--r-- 1 Lee mock 357 01-18 17:06 test.tar.bz2
-rw-r--r-- 1 Lee mock 327 01-18 17:05 test.tar.gz
3.如何解壓檔案:
$ tar -xvf test.tar
$ tar -xvf test.tar.gz
$ tar -jxvf test.tar.bz2
7.值得推薦的文本編輯器
nano是一個友善的文本編輯器,使用起來比 vi 更加得心應手。要安裝它,
“$sudo apt-get install nano”.
8.如何檢查核心版本
下面的指令就是用來找出核心版本:
[email protected]:~$ cat /proc/version
9.檢查CPU/速度
您可以使用下面的指令顯示所有CPU的資訊:
[email protected]:~$ cat /proc/cpuinfo
10.如何檢查存儲空間
要檢查剩餘空間及類型:
$df –h
三.Ubuntu系統下配置網絡:
一.有線網絡配置:
1. 檢驗是否可以連通,就使用ping指令ping 網關開始的時候總是現實unreachable
2. 設定IP
sudo ifconfig eth0 192.168.0.190 netmask 255.255.255.0
這樣就算設定好了網卡eth0的IP位址和子網路遮罩
3. 設定網關 sudo route add default gw192.168.--------
4. ping 網關就可以ping通了
5. 設定DNS 修改/etc/resolv.conf,在其中加入
nameserver DNS的位址1
nameserver DNS的位址2
完成。
二.無線網絡配置:
第四章:燒寫系統到pcDuino
一.燒寫Ubuntu系統到pcDuino開發闆:
1.硬體準備:
USB轉TTL子產品;
杜邦線三根;
輸出5V,2A直流電源;
資料線一條;
2GB SD卡一張;
讀卡器或卡套一個;
pcDuino開發闆一個;
電腦一台。
2.硬體連接配接:
将杜邦線一端分别接到USB轉TTL子產品的GND,RX,TX三個引腳,另一端分别接到pcduino開發闆的UART0引腳的GND,TX,RX,如圖:
将DCPOWER IN作為電源輸入口,通過資料線和5V,2A電源接入220V電源,USB轉TTL子產品的USB接口與電腦相連,其驅動為PL2303驅動,安裝正确後能在裝置管理器中看到相應的COM口,在終端選擇相應COM口即可與闆子建立連接配接。
3.操作步驟:
1. 先将SD卡插入電腦進行快速格式化,格式化完成之後打開PhoenixCard.exe點選擷取盤符,選擇鏡像檔案(pcduino_a10_kernel_livesuit_xxxxxxxx.img),燒寫模式選擇卡量産,點選燒錄後等待完成後退出,将SD卡插入pcduino卡槽。
2.接通電源,燒寫到SD卡的引導程式會自動加載到pcDuino内部存儲區域,然後啟動引導程式,完成後會提示搜尋更新檔案和映像檔案,并要求插入帶有這兩個檔案的SD卡或是移動硬碟,如圖:
3.出現以上界面後,保持電源的連接配接狀态(此時RX常亮,TX閃爍),将以下兩個檔案拷貝到SD卡後,插入SD卡槽
pcduino_ubuntu_xxxxxxxxx.img
update.sh
出現以上界面後等待約七分鐘即可完成ubuntu的燒寫,此過程RX常亮,TX快速閃爍。
4.Ubuntu系統燒寫完成(RX,TX同步緩慢閃爍),取出SD卡後重新開機,在終端即可看到Ubuntu指令行界面。
二. 燒寫Android系統到pcDuino開發闆:
1.硬體連接配接與準備:
其硬體準備與硬體連接配接同燒寫Ubuntu到pcDuino。
2.操作步驟:
1. 先将SD卡插入電腦進行快速格式化,格式化完成之後打開PhoenixCard.exe點選擷取盤符,選擇鏡像檔案(pcduinoV2_android_livesuit_xxxxxxxx.img),燒寫模式選擇卡量産,點選燒錄後等待完成後退出,将SD卡插入pcduino卡槽。
2.接通電源,燒寫到SD卡的引導程式會自動加載到pcDuino内部存儲區域,然後啟動引導程式,完成後會提示搜尋更新檔案和映像檔案,并要求插入帶有這兩個檔案的SD卡或是移動硬碟,如圖:
如果終端中還是出現以前系統的啟動資訊,則可嘗試多次重新開機。
3.這裡并沒有任何訓示燈用來作為燒寫完成标志,是以隻能在終端中等待出現下圖所示資訊才表示燒寫完成,或是等待HDMI顯示器上直接出現Android系統開機界面,使用者即可直接使用。而且在下次重新開機之前應取出SD卡,以防系統再次燒寫。
4.重新開機系統,如在終端上出現下圖界面或是HDMI顯示器有Android系統界面則燒寫完成。
卡刷
準備: pcduino : 點此購買 支援HDMI的顯示器:點此購買 或參考無顯示器刷機與使用。
至少1張4G microSD卡,如果記憶體卡不大,可以用記憶體卡刷核心,用u盤刷系統
背景:
本教程中使用的電腦為Windows7系統,其他windows系統一般都可能适用。
其他系統電腦,諸如MAC、Linux系統不适用。
一、使用microSD卡裝系統
開始:
1、下載下傳必要檔案
最新版的在這個頁面找到 http://www.pcduino.com/?page_id=14
按照圖上提示下載下傳需要的。 我們這裡需要下載下傳用于卡刷的核心和刷機的Ubuntu.
2、下載下傳 Win32DiskImager 到電腦,建立一個檔案夾之後,再解壓縮到建立的檔案夾,打開win32DiskImager.exe(如下圖)
3、将microSD卡插入讀卡器,讀卡器插入電腦,并確定能被電腦識别,正常進入microSD卡。
4、在第2步打開的win32DISKIMAGER 中點選“檔案夾”圖示(如下圖):
5、然後會彈出一個img檔案選擇對話框。這選擇之前下載下傳的“kernel”所在檔案夾,并標明這個檔案“pcduino_a10_kernel_disk32imager_20130529.img”,然後點選打開:如下圖:
6、點選上圖中的“write”按鈕,會彈出如下圖提示,點選“YES”:
7、點選“yes”之後,就會出現下圖,表示在往你的microSD卡寫入KERNEL:
8、根據你的microSD卡寫入速度,上面這個過程會等待5-10分鐘,成功後提示,如下圖:
9、然後将microSD卡從讀卡器中取出,然後插入pcduino(此時PCDUINO沒有通電,也不用管pcduino是否有系統,更不用說什麼格式化,若pcduino裡面有重要資訊,在将microSD卡插入PCDUINO之前,請自行備份)的microSD卡槽(在PCduino闆子背面),并給pcduino通電。
10、通電後,PCDUINO會自動清除自身的原有系統,在燒錄kernel過程中,闆子上的TX燈會閃,顯示裝置也不會有什麼反應,燒好後TX燈就不會閃了。斷開PCduino的通電,然後将microSD卡從pcduino中取下。
11、從PCduino中取下的microSD卡,插入讀卡器,與PC電腦連結,格式化為FAT32. 12、格式化之後,進入 之前下載下傳好的ubuntu檔案夾,會看到如下圖兩個檔案:
13、 将上圖中裡面的兩個檔案複制到microSD卡,如果使用的是u盤,就把檔案複制到u盤。 14、複制完成後,将microSD卡插入PCduino背面的microSD卡槽,并給PCduino通電,PCDUINO會自動啟動系統,這時候,若連結了螢幕,将會看到螢幕上的如下圖所示,提示搜尋檔案中,分别會在sd卡和usb中查找,是以理論使用u盤也可以。但是我總是失敗、如果格式化的不是fat32也會失敗哦。
15、上圖螢幕所示,你會等待10分鐘左右,若啟動成功,會提示如下圖:
16、然後重新開機,就OK了。進入的時候可以按照如下資訊設定。 新版系統刷機完成後可以完成一系列設定,參照如下。 1.修改顯示分辨率
這項預設不用改 2.修改顯示視窗大小 選擇100就行了 3.修改密碼,直接輸入兩次新密碼即可 4.修改系統語言
1.英文 2.中文簡體 3.中文繁體。 由于中文支援會占用100MB左右的空間,當使用者選擇英文時, 特别加了一個”删除其它語言”的選項,還是不要删除的好,不然不能顯示中文。 5.設定時區
選擇這裡面才有中國的。
選擇一個距離你的地方最近的就行。 6.設定鍵盤布局,這個一般不用管 7.設定啟動方式
1.啟動桌面 2.啟動到指令行