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

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> Проблемы с USART, Избитая тема, но все-таки
Skaf
сообщение Jun 7 2009, 13:14
Сообщение #31


Местный
***

Группа: Участник
Сообщений: 228
Регистрация: 4-06-09
Пользователь №: 49 940



Чуть позже выложу схемку, хотя зачем она- она самая стандартная. Включение ST232 (=MAX232) как в даташите, на вход ее напрямую подается соотв. выход микроконтроллера. Ну вечерком подробно все нарисую с номерами ножек.

Подключил подтягивающий резистор- не изменилось ничего.

Цитата
Посмотрите осциллографом, что там у вас идет.


Осциллографа нет у меня ( Максимум что могу сделать- понизить скорость передачи и посмотреть на осциллографе на базе звуковой карты ) Вечерком это тоже сделаю.
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Jun 7 2009, 13:16
Сообщение #32





Guests






Куда подключили и какого номинала? И почему только один? В общем, ждем подробную схему...
Go to the top of the page
 
+Quote Post
defunct
сообщение Jun 7 2009, 15:53
Сообщение #33


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(Skaf @ Jun 6 2009, 20:34) *
МК мега16. Совсем не работает это значит не мигает светодиод, который висит на PD7 и мигает за счет PORTD = ~PORTD;

Вот реальные байты принятые из ком порта ПК. Должен быть натуральный ряд.
FE 03 04 FF 06 FF 08 1F FE 0B FE F8 0E F8 10 1F FF F3 F4 F1 FF 18 1F 1E 1B 1C 1F 1E FF 20 E1 FE 23 24 3F

А часом это самое мигание PORTD = ~PORTD не убивает данные которые шлет UART? UART тоже висит на PORTD. (банально КЗ между PD2 и PD1 например)

Если взять во внимание что данные по UART передаются в обратном порядке, например 04h передается как "0 - 0010 0000 - 1", то получить FF после передачи 04 можно если частота передатчика завышена относительно частоты приемника, и последний "0" воспринимается как старт бит следующего символа.

08 09 0A

- 0 0001 0000 1 - 0 1001 0000 1 - 0 0101 0000 1 -
превратилось в

08 1F FE

- 0 0001 0000 x - 0 1111 1000 x - 0 0111 1111 1 -

Обилие "1111" тут тоже символ начал приниматься раньше чем нужно (в момент передачи СТОП бита / межсимвольной паузы). Что в свою очередь говорит, что частота передатчика м.б. завышена относительно приемника.


Цитата
Осциллографа нет у меня ( Максимум что могу сделать- понизить скорость передачи и посмотреть на осциллографе на базе звуковой карты ) Вечерком это тоже сделаю.

Проверте на какой частоте работает МК.
Запрограммируйте TIMER1 на тик раз в 500 тактов, в прерывании таймера меняйте какой-нибудь пин любого порта. Измерьте частоту с этого пина низкочастотным частотомером (в китайских тестерах есть частотомер со шкалой 0..20kHz). Потом домножите показания на 1000 и получите частоту МК в Hz, или разделите показания еще на 1000 и будет частота в Mhz.
Go to the top of the page
 
+Quote Post
Skaf
сообщение Jun 7 2009, 20:21
Сообщение #34


Местный
***

Группа: Участник
Сообщений: 228
Регистрация: 4-06-09
Пользователь №: 49 940



Я сделал вот что. Запрограммировал мегу на постоянную бесперерывную отсылку 0x55 в ком порт. Это 101010101... постоянно включая стоповые и стартовые биты и приделал мультиметр со встроенным частотомером прямо на TxD. Он показывает 28.8-28.9 кГц (переключается туда-сюда). На сколько я понимаю, если умножить на 2- это и будет битрейт... 28.8 умножаем на 2 и получаем 57.6 килобита... Тоесть как раз нужная скорость... тока 28.9 немного напрягает

Кстати 0x55 и принимается на компе хорошо и без ошибок!! А вот всякие там возрастающие натуральные ряды - ужасно.

Думал может помехи- но провод у меня экранированный, экран припаян к корпусу штекера ком порта, а с другой стороны на землю устройства.

