|
发表于 2012-10-11 00:36:19
|
显示全部楼层
本帖最后由 wasdpkj 于 2012-10-11 16:12 编辑
今天编译遇到了问题,程序是一个简单的LM35检测温度输出到LCD1602显示的:
- #include <LiquidCrystal.h> //调用arduino自带LiquidCrystal库
- LiquidCrystal lcd(13, 12, 8, 9, 10, 11);//设置接口
- float tem10 = 0; //温度-换算
- long n=0; //设置n为长整数变量
- /*=================0-初始化===================*/
- void setup()
- {
- analogReference(INTERNAL); //调用板载1.1V基准源
- lcd.begin(16, 2); //初始化LCD
- lcd.print(" =====PKJ===== "); //使屏幕显示文字
- delay(1000); //延时
- }
- /*==================0-函数====================*/
- void loop()
- {
- /*==================1-值=======================*/
- n = analogRead(0); //读取A0口的电压值
-
- delay(50); //控制刷新速度
- tem10 = (n * (1.1 / 1024.0*1000)); //使用浮点数存储温度数据
- float tem=tem10/10; //温度-实际
-
- /*=================2-显示=====================*/
- {
- lcd.clear(); //清屏
- lcd.print("NowTem:"); //使屏幕显示文字
- lcd.setCursor(8, 0) ; //设置光标位置
- lcd.print((long) tem10 / 10); //显示温度整数位
- lcd.print("."); //显示小数点
- lcd.print( (long)tem10 % 10); //显示温度小数点后一位
- lcd.print((char)223); //显示o符号
- lcd.print("C"); //显示字母C
- delay(60); //刷新速度
-
- }
- }
复制代码
board选用mega16编译就会报错(选其他就没问题):
In file included from sketch_oct11a.cpp:2:
D:\arduino-1.0.1\libraries\LiquidCrystal/LiquidCrystal.h:82: error: conflicting return type specified for 'virtual size_t LiquidCrystal::write(uint8_t)'
D:\arduino-1.0.1\hardware\M2Arduino\cores\M2Arduino/Print.h:40: error: overriding 'virtual void Print::write(uint8_t)'
---------------------------
换了0022版本ide编译到是没问题了,可1602显示乱码。。。 |
|