Пытаюсь поблочно читать файл из внешней Flash при помощи асинхронной библиотеки. В файле f.txt записано 123;456*. Читаю по 4 байта. Первые четыре байта читаются правильно, а вторые четыре байта не правильно. В чем может быть причина ?
Пытаюсь поблочно читать файл из внешней Flash при помощи асинхронной библиотеки. В файле f.txt записано 123;456*. Читаю по 4 байта. Первые четыре байта читаются правильно, а вторые четыре байта не правильно. В чем может быть причина ?
Последний раз редактировалось IVM; 22.03.2016 в 14:02.
а скрин то приложите что получается при чтении второй то группы, не у всех же есть такой плк, и лучше бы иметь две строки для первого прочтения и для второго, а то может ошибка в дальнейшем преобразовании а не в чтении
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
В MAS[0] получается 123, а в MAS[1] - 5. Из-за того, что не верно считываются вторые 4 байта и дальнейшее преобразование цикл не может завершиться.
Что значит "лучше бы иметь две строки для первого прочтения и для второго" ?
Первое чтение и преобразование происходят правильно. Второе чтение происходит не правильно.
Последний раз редактировалось IVM; 22.03.2016 в 14:29.
так покажите на скрине что при втором проходе находится в строке, в массиве у Вас уже пройденные через постобработку данные - ни какой связи с чтением
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
К сожалению не могу показать скрин строки после второго чтения. Но если бы второе чтение было корректно, то преобразование было бы совершено верно и в MAS[1] получилось бы 456.
Еще раз пишу, что первое чтение и преобразование происходят корректно. Второе преобразование происходит не верно потому что не верно читаются вторые 4 байта.
Программа очень простая.
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
А что там не так. Функция DEC_TO_BYTE родная оскатовская. Преобразование строки из первых четырех байт при помощи этой функции происходит правильно. Что мешает правильно произвести преобразование строки из следующих четырех байт - только то, что следующие четыре байта прочитаны не верно.
Последний раз редактировалось IVM; 22.03.2016 в 15:24.
открытым текстом говорю, функция DEC_TO_BYTE имеет выходное значение байт, массив MAS это тоже массив байт, байт как тип данных не может быть больше 255, подставляя в него большее значение Вы получите число по модулю 256. Да хоть десять раз Ваша прога будет циклической, Вас не затруднило запоминать индекс массива, почему вызывает сложности сохранять прочитанные строки
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран