我要做一個蠕動泵的工作記錄(一),用arduino mega2560 自主程式設計以 reprap 12864 LCD 作顯示
阿新 • • 發佈:2019-01-26
arduino mega2560 與 LCD12864(RepRapDiscount_Full_Graphic_Smart_Controller) 是3D印表機的配套使用的硬體,直接下載馬林韌體就可以使用了。
我想做一個多頭蠕動泵,arduino mega2560可以驅動六軸步進電機,加上 LCD12864是一套好選擇的硬體,
我是一個新手,現在叫萌新。但我必須全部自主程式設計。
我要讓mega2560 驅動 RepRap LCD12864 並顯示。
硬體是這樣的,見下圖1。
圖1
由於手快拆掉忘記了二者的連線,經過多次測試,二者的連線如下,EXP1對EXP1,見下圖2
圖2
問題不少。
1、百度認為用u8glib可以驅動顯示12864LCD,但需要對應12864LCD的晶片行進SETUP,百度沒有指出RepRap的Smart_Controller是用是什麼廠家的晶片。
2、幸好在GOOGLE的搜到的E文網站有老外指出了,這東西用這程式碼就可以驅動顯示了。 U8GLIB_ST7920_128X64_1X u8g(23, 17, 16);
別少看這句程式碼,翻了百度數頁也找不到。
首先用arduino 的管理庫下載U8glib的庫檔案,選擇U8glib 目前是Oliver的1.19.1版本,見下圖3
圖3
全部親測可執行的程式碼如下:
顯示效果如下圖4:#include "U8glib.h" U8GLIB_ST7920_128X64_1X u8g(23, 17, 16); // draw函式用於包含實現顯示內容的語句 void draw() { // 設定字型 u8g.setFont(u8g_font_unifont); // 設定文字及其顯示位置 u8g.drawStr( 0, 20, "Hello Arduino"); } void setup() { // put your setup code here, to run once: // u8glib圖片迴圈結構: u8g.firstPage(); do { draw(); } while( u8g.nextPage() ); // 等待一定時間後重繪 delay(500); } void loop() { // put your main code here, to run repeatedly: }
圖4
使用u8glib在LCD12864讓程式設計教科書上的HELLO出現了。
第一步完成,用時一整晚。
下一步,我的蠕動泵控制介面,需要做一個選單。