POV (15.04.2015 11:36 - 12:22, просмотров: 2076)
Нужна помощь телепатов по Датафлешь [UPD]... Регистр статуса успешно читаю, ID производителя с указанием плотности и т.п. также.
А вот записать байт и затем его считать не выходит. Всё время ноль получаю.
Читать пытаюсь и через буфер и в режиме Continues. Одинаково не работает.
Если кто писал код, то, думаю, мой пример (запись-чтение) ему будет ясен (параметры: NULL==0 - номер буфера, я везде одинаковый тупо ставлю... 0 - это номер страницы или номер байта в странице, т.е. везде всё по нулям чтобы проще было на отладке):
dfWriteBuffer(0, NULL);
f_spi_sendbyte(201);
f_spi_sendbyte(202);
f_spi_sendbyte(203);
f_spi_sendbyte(204);
f_spi_stop();
dfBufferToPage(0, NULL);
dfPageToBuffer(0, NULL);
dfReadBuffer(0, NULL);
temp = f_spi_readbyte();
f_spi_stop();
Вот этот самый temp всегда - ноль. Могу не раз его считать на случай если где-то из-за "dummy byte" смещение произошло.. толку нет.
Таки шо, телепатия существует?
UPD>
Часто бывает что ничего не работает, сутками что-то отлаживаешь, руки прям опускаются.. начинаешь истерить, искать совета у всеобщего разума.. за это время остынешь, чуть аккуратнее себя поведёшь - оно "само" как-то и запустится. Чесслово не знаю чего сделал, но флеха начала стабильно работать во всех режимах.
Благодарю за участие.
UDP2>
Да, понял что я сделал - заменил опкоды для ReadBuffer на D4 и D6 и всё (а D1 и D3 шевелится не хотели ни в какую)!