本頁目錄
系統環境
第一個輕應用示例
附錄
更多示例代碼
HaaS600 Kit

HaaS600 Kit 是一款基于 HaaS600系列模組評估的高成本效益開發闆。可應用于共享控制、金融支付、智能語音、泛工業等場景的智能硬體産品開發。
HaaS600 Kit 套件包含以下物料:
· 開發闆 x 1
· micro-USB線纜 x 1
· 5V/2A電源擴充卡 x 1
· 4G天線 x 1
· GPS天線 x 1
連接配接裝置
按照下圖所示将開發電腦跟裝置的調試/使用者序列槽通過MicroUSB連接配接,連接配接後,将在PC裝置管理器中出現兩個序列槽,分别用于調試和使用者序列槽輸入輸出。
安裝USB轉序列槽驅動
· Windows XP/Vista
· Windows7/8/8.1
· Windows10
· MacOS
安裝完成之後,在裝置管理器中可以看到以下虛拟序列槽:
Windows
MacOS
Note:
1.不同的電腦生成的序列槽号和名稱不一樣,以實際生成的為準。
2.生成的兩個序列槽,一個是debug序列槽(檢視運作日志,隻讀),另一個是使用者序列槽(JavaScript互動式解釋器或其他用途)
開發工具
輕應用開發使用一套指令行工具管理和推送應用腳本到裝置。
下載下傳指令行工具:
· Mac版
· Windows版
Mac版需要設定執行權限:chmod +x ./amp
請參考:指令行工具
将指令行工具解壓到工作目錄,如圖所示對應檔案
├── amp # 指令行工具
├── app # 示例代碼(hello world)
│ ├── app.json
│ └── app.js
└── bindings.node # 本地更新庫碼
· 檢視裝置連接配接狀态
在指令行工具下使用該指令檢視裝置連接配接狀态
./amp.exe seriallist
COM194
COM195
如果傳回值跟裝置管理器中生成的一緻,說明裝置連接配接和指令行工具運作正常
指令行工具預設示例代碼運作hello world程式,此處使用LED Blink來作為第一個輕應用示例來介紹。
使用下面的app.js 和 app.json檔案替換指令行工具示例代碼目錄下的同名檔案,如下:
LED Blink app.json
{
"version": "1.0.0",
"io": {
"D13": {
"type": "GPIO",
"port": 33,
"dir": "output",
"pull": "pulldown"
}
},
"debugLevel": "DEBUG"
}
LED Blink app.js:
var gpio = require('gpio');
var led = gpio.open({
id: 'D13'
});
var vol = 0;
setInterval(function() {
vol = 1 - vol;
led.writeValue(vol);
console.log('gpio: led set value ' + vol);
vol = led.readValue();
console.log('gpio: led get value ' + vol);
}, 1000);
本地熱更新
· 切換到下載下傳模式
将下載下傳/運作模式切換開關(MODE)撥到DL側,并通過電源選擇開關(POWER SWITCH)斷電重新開機,稍等片刻待AMP_STU訓示燈間歇性雙閃,如下圖,說明裝置已經進入本地下載下傳模式。
· 通過amp工具推送應用代碼到裝置
./amp.exe seriallist
COM194
COM195
./amp.exe serialput ./app COM194
Windows環境下,熱更新指令的序列槽号需要大寫。
· 切換到運作模式(RUN)并複位
· 運作效果如圖:
線上熱更新
在已插SIM卡有網絡連接配接的情況下,也可參考線上應用熱更新推送輕應用代碼到目标裝置。
硬體資源介紹
硬體資源映射表
功能清單(部分)
· 檔案系統 FS
· 系統資訊 SYSTEM
· 鍵值對存儲 KV
· 電源管理 PM
· 硬體I/O
UART
GPIO
I2C
SPI
ADC
DAC
PWM
TIMER
RTC
WDG
· 網絡協定
UDP
TCP
MQTT
HTTP
· 高階功能
IoT 阿裡雲IoT平台連接配接元件
audioplayer 音頻播放元件
app.json 參考示例
{
"version": "1.0.0",
"io": {
"I2C0": {
"type": "I2C",
"port": 0,
"addrWidth": 7,
"freq": 400000,
"mode": "master",
"devAddr": 72
},
"ADC0": {
"type": "ADC",
"port": 0,
"sampling": 12000000
},
"ADC1": {
"type": "ADC",
"port": 1,
"sampling": 12000000
},
"UART1": {
"type": "UART",
"port": 1,
"dataWidth": 8,
"baudRate": 9600,
"stopBits": 1,
"flowControl": "cts",
"parity": "none"
},
"UART2": {
"type": "UART",
"port": 2,
"dataWidth": 8,
"baudRate": 115200,
"stopBits": 1,
"flowControl": "disable",
"parity": "none"
},
"SPI1": {
"type": "SPI",
"port": 1,
"mode": "master",
"freq": 3250000
},
"PWM0": {
"type": "PWM",
"port": 31,
"mode": "master",
"freq": 3250000
},
"PWM1": {
"type": "PWM",
"port": 32,
"mode": "master",
"freq": 3250000
},
"D0": {
"type": "GPIO",
"port": 51,
"dir": "output",
"pull": "pulldown"
},
"D1": {
"type": "GPIO",
"port": 52,
"dir": "output",
"pull": "pulldown"
},
"D2": {
"type": "GPIO",
"port": 17,
"dir": "irq",
"pull": "pulldown",
"intMode": "both"
},
"D3": {
"type": "GPIO",
"port": 16,
"dir": "irq",
"pull": "pullup",
"intMode": "both"
},
"D4": {
"type": "GPIO",
"port": 59,
"dir": "output",
"pull": "pulldown"
},
"D5": {
"type": "GPIO",
"port": 121,
"dir": "output",
"pull": "pulldown"
},
"D6": {
"type": "GPIO",
"port": 54,
"dir": "output",
"pull": "pulldown"
},
"D7": {
"type": "GPIO",
"port": 53,
"dir": "output",
"pull": "pulldown"
},
"D8": {
"type": "GPIO",
"port": 124,
"dir": "output",
"pull": "pulldown"
},
"D9": {
"type": "GPIO",
"port": 122,
"dir": "output",
"pull": "pulldown"
},
"D10": {
"type": "GPIO",
"port": 34,
"dir": "output",
"pull": "pulldown"
},
"D11": {
"type": "GPIO",
"port": 36,
"dir": "output",
"pull": "pulldown"
},
"D12": {
"type": "GPIO",
"port": 35,
"dir": "output",
"pull": "pulldown"
},
"D13": {
"type": "GPIO",
"port": 33,
"dir": "output",
"pull": "pulldown"
},
"D14": {
"type": "GPIO",
"port": 57,
"dir": "output",
"pull": "pulldown"
},
"D15": {
"type": "GPIO",
"port": 32,
"dir": "output",
"pull": "pulldown"
},
"D16": {
"type": "GPIO",
"port": 31,
"dir": "output",
"pull": "pulldown"
},
"D17": {
"type": "GPIO",
"port": 76,
"dir": "output",
"pull": "pulldown"
}
},
"debugLevel": "DEBUG",
"repl": "disable"
}
· Git 倉庫:
https://gitee.com/alios-things/amp-examples/tree/master/board/HaaS600Kit· 打包下載下傳(需注冊gitee賬号):
https://gitee.com/alios-things/amp-examples/repository/archive/master.zip