| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| Проблеми с RS232 http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=4385 |
Страница 1 от 2 |
| Автор: | Ugeen [ Чет Юни 21, 2007 6:05 pm ] |
| Заглавие: | Проблеми с RS232 |
Колеги,направих едно устройство с ATMEGA8.То трябва да измерва разни параметри и да ги праща към PC-то.Симулирах работата на устройството с Протеус и модела на COMPIM.Направих си виртуални портове.Използвам няколко терминални програми.Всичко работи идеално,но не така се оказа на практика.Сложих Max232 за съгласуване на нивата.Всичко е вярно свързано,прегледах поне 5 схеми от нета.Като пробвам да изпращам данни към компа,наистина се изпращат ,но някакви маймуници и йероглифи.Пробвах да сменям шрифтовете на терминалните програми ,но не става.Къде е причината според вас . |
|
| Автор: | Nikola Kirov [ Чет Юни 21, 2007 6:10 pm ] |
| Заглавие: | |
UART-a на процесора и порта на PC то трябва да са настроени на един бодрейт. Като не са се получават такива неща. |
|
| Автор: | Ugeen [ Чет Юни 21, 2007 6:19 pm ] |
| Заглавие: | |
Всичките настройки са еднакви и 8-бита данни ,1-стопов бит 9600 скорост,без проверка по четност.Със всички терминални програми приема едно и също.Процесора работи с вътрешен такт на 8Mhz.OSCCAL=0xff.Кабела не е екраниран ,но е доста къс около 30см.Може ли да е от това че работя с вътрешен такт,който не е много стабилен и че кабела не е екраниран.Ползвам процесора само да праща приемника не е активиран,нали това не го бърка. |
|
| Автор: | Nikola Kirov [ Чет Юни 21, 2007 6:26 pm ] |
| Заглавие: | |
Нещо по скоро не си настроил правилно UART-a на пика. |
|
| Автор: | Ugeen [ Чет Юни 21, 2007 6:29 pm ] |
| Заглавие: | |
// USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: Off // USART Transmitter: On // USART Mode: Asynchronous // USART Baud rate: 9600 UCSRA=0x00; UCSRB=0x08; UCSRC=0x86; UBRRH=0x00; UBRRL=0x33; Ето това са настройките директно от CodevisionAVR |
|
| Автор: | Nikola Kirov [ Чет Юни 21, 2007 6:40 pm ] |
| Заглавие: | |
На 9600 съм подкарвал за проба PIC в вътрешния му такт. Но изглежда че твоя процесор не е калибриран нещо в такъв случай. Сложи си външен кварц. |
|
| Автор: | Dimitar [ Чет Юни 21, 2007 7:14 pm ] |
| Заглавие: | |
UART-а допуска доста големи грешки в скоростта. Най-вероятно е някаква настройка в контролера за да се получи такава голяма разлика в скоростите, а не от това, че е с вътрешен клок. Понякога има разлика между симулатора и реалността |
|
| Автор: | ji4ka [ Чет Юни 21, 2007 11:20 pm ] | |||||||||
| Заглавие: | Re: Проблеми с RS232 | |||||||||
Тая схема май инвертираше сигналите. Да не би да е от това? |
||||||||||
| Автор: | Wise [ Чет Юни 21, 2007 11:31 pm ] |
| Заглавие: | |
Е няма как да е от инверсията - лог 1 си е -U, а лог 0 - +U U е около 6.5- 8.5 волта най-вероятно е да не си записал фюзовете и да ти е такта/8 |
|
| Автор: | Dimitar [ Чет Юни 21, 2007 11:43 pm ] |
| Заглавие: | |
Жичка - ти каква схема предлагаш да сложи между контролера и РС-то освен MAX232 или някой аналог |
|
| Автор: | ji4ka [ Чет Юни 21, 2007 11:56 pm ] |
| Заглавие: | |
Тази си е добра, но има и други които са неинвертиращи. Аз лично си имах точно такъв проблем ,затова го споменавам. Едно пикче беше правено да се връзва директно с сер.порт - по мнението на автора много от компютрите приемали и 0-5 волта. Но аз реших да го правя "професионално" и му турих тоя буфер ... и се наложи да му инвертирам софта. Даже дизасемблирах щото имах само хекса (това не се забравя лесно |
|
| Автор: | Dimitar [ Пет Юни 22, 2007 12:58 am ] |
| Заглавие: | |
Кои са тия другите дето "не са инвертиращи" и се връзваш чрез тях с РС - аз не ги знам |
|
| Автор: | ji4ka [ Пет Юни 22, 2007 1:45 am ] | ||
| Заглавие: | |||
Не ги знаеш ,защото ги няма Обаче проблема остава ако не е предвидено инвертирането в софруера. Може и да се свържат двата канала последователно ако трябва неинвертиращ.
|
|||
| Автор: | Dimitar [ Пет Юни 22, 2007 2:26 am ] |
| Заглавие: | |
Жичка - аз от одеве те бъзикам, защото какво значи инвертиране? Те така са си направени нещата да работят, т.е. не ти трябва никаква софтуерна манипулация на битовете. Да не говорим, че софтуерно нямаш контрол върху стартовия и стоповия бит, ако държиш да си ползваш хардуерния UART на контролера |
|
| Автор: | ji4ka [ Пет Юни 22, 2007 3:05 am ] |
| Заглавие: | |
Те направени нещата ,ама за тия дето вървят в правия път. А за нас дето караме през просото никой не мисли При мен пикчето беше 8 краково , без уарт и всичко си беше софтуерно. И пича дето го е проектирал си го вързва директно към пц-то по 2 жици. И най-важното е, че си бачка на 115000 бода. |
|
| Страница 1 от 2 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|