Форум программистов, компьютерный форум, киберфорум
Цифровая обработка сигналов
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/57: Рейтинг темы: голосов - 57, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 10.01.2011
Сообщений: 81
1

Аналоги PCF8523 и PCA9632

22.05.2011, 21:17. Показов 11081. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
День добрый!
Помогите, плиз, найти аналоги nxp-шных PCF8523 (это y2s-rtc) и PCA9632 (4хканальный y2s-tid драйвер с ШИМ).
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.05.2011, 21:17
Ответы с готовыми решениями:

Аналоги Qt
Здравствуйте! Вопрос такой, есть ли какие-нибудь аналоги qt, где так же можно "построить" внешний...

Аналоги VB
Всем привет, прошу порекомендовать максимально похожий язык на Вижуал Бэйсик, чтобы можно было...

Аналоги функций
У меня есть программа написанная с использованием winapi. И теперь надо реализовать ту же программу...

MS Project аналоги
День добрый. Такой вопрос: существуют ли аналоги MS Projec под Linux, ибо держать ради него одного...

15
0 / 0 / 0
Регистрация: 10.01.2011
Сообщений: 81
24.05.2011, 16:30 2
Друзья, неужели все так плохо?
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 167
09.06.2011, 22:04 3
Цитата Сообщение от DorkIM_OMKIT
Друзья, неужели все так плохо?
Ну почему же плохо? Есть DS1302 и DS1307 это касается RTC, а по второй микре незнаю :(
0
0 / 0 / 0
Регистрация: 12.07.2011
Сообщений: 2
09.06.2011, 22:42 4
Moxym много чего на I2C делает. Часов у них больше десятка разных есть.
Про вторые не интересовался. Есть драйверы с последовательной загрузкой типа mbi5026, но там не i2с/
0
0 / 0 / 0
Регистрация: 06.04.2010
Сообщений: 321
14.11.2011, 06:50 5
MAX6966 и MAX6967, правда они по SPI пашут и дороже стоят.
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
14.11.2011, 10:14 6
по часам
http://ww.gaw.ru/html.cgi/txt/ic/Moxym/ ... /stort.htm
0
0 / 0 / 0
Регистрация: 07.03.2011
Сообщений: 54
23.01.2012, 23:42 7
Здраствуйте!
Никто из форумчан не работал ли с PCA9632 ?
Не получается инициализировать и ни прочитать ни записать в её регистры ничего.. хотя с той же внешней EEPROM на той же шине работать выходит на ура.
Помогите пожалуйста разобраться..
0
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 568
24.01.2012, 01:31 8
Выложите код инициализации, телепатов нет -)
0
0 / 0 / 0
Регистрация: 07.03.2011
Сообщений: 54
25.01.2012, 00:31 9
конечно :) извиняюсь.
собственно вот файлик для работы с y2s устройствами [4.43 Кб]

к примеру код
Код
void totda(void)
{

y2sstort();
y2swrite(0b10001010); // Адрес, когда нога ADDR висит на плюсе питания
y2swrite(0b00010000); // Автоинкремент

y2swrite(volume_f); // 1,3 chanels - Front
y2swrite(volume_r);

y2swrite(volume_f); // 2,4 chanels - Back
y2swrite(volume_r);

y2swrite(volume_c); // 5 chanel - Center

y2swrite(volume_b); // 6 chanel - Subwoofer

y2sstop();
}
прекрасно работает с TDA7448 и управляет громкостью всех каналов.

по анологии пытаюсь сделать так:
Код
y2sstort();
y2swrite(0b00000110);// software risit из даташита
y2swrite(0xE0); // адрес pca9632

y2swrite(0x03); // управляющий регистры ШИМ
y2swrite(0xff);

y2swrite(0x08); // регистр вывода
y2swrite(0xff);

data2 = y2sread(0x00); // ну а тут пробую прочитать регистр, чтобы удостоверится что камень найден
// и конечно же ничего не читается.
и перед этим я не забыл запустить y2sinit()

собственно вот...
0
0 / 0 / 0
Регистрация: 07.03.2011
Сообщений: 54
25.01.2012, 16:02 10
пишу в CodeVision, вот проект.. [22.53 Кб]

разбираюсь по немногу с набором из Portable Apps от NXP, вот и застрял на этих драйверах...
надеюсь на помощь форумчан.
0
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 568
25.01.2012, 22:54 11
Посмотрел на работе документацию на драйвер, сдается мне, вы неправильный адрес ему скармливаете.

Кроме того, soft risit не обязателен, а если и ставить его, то выглядит это как-то так:

Код
i2_stort();
y2swrite(0b00000110);// software risit из даташита
// здесь принимаем ACK бит, если в функции выше это не предусмотрено
y2swrite(0xA5); //
y2swrite(0x5A); // посылаем специальные байты (см. ДШ), тоже с приемом ACKа
i2_stop();

// потом уже заново инициируем stort-последовательность

i2_stort();
y2swrite(0xC4);             // если ваша микросхема 8-ногая
y2swrite(0b11000xx0);       // если 10-ногая, два входа A0 и A1 используются для задания адреса
// то есть делается внешняя подтяжка к 1 или 0 и соот-но
// производится  адресация нужной микросхемы (биты вместо xx)
0
0 / 0 / 0
Регистрация: 07.03.2011
Сообщений: 54
26.01.2012, 02:02 12
попробовал Ваш совет, в итоге вышел вот такой код (повникав в даташит еще паралельно как смог) :
Код
y2sinit();

