SlideShare a Scribd company logo
電子工程系應 用 電 子 組
電 腦 遊 戲 設 計 組
調用Linino Process
吳錫修
November 21, 2015
shapethefuture
電子工程系
應 用 電 子 組
電 腦 遊 戲 設 計 組
 Process類別提供啟動Linux 處理器(AR 9331)中的行程服務
 執行process作業流程
 使用process.begin()方法指定所要進行的process作業
 使用process.addParameter()方法指定process作業參數
 使用process.run()或process.runAsynchronously()方法啟動process
Process類別 1/2
2
shapethefuture
電子工程系
應 用 電 子 組
電 腦 遊 戲 設 計 組
 Synchronous與Asynchronous Process
 使用Asynchronous Process時,要透過Process.running()檢查
Asynchronous Process是否仍在執行中
Process類別 2/2
3
shapethefuture
電子工程系
應 用 電 子 組
電 腦 遊 戲 設 計 組
 cURL是Linux系統⼀個實用的⼯具指令,c指crawl,意指從伺服器
爬資料,支援HTTP、FTP、POP3、IMAP…等網路通訊協定。
Linino curl指令
4
shapethefuture
電子工程系
應 用 電 子 組
電 腦 遊 戲 設 計 組
 cat命令用來連接檔案或標準輸入並列印。這個命令常用來顯示檔案
內容,或將幾個檔連接起來顯示,或者從標準輸入讀取內容並顯示
Linino cat指令
5
shapethefuture
電子工程系
應 用 電 子 組
電 腦 遊 戲 設 計 組
 範例:File/Examples/Bridge/Process
 Process範例展示如何從Arduino Yún呼叫Linino process
 測試指令
 curl http://arduino.cc/asciilogo.txt
 cat /proc/cpuinfo
 參考資料
http://www.arduino.cc/en/Tutorial/Process
Process範例
6
shapethefuture
電子工程系
應 用 電 子 組
電 腦 遊 戲 設 計 組
 Arduino Yún與電腦連接到相同WiFi
 確認已連接Arduino Yún
測試Process範例 1/2
7
shapethefuture
電子工程系
應 用 電 子 組
電 腦 遊 戲 設 計 組
 開啟Arduino Yún Console視窗
