Hi All,
I am trying to enter a number to set a variable called pon. But i am getting an error when compiling this code. Could someone offer some help to a newbie please?
the error messages are also listed.
Error:-
C:\Users\ilpro\OneDrive\Documents\Arduino\HHO_Generator_v1.1\ponSet.ino: In function 'void ponSet()':
C:\Users\ilpro\OneDrive\Documents\Arduino\HHO_Generator_v1.1\ponSet.ino:26:29: error: conversion from 'int' to 'const String' is ambiguous
In file included from C:\Users\ilpro\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Arduino.h:232:0,
from C:\Users\ilpro\AppData\Local\Temp\arduino\sketches\8D0660CAF5BFD2E7DB31264677A2B787\sketch\HHO_Generator_v1.1.ino.cpp:1:
C:\Users\ilpro\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/WString.h:61:2: note: candidate: String::String(const __FlashStringHelper*)
String(const __FlashStringHelper str);
^~~~~~
C:\Users\ilpro\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/WString.h:61:2: note: conversion of argument 1 would be ill-formed:
C:\Users\ilpro\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/WString.h:59:2: note: candidate: String::String(const char)
String(const char *cstr = "");
^~~~~~
Code :
```cpp
void ponSet() {
ponFlag = 0;
csr = 7;
lcd.clear();
lcd.setCursor(4, 0);
lcd.print("Pulse On Time");
lcd.setCursor(0, 1);
lcd.print("On Time (uS) 1-");
rem = 1000 - pon;
lcd.print(rem);
lcd.setCursor(0, 2);
lcd.print("Pulse = ");
do {
char key = keypad.getKey();
if (key) {
lcd.setCursor((csr), 2);
lcd.print(key);
csr++;
if (key >= '0' && key <= '9') { // only act on numeric keys
ponString += key; // append new character to input string
} else if (key == 'E') {
if (ponString.length() > 0) {
ponInt = ponString.toInt(); // YOU GOT AN INTEGER NUMBER
ponString = ""; // clear input
if (ponString > (rem)) {
lcd.clear();
lcd.setCursor(4, 1);
lcd.print("Too High");
delay(100);
ponSet();
}
if (ponInt <= (rem)) {
pon = ponInt;
ponFlag = 1;
}
}
} else if (key == 'C') {
ponString = ""; // clear input
ponFlag = 0;
loop();
}
}
} while (ponFlag == 0);
}