最近拿到了很熱門的 RePhone Kit Create智慧型手機開發套件,來看看簡單開箱文吧。盒裝有Seeed一貫的綠黃色系,很清爽 。根據 Seeed 的說明,RePhone 可以連接的周邊包含旗下 Xadow 系列的部分周邊,包含 Xadow GPS, Xadow duino , Xadow basic sensors(光/溫度/濕度), Xadow NFC 與 Xadow 5×7 LED matrix 等。
打開盒裝之後有一本黃色的說明書
以及兩個厚紙板外殼,您可以把電子元件包成一個大約是手掌一半大小的完整裝置
電子元件就這些:
最核心的 GSM 模組採用的是台灣聯發科技公司的 MT2502A 晶片,應該也是因為這個原因,Rephone 在安裝好驅動程式之後一樣會被系統辨識為 MTK USB Debug port 與 MTK USB modem port 兩個 COM port。
反面則可看到電池接頭(右上角白色)、
比較特別的是必須要接上電池,再用 USB 接上電腦。否則會認不到。目前還沒有測試 520 mAh 到底可以用多久。
延伸閱讀
簡單把玩兩個範例,請由此下載 Seeed 提供的 rephone Arduino IDE,裡面已經有一些範例,可以直接上手
顯示字串與控制背景顏色
在指定行列位置顯示文字,並控制文字顏色與文字背景顏色。也可以繪製指定顏色的色塊
由下圖可以看到這是 rephone kit create 的最基礎配置:GSM + 觸碰螢幕 + 聲音模組,這樣就是一支電話啦!為了節省空間,GSM module 與周邊的連接方式都使用排線,不過卡楯設計相當不錯,不用擔心滑脫。
程式碼如下
// LCD display test
#include <LDisplay.h>
unsigned long sysData = 0;
void setup()
{
Serial1.begin(115200);
Serial1.print("LCD display test.\r\n");
Lcd.init();
Lcd.font_init();
Lcd.back_light_level(50);
Lcd.screen_set(0xffd9ec);
Lcd.draw_font(0, 0, "C", 0xffff00, 0);
for (unsigned char j = 0; j < 20; j++) {
for (unsigned char i = 0; i < 240; i++) {
Lcd.draw_point(i, j + 40, 0xff0000);
Lcd.draw_line(0, 200, 239, 200, 0x00ff00);
Lcd.draw_line(200, 0, 200, 239, 0x00ff00);
Lcd.draw_fill_rectangle(100, 100, 130, 130, 0x0000f0);
Lcd.draw_fill_rectangle(120, 120, 160, 160, 0x0000f0);
Lcd.draw_updata();
Lcd.draw_font(10, 0, "AVEDU rephone hello~", 0xffff00, 0);
}
}
}
void loop()
{
Lcd.draw_number(0, 20, sysData++, 0xffff00, 0);
Serial1.print("ABC.\r\n");
delay(1000);
}
觸碰範例
可以辨識點擊(click)或觸碰(drag),兩者差別在於手指接觸螢幕之後是否有移動。可將觸碰的XY座標顯示於螢幕上
程式碼如下
#include <LGTouch.h>
#include <LDisplay.h>
unsigned char eintFlag = 0;
char EVENT = 0;
int X = 0;
int Y = 0;
void setup()
{
Tp.Init();
Lcd.init();
Lcd.font_init();
Lcd.back_light_level(50);
Lcd.screen_set(0xffff00);
Lcd.draw_font(0, 0, "Touch test", 0xffff00, 0);
}
void loop()
{
if (Tp.Event_available())
{
Tp.Get_event_xy(&EVENT, &X, &Y);
Lcd.draw_font(0, 20, "event is ", 0xffff00, 0);
Lcd.draw_number(80, 20, EVENT, 0xffff00, 0);
Lcd.draw_font(0, 40, "x is ", 0xffff00, 0);
Lcd.draw_number(40, 40, X, 0xffff00, 0);
Lcd.draw_font(0, 60, "y is ", 0xffff00, 0);
Lcd.draw_number(40, 60, Y, 0xffff00, 0);
}
delay(50);
}
Post Views: 313