Eddy_Em написал(а):Не уверен: я CDC две недели прикручивал. Пока разобрался в чужом коде, пока поправил его под свои нужды, пока отладил корректную эмуляцию PL2303...
Если бы я начал возиться с TCP/IP, это заняло бы годы!..
Насчет SD-карты: если и можно что-то дельное извлечь из примеров низкоуровневой работы (по SPI или еще как), то с файловыми системами полный амбец. Ну не встречал я нигде ext2/3, оптимизированную под STM32 (чтобы драйвер ФС занимал от силы 4кБ, а то ведь нужно еще и полезный код разместить, а флеши обычно от 8 до 16кБ!).
А надо обязательно ext2/3 ? Fat32 не пойдет? Или вам надо файлы больше 4 гиг создавать.
Вроде я где то видел jFs. или как там она называется, что то типа JournalFS. Но то было лет так 10 назад (на одной из работ коллеги как раз ее прикручивали к проекту).
По поводу прикручивания чего либо к чему либо есть интересный подход, разделять софт по логическим уровням:
Низкий уровень (драйвера SPI или SDIO).
Уровень устройств (ну это по моей классфикации название, так то можно обозвать как угодно) - это файловые системы типа FatFS или, например NTFS, SeggerFS,
и прикладной уровень.
И стараться не смешивать все эти уровни между собой. Т.е. софт должен быть построен так (интерфейсы), что можно на одном уровене безболезненно заменить реализацию одного на другое. Например поменять FatFS на NTFS. Или SDIO на SPI. (на работе такое проделывал в 4х проектах, менял FatFS от Chan'а на SeggerFS, и SDIO на SPI и все это перекидывал туда-сюда между STM32F4xx и STM32F7xx).
Тогда дело пойдет намного быстрее.
Ну и потом CDC и все что с USB связанно - это все же немного сложнее чем обычный SPI, SDCard и FatFs вместе взятые. SDIO чутко помуторнее чем SPI, да.
FatFs от Chan'а вроде не такой уж и большой, на AVRки влазит, вроде как даже.
Отредактировано MasterAlexei (2019-02-13 23:05:23)