Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.75/169: Рейтинг темы: голосов - 169, средняя оценка - 4.75
Komoptj2010
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
1

Быстродействие AT24C512

24.02.2012, 21:31. Просмотров 30465. Ответов 48
Метки нет (Все метки)

Да, хорошая микросхема AT24C512, вместительная и нужно всего два вывода контроллера, блеск. Но вот в чём может быть проблема она же всего лишь EEPROM и предназначена (в основном) для хранения данных об настройках или чегото подобного, и поэтому медленная. Медленная я имею в виду то что для сохранения данных необходимо подождать минимум 3 микросекунды, долго. Я собираю диктофон на контроллере и собираюсь хранить данные уровня звука на AT24C512. Всё было бы нормально АЦП меряет уровень, инвертирует и сново меряет и сохраняет на память. Но не тут то было, для минимально нормального звучания надо как минимум 8000 Гц дискретизации, а при сохранении на AT24C512 не хватает времени. Может ктото знает как можно ускорять память или чтото в роде этого, буду признателен.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2012, 21:31
Ответы с готовыми решениями:

ATTiny2313 и микросхема памяти at24c512
Привет знатокам, может кто поможет! Необходимо наладить 2wire интерфейс через...

замена at24c512
Если правильно понял, то память at24c512 сняли с производства. А чем заменили?

Быстродействие
Имеется сервер Lotus Domino 7.0.1 Имеется клиентская часть Lotus Notes 7.0.2...

Быстродействие БД
Добрый день, коллеги. Хотелось бы посоветоваться. Не очень понятно написано в...

Быстродействие
Кто нибудь знает если писать приложение под web и писать к нему агенты что...