Tools/Serial Monitor
測試Process範例 2/2
8
shapethefuture
電子工程系
應 用 電 子 組
電 腦 遊 戲 設 計 組
#include <Process.h>
void setup() {
Bridge.begin(); //起始Bridge
Console.begin(); //啟動Console
while (!Console); //等待Console連線
runCurl(); //執行runCurl()自訂函式
runCpuInfo(); //執行runCpuInfo自訂函式
}
void loop() { // Do nothing here.
}
解析Process範例程式碼 1/3
9
shapethefuture
電子工程系
應 用 電 子 組
電 腦 遊 戲 設 計 組
void runCurl() { //執行curl命令
Process p; //建立Linino process
p.begin(“curl”); //指定執行curl作業
//指定curl之作業參數
p.addParameter(“http://arduino.cc/asciilogo.txt”);
p.run(); //執行curl命令並等候完成
while (p.available() > 0) { //檢查執行結果
char c = p.read(); //讀取curl作業回傳資料
Console.print(c);
}
Console.flush(); //等待資料輸出完畢
}
解析Process範例程式碼 2/3
10
shapethefuture
電子工程系
應 用 電 子 組
電 腦 遊 戲 設 計 組
void runCpuInfo() { //執行cat命令
Process p; //建立Linino process
p.begin("cat"); //指定執行cat作業
p.addParameter(“/proc/cpuinfo”); //指定cat作業參數
p.run(); //執行cat命令並等候完成
while (p.available() > 0) { //檢查執行結果
char c = p.read(); //讀取cat作業回傳資料
Console.print(c);
}
Console.flush(); //等待資料輸出完畢
}
解析Process範例程式碼 3/3
11

More Related Content

Similar to Arduino Yún使用linino process

作業系統數位教材(劉政雄)(1 9)
作業系統數位教材(劉政雄)(1 9)作業系統數位教材(劉政雄)(1 9)
作業系統數位教材(劉政雄)(1 9)
Ying wei (Joe) Chou
 
自动化运维管理
自动化运维管理自动化运维管理
自动化运维管理
frankwsj
 
Workflow engine
Workflow engineWorkflow engine
Workflow engine
Pokai Hsu
 
深入研究 Windows 系統服務 效能調校與故障排除
深入研究 Windows 系統服務    效能調校與故障排除深入研究 Windows 系統服務    效能調校與故障排除
深入研究 Windows 系統服務 效能調校與故障排除
5045033
 
+++º+ ¦¦ ¦ ¦¦ ¦+ =
+++º+ ¦¦  ¦ ¦¦ ¦+ =+++º+ ¦¦  ¦ ¦¦ ¦+ =
+++º+ ¦¦ ¦ ¦¦ ¦+ =
guesta6295f3
 
Wxpython In Action
Wxpython In ActionWxpython In Action
Wxpython In Action
智锋 范
 

Similar to Arduino Yún使用linino process (20)

作業系統數位教材(劉政雄)(1 9)
作業系統數位教材(劉政雄)(1 9)作業系統數位教材(劉政雄)(1 9)
作業系統數位教材(劉政雄)(1 9)
 
系統程式 -- 第 10 章 作業系統
系統程式 -- 第 10 章 作業系統系統程式 -- 第 10 章 作業系統
系統程式 -- 第 10 章 作業系統
 
Cfengine培训文档 刘天斯
Cfengine培训文档 刘天斯Cfengine培训文档 刘天斯
Cfengine培训文档 刘天斯
 
第1章
第1章第1章
第1章
 
系統程式 -- 第 10 章
系統程式 -- 第 10 章系統程式 -- 第 10 章
系統程式 -- 第 10 章
 
Ch04
Ch04Ch04
Ch04
 
Ch04
Ch04Ch04
Ch04
 
自动化运维管理
自动化运维管理自动化运维管理
自动化运维管理
 
系統程式 -- 第 1 章
系統程式 -- 第 1 章系統程式 -- 第 1 章
系統程式 -- 第 1 章
 
Workflow engine
Workflow engineWorkflow engine
Workflow engine
 
漫談 Source Control Management
漫談 Source Control Management漫談 Source Control Management
漫談 Source Control Management
 
深入研究 Windows 系統服務 效能調校與故障排除
深入研究 Windows 系統服務    效能調校與故障排除深入研究 Windows 系統服務    效能調校與故障排除
深入研究 Windows 系統服務 效能調校與故障排除
 
+++º+ ¦¦ ¦ ¦¦ ¦+ =
+++º+ ¦¦  ¦ ¦¦ ¦+ =+++º+ ¦¦  ¦ ¦¦ ¦+ =
+++º+ ¦¦ ¦ ¦¦ ¦+ =
 
NCURSES Programming HOWTO
NCURSES Programming HOWTONCURSES Programming HOWTO
NCURSES Programming HOWTO
 
Ian .net async programming
Ian .net async programmingIan .net async programming
Ian .net async programming
 
Wxpython In Action
Wxpython In ActionWxpython In Action
Wxpython In Action
 
[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例
[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例
[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例
 
Erlang高级原理和应用
Erlang高级原理和应用Erlang高级原理和应用
Erlang高级原理和应用
 
04
0404
04
 
2023-netconf-deploy-azure-function-with-KEDA-on-aks
2023-netconf-deploy-azure-function-with-KEDA-on-aks2023-netconf-deploy-azure-function-with-KEDA-on-aks
2023-netconf-deploy-azure-function-with-KEDA-on-aks
 

More from 吳錫修 (ShyiShiou Wu)

More from 吳錫修 (ShyiShiou Wu) (20)

Vuforia AR影片程式設計
Vuforia AR影片程式設計Vuforia AR影片程式設計
Vuforia AR影片程式設計
 
micro:bit亮度感測應用
micro:bit亮度感測應用micro:bit亮度感測應用
micro:bit亮度感測應用
 
Vuforia AR 同時追踨多張辨識圖
Vuforia AR同時追踨多張辨識圖Vuforia AR同時追踨多張辨識圖
Vuforia AR 同時追踨多張辨識圖
 
micro:bit開關控制應用
micro:bit開關控制應用micro:bit開關控制應用
micro:bit開關控制應用
 
Vuforia AR 應用程式設計入門
Vuforia AR應用程式設計入門Vuforia AR應用程式設計入門
Vuforia AR 應用程式設計入門
 
Vuforia AR 應用程式準備作業
Vuforia AR應用程式準備作業Vuforia AR應用程式準備作業
Vuforia AR 應用程式準備作業
 
micro:bit LED顯示控制
micro:bit LED顯示控制micro:bit LED顯示控制
micro:bit LED顯示控制
 
IDE for micro:bit
IDE for micro:bitIDE for micro:bit
IDE for micro:bit
 
Microbit 1 introduction
Microbit 1 introductionMicrobit 1 introduction
Microbit 1 introduction
 
Arduino overview
Arduino overviewArduino overview
Arduino overview
 
使用Makeblock App學習mBot程式設計
使用Makeblock App學習mBot程式設計使用Makeblock App學習mBot程式設計
使用Makeblock App學習mBot程式設計
 
使用M部落App學習mBot程式設計
使用M部落App學習mBot程式設計使用M部落App學習mBot程式設計
使用M部落App學習mBot程式設計
 
nodeMCU IOT教學03 - NodeMCU導論
nodeMCU IOT教學03 - NodeMCU導論nodeMCU IOT教學03 - NodeMCU導論
nodeMCU IOT教學03 - NodeMCU導論
 
nodeMCU IOT教學02 - Lua語言
nodeMCU IOT教學02 - Lua語言nodeMCU IOT教學02 - Lua語言
nodeMCU IOT教學02 - Lua語言
 
Unity遊戲程式設計 - 2D Platformer遊戲
Unity遊戲程式設計 - 2D Platformer遊戲Unity遊戲程式設計 - 2D Platformer遊戲
Unity遊戲程式設計 - 2D Platformer遊戲
 
Unity遊戲程式設計 - 2D移動與碰撞處理II
Unity遊戲程式設計 - 2D移動與碰撞處理IIUnity遊戲程式設計 - 2D移動與碰撞處理II
Unity遊戲程式設計 - 2D移動與碰撞處理II
 
Unity遊戲程式設計 - 2D運動與碰撞處理I
Unity遊戲程式設計 - 2D運動與碰撞處理IUnity遊戲程式設計 - 2D運動與碰撞處理I
Unity遊戲程式設計 - 2D運動與碰撞處理I
 
Python與Ardinio整合應用
Python與Ardinio整合應用Python與Ardinio整合應用
Python與Ardinio整合應用
 
mBlock積木式設計程式
mBlock積木式設計程式mBlock積木式設計程式
mBlock積木式設計程式
 
Arduino程式除錯
Arduino程式除錯Arduino程式除錯
Arduino程式除錯
 

Arduino Yún使用linino process

  • 1. 電子工程系應 用 電 子 組 電 腦 遊 戲 設 計 組 調用Linino Process 吳錫修 November 21, 2015
  • 2. shapethefuture 電子工程系 應 用 電 子 組 電 腦 遊 戲 設 計 組  Process類別提供啟動Linux 處理器(AR 9331)中的行程服務  執行process作業流程  使用process.begin()方法指定所要進行的process作業  使用process.addParameter()方法指定process作業參數  使用process.run()或process.runAsynchronously()方法啟動process Process類別 1/2 2
  • 3. shapethefuture 電子工程系 應 用 電 子 組 電 腦 遊 戲 設 計 組  Synchronous與Asynchronous Process  使用Asynchronous Process時,要透過Process.running()檢查 Asynchronous Process是否仍在執行中 Process類別 2/2 3
  • 4. shapethefuture 電子工程系 應 用 電 子 組 電 腦 遊 戲 設 計 組  cURL是Linux系統⼀個實用的⼯具指令,c指crawl,意指從伺服器 爬資料,支援HTTP、FTP、POP3、IMAP…等網路通訊協定。 Linino curl指令 4
  • 5. shapethefuture 電子工程系 應 用 電 子 組 電 腦 遊 戲 設 計 組  cat命令用來連接檔案或標準輸入並列印。這個命令常用來顯示檔案 內容,或將幾個檔連接起來顯示,或者從標準輸入讀取內容並顯示 Linino cat指令 5
  • 6. shapethefuture 電子工程系 應 用 電 子 組 電 腦 遊 戲 設 計 組  範例:File/Examples/Bridge/Process  Process範例展示如何從Arduino Yún呼叫Linino process  測試指令  curl http://arduino.cc/asciilogo.txt  cat /proc/cpuinfo  參考資料 http://www.arduino.cc/en/Tutorial/Process Process範例 6
  • 7. shapethefuture 電子工程系 應 用 電 子 組 電 腦 遊 戲 設 計 組  Arduino Yún與電腦連接到相同WiFi  確認已連接Arduino Yún 測試Process範例 1/2 7
  • 8. shapethefuture 電子工程系 應 用 電 子 組 電 腦 遊 戲 設 計 組  開啟Arduino Yún Console視窗 Tools/Serial Monitor 測試Process範例 2/2 8
  • 9. shapethefuture 電子工程系 應 用 電 子 組 電 腦 遊 戲 設 計 組 #include <Process.h> void setup() { Bridge.begin(); //起始Bridge Console.begin(); //啟動Console while (!Console); //等待Console連線 runCurl(); //執行runCurl()自訂函式 runCpuInfo(); //執行runCpuInfo自訂函式 } void loop() { // Do nothing here. } 解析Process範例程式碼 1/3 9
  • 10. shapethefuture 電子工程系 應 用 電 子 組 電 腦 遊 戲 設 計 組 void runCurl() { //執行curl命令 Process p; //建立Linino process p.begin(“curl”); //指定執行curl作業 //指定curl之作業參數 p.addParameter(“http://arduino.cc/asciilogo.txt”); p.run(); //執行curl命令並等候完成 while (p.available() > 0) { //檢查執行結果 char c = p.read(); //讀取curl作業回傳資料 Console.print(c); } Console.flush(); //等待資料輸出完畢 } 解析Process範例程式碼 2/3 10
  • 11. shapethefuture 電子工程系 應 用 電 子 組 電 腦 遊 戲 設 計 組 void runCpuInfo() { //執行cat命令 Process p; //建立Linino process p.begin("cat"); //指定執行cat作業 p.addParameter(“/proc/cpuinfo”); //指定cat作業參數 p.run(); //執行cat命令並等候完成 while (p.available() > 0) { //檢查執行結果 char c = p.read(); //讀取cat作業回傳資料 Console.print(c); } Console.flush(); //等待資料輸出完畢 } 解析Process範例程式碼 3/3 11