Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
28.07.2008, 07:17
|
|
Прописка
Регистрация: 16.01.2007
Адрес: Astana KZ
Сообщений: 243
Сказал спасибо: 48
Сказали Спасибо 38 раз(а) в 32 сообщении(ях)
|
Преобразователь протоколов
Кто подскажет, надо сделать преобразователь протоколов для управления поворотной камерой SANYO (протокол SSP) от пульта PANASONIC (свой PANASовсккий протокол). Соединение по 485 интерфейсу по преобразователю 485-232 - преобразователь протоколов - 232-485. Хочу использовать контроллер с двумя USARTами. Желательно PIC, но такие редкость. Или AVR, что посоветуете? Может кто сталкивался с такой задачей, какие могут быть грабли?
|
|
|
|
28.07.2008, 13:53
|
|
Прописка
Регистрация: 16.01.2007
Адрес: Astana KZ
Сообщений: 243
Сказал спасибо: 48
Сказали Спасибо 38 раз(а) в 32 сообщении(ях)
|
Я дал не полную информацию.
Коды сигналов для управления камерой я прочитал с пом. терминалки. Т.е. поставил родной пульт и считал передаваемый код. У пульта Panasonic другие коды, которые я скоро считаю.
Поделитесь опытом, может есть пример устройства с двумя усартами, один усарт подключается к пульту, второй к камере. Пульт передаёт код управления камерой, контроллер код читает и заменяет его на родной код камеры, передача двухсторонняя, т.к.пульт должен получать ответ от камеры.
Может использовать два контроллера, только как их соединять между собой?
|
|
|
|
28.07.2008, 15:12
|
|
Гражданин KAZUS.RU
Регистрация: 30.04.2006
Сообщений: 984
Сказал спасибо: 5
Сказали Спасибо 18 раз(а) в 14 сообщении(ях)
|
Сообщение от russo_turisto
|
Поделитесь опытом, может есть пример устройства с двумя усартами, один усарт подключается к пульту, второй к камере.
|
Примера как такого нет.
Можно взять например атмегу 128 или 162.
И работать с двумя уартами.
|
|
|
|
28.07.2008, 16:14
|
|
Прописка
Регистрация: 16.01.2007
Адрес: Astana KZ
Сообщений: 243
Сказал спасибо: 48
Сказали Спасибо 38 раз(а) в 32 сообщении(ях)
|
Про пики думал использовать два 16f876 и соединить их между собой по SPI. Как думаете, не сложно реализовать?
А по atmega162 примера у меня нет, с авр-ками не работал, может есть пример использования мега162 с задействаными двумя юсартами?
|
|
|
|
28.07.2008, 17:41
|
|
Гражданин KAZUS.RU
Регистрация: 17.07.2006
Адрес: PV.DP.UA
Сообщений: 620
Сказал спасибо: 3
Сказали Спасибо 60 раз(а) в 48 сообщении(ях)
|
Бери самый дешевый ПИК 24й серии - по два юарта, SPI, I2C, плюс много других фич. (багов правда тоже немало ![Обижен](images/smilies/icon_beee.gif) )
__________________
Если ты читаешь это - значит тебе нечем заняться...
|
|
|
|
28.07.2008, 17:46
|
|
Прописка
Регистрация: 22.08.2006
Сообщений: 168
Сказал спасибо: 8
Сказали Спасибо 16 раз(а) в 11 сообщении(ях)
|
когда-то думал над аналогичным вопросом. Показалось, что хорошей реализацией может стать ПИК с 2-мя уартами- аппаратным и софтовым. Получать команды по аппаратному - передавать по софтовому, во временное окно получать ответ от камеры по софтовому, передавать ответ по аппартному.
|
|
|
|
29.07.2008, 10:56
|
|
Временная регистрация
Регистрация: 05.06.2005
Сообщений: 84
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
|
Сообщение от an-sver
|
когда-то думал над аналогичным вопросом. Показалось, что хорошей реализацией может стать ПИК с 2-мя уартами- аппаратным и софтовым. Получать команды по аппаратному - передавать по софтовому, во временное окно получать ответ от камеры по софтовому, передавать ответ по аппартному.
|
Абсолютно согласен, если девайс занимается лишь протоколами- скорость ему не нужна, можно вообще применить чип лишь с програмными юартами.
Вот только в рамках компайлера С-18 у меня это не получилось- слишком мудреная там компиляция библиотек...
Зато встречал такую реализацию на пик байсике, программа в три строчки! и процессор любой пойдет, толко надо компилятор где то слямзить
|
|
|
|
29.07.2008, 12:14
|
|
Прописка
Регистрация: 16.01.2007
Адрес: Astana KZ
Сообщений: 243
Сказал спасибо: 48
Сказали Спасибо 38 раз(а) в 32 сообщении(ях)
|
Да с програмной реализацией наверно будет лучше, 24-е пики у нас не найдешь.
Гдето был пример реализации усарта на 16F84 пике на асме. Думаю задействовать 16F628 или лучше 16F876?
Про бэйсик это тоже хорошая идея, ссылка на компилятор есть на этойже странице форума тема PicBasicPro. вот ссылка http://rapidshare.com/files/130456187/MCS2300.rar.html
А какие три строчки на беисике упоминались?
|
|
|
|
29.07.2008, 12:55
|
|
Прописка
Регистрация: 22.08.2006
Сообщений: 168
Сказал спасибо: 8
Сказали Спасибо 16 раз(а) в 11 сообщении(ях)
|
SerIn - принять по софтовому,
SerOut - передать по софтовому
HserIn - принять по аппаратному (но лучше асмом через прерывание)
HserOut - передать по аппаратному.
Кажется в протон-бейсик есть заложенный для софтового таймаут по неответу...
В остальных компиляторах придется использовать таймер с прерыванием для выхода из зацикливания при софтовом приеме.
|
|
|
|
29.07.2008, 13:31
|
|
Временная регистрация
Регистрация: 05.06.2005
Сообщений: 84
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
|
Сообщение от russo_turisto
|
Да с програмной реализацией наверно будет лучше, 24-е пики у нас не найдешь.
Гдето был пример реализации усарта на 16F84 пике на асме. Думаю задействовать 16F628 или лучше 16F876?
Про бэйсик это тоже хорошая идея, ссылка на компилятор есть на этойже странице форума тема PicBasicPro. вот ссылка http://rapidshare.com/files/130456187/MCS2300.rar.html
А какие три строчки на беисике упоминались?
|
9.1.2 Software UART
If you have used up hardware USART and need another communication channel (for example if you wish to communicate with two PCs) or you do not have an USART device at all (on smaller PICs), you can use the software UART. As its name implies, it uses a set of software routines to simulate the real, hardware UART device. Working with software UART is almost the same as it is with USART, the only difference being the initialization. You can see it from the following example:
program soft_uart_test
dim received_byte as byte
dim rec_ok as byte
main:
Soft_UART_Init(PORTB, 1, 2, 2400) ' initialize software UART
' you have to tell PIC which pins
' to use as Rx and Tx
while true
do
received_byte = Soft_UART_Read(Rec_ok) ' read received data
loop until rec_ok
Soft_UART_write(received_byte) ' send data via UART
wend
end.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 22:46.
|
|