u8glib OLED显示ip地址,编译出错
本帖最后由 yenan1001 于 2014-12-29 21:53 编辑我想用u8glib oled 显示ethercard的ip地址。
用下面的代码串口显示的时候是正常的。
ether.printIp("IP:", ether.myip);
ether.printIp("GW:", ether.gwip);
ether.printIp("DNS: ", ether.dnsip);
换到u8glib的库,编译报错。
void draw_ip(void) {
u8g.firstPage();
do{
u8g.setFont(u8g_font_unifont);
u8g.setPrintPos(35, 16);
u8g.print(ether.hisip);
u8g.drawStr(0,16,"SVR:");
u8g.setPrintPos(35, 32);
u8g.print(ether.myip);
u8g.drawStr(0,32,"IP :");
u8g.setPrintPos(35, 48);
u8g.print(ether.gwip);
u8g.drawStr(0,48,"GW :");
u8g.setPrintPos(35, 64);
u8g.print(ether.dnsip);
u8g.drawStr(0,64,"DNS:");
}while(u8g.nextPage());
}
我的想法是要先把 "ether.myip"转换成字符串,然后用u8g输出。
请教要怎么把这种数据类型转换。
或者有什么别的方法可以输出。
biguous显示太大了,超载了,建议先定义一个数组存放 suoma 发表于25 分钟前 static/image/common/back.gif
biguous显示太大了,超载了,建议先定义一个数组存放...
那为什么串口可以显示呢? yenan1001 发表于 2014-12-30 16:27 static/image/common/back.gif
那为什么串口可以显示呢?
楼上说的不对,运行错误,比如数据溢出等,这个编译是不会报错的
你这个错误是函数重载,print你去检查下参数的个数和类型,你这个因为ether.hisip无法匹配print中的参数类型所以报错了
你看看ether.hisip的类型是什么,字符串?数组?需要转换一下数据类型
页:
[1]