距離上一篇文章「JavaScript 很少為人所知的玩法」發表正好過去一個月,文章反響還不錯,也帶來了不少關注,說明還是有人對在微控制器上跑 JavaScript 感興趣的。
為了進一步學習 JavaScript 以及在微控制器上實現的解析器,我專門設計了一款簡單的硬件 nRF52832 Micro Development Kit,目前已經能夠支持 JerryScript 以及 Espruino 這兩個 JavaScript 解析器,平時就用來研究學習,感覺還是挺方便的。
先功能框圖,再上“寫真集”,最后一個簡單的 Demo。
功能框圖
專門制作的框圖,有沒有比純文字描述好看多了?

寫真集
能用圖片表達的,我盡量少說話......??





Demo
我保證這次不再閃燈了,換種方式,來一個稍微進階一點的。
材料清單
- nRF52832 Micro Development Kit(本文主角)
- 128*64 OLED Display(SPI接口)
- 面包板
- 面包板專用跳線

連接圖

運行 JavaScript 代碼
require("Font8x16").add(Graphics);
var s = new SPI();
s.setup({mosi: D26 /* D1 */, sck: D25 /* D0 */});
var g = require("SSD1306").connectSPI(s, D28 /* DC */,
D27 /* RST - can leave as undefined */, start, { cs : D29 });
g.setContrast(255);
function start(){
g.setFont8x16();
g.drawString("Welcome to", 0,12);
g.drawString("makerdiary.co", 20,30);
g.flip();
}

顯示圖片當然也很簡單,可以先使用 ImageMagick 將圖片轉換一下:
var img_logo = {
width : 64, height : 64, bpp : 1,
transparent : 0,
buffer : E.toArrayBuffer(atob("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAOAAAAAAAAAB8AAAAAAAAAP4AAAAAAAAA/wAAAAAAAAH/gAAAAAAAA//AAAAAAAAD/+AAAAAAAAf/8AAAAAAAB//4AAAAAAAP//gAAAAAAB///AAAAAAAB//8AAAAAAAD//4AAAAAAAD//gAAAAAAYH/+AAAAAAD4H/8AAAAAAfwP/gAAAAAB/wPwAAAAAAP/wYAAAAAAB//gAIAAAAAH//gHgAAAAA//+D/AAAAAD//w/8AAAAAf/+H/4AAAAD//wf/gAAAAP/+D/+AAAAB//wf/8AAAAD/+D//gAAAAP/4f/+AAAAA//D//wAAAAB/4f/+AAAAAH+D//4AAAAAPAP//AAAAAAgAP/8AAAAAAAwf/gAAAAAAfgf8AAAAAAP/gfwAAAAAB//A+AAAAAAD//AwAAAAAAP/+AAAAAAAA//+AAAAAAAB//8AAAAAAAH//8AAAAAAAP//gAAAAAAA//8AAAAAAAB//wAAAAAAAD/+AAAAAAAAH/4AAAAAAAAP/AAAAAAAAAf4AAAAAAAAA/gAAAAAAAAB8AAAAAAAAADgAAAAAAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="))
};
function start(){
g.drawImage(img_logo, 32, 0);
g.flip();
}

好了,今天就先這樣,感興趣的朋友可以關注一下,更多例子以后慢慢推送。

如無特殊說明,本文版權歸本文作者及「創客日記」所有,采用知識共享署名-非商業性使用 4.0 國際許可協議進行許可。
轉載請注明:來自「創客日記」https://makerdiary.co/the-hardware-for-learning-javascript/