MEGA+SD Card shield(seeed studio)
- Войдите на сайт для отправки комментариев
Пт, 26/07/2013 - 22:51
SD Card shield(seeed studio) v3.0 есть и мега 2560, нужен SD, или паять или это использовать, хотя он для UNO, просто одеть не получится, окромя коробки ничего нет, как перебросить провода к нему?
На плате выводы 0-13,GND,REF (резисторы сосредоточены в районе REF,GND,8-13),другая сторона RESET,3.3V,5V,GND,VIN,A0,A1 и 2 джека UART,IIC.
Сообственно надо пробросить 4 вывода, и землю (это понятно) . Может в инете есть схемка шилда?
http://www.seeedstudio.com/wiki/SD_Card_Shield_V3.0
все популярно и с картинками...
Спасибо, искал через гугль - одни магазины...
уезжал, приехал, начал подключать - 4 провода пробросил, а тут вопрос где питание?
полез на сайт и увидел надпись ( Do not compatible with Mega) Voltage max 3.6V хотя далее 3.3v and 5v logical voltage compatible
придется паять...
а взять с меги 3.3 вольта вам религия не позволяет?
Да не... плохо читали.... Ну да, не совместим... без танцев с бубном.. но танцы с бубном описаны там же
This shield works fine for the Arduino Mega 2560, you just have to make the appropriate connections. 4or10 ->53, 11->51, 12 ->50, and 13 ->52. This arrangement works fine so long as you make sure not to assign anything else to those pins.
Питание - не нужно пробрасывать отдельно. Оно у Меги там же где и у Uno, так что когда "просто воткнете" - оно уже запитается.
Непонятно только почему они написали 4 or 10, хотя ниже четко написанно D10 – Used for CS of SPI, поэтому каким боком тут D4 - не понятно.
Если често, я вообще не понимаю "нафига" вообще делать проброс на 53, если можно просто, при инициализации библиотеки указать какой пин использовать в качестве CS . Написать SD.begin(10) да и дело с концом.
Главное потом, нигде в коде, больше не трогать эти пины. Как те "откуда пробрасывали проводком", так и те "куда пробрасывали"
Вообщем я бы попробовал сделать проброс трех проводов
11->51, 12 ->50, and 13 ->52
И в коде написал SD.begin(10);
Да, судя по http://arduino.cc/en/Reference/SDbegin
"Note that even if you use a different chip select pin, the hardware SS pin must be kept as an output or the SD library functions will not work."
Нужно будет, еще сделать pinMode(53,OUTPUT); если мы не бросаем на него проводок.
Вообщем либо 4-ре проводка и не нужны изменения в коде примеров, либо три проводка и
Вначале бы попробовал без pinMode(53,OUTPUT), скорее всего "не заработает", тогда добавил-бы ее (фиг его знает, вдруг они под "kept as an output" подразумевали "оставте просто висеть в воздухе", а не "включите его на выход").
а взять с меги 3.3 вольта вам религия не позволяет?
я про них совершенно забыл, помятуя про логическую единицу в 5 вольт на шине данных
Вообщем либо 4-ре проводка и не нужны изменения в коде примеров, либо три проводка и
завтра опробую...
что-то никак
pinMode(53, OUTPUT); // INI SD CARD
if (!SD.begin(53)) {
lcd.setCursor(0, 0);
lcd.print ("ini SD fail");
delay(100000);
return;
}
MOSI -11-51
MISO-12-50
CLK-13-52
ES-10-53
подал питание 3.3 с меги и землю, пишет ini SD fail, карточка вставлена 8Гб
>карточка вставлена 8Гб
Во первых:
Берите другую карточку. Даже 4-ре может быть многовато. Лучше поменьше. Даже с "правильным размером" и то - иногда бывает переборчива. Так что лучше запастись карточками для подбора феншуйной :) Ну и форматируйте ее правильно. В FAT32 или FAT16. Я бы рекомендовал - FAT16. NTFS - забудте. Даже если уже формат подходящий - все равно форматните. Начните с чистой.
Во вторых:
так какой вариант вы попробовали. Прокидывая 4-тый проводок или нет? Если прокидывая, то в коде вообще ничего менять не нужно было. SD.Begin() - и все. Если "не прокидывая", то почему SD.begin(53)? Я вроде писал SD.begin(10)
А.. 53, это если в pinMode(53,OUTPUT); . Но... это в самую последнюю очередь попробовать. Смущает оно меня сильно :( Но .. не могу точно перевести " it must be left as an output".
То ли
1. Оставте его не подключенным (склоняюсь к этому варианту), тогда pinMode - не нужен, то ли
2. Выставте его в режим ВЫХОД (тогда pinMode нужен), но... что-то протестует внутри против этого :) Не попадался нигде на глаза такой вариант, что-бы включали его сами.
Про питание - не понял что вы там "прокидывали". Шилд же садится на свое место и пинами получает питание без прокидываний. Питание/земля у UNO/Mega совпадают. По идее - ничего не нужно было мудрить по этому поводу (если вы "нахлобучиваете шилд", а не "проводками подключаете").
пишет ini SD fail, карточка вставлена 8Гб
канечно никак, там же написано что максимум 2 гб карточка :)
так вотнул в картридер, не пашет, не видит, помнится, что была у меня битая карта, т.е нечитаемая в компе, сначала не читаемая, а потом читалось, и скинул фото. А может и сжег карту, хотя менял только проводки на 50-11,51-12,52-13,53-10 на холодную.
Поищу старую, везде продают больших объёмов...
4 проводка вёл,
SD.begin(10) - у меня LED висит на 10 ноге, ничего?
"Про питание " да вполне возможно что питание дублируется наверх, для бутерброда и и плата питание от этих пинов не берет,
надо смотреть на обратную сторону (уже прикручено), на верхней части от пинов питания дорожек нет.
Ну, я прямо уж и не знаю как еще сказать.
Если прокидывая, то в коде вообще ничего менять не нужно было. SD.Begin() - и все.
Ну если уже хочется все-таки указать, то на меге SD.Begin(53). Это если ЕСТЬ Проводок от 10 к 53!!! Все. Больше ничего!!!
Вообщем определитесь. И пробуйте какой-то один вариант, или по очереди, но не делайте микс.
Вариант 1:
Проводок 10-53 прокинут. Тогда либо SD.begin() или SD.begin(53) - без разницы (на меге, когда мега выбрана в качестве целевой платы).
Вариант 2:
Проводок 10->53 - отсутсвует. Тогда pinMode(53,OUTPUT); SD.begin(10);
(pinMode - таки нужен. Выяснил это однозначно. В примере DumpFile.ino - это видно не только "словами", но и "кодом").
> у меня LED висит на 10 ноге, ничего?
Еще как "чего". Нафиг его.
>надо смотреть на обратную сторону (уже прикручено), на верхней части от пинов питания дорожек нет.
Не нужно Ничего смотреть. Плата может быть и многослойной. Если она не дефектная.... ну вот представте, что у вас UNO. Как бы оно питалось? С пинов. А где пины питания? Там же где и на меге. Так почему на на UNO никто землю и питания не тягает, а на меге вы решили потягать? Что-бы увеличить шансы где-то хомутнуть? SPI пины - у меги в другом месте. Тут понятно почему нужно "тягать", но питание и землю?