{"id":853,"date":"2021-03-25T09:30:00","date_gmt":"2021-03-25T01:30:00","guid":{"rendered":"https:\/\/www.block.tw\/blog\/?p=853"},"modified":"2023-04-14T09:59:09","modified_gmt":"2023-04-14T01:59:09","slug":"oled","status":"publish","type":"post","link":"https:\/\/www.block.tw\/blog\/oled\/","title":{"rendered":"Arduino OLED\u986f\u793a\u5be6\u7fd2"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/www.block.tw\/blog\/wp-content\/uploads\/arduino\/oled\/oled.jpg\" alt=\"\"\/><figcaption class=\"wp-element-caption\">OLED<\/figcaption><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">\u8a2d\u5099\u8207\u6750\u6599<\/h2>\n\n\n\n<p>\u500b\u4eba\u96fb\u8166 \u00d7 1<br>arduino Uno \u00d7 1<br>OLED 128*64 \u00d7 1<br>\u9023\u63a5\u7dda \u82e5\u5e72<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u5be6\u9ad4\u63a5\u7dda\u5716<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/www.block.tw\/blog\/wp-content\/uploads\/arduino\/oled\/oled.svg\" alt=\"\"\/><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">\u9a45\u52d5\u7a0b\u5f0f<\/h2>\n\n\n\n<p>\u4f7f\u7528 U8Glib \u51fd\u5f0f\u5eab  <a href=\"https:\/\/www.block.tw\/blog\/download\/u8glib-1-19-1\/\">\u672c\u7ad9\u4e0b\u8f09 (1.19.1)<\/a> <a href=\"https:\/\/github.com\/olikraus\/U8glib_Arduino\/releases\/tag\/1.19.1\">GitHub\u4e0b\u8f09<\/a> <\/p>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-left\"> OLED \u87a2\u5e55\u5ea7\u6a19  <\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/www.block.tw\/blog\/wp-content\/uploads\/arduino\/oled\/oled128x64.jpg\" alt=\"\"\/><\/figure>\n<\/div>\n\n\n<p>\u4f7f\u7528\u7684oled\u87a2\u5e55\u89e3\u6790\u5ea6\u70ba128&#215;64\uff0c\u6c34\u5e73128\u9ede\uff0c\u5782\u76f464\u9ede\uff0coled\u87a2\u5e55\u5ea7\u6a19(x,y)\uff0c\u5de6\u4e0a(0,0)\uff0c\u53f3\u4e0a(127,0)\uff0c\u5de6\u4e0b(0,63)\uff0c\u53f3\u4e0b(127,63)<\/p>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-left\">\u53c3\u8003\u7a0b\u5f0f1<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/\u4f7f\u7528 U8glib\n#include \"U8glib.h\" \n\n\/\/OLED \u521d\u4f7f\u5316\u8a2d\u5b9a\n\/\/\u76ee\u524dOLED\u5e38\u7528\u9a45\u52d5\u6676\u7247\u6709 SSD1306 \u6216 SH1106 \n\n\/\/SSD1306\n\/\/U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE | U8G_I2C_OPT_DEV_0);\n\n\/\/SH1106\nU8GLIB_SH1106_128X64 u8g(U8G_I2C_OPT_NONE | U8G_I2C_OPT_DEV_0);\n\nfloat i=20.5;\n\nvoid setup(void)\n{\n    \/\/\u8a2d\u5b9a\u5b57\u578b\n    u8g.setFont(u8g_font_unifont);\n}\nvoid loop(void)\n{\n    \/\/\u986f\u793a\n    u8g.firstPage(); \/\/\u958b\u59cb\u66f4\u65b0\u986f\u793a\u5167\u5bb9\n    do {\n        draw();\n    } while (u8g.nextPage());\/\/\u5b8c\u6210\u66f4\u65b0\u986f\u793a\u5167\u5bb9\n    \n    delay(50);\n}\nvoid draw(void)\n{\n\n    \/\/\u8f38\u51fa\u5b57\u4e32(x\u5ea7\u6a19,y\u5ea7\u6a19,\u6587\u5b57)\n    u8g.drawStr(20, 40, \"Hello World.\");\n    \/\/\u8a2d\u5b9a print()\u6307\u4ee4  \u5728 x=5 y=20 \u958b\u59cb\u5f80\u4e0a\u5f80\u53f3\u986f\u793a\n    u8g.setPrintPos(5,20);\n    \/\/\u5728\u986f\u793a\u4f4d\u7f6e \u986f\u793a\u8b8a\u6578 i \u7684\u5167\u5bb9(1\u4f4d\u5c0f\u6578)      \n    u8g.print(i,1);\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-left\">U8G \u6307\u4ee4\u4ecb\u7d39<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\"><font color=\"blue\">setFont(<\/font><\/span><font color=\"blue\"><span style=\"color: #0693e3;\" class=\"ugb-highlight\">const u8g_fntpgm_uint8_t *font<\/span><\/font><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\"><font color=\"blue\">)<\/font> <\/span><\/h3>\n\n\n\n<p>  \u4f8b:  u8g.setFont(u8g_font_unifont);  \/\/\u8a2d\u5b9a\u986f\u793a\u5b57\u578b\u70ba   u8g_font_unifont <br><br>\u5176\u5b83\u53ef\u7528\u5b57\u578b\u5982\u4e0b<br>      u8g_font_courR10      <span style=\"color: #0693e3;\" class=\"stk-highlight\"> (9 pixel)<\/span><br>      u8g_font_unifont       <span style=\"color: #0693e3;\" class=\"stk-highlight\">(10 pixel)<\/span><br>      u8g_font_timR10       <span style=\"color: #0693e3;\" class=\"stk-highlight\">(11 pixel<\/span>)<br>      u8g_font_helvR12     <span style=\"color: #0693e3;\" class=\"stk-highlight\">(12 pixel)<\/span><br>      u8g_font_timR14       <span style=\"color: #0693e3;\" class=\"stk-highlight\">(13 pixel)<\/span><br>      u8g_font_helvR14     <span style=\"color: #0693e3;\" class=\"stk-highlight\">(14 pixel)<\/span><br>      u8g_font_timR18      <span style=\"color: #0693e3;\" class=\"stk-highlight\"> (17 pixel)<\/span><br>      u8g_font_ncenR18     <span style=\"color: #0693e3;\" class=\"stk-highlight\">(18 pixel)<\/span><br>      u8g_font_osr21          <span style=\"color: #0693e3;\" class=\"stk-highlight\">(21 pixel)<\/span><\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><font color=\"blue\"><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">drawStr(<\/span><span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t x<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">, <\/span><span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t y<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">, <\/span><span style=\"color: #0693e3;\" class=\"ugb-highlight\">const char *s<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">)<\/span><\/font><\/h3>\n\n\n\n<p>   \u4f8b:  u8g.drawStr(5,20,&#8221;ABC&#8221;) \/\/\u5728 x=5 y=20\u7684\u5730\u65b9\u986f\u793a ABC<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><font color=\"blue\"><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">setPrintPos(<\/span><span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t x<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">,<\/span> <span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t y<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">)<\/span><\/font><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\"> <\/span><\/h3>\n\n\n\n<p>   \u4f8b:  u8g.setPrintPos(5,20);     \/\/\u8a2d\u5b9a print()\u6307\u4ee4  \u5728 x=5 y=20 \u958b\u59cb\u5f80\u4e0a\u5f80\u53f3\u986f\u793a<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><font color=\"blue\"><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">print(<\/span><span style=\"color: #0693e3;\" class=\"ugb-highlight\">&#8230;<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">)<\/span><\/font><\/h3>\n\n\n\n<p>  \u4f8b:  u8g.print(2)       \/\/\u5728\u986f\u793a\u4f4d\u7f6e \u986f\u793a\u6574\u65782<br>  \u4f8b:  u8g.print(i)        \/\/\u5728\u986f\u793a\u4f4d\u7f6e \u986f\u793a\u8b8a\u6578 i \u7684\u5167\u5bb9 <br>  \u4f8b:  u8g.print(i,1)     \/\/\u5728\u986f\u793a\u4f4d\u7f6e \u986f\u793a\u8b8a\u6578 i \u7684\u5167\u5bb9(1\u4f4d\u5c0f\u6578) <br>  \u4f8b:  u8g.print(&#8220;i&#8221;)     \/\/\u5728\u986f\u793a\u4f4d\u7f6e \u986f\u793a\u6587\u5b57 i  <\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">drawBitmapP(<\/span><span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t x<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">,<\/span> <span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t y<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">,<\/span> <span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t cnt<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">,<\/span> <span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t h<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">,<\/span><span style=\"color: #0693e3;\" class=\"ugb-highlight\"> const uint8_t *bitmap<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">)<\/span><\/h3>\n\n\n\n<p>\u628a <span class=\"has-inline-color has-vivid-cyan-blue-color\">bitmap\u9663\u5217<\/span> \u5f9e  <span class=\"has-inline-color has-vivid-cyan-blue-color\">x,y<\/span> \u958b\u59cb\u5f80\u4e0b\u5f80\u53f3\u986f\u793a  <span class=\"has-inline-color has-vivid-cyan-blue-color\">cnt<\/span> \u500b8\u4f4d\u5143 \u5bec\u548c <span style=\"color: #0693e3;\" class=\"ugb-highlight\">h<\/span> \u9ad8 <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u53c3\u6578<\/h3>\n\n\n\n<p><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">x<\/mark>\uff1ax\u5ea7\u6a19<br><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">y<\/mark>\uff1ay\u5ea7\u6a19<br><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">cnt<\/mark>\uff1a\u5bec\uff08\u4ee58\u4f4d\u5143\u70ba\u55ae\u4f4d\uff09<br><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">h<\/mark>\uff1a\u9ad8<br><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">*bitmap<\/mark>\uff1a\u8981\u986f\u793a\u5716\u7247\u7684\u9663\u5217<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const uint8_t rook_bitmap&#91;] U8G_PROGMEM = {\n  B00000000, \/\/ 0 \u4e0d\u986f\u793a 1 \u986f\u793a \n  B01010101,\n  B01111111,\n  B00111110,\n  B00111110, \n  B00111110,\n  B00111110, \n  B01111111\n};\n\nvoid draw(void) { \n  u8g.drawBitmapP( 0, 0, 1, 8, rook_bitmap);\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">drawXBMP(<\/span><span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t x<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">,<\/span> <span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t y<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">,<\/span> <span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t w<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">,<\/span> <span style=\"color: #0693e3;\" class=\"ugb-highlight\">u8g_uint_t h<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">,<\/span><span style=\"color: #0693e3;\" class=\"ugb-highlight\"> const uint8_t *bitmap<\/span><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">)<\/span><\/h3>\n\n\n\n<p>\u628a <span class=\"has-inline-color has-vivid-cyan-blue-color\">XBM \u683c\u5f0f\u7684 bitmap \u9663\u5217<\/span> \u5f9e  <span class=\"has-inline-color has-vivid-cyan-blue-color\">x,y<\/span> \u958b\u59cb\u5f80\u4e0b\u5f80\u53f3\u986f\u793a  <span style=\"color: #0693e3;\" class=\"ugb-highlight\">w<\/span> \u5bec <span class=\"has-inline-color has-vivid-cyan-blue-color\">h<\/span> \u9ad8 <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u53c3\u6578<\/h3>\n\n\n\n<p><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">x<\/mark>\uff1ax\u5ea7\u6a19<br><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">y<\/mark>\uff1ay\u5ea7\u6a19<br><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">w<\/mark>\uff1a\u5bec<br><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">h<\/mark>\uff1a\u9ad8<br><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">*bitmap<\/mark>\uff1a\u8981\u986f\u793a\u5716\u7247\u7684\u9663\u5217 XBM \u683c\u5f0f <br><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">\u8a3b\uff1a<\/span><br><span style=\"color: #cf2e2e;\" class=\"ugb-highlight\">XBM \u683c\u5f0f\u548c \u4e00\u822c bitmap\u683c\u5f0f\u4e0d\u540c<br>u8g.drawBitmapP \u6307\u4ee4\u7684 bitmap \u662f\u5f9e\u9ad8\u4f4d\u5143\u5f80\u4f4e\u4f4d\u5143\u986f\u793a<br>u8g.drawXBMP \u6307\u4ee4\u7684 bitmap \u662f\u5f9e\u4f4e\u4f4d\u5143\u5f80\u9ad8\u4f4d\u5143\u986f\u793a<\/span><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const uint8_t rook_bitmap&#91;] U8G_PROGMEM = {\n  B00000000, \/\/ 0 \u4e0d\u986f\u793a 1 \u986f\u793a \n  B01010101,\n  B01111111,\n  B00111110,\n  B00111110, \n  B00111110,\n  B00111110, \n  B01111111\n};\n\nvoid draw(void) { \n  u8g.drawXBMP( 0, 0, 8, 8, rook_bitmap);\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u53c3\u8003\u7a0b\u5f0f2<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/\n\/\/  \u5716\u7247\u986f\u793a\n\/\/\n\n\/\/\u4f7f\u7528 U8glib\n#include \"U8glib.h\" \n\n\/\/OLED \u521d\u4f7f\u5316\u8a2d\u5b9a\n\/\/\u76ee\u524dOLED\u5e38\u7528\u9a45\u52d5\u6676\u7247\u6709 SSD1306 \u6216 SH1106 \n\n\/\/SSD1306\n\/\/U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE | U8G_I2C_OPT_DEV_0);\n\n\/\/SH1106\nU8GLIB_SH1106_128X64 u8g(U8G_I2C_OPT_NONE | U8G_I2C_OPT_DEV_0);\n\nconst uint8_t rook_bitmap&#91;] U8G_PROGMEM = {\n  B00000000, \n  B01010101,\n  B01111111,\n  B00111110,\n  B00111110, \n  B00111110,\n  B00111110, \n  B01111111\n};\n\nvoid setup(void)\n{\n    \/\/\u8a2d\u5b9a\u5b57\u578b\n    u8g.setFont(u8g_font_unifont);\n}\nvoid loop(void)\n{\n    \/\/\u986f\u793a\n    u8g.firstPage(); \/\/\u958b\u59cb\u66f4\u65b0\u986f\u793a\u5167\u5bb9\n    do {\n        draw();\n    } while (u8g.nextPage());\/\/\u5b8c\u6210\u66f4\u65b0\u986f\u793a\u5167\u5bb9\n    \n    delay(100);\n}\nvoid draw(void)\n{\n    \/\/\u8f38\u51fa\u5716\u7247(x\u5ea7\u6a19,y\u5ea7\u6a19,\u5bec\u5ea6,\u9ad8\u5ea6,\u5716\u7247\u9663\u4f8b)  \u5f9e x,y\u5ea7\u6a19\u5f80\u4e0b\u5f80\u53f3\u986f\u793a\n    u8g.drawBitmapP( 0, 0, 1, 8, rook_bitmap);\n    \n    \/\/\u8f38\u51fa\u5716\u7247(x\u5ea7\u6a19,y\u5ea7\u6a19,\u5bec\u5ea6,\u9ad8\u5ea6,\u5716\u7247\u9663\u4f8b)  \u5f9e x,y\u5ea7\u6a19\u5f80\u4e0b\u5f80\u53f3\u986f\u793a\n    u8g.drawXBMP( 0, 20, 8, 8, rook_bitmap);\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e2d\u6587\u986f\u793a<\/h2>\n\n\n\n<p>\u7121\u6cd5\u76f4\u63a5\u986f\u793a\u4e2d\u6587\uff0c\u8acb\u5c07\u4e2d\u6587\u5b57\u8f49\u6210\u5716\u7247\u7684\u65b9\u5f0f\u986f\u793a\u3002\u4e0b\u5217\u9023\u7d50\uff0c\u53ef\u4ee5\u7dda\u4e0a\u5c07\u4e2d\u6587\u8f49\u6210\u5716\u6a94\u9663\u5217\u3002<br><br><a href=\"https:\/\/www.block.tw\/t2b\" target=\"_blank\" rel=\"noreferrer noopener\">TTL \u5b57\u578b\u8f49\u63db<\/a><\/p>\n\n\n\n<section id=\"section-4f82d2d6-e601-43bc-aa9f-8b7f0edaa8e7\" class=\"wp-block-gutentor-tabs gutentor-section gutentor-tabs-wrapper tabs-template1 has-color-bg has-custom-bg tab-horizontal\"><div class=\"grid-container gutentor-rm-ct-space-d gutentor-rm-ct-space-t gutentor-rm-ct-space\"><div class=\"gutentor-tabs-container gutentor-grid-item-wrap\"><div class=\"gutentor-tabs tablist-left\"><span class=\"gutentor-tabs-list gutentor-single-item-0 gutentor-tab-active\" data-index=\"gutentor-single-item-0\"><div class=\"gutentor-single-item-tabs gutentor-single-item\">\u5165\u9580<\/div><\/span><span class=\"gutentor-tabs-list gutentor-single-item-1\" data-index=\"gutentor-single-item-1\"><div class=\"gutentor-single-item-tabs gutentor-single-item\">\u77e5\u8b58<\/div><\/span><span class=\"gutentor-tabs-list gutentor-single-item-2\" data-index=\"gutentor-single-item-2\"><div class=\"gutentor-single-item-tabs gutentor-single-item\">\u8a9e\u6cd5<\/div><\/span><span class=\"gutentor-tabs-list gutentor-single-item-3\" data-index=\"gutentor-single-item-3\"><div class=\"gutentor-single-item-tabs gutentor-single-item\">\u6d41\u7a0b<\/div><\/span><span class=\"gutentor-tabs-list gutentor-single-item-4\" data-index=\"gutentor-single-item-4\"><div class=\"gutentor-single-item-tabs gutentor-single-item\">\u51fd\u5f0f<\/div><\/span><span class=\"gutentor-tabs-list gutentor-single-item-5\" data-index=\"gutentor-single-item-5\"><div class=\"gutentor-single-item-tabs gutentor-single-item\">\u5be6\u7fd2<\/div><\/span><\/div><div class=\"gutentor-tabs-content-wrap text-left\"><div class=\"gutentor-single-item gutentor-tabs-content gutentor-single-item-0 gutentor-tab-content-active\"><div class=\"gutentor-single-item-tabs gutentor-single-item\"><div class=\"gutentor-single-item-content\"><p><a href=\"https:\/\/www.block.tw\/blog\/arduinoinfo\/\">Arduino \u7c21\u4ecb<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduinoide\/\">\u6e96\u5099\u4f60\u7684 Arduino \u958b\u767c\u5de5\u5177<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/start_esp-12ef\/\">\u6e96\u5099\u4f60\u7684 ESP12E\/F \u958b\u767c\u5de5\u5177<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-uno-hardware\/\">Arduino Uno \u786c\u9ad4<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-nano-pin\/\">Arduino nano \u786c\u9ad4<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/esp-12fesp8266hardware\/\">ESP-12F(ESP8266)\u786c\u9ad4<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-structure\/\">Arduino \u7a0b\u5f0f\u8a9e\u6cd5<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-lib-zip\">\u532f\u5165 zip \u7a0b\u5f0f\u5eab<\/a> <br><\/p><\/div><\/div><\/div><div class=\"gutentor-single-item gutentor-tabs-content gutentor-single-item-1\"><div class=\"gutentor-single-item-tabs gutentor-single-item\"><div class=\"gutentor-single-item-content\"><p><a href=\"https:\/\/www.block.tw\/blog\/camel-case\/\">\u99dd\u5cf0\u5f0f\u547d\u540d\u6cd5<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/uart\/\">UART \u4e32\u5217\u901a\u8a0a<\/a> <br><a href=\"https:\/\/www.block.tw\/blog\/arduino-pwm-control\/\">PWM\u63a7\u5236<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/scankeyboard\/\">\u9375\u76e4\u6383\u63cf<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/thingspeak_account\/\">ThingSpeak \u96f2\u7aef\u8cc7\u6599\u5eab \u5e33\u865f\u7533\u8acb<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/thingspeak_setup\/\">ThingSpeak \u96f2\u7aef\u8cc7\u6599\u5eab \u8a2d\u5b9a<\/a><\/p><\/div><\/div><\/div><div class=\"gutentor-single-item gutentor-tabs-content gutentor-single-item-2\"><div class=\"gutentor-single-item-tabs gutentor-single-item\"><div class=\"gutentor-single-item-content\"><p><a href=\"https:\/\/www.block.tw\/blog\/arduino-decimal\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/arduino-decimal\">Arduino \u9032\u5236\u8868\u793a<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-array\/\">Arduino \u9663\u5217<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-variable\/\">Arduino \u5e38\u6578\u8207\u8b8a\u6578<\/a><br><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-arithmetic\/\">Arduino \u7b97\u6578\u904b\u7b97\u5b50<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-compound-operator\/\">Arduino \u8907\u5408\u904b\u7b97\u5b50<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-boolean\/\">Arduino \u5e03\u6797\u904b\u7b97\u5b50<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-compare\/\">Arduino \u6bd4\u8f03\u904b\u7b97\u5b50<\/a><br><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-ide-error\">Arduino IDE \u932f\u8aa4\u8a0a\u606f<\/a><\/p><\/div><\/div><\/div><div class=\"gutentor-single-item gutentor-tabs-content gutentor-single-item-3\"><div class=\"gutentor-single-item-tabs gutentor-single-item\"><div class=\"gutentor-single-item-content\"><p><a href=\"https:\/\/www.block.tw\/blog\/arduino-for\/\">Arduino for \u8ff4\u5708<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-if\/\">Arduino if \u689d\u4ef6\u5224\u65b7<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-switch\/\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/arduino-switch\/\">Arduino switch \u9078\u64c7\u6307\u4ee4<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-while\/\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/arduino-while\/\">Arduino while \u8ff4\u5708<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-do-while\">Arduino do while \u8ff4\u5708<\/a><\/p><\/div><\/div><\/div><div class=\"gutentor-single-item gutentor-tabs-content gutentor-single-item-4\"><div class=\"gutentor-single-item-tabs gutentor-single-item\"><div class=\"gutentor-single-item-content\"><p><a href=\"https:\/\/www.block.tw\/blog\/arduino-digital\/\">Arduino \u6578\u4f4dI\/O\u51fd\u5f0f<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-%e9%a1%9e%e6%af%94i-o%e6%8c%87%e4%bb%a4\/\">Arduino \u985e\u6bd4I\/O\u51fd\u5f0f<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-time\/\">Arduino \u6642\u9593\u51fd\u5f0f<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-math\/\">Arduino \u6578\u5b78\u51fd\u5f0f<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-communication\/\">Arduino \u901a\u8a0a\u7269\u4ef6\u51fd\u5f0f<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/tone\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/tone\">Arduino \u767c\u97f3\u51fd\u5f0f<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/myfunction\/\">Arduino \u81ea\u5b9a\u51fd\u5f0f<\/a><\/p><\/div><\/div><\/div><div class=\"gutentor-single-item gutentor-tabs-content gutentor-single-item-5\"><div class=\"gutentor-single-item-tabs gutentor-single-item\"><div class=\"gutentor-single-item-content\"><p><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/arduino-output\/\" target=\"_blank\">Arduino \u8f38\u51fa\u5be6\u7fd2<\/a>(\u55ae\u71c8\u9583\u720d)<br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/arduino-output-easy\" target=\"_blank\">Arduino \u8f38\u51fa\u5be6\u7fd2<\/a>(\u8dd1\u99ac\u71c8-\u611a\u516c\u79fb\u5c71)<br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/arduino-output-for\/\" target=\"_blank\">Arduino \u8f38\u51fa\u5be6\u7fd2<\/a>(\u8dd1\u99ac\u71c8-for\u8ff4\u5708)<br><a href=\"https:\/\/www.block.tw\/blog\/arduino-digital-input\">Arduino \u6578\u4f4d\u8f38\u5165\u5be6\u7fd2<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/input-pullup\/\">Arduino \u6578\u4f4d\u8f38\u5165\u5be6\u7fd2(INPUT_PULLUP)<\/a><br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/arduino-alalog-input\" target=\"_blank\">Arduino \u985e\u6bd4\u8f38\u5165\u5be6\u7fd2<\/a><br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/arduino-pwm\/\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/arduino-pwm\/\" target=\"_blank\">Arduino PWM <\/a><a href=\"https:\/\/www.block.tw\/blog\/arduino-pwm\/\">\u5be6\u7fd2<\/a> (\u547c\u5438\u71c8)<br> <a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/arduino-ldr-3led\/\" data-type=\"URL\" target=\"_blank\">Arduino PWM \u5be6\u7fd2<\/a> (\u5149\u611f\u61c9\u8abf\u5149\u71c8) <br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/arduino-88-led-matrix-max7219\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/arduino-88-led-matrix-max7219\" target=\"_blank\">Arduino 8&#215;8 LED Matrix MAX7219 \u5be6\u7fd2<\/a> <br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/arduino-greenMan\" data-type=\"URL\" target=\"_blank\">Arduino \u7d05\u7da0\u71c8\u5c0f\u7da0\u4eba \u5be6\u7fd2<\/a> <br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/88-led-matrix-max7219-clock\/\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/88-led-matrix-max7219-clock\/\" target=\"_blank\">Arduino \u8a08\u6642\u5668 \u5be6\u7fd2<\/a><br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/musicbox\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/musicbox\" target=\"_blank\">Arduino \u97f3\u6a02\u76d2<\/a><br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/keyboard\/\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/keyboard\/\" target=\"_blank\">Arduino \u96fb\u5b50\u7434(\u9375\u76e4\u6383\u63cf)<\/a><br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/dht11\/\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/dht11\/\" target=\"_blank\">Arduino DHT11 \u6eab\u6fd5\u5ea6\u611f\u61c9\u5668<\/a><br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/oled\/\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/oled\/\" target=\"_blank\">Arduino OLED \u986f\u793a<\/a><br><span style=\"color: #0693e3;\" class=\"ugb-highlight\"><a href=\"https:\/\/www.block.tw\/blog\/arduino-hcsr04\/\">Arduino \u8d85\u97f3\u6ce2\u6e2c\u8ddd\u6a21\u7d44 HC-SR04<\/a><\/span><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-runtime\/\">Arduino \u57f7\u884c\u6642\u9593\u5be6\u7fd2<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/arduino-captest\/\">Arduino \u96fb\u5bb9\u6e2c\u8a66\u5668<\/a><br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/arduino-irr\/\" target=\"_blank\">Arduino \u7d05\u5916\u7dda\u63a5\u6536\u5be6\u7fd2<\/a><br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/arduino-irsend-epson\/\" target=\"_blank\">Arduino \u7d05\u5916\u7dda\u767c\u5c04\u5be6\u7fd2 EPSON \u6295\u5f71\u6a5f\u63a7\u5236 <\/a><br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/esp12f-iot-plug-mqtt\" target=\"_blank\">ESP-12F \u7db2\u8def\u667a\u6167\u958b\u95dc(MQTT)<\/a><br><a rel=\"noreferrer noopener\" href=\"https:\/\/www.block.tw\/blog\/esp-12fesp8266-max31855-mqtt-thingspeak\" target=\"_blank\">ESP-12F \u96f2\u7aef\u8a18\u9304\u578b K-Type \u6eab\u5ea6\u8a08(MQTT  ThingSpeak)<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/esp-12f-ircontrolbyphone\/\">ESP-12F \u624b\u6a5f\u96f2\u7aef\u7d05\u5916\u7dda\u63a7\u5236<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/esp-12f-webradio\" data-type=\"URL\" data-id=\"https:\/\/www.block.tw\/blog\/esp-12f-webradio\">ESP-12F \u7db2\u8def\u96fb\u53f0\u6536\u97f3\u6a5f<\/a><br><a href=\"https:\/\/www.block.tw\/blog\/esp12f-edrum\">ESP-12F \u96fb\u5b50\u9f13<\/a><\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/section>\n","protected":false},"excerpt":{"rendered":"<p>\u8a2d\u5099\u8207\u6750\u6599 \u500b\u4eba\u96fb\u8166 \u00d7 1arduino Uno \u00d7 1OLED 128*64 \u00d7 1\u9023\u63a5\u7dda \u82e5\u5e72 \u5be6\u9ad4\u63a5\u7dda&hellip; <br \/> <a class=\"read-more\" href=\"https:\/\/www.block.tw\/blog\/oled\/\">Read more<\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[70,3],"tags":[15,21,19],"class_list":["post-853","post","type-post","status-publish","format-standard","hentry","category-internship","category-mcu","tag-arduino","tag-oled","tag-u8glib"],"gutentor_comment":0,"featured_image_urls":{"full":"","thumbnail":"","medium":"","medium_large":"","large":"","1536x1536":"","2048x2048":"","post-thumbnail":"","mesmerize-full-hd":""},"post_excerpt_stackable":"<p>OLED \u8a2d\u5099\u8207\u6750\u6599 \u500b\u4eba\u96fb\u8166 \u00d7 1arduino Uno \u00d7 1OLED 128*64 \u00d7 1\u9023\u63a5\u7dda \u82e5\u5e72 \u5be6\u9ad4\u63a5\u7dda\u5716 \u9a45\u52d5\u7a0b\u5f0f \u4f7f\u7528 U8Glib \u51fd\u5f0f\u5eab \u672c\u7ad9\u4e0b\u8f09 (1.19.1) GitHu&#8230;<\/p>\n","category_list":"<a href=\"https:\/\/www.block.tw\/blog\/category\/mcu\/internship\/\" rel=\"category tag\">Arduino \u5be6\u7fd2<\/a>, <a href=\"https:\/\/www.block.tw\/blog\/category\/mcu\/\" rel=\"category tag\">\u5fae\u8655\u7406\u6a5f<\/a>","author_info":{"name":"mcu","url":"https:\/\/www.block.tw\/blog\/author\/mcu\/"},"comments_num":"0 comments","featured_image_urls_v2":{"full":"","thumbnail":"","medium":"","medium_large":"","large":"","1536x1536":"","2048x2048":"","post-thumbnail":"","mesmerize-full-hd":""},"post_excerpt_stackable_v2":"<p>OLED \u8a2d\u5099\u8207\u6750\u6599 \u500b\u4eba\u96fb\u8166 \u00d7 1arduino Uno \u00d7 1OLED 128*64 \u00d7 1\u9023\u63a5\u7dda \u82e5\u5e72 \u5be6\u9ad4\u63a5\u7dda\u5716 \u9a45\u52d5\u7a0b\u5f0f \u4f7f\u7528 U8Glib \u51fd\u5f0f\u5eab \u672c\u7ad9\u4e0b\u8f09 (1.19.1) GitHu&#8230;<\/p>\n","category_list_v2":"<a href=\"https:\/\/www.block.tw\/blog\/category\/mcu\/internship\/\" rel=\"category tag\">Arduino \u5be6\u7fd2<\/a>, <a href=\"https:\/\/www.block.tw\/blog\/category\/mcu\/\" rel=\"category tag\">\u5fae\u8655\u7406\u6a5f<\/a>","author_info_v2":{"name":"mcu","url":"https:\/\/www.block.tw\/blog\/author\/mcu\/"},"comments_num_v2":"0 comments","_links":{"self":[{"href":"https:\/\/www.block.tw\/blog\/wp-json\/wp\/v2\/posts\/853","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.block.tw\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.block.tw\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.block.tw\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.block.tw\/blog\/wp-json\/wp\/v2\/comments?post=853"}],"version-history":[{"count":45,"href":"https:\/\/www.block.tw\/blog\/wp-json\/wp\/v2\/posts\/853\/revisions"}],"predecessor-version":[{"id":4822,"href":"https:\/\/www.block.tw\/blog\/wp-json\/wp\/v2\/posts\/853\/revisions\/4822"}],"wp:attachment":[{"href":"https:\/\/www.block.tw\/blog\/wp-json\/wp\/v2\/media?parent=853"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.block.tw\/blog\/wp-json\/wp\/v2\/categories?post=853"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.block.tw\/blog\/wp-json\/wp\/v2\/tags?post=853"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}