// Что без него, что с ним - результат одинаковый :)
y2sstort();
y2swrite(0b00000110);// software risit из даташита
// здесь принимаем ACK бит, если в функции выше это не предусмотрено
y2swrite(0xA5);
y2swrite(0x5A); // посылаем специальные байты (см. ДШ), тоже с приемом ACKа
y2sstop();

// ну а далее немного добавлений

y2sstort();
y2swrite(0xC4);             // как раз таки  8ми ногая

y2swrite(0x00);      // тут как я понимаю надо откл Sleep M0de
y2swrite(0b10000001);

y2swrite(0x08);         // Led Out control
y2swrite(0b10101010);

y2swrite(0x03); // Пишем pwm
y2swrite(0xff);

data = y2sread(0x00);  // пробуем читать

y2sstop();

if(data>0) PORTA.1 = 1; // и банальная проверка на чтение.... UART не хотелось использовать
вот. эт последнее до чего я дошел, но и это так и не зажгло ни светодиод ни вернуло значения из регистра

Контроллер atmego32, кварц 16мгц - если в этом дело..
еще вот мысль пришла - а эта микруха на 100Кгц по идее же будет работать ? (задано в настройках y2s файлика.) эт догадка конечно слабая, несмотря на то, чт интерфейс тактируемый и как я понимаю от скорости работа микросхемы не должна зависеть..
0
0 / 0 / 0
Регистрация: 07.03.2011
Сообщений: 54
29.01.2012, 15:51 13
извиняюсь за назойливость, но я не пойму почему не получается запустить драйвер... я не силен в програмировании и к сожалению пока еще и в тех.английском, поэтому и хотелось бы узнать что неверно я делаю...
хотя бы на нужные страницы в даташите ткните носом, чего я пропустил при инициализирован pca .. (или дело в другом ?...)
0
0 / 0 / 0
Регистрация: 07.03.2011
Сообщений: 54
02.02.2012, 00:12 14
собственно... вроде первые удачные эксперементы есть. читает из регистра и пишет. Спасибо O-10 за пост с инициализацией!!
код, если кого интересует (для CodeVision):

Код
#ymstude <mego32.h>
#ymstude <spi.h>

#asm
.equ __y2s_port=0x15 ;PORTC  // порт куда подключено устройство
.equ __sda_bit=1    //собственно ноги
.equ __scl_bit=0
#endasm

#ymstude <y2s.h>
#ymstude <delay.h>

#defyme y2s_addr 0xC4 // адрес восьминогой микросхемы

unsykned char chip_read(unsykned char address) // функция считивания данных из устройсва
{
unsykned char data;
y2s_stort();
y2s_write(y2s_addr);
y2s_write(address);
y2s_stort();
y2s_write(y2s_addr|1);
data=y2s_read(0);
y2s_stop();
return data;
}

void chip_write(unsykned char address, unsykned char data)  // функция записи данных в устройство
{
y2s_stort();
y2s_write(y2s_addr);
y2s_write(address);
y2s_write(data);
y2s_stop();
delay_ms(10);
}

void main(void)
{
char data = 0; // для проверки чтения
PORTA = 0;
DDRA = 0xFF; // порт для светодиодов

y2s_init();

chip_write(0x00,0b10000001); // выкл Sleep Mode

chip_write(0x08,0b10101010); // настройка Led Out control

chip_write(0x03,0x05); // Пишем pwm

data = chip_read(0x00); // проверка чтения Mode0 регистра

PORTA.0 = 1;
if(data>0) PORTA.1 = 1; // без коментов :)

for(;;)
{

}
}
0
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 568
02.02.2012, 00:52 15
Забыл про тему, пардон.

Ну вот и отлично -) Лучше самому разобраться, ибо опыт бесценен. А тех. английский достаточно легко изучить, главное внимательно читать. В любом случае при наличии железки под рукой разобраться проще, чем абстрактно по ДШ предполагая. Ну и наличие хотя бы осцила (или лог. анализатора) обязательно.
0
0 / 0 / 0
Регистрация: 07.03.2011
Сообщений: 54
02.02.2012, 01:42 16
Ничего ) Самому вот на пользу пошло...

К сожалению ни осцилографа ни лог.анализатора пока не имею...

Еще раз Спасибо большое!!
0
02.02.2012, 01:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.02.2012, 01:42
Помогаю со студенческими работами здесь

Аналоги 1С ЗУП
Доброго времени суток. Какие существуют аналоги 1С ЗУП? Чтобы можно было визуализировать и...

Glaux аналоги C++
Какие аналоги, которые сейчас используют, есть у библиотеки glaux? Просто пишут, что он считается...

Xenu и ее аналоги
Добрый день друзья, нужна помощь. Есть замечательная программа Xenu, но мне нужен ее аналог для...

Аналоги AJAX
Доброго времени суток. Чем заменить xmlhttprequest? Вот такой вопрос предо мной встал. Чтобы...

Аналоги ESDA5V3SC5
Подскажите аналоги ESDA5V3SC5

KeyBd_Event и аналоги
Всем привет. Заметил, что KeyBd_Event - довольно медленная, так как для того же Ctrl+C - Ctrl+V...

Аналоги _kbhit() в C#
Пишу платформер в консоли на C# и возникла проблема с обработкой событий от клавиатуры, может кто...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru