реклама на сайте
подробности

 
 
> Проблема с софтовым UART на Mega8, Проблема с софтовым UART на Mega8
Ruslan Konovalov
сообщение Jul 28 2008, 22:32
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 54
Регистрация: 25-07-07
Пользователь №: 29 364



Уважаемые форумчане.

Софтовый уарт принимает не корректно.
Передача происходит без проблем, а принимает вместо:
Пример: Должен принять 000102030405
принимает FFFFFFFFFFFFF
В чем проблема, так и не понял(может настройки пррываний ?).
Компилятор IAR. Проверял на Proteus 7.2

Или быть может у кого нибудь есть рабочий софтовый уарт.
Скорость нужна макс. 115200.
Буду признателен любой помощи.

С Уважением,
Руслан.
Прикрепленные файлы
Прикрепленный файл  soft_uart.zip ( 2.35 килобайт ) Кол-во скачиваний: 42
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
bgc
сообщение Jul 28 2008, 22:35
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 30-07-06
Из: Москва
Пользователь №: 19 188



Скорость великовата для софтового... Проверьте на 2400.
при большой загрузке процессора это предел. При малой наверное потянет 19200. Но точно не проверял.


--------------------
Окружающий мир - не иссякающий источник сюрпризов!
Go to the top of the page
 
+Quote Post
Ruslan Konovalov
сообщение Jul 28 2008, 23:27
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 54
Регистрация: 25-07-07
Пользователь №: 29 364



Цитата(bgc @ Jul 29 2008, 01:35) *
Скорость великовата для софтового... Проверьте на 2400.
при большой загрузке процессора это предел. При малой наверное потянет 19200. Но точно не проверял.


Пробовал на 115200. Передает нормально а прием нет.
У меня есть другой софтовый уарт так он работает как раз на 19200.
Неужели 19200 предел ? Кстати прием и передача работают по очереди.
Неужели если только принимать, то не получится принять на большей чем 19200 скорости ?



А это оригинальный софтовый уарт.
Потом я его переделал под IAR(предыдущий аттачмент).
Может я где-то напартачил ?
Прикрепленные файлы
Прикрепленный файл  suart_1_.zip ( 2.13 килобайт ) Кол-во скачиваний: 55
 
Go to the top of the page
 
+Quote Post
=GM=
сообщение Jul 29 2008, 12:32
Сообщение #4


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(Ruslan Konovalov @ Jul 28 2008, 22:27) *
Пробовал на 115200. Передает нормально а прием нет. Кстати прием и передача работают по очереди. Неужели если только принимать, то не получится принять на большей чем 19200 скорости?

Оказывается оригинал написан Питером Данеггером. Зная его дотошность и пунктуальность, могу сказать, что ошибки 100% нет, просто-напросто си-программа приёма не справляется с такой скоростью.

Если вам нужна такая скорость, то пишите на асме, получите существенный выигрыш. Вам для ориентации: для полудуплекса можно легко написать программу приёма и передачи на скорости 1 000 000 бод, а если постараться, то и на 2 Мбодах (с клоком 20МГц).


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Jul 29 2008, 12:36
Сообщение #5


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(=GM= @ Jul 29 2008, 16:32) *
для полудуплекса можно легко написать программу приёма и передачи на скорости 1 000 000 бод, а если постараться, то и на 2 мбодах (с клоком 20МГц).

Если только на это время отказаться от всего остального и запретить прерывания. Может, лучше внешний УАРТ поставить, и общаться через SPI? намного проще и менее ресурсоёмко.


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Ruslan Konovalov   Проблема с софтовым UART на Mega8   Jul 28 2008, 22:32
||- - =GM=   Цитата(MrYuran @ Jul 29 2008, 11:36) Если...   Jul 29 2008, 12:42
|- - defunct   Цитата(Ruslan Konovalov @ Jul 29 2008, 02...   Jul 29 2008, 13:06
|- - =GM=   Цитата(defunct @ Jul 29 2008, 12:06) 5 вы...   Jul 29 2008, 13:43
|- - defunct   Цитата(=GM= @ Jul 29 2008, 16:43) 5-то за...   Jul 29 2008, 14:59
|- - SasaVitebsk   Цитата(defunct @ Jul 29 2008, 17:59) Для ...   Jul 29 2008, 15:55
||- - defunct   Цитата(SasaVitebsk @ Jul 29 2008, 18:55) ...   Jul 29 2008, 16:10
||- - AHTOXA   Цитата(defunct @ Jul 29 2008, 22:10) Связ...   Jul 29 2008, 16:29
||- - defunct   Цитата(AHTOXA @ Jul 29 2008, 19:29) При т...   Jul 29 2008, 16:53
||- - AHTOXA   Цитата(defunct @ Jul 29 2008, 22:53) Теор...   Jul 29 2008, 18:18
||- - defunct   Цитата(AHTOXA @ Jul 29 2008, 21:18) Скоро...   Jul 29 2008, 19:03
||- - AHTOXA   Цитата(defunct @ Jul 30 2008, 01:03) Не м...   Jul 29 2008, 19:56
||- - defunct   Цитата(AHTOXA @ Jul 29 2008, 22:56) Там п...   Jul 29 2008, 20:36
||- - AHTOXA   Цитата(defunct @ Jul 30 2008, 02:36) Поче...   Jul 29 2008, 21:23
|- - =GM=   defunct ну ну, хватит ровно на чтение из порта одн...   Jul 29 2008, 16:20
- - Ruslan Konovalov   Огромное спасибо всем кто отозвался. Мне было бы д...   Jul 29 2008, 18:14
|- - =GM=   Цитата(Ruslan Konovalov @ Jul 29 2008, 17...   Jul 29 2008, 21:10
- - _Pasha   Цитата(AHTOXA @ Jul 29 2008, 19:29) Потом...   Jul 30 2008, 10:57
- - AHTOXA   Цитата(_Pasha @ Jul 30 2008, 16:57) В общ...   Jul 30 2008, 11:27


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 26th July 2025 - 19:01
Рейтинг@Mail.ru


Страница сгенерированна за 0.01447 секунд с 7
ELECTRONIX ©2004-2016