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
全部亲测可执行的代码如下:
#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:
图4
使用u8glib在LCD12864让编程教科书上的HELLO出现了。
第一步完成,用时一整晚。
下一步,我的蠕动泵控制界面,需要做一个菜单。