Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: atmega16+sdcard
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему
Страницы: 1, 2
wwweider
я создал тему в двух форумах в метрологии потаму что там часть прибора к метрологии относится а в авр т.к. делать буду на авр.

приветсвеются любые советы! я начинающий.

данные ацифровываются с максимальной частотой 1МГц, частоту можно менять с помощью кнопочек и лсд дисплея, данные записываются или на усб или на SD карту но потом при желании их нужно слить в комп по усб, и ещё желательно что бы при понижении частоты дискретизации сигнала который записывается на флэшку, частота ацп не уменьшалась, тоесть ацп работает например на 1МГц, а данные можно записывать 1кГц путём усреднения 10 измерений.
MrYuran
Цитата(wwweider @ Apr 3 2008, 09:31) *
приветсвеются любые советы! я начинающий.

тогда надо ещё тему в разделе для начинающих
GDI
О юсб флешке можете забыть, максимум SD-карта. Других советов дать просто невозможно или вы считаете что названия темы достаточно?
wwweider
можно и SD только потом передавать в комп данные с неё по усб интерфейсу, нехочит заказчик картридером пользоваться..

я тут решил делать на atmega16 16pu
Stanislav_S
Цитата(wwweider @ Apr 3 2008, 12:33) *
можно и SD только потом передавать в комп данные с неё по усб интерфейсу, нехочит заказчик картридером пользоваться..

Тогда вам куда лучше подходит ARM со встроенным USB. по цене это сильно отличаться не будет. Что бы говорить об АЦП надо определиться с необходимой точностью и типом измеряемого сигнала.
wwweider
1Мгерц*16бит*диапазон +минус 5вольт, а авр чем хуже? можно же приделать усб микросхемку, ато я с арм незнаком.
rezident
Поток данных 2МБайт/с с помощью AVR обработать немыслимо. А тем более параллельно обслуживать USB Host контроллер и писать на USB FlashDrive, да вдобавок если у вас нет какого-либо буфера размером под МегаБайт. Вы либо "осетра урежьте", либо вообще перестаньте упоминать про AVR в контексте такой задачи.
Stanislav_S
Цитата(wwweider @ Apr 3 2008, 13:06) *
1Мгерц*16бит*диапазон +минус 5вольт, а авр чем хуже? можно же приделать усб микросхемку, ато я с арм незнаком.

Гм... под такие требования АВР скромно курит в углу, даже если выкинуть УСБ и все остальное, не считая того что аналоговая часть далеко не простая.
wwweider
атмега 16мегагерц, УСБ флэшка кингстоне 4 гига, средняя скорость записи:3 МБайт/сек, данные из ацп приходят с частотой 1 мегагерц.

обьясните пожалуйсто почему неспеет?
желательно по мегагерцам.
1) такт считал данные из ацп.
2) такт ....
....
16) такт
aaarrr
Цитата(wwweider @ Apr 3 2008, 12:46) *
обьясните пожалуйсто почему неспеет?

Хотя бы потому, что на обработку 1 семпла АЦП у Вас будет только 16 тактов процессора. Этого хватит разве что на то, чтобы уложить данные в RAM буфер. Забудьте про АВР.
sysel
USB-флешка - можно подключение к AVR через хост-контроллер от FTDI организовать.
только вот насчет скорости работы ничего сказать не могу.
GDI
Чтобы потом прочитать данные с SD-карты на комньютере, нужно класть их туда не просто так, а реализовывать поддержку FAT на AVR, а это намного больше чем 16 циклов.
rezident
Цитата(sysel @ Apr 3 2008, 15:09) *
USB-флешка - можно подключение к AVR через хост-контроллер от FTDI организовать.
только вот насчет скорости работы ничего сказать не могу.
Если вы VNC1L имеете в виду, то для нее совсем недавно FTDI удалось достичь скорости записи порядка 130 килоБайт/с. МегаБайтными скоростями записи там даже и не пахнет.
MrYuran
Цитата(aaarrr @ Apr 3 2008, 11:57) *
Хотя бы потому, что на обработку 1 семпла АЦП у Вас будет только 16 тактов процессора. Этого хватит разве что на то, чтобы уложить данные в RAM буфер. Забудьте про АВР.

