Пытаюсь поблочно читать файл из внешней Flash при помощи асинхронной библиотеки. В файле f.txt записано 123;456*. Читаю по 4 байта. Первые четыре байта читаются правильно, а вторые четыре байта не правильно. В чем может быть причина ?
Вид для печати
Пытаюсь поблочно читать файл из внешней Flash при помощи асинхронной библиотеки. В файле f.txt записано 123;456*. Читаю по 4 байта. Первые четыре байта читаются правильно, а вторые четыре байта не правильно. В чем может быть причина ?
а скрин то приложите что получается при чтении второй то группы, не у всех же есть такой плк, и лучше бы иметь две строки для первого прочтения и для второго, а то может ошибка в дальнейшем преобразовании а не в чтении
В MAS[0] получается 123, а в MAS[1] - 5. Из-за того, что не верно считываются вторые 4 байта и дальнейшее преобразование цикл не может завершиться.
Что значит "лучше бы иметь две строки для первого прочтения и для второго" ?
Первое чтение и преобразование происходят правильно. Второе чтение происходит не правильно.
так покажите на скрине что при втором проходе находится в строке, в массиве у Вас уже пройденные через постобработку данные - ни какой связи с чтением
К сожалению не могу показать скрин строки после второго чтения. Но если бы второе чтение было корректно, то преобразование было бы совершено верно и в MAS[1] получилось бы 456.
Еще раз пишу, что первое чтение и преобразование происходят корректно. Второе преобразование происходит не верно потому что не верно читаются вторые 4 байта.
Программа очень простая.
А что там не так. Функция DEC_TO_BYTE родная оскатовская. Преобразование строки из первых четырех байт при помощи этой функции происходит правильно. Что мешает правильно произвести преобразование строки из следующих четырех байт - только то, что следующие четыре байта прочитаны не верно.
открытым текстом говорю, функция DEC_TO_BYTE имеет выходное значение байт, массив MAS это тоже массив байт, байт как тип данных не может быть больше 255, подставляя в него большее значение Вы получите число по модулю 256. Да хоть десять раз Ваша прога будет циклической, Вас не затруднило запоминать индекс массива, почему вызывает сложности сохранять прочитанные строки