Официальный сайт компании Arduino по адресу arduino.cc
преобразование byte в char
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Пт, 27/06/2014 - 14:26
Доброго дня всем.
Подозреваю, что вопрос очень простой, есть 6 переменных тип byte , необходимо на их основе создать имя файла, соответственно создать массив char с этими символами. Вот в переводе byte в символьной представление я и застопорился, прошу помощи.
или хотя бы как с = 254 разобрать на 2, 5 и 4 типа byte
Сам спросил, сам ответил.
Решение работает до 99, кому надо может еще деление на 100 вставить, но мне оно не нужно
для компилятора byte и char абсолютно одно и тоже и занимает один байт.
у меня есть 3 переменных, тип Byte
27
06
14
на основе этих данных мне надо создать файл с именем 14-06-27.txt
Сейчас делаю на основе метода описанного выше.
Как это сделать по вашей методе?
какая моя метода. я говорю, если вместо всех byte поставить char, то резултат будет один и тот-же. а имя файла в памяти как выглядит? массив?
он самый - массив.
покажите этот массив.
Собственно решение, которое меня устраивает уже есть.
Выглядит вот так.
тогда не понятно что именно вам надо.
дык уже ничего, пока вопрос задал, сам продолжать думать, вот и надумал, да ответ написал, вдруг кому еще потребуется.
Я даже функцию форматирования добавил в DateTime - вот логер на 2 темпиратуры на сд карточку.
И сама функция:
Большое Вам спасибо!
Благодаря вашему примеру я наконец-то понял как конвертировать байты в символы и наоборот.
В таблице кодов символов ASCII цифре 0 соответствует код 48, значит цифра 1 идет под кодом 48+1, …, для 7 код 48+7=55 и т.д.
char ByteToChar(byte byteSt, byte num) {
const byte offset = 48;
if (num==1) return char(offset+byteSt/10); // 48 + 73/10 = 48+7=55
if (num==2) return char(offset+byteSt-byteSt/10*10); // 48+73-(73/10)*10 = 48+73-70=51
}
и наоборот: