Доброе время суток всем!!!
Занимаюсь сейчас девайсом на ATMEGA16, который должен следить за параметрами сетевого напряжения и создавать логи параметров на флеш-карте. Работу с картой памяти моделировал для начала в протеусе там всё работает просто замечательно и читает и пишет в неё (в протеусе правда есть модель только MMC карты, но насколько я понял она в SPI режиме совместима с SD). А вот когда начал тоже самое делать на реальном железе (купил для этого SD карту от Панасоника на 16Мбайт) начались проблеммы!
Сброс и переход в SPI режим идёт отлично как по маслу, карточка возвращает положенную единичку после нескольких команд CMD0. А при попытке выполнить инициализацию по CMD1 в цикле сначала выдаёт несколько единиц (как в общем то и положено), а потом вместо нуля, говорящего, что инициализация окончена, переводит линию в третье состояние и больше уже на CMD1 не реагирует. На другие команды после этого отвечает единичкой это означает, что карта не готова. На недопустимые команды выдаёт 4, что и означает - команда недопустима, т. е. ведёт себя вполне адекватно.
Почему карта не инициализируется для меня оказалась великой тайной. Помогите пожалуйста, может у кого есть идеи на этот счёт или сталкивался уже с этой проблеммой!!!
[/i]Восприятие верёвки как змеи так же ложно, как и восприятие верёвки как верёвки