Схемы выложу завтра, сегодня не успел (

Цитата
Куда подключили и какого номинала? И почему только один? В общем, ждем подробную схему...


Подключил между TxD и VCC. Один- потому что только TxD у меня используется. Приема данных на стороне контроллера вообще пока нет. Пока пытаюсь отладить отправку
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Jun 7 2009, 21:18
Сообщение #35





Guests






Частота скорее всего в норме. Насчет мигания светодиодом - это интересная версия. Если разводка платы неудачна, то при его включении-выключении может прыгать потенциал земли. Что может восприниматься как ложный старт-бит. Попробуйте временно отключить светодиод (аппаратно или программно).
Go to the top of the page
 
+Quote Post
Skaf
сообщение Jun 8 2009, 18:18
Сообщение #36


Местный
***

Группа: Участник
Сообщений: 228
Регистрация: 4-06-09
Пользователь №: 49 940



Светодиод я отключил, толку никакого.

Я понизил скорость передачи данных до 600 бод. И подключил через резисторный делитель на вход звуковой карты. Своебразный осциллограф. Сначала я проверил без кабеля в ком порт, а внизу осциллограмма с подключенным кабелем. Амплитуда там меньше раза в 4, просто увеличл, чтобы лучше было видно сигнал. Какой-то шлак вообще-то а не сигнал. А кабель на конце с COM-TTL преобразователем. Сейчас попробую отпаять кабель вообще и подпаяться напрямую к плате преобразователя уровней.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Jun 8 2009, 18:47
Сообщение #37





Guests






<< Думал может помехи- но провод у меня экранированный, экран припаян к корпусу штекера ком порта, а с другой стороны на землю устройства...>>

Экран кабеля на землю устройства лучше не подключать. В общем случае - это не правильно.
Вообще-то, в большинстве компьютерных COM-портах экран внутри порта уже соединен с землей. Можете проверить это тестером. Но со стороны устройства экран к земле подключать нельзя. Особенно, если кабель длинный. Это может быть источником помех и наводок. Может образоваться т.н. "земляная петля" - будет как антенна собирать весь "мусор"...
Go to the top of the page
 
+Quote Post
Skaf
сообщение Jun 8 2009, 19:14
Сообщение #38


Местный
***

Группа: Участник
Сообщений: 228
Регистрация: 4-06-09
Пользователь №: 49 940



Я отпаял весь кабель, соотвтственно вместе с экраном. Теперь плату преобразователя и контроллер разделяет 10 сантиметров проводочков. Результат остался прежним. Также выяснился следующий факт- если преобразователь ОТКЛЮЧИТЬ от компьютера- все хорошо, сигналы нормальные. Подключаю к компьютеру- опять помехи каике-то


Подключил к другому компьютеру- результат тот же
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Jun 8 2009, 19:22
Сообщение #39





Guests






Желательно все-таки увидеть схему. Либо преобразователь накрылся. Либо что-то не так подключили. Чудес-то не бывает... Посмотрите напряжение на выходе преобразователя со стороны RS-232 не подключая к компьютеру и
ничего не передавая в порт. Должно быть где-то (-5)В - (-10)В относительно земли. С минусом!
Go to the top of the page
 
+Quote Post
Skaf
сообщение Jun 8 2009, 19:41
Сообщение #40


Местный
***

Группа: Участник
Сообщений: 228
Регистрация: 4-06-09
Пользователь №: 49 940



Преобразователь собран по описанию из статьи http://easyelectronics.ru/svyaz-mikrokontr...erez-rs232.html

Вот фотографии именно моего кабеля. Напряжение сейчас проверю. Кстати кабель проверялся- вход и выход я замыкал и в гипертерминале слал на него данные- точно такие же данные тут же принимались назад.

Напряжения проверил. Если вход у преобразователя висит- 0 вольт на выходе.. если вход подключить на +5 то -8.6 на выходе. Когда после этого убираю +5 на вход- то напряжение на выходе поднимается до 5 и спускается опять в 0 )) Жесть какая-то... Наверно преобразователь все-таки испортился. завтра еще раз устрою ему тест на гипертерминале.
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Jun 8 2009, 20:06
Сообщение #41





Guests






Кто-то тут уже давал такую ссылку... Тоже проблемы были... Сейчас все посмотрим, подождите полчасика...


А обратные стороны для обоих рисунков можете выложить?

Вы там часом RX и TX не перепутали местами (5-ти вольтовые)? Передавать от UART надо на 10 ногу ST232 - зеленый провод. Так у Вас?
Go to the top of the page
 
+Quote Post
OLEG_BOS
сообщение Jun 8 2009, 20:25
Сообщение #42


Местный
***

Группа: Свой
Сообщений: 386
Регистрация: 1-12-05
Пользователь №: 11 639



Цитата(Skaf @ Jun 8 2009, 22:41) *
Вот фотографии именно моего кабеля.

Мда... мда.. А вот что-то электролитов "накачки" в Вашем варианте платы то и не наблюдается. Или они спрятаны под платой ? wink.gif
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Jun 8 2009, 20:29
Сообщение #43





Guests






вот тут еще почитайте:
http://electronix.ru/forum/index.php?showt...mp;#entry591281


<<А вот что-то электролитов "накачки" в Вашем варианте платы то и не наблюдается>>
Да ладно Вам придираться. На керамике такие вещи всегда исправно работали... wink.gif
Go to the top of the page
 
+Quote Post
Vlad27
сообщение Jun 8 2009, 21:00
Сообщение #44


Частый гость
**

Группа: Свой
Сообщений: 95
Регистрация: 31-07-05
Из: Полоцк Беларусь
Пользователь №: 7 227



Цитата(@Ark @ Jun 8 2009, 23:29) *
<<А вот что-то электролитов "накачки" в Вашем варианте платы то и не наблюдается>>
Да ладно Вам придираться. На керамике такие вещи всегда исправно работали... wink.gif


Так и керамики как-то не видно. Платка то ведь односторонняя.
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Jun 8 2009, 22:35
Сообщение #45





Guests






<<Так и керамики как-то не видно>>
Плохо смотрите...
Go to the top of the page
 
+Quote Post

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

 


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


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