| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| UART през мултиплексор http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=2376 |
Страница 1 от 1 |
| Автор: | setoy [ Чет Май 18, 2006 11:28 am ] |
| Заглавие: | UART през мултиплексор |
Налага ми се да преработя малко една програма която писах преди известно време. Трябва да се добави втори УАРТ, а няма откъде |
|
| Автор: | zax [ Чет Май 18, 2006 11:37 am ] |
| Заглавие: | |
нямаш проблеми пуска се без проблем аз съм правил такава 'екстра" само че ползвах 4019В използва се като мултиплексор. има недостатъка да се избира посоката с 2 пина. но не вярвам да ти е проблем |
|
| Автор: | bkulev [ Пет Май 26, 2006 2:41 pm ] |
| Заглавие: | |
Нямаш грижа. Правил съм 8 потров мултиплексор с два чипа 4051. Пробвал съм го в бойни условия до 115200 бода. Гледай само да не забравиш да подпреш Тx линиите към +5V. И нали се сещаш, че в този случай можеш да слухтиш само по едната (избраната в момента) линия, т.е. решението става малко Master-Slave. А и като превключваш интерфейса, по добре спри прекъсването на UARTA и после пак... |
|
| Автор: | Nikola Kirov [ Пет Май 26, 2006 2:50 pm ] |
| Заглавие: | |
На 750000 съм пробвал с CMOS аналогови ключове и чат пат се дънеше на приематено на първия бит на пакетите свалих на 250000 и нямаше такива проблеми. Не мога да се сетя в момента конкретно с какъв чип го бях правил,просто първото дето имах под ръка беше. Това за изключването на прекъсването се прави зашото при превключване се приема един фалшиф байт обикновенно. Ако протокола ти е резидентен към такива грешки не е необходимо да се забранява прекъсването. |
|
| Автор: | Syrius-B [ Съб Май 27, 2006 12:48 am ] |
| Заглавие: | |
Но ако ще трябва да реагираш на повикване от вън, осигури си реакция по фронта на RxD сигнала преди мултиплексoра, но ако са повече входовете, и тръгнат едновреминно, ще губиш данни - проблем с протокола |
|
| Автор: | the_real_maniac [ Съб Май 27, 2006 1:45 am ] |
| Заглавие: | |
Е да , но и хардуерни UART да са , ако възникнат по едно и също време два потока информация ще успе да приеме единият и от вторият запази колкото е хардуерният буфер Така че това трябва да се знае дали ще го има като момент още при почването на 'идеята' и от там вече да се мисли. Поне така си мисля аз де Иначе решение един UART с огромен буфер edit: горното да се счита повече за въпрос от типа "..., нали ?" |
|
| Автор: | Syrius-B [ Съб Май 27, 2006 10:12 am ] |
| Заглавие: | |
Решението е - софтуерен (виртуален) UART, но тогава зависи какъв е процесора и имаш ли достатъчно свободни ресурси. Достатъчни са два пина и поне едно прекъсване (нпр таймерно) |
|
| Автор: | the_real_maniac [ Съб Май 27, 2006 5:21 pm ] |
| Заглавие: | |
Софтуереният UART не мисля , че спада към добрите решения , ако имаш да обработваш дори едно важно прекъсване. Докато хардуерният с буфера ти позволява да имаш някакво време за реакция. Но иначе ясно всичко си зависи от дадената ситуация. |
|
| Автор: | Syrius-B [ Съб Май 27, 2006 6:03 pm ] |
| Заглавие: | |
E, винаги съществува и баналното решение. Съществуват безброй чипове, съдържащи UART, с разнообразни интерфейси, SPI, I2C. и пр. Не се сещам в момента, но има и чипове - разширители, с по 4 UART-а, и пълния набор прекъсвания и регистри. Всичко е въпрос на избор, според баланса разход-полза. |
|
| Автор: | setoy [ Пон Май 29, 2006 9:00 am ] | ||||||||||||||||||
| Заглавие: | |||||||||||||||||||
Благодаря на всички отговорили. Е, в интерес на истината го пуснах още същия ден, когато попитах:) За подпиращите резистори не знаех, но доста бързо се досетих и сам . Принципно това че е мастър-славе не е проблем, то точно това е и идеята. Няма шанс и по двете линии да тръгнат данни наведнъж. Иначе софтуерния УАРТ не ми допада точно защото иска много процесорно време, а приложението е по-скоро реал-тайм, всичко е написано така че на процесора да му е лесно, което го прави и почти непреносимо на друг... Е, с мултиплексора си заспа. @the_real_maniac:
Ми да- от прекъсването и в цикличния буфер, а него можеш да си го прочетеш после когато си поискаш. @Syrius-B -
А ето това вече е интересно! Моля, драсни кои са ако се сетиш, бих бил много благодарен ! |
|||||||||||||||||||
| Автор: | FiTTiLA [ Пон Май 29, 2006 12:39 pm ] | |||||||||
| Заглавие: | ||||||||||
http://alldatasheet.com ST16C454 ST16C554 ST16C654 |
||||||||||
| Автор: | Wise [ Пон Май 29, 2006 1:23 pm ] | |||||||||
| Заглавие: | ||||||||||
Те тези са по-дърти от мен даже... OX16C954 поне да е http://www.oxsemi.com |
||||||||||
| Автор: | FiTTiLA [ Пон Май 29, 2006 1:35 pm ] | |||||||||
| Заглавие: | ||||||||||
Няма лошо |
||||||||||
| Страница 1 от 1 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|