Картинки на Arduino - Arduino
- Войдите на сайт для отправки комментариев
Пнд, 19/06/2017 - 11:37
Это пример с библиотеки Thermal Printer, как я понимаю
processImage(File image)
этот строка открывает файл, но на эту строку он ругает
Arduino: 1.6.5 (Windows 8.1), Плата"Arduino Uno"
bitmapImageConvert:6: error: variable or field 'processImage' declared void bitmapImageConvert:6: error: 'File' was not declared in this scope bitmapImageConvert.pde: In function 'void setup()': bitmapImageConvert:6: error: 'selectInput' was not declared in this scope bitmapImageConvert.pde: At global scope: bitmapImageConvert:9: error: variable or field 'processImage' declared void bitmapImageConvert:9: error: 'File' was not declared in this scope variable or field 'processImage' declared void Это сообщение будет содержать больше информации чем "Отображать вывод во время компиляции" включено в Файл > Настройки
вот тут весь код
// THIS IS NOT ARDUINO CODE! Runs in Processing IDE ([url]www.processing.org[/url]).
// Convert image to C header file suitable for the Adafruit_Thermal library.
void setup() {
// Select and load image
selectInput("Select image file to convert:", "processImage");
}
void processImage(File image) {
String filename, basename;
PImage img;
PrintWriter output;
int pixelNum, byteNum, bytesOnLine = 99,
x, y, b, rowBytes, totalBytes, lastBit, sum;
println("Loading image...");
filename = image.getPath();
img = loadImage(image.getPath());
// Morph filename into output filename and base name for data
x = filename.lastIndexOf('.');
if(x > 0) filename = filename.substring(0, x); // Strip current extension
x = filename.lastIndexOf('/');
if(x > 0) basename = filename.substring(x + 1); // Strip path
else basename = filename;
filename += ".h"; // Append '.h' to output filename
println("Writing output to " + filename);
// Calculate output size
rowBytes = (img.width + 7) / 8;
totalBytes = rowBytes * img.height;
// Convert image to B&W, make pixels readable
img.filter(THRESHOLD);
img.loadPixels();
// Open header file for output (NOTE: WILL CLOBBER EXISTING .H FILE, if any)
output = createWriter(filename);
// Write image dimensions and beginning of array
output.println("#ifndef _" + basename + "_h_");
output.println("#define _" + basename + "_h_");
output.println();
output.println("#define " + basename + "_width " + img.width);
output.println("#define " + basename + "_height " + img.height);
output.println();
output.print("static const uint8_t PROGMEM " + basename + "_data[] = {");
// Generate body of array
for(pixelNum=byteNum=y=0; y<img.height; y++) { // Each row...
for(x=0; x<rowBytes; x++) { // Each 8-pixel block within row...
lastBit = (x < rowBytes - 1) ? 1 : (1 << (rowBytes * 8 - img.width));
sum = 0; // Clear accumulated 8 bits
for(b=128; b>=lastBit; b >>= 1) { // Each pixel within block...
if((img.pixels[pixelNum++] & 1) == 0) sum |= b; // If black pixel, set bit
}
if(++bytesOnLine >= 10) { // Wrap nicely
output.print("\n ");
bytesOnLine = 0;
}
output.format(" 0x%02X", sum); // Write accumulated bits
if(++byteNum < totalBytes) output.print(',');
}
}
// End array, close file, exit program
output.println();
output.println("};");
output.println();
output.println("#endif // _" + basename + "_h_");
output.flush();
output.close();
println("Done!");
exit();
}
Вы точно прочитали строку 01 приведенного Вами кода и понимаете что в ней?
Вы же не в Arduino IDE пытаетесь запустить, да?
Да прочитал, но не очень хорошо понемаю эту команду так как я еще не сталкивался с такими
я программирую в Arduino Ide 1.8version
Да прочитал, но не очень хорошо понемаю эту команду так как я еще не сталкивался с такими
я программирую в Arduino Ide 1.8version
Хэх. Ну что ж, придется мне прочитать вслух. В первой строке кода (тот который приведен после слов "Вот тут весь код") написано:
// THIS IS NOT ARDUINO CODE: Runs in Processing IDE ([url]www.processing.org[/url])
// Этот код не для Arduino IDE. Запускается в Processing IDE.
Ходили по ссылке?
Да прочитал, но не очень хорошо понемаю эту команду так как я еще не сталкивался с такими
Это не команда, это текстовый комментарий автора кода. Английский совсем не знаете? Тогда есть гугл переводчик.