48
swk
0 / 0 / 0
Регистрация: 22.10.2015
14.03.2012, 03:32 41
Цитата Сообщение от Komoptj2010
Как мастер у меня всё ОК, а вот как помошник есть маленькие соображения но тоже не очень хорошие. Может ктото сталкивался с такой задачей?
Я года два - три назад собирался в своем роботе межконтроллерную связь сделать по I2C.
Когда прикинул - получилось со слэвом столько мороки, что не стал время терять, перешел на SPI. А потом - и вовсе на однопроводку через USORT.
На I2C со слэвом много мороки. Нужно практически отслеживать все события на шине, хоть он как бы и поддержан аппаратно. Это более - менее просто в монопольном режиме, когда ничем другим не занят. Для мультизадачности же, когда все крутится одновременно и исполняется кусочками, чтобы одна задача не блокировала надолго другие, не подходит.
В моем случае удобнее SPI или USORT, где кинул байт в буфер или считал по прерыванию принятый, и снова свободен, до следующего.
А I2C использую теперь только там, где слэв чисто железный. Для работы с DS1307, 24C512...
0
mzw
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 1,835
14.03.2012, 13:03 42
при дискретизации 8000 Гц должно быть всё клас
С помощью любого аудиоредактора поэкспериментируй на компьютере с разрядностью и частотой дискретизации - тогда поймешь, что тебе нужно.
8000 Гц - это телефония с диапазоном частот до 3,4 КГц. Так, что должно быть нормально. А вот разрядности 8 бит может быть мало.
0
Komoptj2010
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
14.03.2012, 19:35 43
[QUOTE="mzw"][QUOTE="Цитата:[/QUOTE]
при дискретизации 8000 Гц должно быть всё клас
С помощью любого аудиоредактора поэкспериментируй на компьютере с разрядностью и частотой дискретизации - тогда поймешь, что тебе нужно.
8000 Гц - это телефония с диапазоном частот до 3,4 КГц. Так, что должно быть нормально. А вот разрядности 8 бит может быть мало.

Нет вы ошибаетесь, телефонная линия связи применяет именно 8КГц и 8-ми битный поток. Я сейчас не вспомню название и автора книги где это сказано, но там говорится что частота дискретизации должна быть минимум в два раза больше собственной несущей частоты, а несущая частота (частота голоса) приблизительно от 40 до 3000Гц. Вы обратите внимание что даже в аудиоредакторах при написании нового проекта стандарты записи начинаются с частоты 8КГц.
0
Komoptj2010
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
14.03.2012, 19:42 44
Цитата Сообщение от SWK
Цитата Сообщение от Komoptj2010
Как мастер у меня всё ОК, а вот как помошник есть маленькие соображения но тоже не очень хорошие. Может ктото сталкивался с такой задачей?
Я года два - три назад собирался в своем роботе межконтроллерную связь сделать по I2C.
Когда прикинул - получилось со слэвом столько мороки, что не стал время терять, перешел на SPI. А потом - и вовсе на однопроводку через USORT.
На I2C со слэвом много мороки. Нужно практически отслеживать все события на шине, хоть он как бы и поддержан аппаратно. Это более - менее просто в монопольном режиме, когда ничем другим не занят. Для мультизадачности же, когда все крутится одновременно и исполняется кусочками, чтобы одна задача не блокировала надолго другие, не подходит.
В моем случае удобнее SPI или USORT, где кинул байт в буфер или считал по прерыванию принятый, и снова свободен, до следующего.
А I2C использую теперь только там, где слэв чисто железный. Для работы с DS1307, 24C512...

Да вот понимаете, это не игружка и применять что я хочу нельзя. Это контрольная работа, мой препод по электронике на прошлой КР давал задание написать прогу для записи информации по порту I2C в память, а теперь продолжнеие этого же проекта. Записать звук в эту память по порту I2C. Но ведь там не сказано на что писать надо только на EEPROM, там же не сказано что нельзя писать на FLASH и не сказано что нельзя применять промежуточный контроллер или чего то подобного.
0
Komoptj2010
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
15.03.2012, 01:36 45
Вот послушайте мои соображения по поводу контроллера помошника для I2C.Подключаем вывод SDA к выводу прерываний по внешнему событию, а вывод SCL к любому другому порту.
В инициализации прерывания настраиваем генерацию прерывания по срезу на выводе SDA.
В момент времени когда на порт приходит команда Start тот срез который бул получен сгенерировал прерывание и запускается подпрограмма обработки прерываний, так?
В подпрограмме обработки прерываний отключаем это пррывание и дожидаемся когда на выводе SCL становится лог 0, это конец команды Start.
В принципи далее дело техники, нужная подпрограмма запущена, команда Start передана и осуществляем приём байта по томуже принципу что и у мастера.
Первый байт как известно DEVICE ADDRESS который сравниваем с константой (например 1111000 и R/W)
Если данный байт совпадает с константой то принимаем команду ACK и далее работаем.
Ну как, одобряете?
0
Johmmy0007
1 / 1 / 0
Регистрация: 30.08.2011
Сообщений: 9,944
15.03.2012, 10:29 46
Вы же будете только с памятью работать, т.е. МК будет всегда мастером. Зачем вам контроль Start? состояния Start, Stop, Ristort будет формировать сам контроллер. Это резко всё упрощает

найдите
Б.Ю.Семенов "Шина I2C в радиотехнических конструкциях"
0
Komoptj2010
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
15.03.2012, 11:53 47
А хотя да, но зачикай, как я определю начало момента передачи байта?
0
Johmmy0007
1 / 1 / 0
Регистрация: 30.08.2011
Сообщений: 9,944
15.03.2012, 12:03 48
ну импульсы-то по clk выдаёт контроллер - кликнули - выждали время (определяется микросхемой памяти -см . её даташит). считываем бит. кликаем дальше ит.д.
0
Komoptj2010
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
17.03.2012, 22:21 49
Ха! Я тонял в чём проблема. Это АЦП давало о себе знать. Я поставил LC - фильтр и шумы упали. Да на фоне чтото посторонее есть но это фигня, пожалуй завтра понесу в институт здавать свой зачёт.
0
17.03.2012, 22:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.03.2012, 22:21

Быстродействие
на рисунке баллон с газом

Быстродействие и БД
Здравствуйте! Пишу программу - библиотеку для работы с электронными книгами (в...

Быстродействие
Здравствуйте у меня случилась вот такая проблема. Играл я в одну игру...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
49
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru