Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: PSoC
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры
fakel
Здравсвуйте!!!
Недавно начал осваивать зверька PSoC от Cypress
в общем все устраивает и особых трудностей не испытывал.
Но возникла необходимость связать кристалл по I2C с другими устройствами.
В сети имеется master (стороний микроконтроллер у которого с I2С все давно отлажено и работает)
и slave (в данной случае это PSoC)
в качестве отладочной платы использую PSoCEval1
возникла такая проблема: не могу записать дальше 1-го (т.е. 0-го) байта в буфер для записи на PSoC
т.е. пишу в 1-ый, пишется.... а дальше нет sad.gif
кто-нибудь встречался с подобными проблемами?
заранее благодарен за помощь.
yes
в PSOC есть несколько вариантов реализации I2C SLAVE (USER MODULES)
использовал EzI2C - работает.

возможно в программе запрет прерываний или какая-то еще проблема, если используете эмулятор и остановили прием после первого байта, то есс-но возникнут проблемы с приемом следующих
fakel
Спасибо! Буду разбераться дальше...
fakel
Появились новые проблемы в работе с PSoC sad.gif
В данном случае с чтением. Конфигурация таже, что и в экспериментах с записью.
(Кстате запись проходит успешно!)
При чтении, мастеру приходит сплошной мусор, а регистр данных I2C PSoC тоже содержит не то, что хотелось бы...
К PSoC подключен LCD, на котором просматриваю буфер чтения/записи, регистры и номер по I2C
Вроде бы все делаю правильно, т.е. вначале устанавливаю указатель на ячейку в slave master'ом.
<slave_adr(w)><offset>
далее пытаюсь читать...
<slave_adr®><data[offset+0]><data[offset+1]>...<data[offset+n]>
соответственно длинна буфера = n
а результат нулевой
Чего-то никак не могу понять, где ошибка
заранее благодарен за советы!
smile.gif
fakel
Добрый день!
Ура! I2C заработала! (просто была ошибка в мастере, поменял его и все встало на свои места))))
В проекте использую 14-ти разрядный АЦП, при этом предварительно сигнал проходит через усилитель с коэффициентом усиления 1.
Возник вопрос: можно ли как-то повысить точность преобразования АЦП. Просто абсолютная прогрешность в 0,2-0,3 В, для такой разрядности, мне кажется слишком большая.

С наилучшими пожеланиями, Марат.
yes
Цитата(fakel @ Jul 24 2008, 14:52) *
Возник вопрос: можно ли как-то повысить точность преобразования АЦП. Просто абсолютная прогрешность в 0,2-0,3 В, для такой разрядности, мне кажется слишком большая.


ОУ у PSOC достаточно плохие, поэтому особенно крутых характеристик получить не получится

если нужно усилить слабый сигнал, то можно порекомендовать "инструментальный усилитель UM"

но при усилении слабого сигнала, скорее всего, возникнет проблема со смещением 0 (биас, собственно земля и т.п.)
для решения этого можно применить обратную связь через внешний фильтр - есть апп. нота.

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