SD/MMC и DataFlash-SPI ридер для 5V TTL MCU

AVR
Плата для SD/MMC карт, совмещенная с NOR/DataFlash(SPI), использованная в AtMega1284p/644p и W5500 Ethernet.
Коротко о схеме:
  • Конвертер уровней TTL/LVTTL выполнен на IC HEF4050BT/CD74HC4050(предпочтительнее это)
  • SPI-Flash IC подходят: M25P08/25LC256-512-1024/25AA02E48(Microchip OUI MAC GEN)
  • CDI — детектор наличия карты. Логический «0» на выходе при вставленной SD/MMC-карте, и наоборот «1» при отсутствии карты (как правило у китайских плат с AliExpress эта линия не разведена).
  • Протестировано и используется совместно с M644_breakout_v1.2d
  • Совместима с любыми 5V-толерантными MCU: AVR MEGA/Arduino, PIC16/18, STM8 и тд…

Схема
SD_CARD_and_SPI_FLASH_v2.2_schematic_tiny

KiCad 3D render top
SD_CARD_and_SPI_FLASH_v2.2_3D_top

Схема с герберами в KiCAD на Github'e
  • +2
  • 23 апреля 2019, 13:08
  • maxxir
  • 1
Файлы в топике: SD_CARD_and_SPI_FLASH_v2.2.zip

Комментарии (17)

RSS свернуть / развернуть
Почему использован 74HC4050, а не классического конвертора на MOSFET?
0
Жаль что тут сообщения не редактируются, вставил бы картинку поменьше
0
Ну и 1117-3.3 сегодня не лучший выбор, сейчас есть много LDO стабилизаторов с кпд получше и в корпусе SOT-23, например
XC6206P332MR, SPX3819, AP2112
0
Согласен — ставлю то что есть у меня(ширпотреб).
0
смысл соглашаться? У них у всех в данном случае одинаковый КПД при одинаковом токе и одинаковом падении напряжения с 5 до 3,3 В… это всё таки не импульсный преобразователь.
0
Нет, уж лучше NCP1117 чем непонятная китайская экзотика. ONS — уважаемая фирмочка, сот-223 — корпус с нормальным охлаждением (а карточка может жрать порядка сотни миллиампер). Дешёвая и распространённая. И в большинстве случаев вполне достаточно. А если есть особые требования — я предпочитаю среди тпс-ок глянуть…
0
АФАИК такого рода конвертор как предлагаете Вы выше,
не будет работать надежно на частотах SPI 4-8Mhz.
+ HEF4050BT/CD74HC4050 значительно компактнее.
0
Вы правы, судя по апноуту от NXP оно годится только для частот ниже 1MHz даже если уменьшить резюки до 3.3k
Для двух линий I2C у меня оно отлично работает
0
Лучше всего использовать микрухи из серии 74LVC или 74LVT, я, в частности, применял для своих проектов 74LVC245. Построены по BiCMOS, что предполагает питание от 1.65В до 3.6В, входы, толерантные к 5.5В и задержку распространения порядка 4нс в зависимости от напряжения питания. К тому же корпус TSSOP-20, меньше не бывает. Я её прямо под слотом монтировал с обратной стороны. В магазинах 12руб стоит, красота!
+1
Спс буду знать! BTW HEF4050BT китайский из местного магазина, довольно критичен к SPI speed,
сначала думал что-то в коде напорол (карта периодически терялась). Потом глянул на 2 экземпляре
тестовой системы — микросхемы 4050BT другие и именно на ней шли сбои. Понижение SPI CLK до 4 Mhz
помогло…
0
Микросхемы 40-й серии не предназначены для работы с напряжением на входе выше питания, идет слив в шину питания через защитные диоды на входе. Естественно, это влияет и на динамические характеристики. В 40-й серии есть несколько чисто буферных микрух, но там нужно подавать два напряжения питания — входного и выходного уровня. Кроме того, в моих проектах было несколько ведомых на шине, именно поэтому я использовал шинные формирователи, чтобы иметь возможность отключаться от шины по сигналу #CS (тоже полезная опция).
0
Он же для подтяжечных I2C, разве с пуш-пуллом двунаправленным работает?
1117-3.3 сегодня не лучший выбор, сейчас есть много LDO стабилизаторов с кпд получше
«КПД получше»? У линейного-то стабилизатора? Дропаут у них получше, да, но когда у тебя гарантированный дроп в 1.7В в этом смысла нет.
+1
AMS1117-3.3 в SOT-223 Aliexpress: 100 шт. за ~160р. — вот самое им тут место.
0
Не нравятся мне способы согласования, где на 5в вход подают 3.3в. Частенько SPI и не запускается на полной скорости, в зависимости от фазы луны и производителя микрухи. Такое решение применяется в ардуиновских «сд-ридерах» с али, что уже о чём-то говорит. Там и других косяков хватает — скажем, нет подтяжки на мисо и часть карточек из-за этого не инициализируется. Представить не могу чтобы что-то на ардуине не глючило…
Лучше уж поставить TXS0104E/TXS0108E. Чуть подороже, зато отлично работает. Позволяет корректно отключать питание слота, даже без иголок на CS при включении. Совместимо с мульти-слейвом по обеим сторонам. Подтяжки уже по сути встроены в микруху, что здорово экономит место…
+1
По поводу отсутствия pull-up'a на MISO один из свежих курьёзов
0
Посмотрел коротенько даташит на TXS0104E, как я понимаю TXB0104E не
подходят в данном случае, на них встроенных подтяжек?
0
TXB в принципе не очень дружат с подтяжками, т.к. входы — одновременно и выходы (через резючок килоом на 15). Разве что ставить подтяжки ~1к, чтобы перетягивали.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.