Ну почему же сразу забыть... Есть же AVR32
aaarrr
Цитата(MrYuran @ Apr 3 2008, 13:24) *
Ну почему же сразу забыть... Есть же AVR32

От AVR до AVR32 (особенно до того, к которому можно прицепить USB флешку) как пешком до Китая.
Stanislav_S
Цитата(MrYuran @ Apr 3 2008, 14:24) *
Ну почему же сразу забыть... Есть же AVR32

Где?? У нас вот только первые сэмплы привезли, так что ориентир АРМ
wwweider
ладно, какая получится такая получится скорость.
как подключить флешку SD?
wwweider
требуется с как можно большей скоростью заливать данные в файл на флешке данные.
ктонибудь знает такую подпрограмку на си что бы я лёгким движением руки писал данные в файл на флешке?
aaarrr
Легким движением руки и с большой скоростью не получется - в пределе 300кБайт/с без FAT. FAT на ATmega16 организовать затруднительно - памяти в достаточном количестве нет.
Igor26
Здесь всё достаточно внятно разжевано:
http://elm-chan.org/docs/mmc/mmc_e.html

А еще недавно здесь обсуждалось:
http://electronix.ru/forum/lofiversion/index.php/t45629.html
bloodden
Цитата(Igor26 @ Apr 3 2008, 15:01) *
Здесь всё достаточно внятно разжевано
http://elm-chan.org/docs/mmc/mmc_e.html

А тут файловая система - http://elm-chan.org/fsw/ff/00index_e.html
2aaarrr: 1кила хватает за глаза
wwweider
тогда легким движением руки на си и без фат16)
неужели нет такой подпрограмки с разжеваным описанием и схемой поджключения(
aaarrr
Цитата(bloodden @ Apr 3 2008, 16:06) *
2aaarrr: 1кила хватает за глаза

Ну, если скорость записи ~30кБайт/с устраивает, то возможно.
wwweider
нет это будет вариант б)
предпочтительнее 300к как писалось выше
WHALE
А 16бит вы как получать на АВР собираетесь?
sysel
Есть вариант реализовывать поддержку файловой системы не полностью:
ограничиться лишь корневым каталогом, одновременным открытием лишь одного файла.
Тогда памяти жрать не много будет.
Я таким образом читал файл из корневого каталога SD-карты со скоростью 110 КБайт/сек на ATmega128L на частоте 8 МГц, причем карта подключена была не через SPI, а к выводам общего назначения (SPI был занят).
bloodden
У меня тестовая платка, так на ней ATmega128 на 18,432МГц и ММС на SPI так скорость чтения (подчёркиваю чтения) с использованием вышеозначенного драйвера файловой системы из корня, 1 файл, последовательно записанный (т.е. без фрагментации) составляла около 330 кБайт/сек. Камень при этом ничего больше не делал. Чисто читал. Это тест такой был. Вот.
ЗЫ: в кодевизионе это было.
domowoj
Есть анекдот про Василь Иваныча , золотую рыбку и про то как
"надо правильно ставить задачу".
Что собрались делать wwweider?
Мож вам и не нужна такая скорость и разрядность?
wwweider
sysel , можно по подробнее?) как это реализовать
у меня 16 разрядные данные. будут считываться с ацп и записываться на флэшку мне хваит атмеги16?
wwweider
скорость ладно пусть 100к/c,
меня 16 разрядные данные. будут считываться с ацп и записываться на флэшку мне хваит атмеги16?
в соседней теме люди говорят что со скоростью 100к получалось у них писать на флэшку в корневой каталог.
zltigo
Цитата(wwweider @ Apr 4 2008, 07:57) *
..мне хваит атмеги16?

Ну что Вы носитесь с этой атмегой, как с пиcанной торбой? Судя по по потоянным стенаниям об отсутствии волшебной "подпрограммы" с помощью которой "легким движением руки"..., Вам все равно на чем делать (читай - для чего искать "подпрограмму"). По попугаям выжимаемым их атмеги, когда она БОЛЬШЕ НИЧЕГО НЕ ДЕЛАЕТ Вам давали
http://elm-chan.org/fsw/ff/img/rwtest.png
Чего-же боле?
GDI
...А ведь там еще и LCD с кнопочками предполагался поначалу...
sysel
1) инициализируете карту
2) инициализируете файловую систему
3) открываете файл для записи
4) делаете 2 буфера.
5) запускаете АЦП
Первый Вы заполняете данными по прерываниям АЦП. Когда буфер заполниться, устанавливаете флажок, что буфер заполнен, и начинаете заполнять второй буфер.
Тем временем основная программа, дожавшись флажка о заполнении первого буфера записывает его в карту памяти. По окончании записи снимает флажок о заполненности 1го буфера и ждёт заполненности второго...

А то, что у Вас 16ти разрядные данные - это Вы будете учитывать при заполнении буферов по прерываниям АЦП.
wwweider
а увас удобной подпрограмки нету для этого?)
wwweider
где почить и чего?
Dog Pawlowa
Цитата(wwweider @ Apr 4 2008, 17:16) *
где почить и чего?

чегонить типа "Проектирование микропроцессорных устройств"
Любого автора, но вдумчиво smile.gif
Удобной подпрограммки нету.
wwweider
у когонибудь то есть всё равно.
sysel
В приложенном файле работа с FAT16 на SD-карте.
Реализована только операция чтения файла из корневого каталога.
скорость где-то 110 КБайт/сек на ATmega128L на частоте 8МГц
wwweider
нужа запись)
sysel
Цитата(wwweider @ Apr 7 2008, 10:58) *
нужа запись)

Вам нужно будет дописать процедуру записи сектора на карточку, процедуру поиска в очередного свободного сектора по таблице, процедуру добавления записи в коревой каталог.

Адрес корневого каталога и таблицы секторов вычисляются в отосланом мной примере.
wwweider
для меня это слишком сложно, я ищу готовую подпрограмму которая сама всё пишет а я только данные ей даю
Qwertty
Цитата(wwweider @ Apr 8 2008, 08:10) *
для меня это слишком сложно, я ищу готовую подпрограмму которая сама всё пишет а я только данные ей даю

Именно такие "подпрограммы" и называются файловыми системами. Открыл файл и можно писать в него те самые данные. Потеря скорости незначительна.
wwweider
я нашел такую програмку ей нужно только 512 байт данных и номер сектора )
bloodden
Цитата(wwweider @ Apr 11 2008, 09:18) *
я нашел такую програмку ей нужно только 512 байт данных и номер сектора )

Вы с запросами по-аккуратнее, а то, нечаянно, за Вас и программку напишут cranky.gif
Dim777
Добрый день!
У меня похожая задача: с помощью ATmega128 записать данные на SD в файл, и чтобы на компьютере его можно было прочитать.
Нашел про FAT ( http://elm-chan.org/fsw/ff/00index_e.html , примеры там) и схему ( http://www.captain.at/electronic-atmega-mmc.php ), но я начинающий, пока не понял, как это реализовать.
Подскажите пожалуйста, где можно найти "готовую подпрограмму которая сама всё пишет а я только данные ей даю"?
Спасибо.
zltigo
Цитата(Dim777 @ Jun 8 2008, 10:38) *
Подскажите пожалуйста, где можно найти "готовую подпрограмму которая сама всё пишет а я только данные ей даю"?

Если Вы еще не догадались, после прочтения этого топика, где можно найти такую "подпрограмму", но говорю открытым тектом - такие подпрограммы надо искать в http://www.karaganda.kz/catalog.php?dir=krgsites и окресностях.
Dim777
Да, непонятно. wwweider обозначил только, что нашел, а где неизвестно..
sKWO
Цитата(Dim777 @ Jun 8 2008, 13:32) *
Да, непонятно. wwweider обозначил только, что нашел, а где неизвестно..

Да и я ничего не понял smile.gif и про Карагандутоже smile.gif smile.gif smile.gif smile.gif
Прочитайте топик сначала , пройдите по ссылкам, возьмите словарь и читайте-переводите и будет Вам 1111493779.gif
Kuzmi4
2 zltigo
+1
biggrin.gif
wwweider
может я и не шарю пока в чём то)

но то что должна существовать подпрограмка, ненаю может в виде билиотеки или ещё чего. которой я задаю команды создать файл например, записать данные в него, и закрыть файл. и ещё несколько команд возвращающих настройки флешки и ошибки возвращающие.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.