為玩轉(zhuǎn) JavaScript 而生的硬件

距離上一篇文章「JavaScript 很少為人所知的玩法」發(fā)表正好過去一個月,文章反響還不錯,也帶來了不少關(guān)注,說明還是有人對在微控制器上跑 JavaScript 感興趣的。

為了進一步學(xué)習(xí) JavaScript 以及在微控制器上實現(xiàn)的解析器,我專門設(shè)計了一款簡單的硬件 nRF52832 Micro Development Kit,目前已經(jīng)能夠支持 JerryScript 以及 Espruino 這兩個 JavaScript 解析器,平時就用來研究學(xué)習(xí),感覺還是挺方便的。

先功能框圖,再上“寫真集”,最后一個簡單的 Demo。

功能框圖

專門制作的框圖,有沒有比純文字描述好看多了?


寫真集

能用圖片表達(dá)的,我盡量少說話......??


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();  
}

顯示圖片當(dāng)然也很簡單,可以先使用 ImageMagick 將圖片轉(zhuǎn)換一下:

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();  
}

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



如無特殊說明,本文版權(quán)歸本文作者及「創(chuàng)客日記」所有,采用知識共享署名-非商業(yè)性使用 4.0 國際許可協(xié)議進行許可。

轉(zhuǎn)載請注明:來自「創(chuàng)客日記」https://makerdiary.co/the-hardware-for-learning-javascript/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容