Initializing SD card...initialization failed! MEGA2560 + SD модуль
- Войдите на сайт для отправки комментариев
Доброго времени суток, помогите разобраться с подключением SD модуля к Mega2560 v3. Никак не хочет работать, то ли мега глючит то ли делаю что-то не так.
Подключаю таким макаром(ниже) - не пашет
MISO (D0) соединяем с 50 pin (12 pin для других)
MOSI (D1) — c 51 pin (11 pin для других)
SCK — c 52 pin (13 pin для других)
CS (SS) — c 53 pin (10 pin для других)
GND (земля) — с GND pin
5V (или 3.3v) — c 5V pin (или 3.3v)
в скече меняю 10 и 4 на 53 пин, всё равно не пашет. танцы с бубном не помогают. на УНО всё работает, на меге не хочет.
pinMode(53, OUTPUT);
if (!SD.begin(53)) {
Может что-то делаю не так? как только не пробовал. Третий вечер бьюсь... Я в отчаяние....
а чего это увас за такая красивая перемычка между 53 пином и10? художествами занимаетесь? а просто воткнуть на пины которые с номерами вам религия не позволяет?
И куда воткнут белый провод? Уберите зеленый провод и воткните белый в 53 вывод.
У меня на Ethernet Sheild была такая беда, оказывается был неправильно указан SS вывод
и вообще в стандартной библиотеке вот такая процедура
в одном из примеров....
а чего это увас за такая красивая перемычка между 53 пином и10? художествами занимаетесь? а просто воткнуть на пины которые с номерами вам религия не позволяет?
Да говорю же, чего только не делал,куда только непихал, про перемычку нашёл в соседних темах и решил попробовать, но увы, с ней тоже не работает.
а SPI вы по центру для красоты прицепили?
Заработало??
у меня темка была про это, где-то в темах,
тогда забил, временно разместил массив с инфой в проге, для отладки,
а сейчас пробую подключать...
http://arduino.ru/Reference/Library/SPI
Что интересно темы MЕГА+СД переодически всплывают и без результатно
http://www.arduino.ru/forum/obshchii/mega-2560-sd-card-zapisyvaetsya-musor
http://dso.seeedstudio.com/viewtopic.php?p=15632
http://www.arduino.ru/forum/programmirovanie/chto-nepravilno-delayu-pri-rabote-s-sd
http://forums.adafruit.com/viewtopic.php?f=31&t=22796&sid=0
кое где написано But on MEGA2560 board they are 53(SS),51(MOSI),50(MISO),52(SCK).
Open the file …\Arduino\libraries\SD\utility\Sd2Card.h and changed “#define MEGA_SOFT_SPI 0” to “#define MEGA_SOFT_SPI 1”. Then added “pinMode(53, OUTPUT); in the Setup() function.
пробовал, всё равно не идёт, казалось бы, 4 проводка подсоеденить...
получилось!
вставил просто строки в прогу
и увидел что константы 10,11,12,13, хотя в среде 1.0.1 выставлена Мега.
в файле Sd2Card.h поменял
далее всё это работает!
if (!SD.begin(53)) {
...
myFile = SD.open("1.ajx", FILE_READ);
Спасибо! Поправил в файле Sd2Card.h порты и заработало! Только есть баг. Файл создаёт и читает, но почему-то в него ничего не пишет, файл остаётся пустым.
myFile.println("testing 1, 2, 3."); не работает.
открыт правильно? SD.open("test.txt", FILE_WRITE);
закрытие есть? myFile.close();
Всё верно, пример SD/ReadWrite, писать в файл не хочет.
а это в скретче оставлено?? pinMode(4, OUTPUT);
и 53 ставил и 4, работает одинаково.
Блин, что же делать? никак не хочет работать правильно =)
Когда вставляешь чистую отформатированную карту в SD модуль, и включаю ардуину, на ней создаётся вот такая хрень
а когда открываю сириал порт, то там вот такое:
а другую карточку?
Поменял флэшку и вдруг всё заработало =)
Не все карточки поддерживают SPI. Тоже сталкивался.
Не все карточки поддерживают SPI. Тоже сталкивался.
ну я бы еще сказал что некоторые карточки не поддерживают скорость обращения к ним :) частота SPI задается при инициализации
Но странно всё-таки, на уно-то карта работает без проблемм, а на меге глючит. Карта SD древняя на 64 мб.
видими мега ей слишком большую скорость просила и она не успевала :)
Добрый день, не стал плодить новую тему, так как проблема схожая. Имею на руках Freeduino ADK 2.2 и вот такой SD Module, при попытке инициализировать карту выдает: "Initializing SD card...initialization failed!". Модуль подключен по схеме 53(SS),51(MOSI),50(MISO),52(SCK) на моей плате это 53(CS),51(D1),50(D0),52(CK), замену в файле Sd2Card.h сделал, пытаюсь выполнить скетч:
Что за 53(CS), 51(D1), 50(D0), 52(CK) ? И что за замену в файле Sd2Card.h вы сделали?
Замены сделал следующие:
01
#else // SOFTWARE_SPI
02
// define software SPI pins so Mega can use unmodified GPS Shield
03
/** SPI chip select pin */
04
uint8_t
const
SD_CHIP_SELECT_PIN = 53;
05
/** SPI Master Out Slave In pin */
06
uint8_t
const
SPI_MOSI_PIN = 51;
07
/** SPI Master In Slave Out pin */
08
uint8_t
const
SPI_MISO_PIN = 50;
09
/** SPI Clock pin */
10
uint8_t
const
SPI_SCK_PIN = 52;
11
#endif // SOFTWARE_SPI
53(CS), 51(D1), 50(D0), 52(CK) - обозначение контактов на моем модуле
Может кто знает почему не видно, что microSD отформатирова?
использую стандартный пример CardInfo
соответственно
В резульате:
PS мое решение тут
Может кто знает почему не видно, что microSD отформатирова?
использую стандартный пример CardInfo
...
из рабочего проекта
схема
код
У меня скеч кривой не могу никак понять что мешает SKC (52 pin) - с уно SKC (13 pin) всё отлично.
Что то ни как не могу добится чтоб модуль нормально работал с Мегой.
Тут пишут : http://profmason.com/?p=1956 что надо подключать через резисторы - завтра попробую
CS, MOSI, MISO и SCK подключить через делители резисторы 5,1 кОм и 10 кОм
ПС: У меня на модуле только подтягивающие резисторы ( видно предназначена для DUE и тп 3,3 Вольта)
dachnik - У Вас такой же кривой модуль как и у меня.
Не понимаю я китайцев - зачем тогда ставить стабилизатор на 3,3В и делать дополнительный VCC на 5В.
The SPI lines are uni-directional so you can replace MOSFETs with diodes (use something fast-switching with low capacitance as the circuit imitates the Open-Drain outputs with 10K pull-ups)
Какие диоды нужны ? (есь в наличии 1N4148 и 1N5819 но по мойму они не подойдут)
Попробуйте 5819, мне кажется пойдут. В сущности его задача не пустить 5В на вход.
Попробуйте 5819, мне кажется пойдут. В сущности его задача не пустить 5В на вход.
Ответил наконец то хозяин схемы:
1N5819 junction capacitance is 110pF. Taking into account the pull-up resistance of 10kOhm this gives limiting clock frequency ~100kHz. If you need higher clocks you could use lower resistors connected in parallel (1kOhm means ~1MHz) but this leads to increased power ripples. Or you could use 1N4005...4007 (8pF junction capacitance).
Попробуйте 5819, мне кажется пойдут. В сущности его задача не пустить 5В на вход.
Ответил наконец то хозяин схемы:
1N5819 junction capacitance is 110pF. Taking into account the pull-up resistance of 10kOhm this gives limiting clock frequency ~100kHz. If you need higher clocks you could use lower resistors connected in parallel (1kOhm means ~1MHz) but this leads to increased power ripples. Or you could use 1N4005...4007 (8pF junction capacitance).
Пасиб, про скорость не подумал.
Как всегда, купил 4006 - искал резистор и наткнулся на десяток 4007.
Ура - отлично работает :)
Прошаманил два дня.... Вот это помогло.... Инициализация проходит...
Arduino 2560 R3 + Ethernet Shield R3
The ethernet w5100 SPI Slave Select is digital pin 10. HIGH is disabled. LOW is enabled.
The microSD SPI slave select is digital pin 4. HIGH is disabled. LOW is enabled.
To communicate with the SD card, disable the w5100 SPI (pin 10 HIGH) and enable SD SPI (pin 4 LOW).
To communicate with the w5100 ethernet IC, disable SD SPI (pin 4 HIGH) and enable the w5100 SPI (pin 10 LOW).
Доброго времени суток! Уменя проблема такого характера. подключен sd shield, иницализация sd проходит нормально при подключении через usb. Когда подлючаешь 12вольт инициализация sd не проходит. Подскажите в чем может быть проблемма?
Так как вы сочли неважным написать что у вас за плата и что за шилд, то предположить можно, например, это:
Прошу прощение плата Arduino mega 2560 и sd подключино vcc к 5в
Попробуйте измерить напряжение на выводе 5V, когда подключаете блок питания.
не буду плодить темы..
господа, приобрел дисплей QVGA 240*320, вот ссылка
http://ru.aliexpress.com/item/Wholesale-1PC-2-2-Inch-240-320-Dots-SPI-TFT-LCD-Serial-Port-Module-Display-ILI9341/1961375225.html?isOrigTitle=true
на платке имеется картридер, так вот уперся - не получается его запустить.
использую мегу2560, сам дисплей цеплял через 561ПУ4, коннектил таким образом
MISO - 50, дисплей работает и без него
LED - 3,3v
SCK - 52
MOSI - 51
D/S - 49
RST - 48
CS - 53
библиотеку использую Adafruit.
теперь пытаюсь запустить картридер, перепробовал уже много чего..
питание у них общее3,3v
SCK - 52, так-же как и дисплей
MISO - 50, так-же как и дисплей
MOSI - 51, так-же как и дисплей
и наконец CS, вот здесь уже что только не пробовал.. 53, 10, 4, 8 и т.д.
в файле Sd2Card.h номера пинов менял,
строку pinMode(53, OUTPUT); добавлял, пины в ней менял
в общем ничего не выходит.
так вот сам вопрос, именно с этим дисплеем и картридером на нем кто нибудь сталкивался?
может пригодиться кому..
разобрался с этим дисплеей и SD модулем на нем, QVGA 240*320.
на плате резисторы по 1 кОму на mosi, miso и scr установлены, поэтому подключать нужно было не перекидывая на 3.3v, cs на 10 ногу (указываем сами). Все прямо на мегу, паралельно выводам от дисплея, которые необходимо преобразовать с 5v на 3.3v