Форум программистов, компьютерный форум, киберфорум
Электроника для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.60/53: Рейтинг темы: голосов - 53, средняя оценка - 4.60
0 / 0 / 1
Регистрация: 27.01.2010
Сообщений: 3,435
1

Чем отладить обмен по UART ?

17.04.2013, 01:04. Просмотров 9699. Ответов 24
Метки нет (Все метки)


Есть два устройства - МК и GSM-модуль SIM900.
Между собой связаны по UART.
Не все получается гладко, хотелось бы выводить отладочнуюю информацию о состоянии программы. Но вот вопрос - КУДА выводить???
Чтобы было просто, доступно и легко?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.04.2013, 01:04
Ответы с готовыми решениями:

UART в разъем USB: Чем грозит?
Есть девайс, который заряжается через USB. Надобилось его связать еще с одним нашим девайсом по...

Обмен данными по UART между несколькими устройствами
Планирую собрать систему из 2 - 33 устройств обменивающимися данными между собой по UART. В систему...

Обмен данными через UART. Нужен хелп в отловле бага.
Доброго дня уважаемые коллеги. Столкнулся со следующей проблемой при написании обмена по UART...

Обмен по UART (МК Cypress PSoC, Си, PSoC Designer)
С PC до микpoкoнтpoллеpа передается значение сопротивление peзиcтopа. B микpoкoнтpoллеpе начинает...

24
0 / 0 / 0
Регистрация: 22.01.2010
Сообщений: 3,496
17.04.2013, 01:06 2
в софтварный уарт, на любой свободный пин.
0
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
17.04.2013, 01:14 3
Цитата Сообщение от kytikot
Есть два устройства - МК и GSM-модуль SIM900.
Между собой связаны по UART...
Какой МК? У кортексов часто по два UART, у AVR это тоже бывает, например ATmega162. Опять расчет на экстрасенса...
0
0 / 0 / 1
Регистрация: 27.01.2010
Сообщений: 3,435
17.04.2013, 01:22 4
Блин, я бы догадался использовать второй УАРТ,если бы он был!
Но у меня AtMiko16.
Софтварный УАРТ слишком ресурсоемок. Я пробовал, но, возможно, стОит к нему еще раз вернуться...
0
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4,284
17.04.2013, 01:24 5
А отлаживать через jtag?
0
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4,284
17.04.2013, 01:24 6
(эта штука нужна не только для того, чтобы PORTC занимать)
0
0 / 0 / 1
Регистрация: 27.01.2010
Сообщений: 3,435
17.04.2013, 01:25 7
Пробовал я сделать себе JTAG-отладчик. Где-то коротит, я его бросил. Заказал на еБее - прислали программатор вместо него.
0
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,483
17.04.2013, 01:55 8
Цитата Сообщение от kytikot
Софтварный УАРТ слишком ресурсоемок.
Ни фига! У меня s/w UART (TX only) работает и в ATtiny12, и в ATtiny15, где вся программная память - один килобайт. Причём UART не самоцель, а именно вспомогательный отладочный вывод данных основной программы.

"Ресурсоёмкая реализация" - это Вы, наверно, в супер-пупер-правильный апноут зглянули, где реализован полный UART и с двунаправленным обменом.
Если нужно только для отладочного однопроводного вывода (как заявлено в первом посте), то нужен один свободный GPIO пин и чуть-чуть кода (гораздо меньше 1 Кбайт).
0
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4,284
17.04.2013, 03:07 9
А если у него таймеры заняты, а задержки нарушат тайминги?
0
0 / 0 / 0
Регистрация: 21.08.2011
Сообщений: 1,057
17.04.2013, 03:11 10
Действительно, передача данных это максимум пара сотен байт, да таймер один. Нету-дрыгать ногой на макс. скорости, читать другим микроконтроллером. Жаль пропали все мои коды на авр, софтовый уарт это для меня было первое, с чего я начинал писать новую прошивку. Плюс работа с сим-модулем предусматривает минимальный коммуникационный стек, а хороший стек немало весит. Может стоит сменить проц? И так модуль стоит больше, чем десяток атмег 128х.
0
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4,284
17.04.2013, 03:14 11
>> И так модуль стоит больше, чем десяток атмег 128х.

Кстати да. Но тут еще вопрос во времени потраченном на освоение нового МК (если взять сразу не мегу, а какой-нибудь стм32)
0
0 / 0 / 0
Регистрация: 21.04.2010
Сообщений: 1,890
17.04.2013, 13:04 12
А что мешает сделать еще один девайс с входом уарт и каким-нибудь индикатором, прицепить его параллельно действующей линии Tx или Rx и отображать на индикаторе отладку?.
0
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,483
17.04.2013, 14:58 13
Цитата Сообщение от hordikor
А что мешает сделать еще один девайс с входом уарт и каким-нибудь индикатором, прицепить его параллельно действующей линии Tx или Rx и отображать на индикаторе отладку?.
Например, обычный "свисток" USB-Serial для этого очень удобен. Только надо не один, а два внешних девайса: один для прослушки линии "AVR.TX -> SIM900.RX", второй для прослушки линии "SIM900.TX -> AVR.RX". А передающие линии TX в обеих внешних прослушках не подсоединять.
0
0 / 0 / 0
Регистрация: 21.04.2010
Сообщений: 1,890
17.04.2013, 15:12 14
Зачем отключать? Тебе же надо слушать - параллельно подключаешься, слушаешь чем они обмениваются и просто отображаешь.
0
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,483
17.04.2013, 15:21 15
Цитата Сообщение от hordikor
Зачем отключать? Тебе же надо слушать - параллельно подключаешься, слушаешь чем они обмениваются и просто отображаешь.
а зачем я лишние TX линии (они, заметьте, не open-drain!) буду присоединять туда, где уже есть свои передающие линии TX (от AVR на одной линии, от SIM900 на другой).
Картинку, что ли, нарисовать?
0
0 / 0 / 0
Регистрация: 21.04.2010
Сообщений: 1,890
17.04.2013, 15:27 16
Бррр, зачем куда-то выход цеплять? подключаешь только вход уарт индикатора параллельно любой линии или Tx, или Rx.
0
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,483
17.04.2013, 15:40 17
Цитата Сообщение от hordikor
Бррр, зачем куда-то выход цеплять? подключаешь только вход уарт индикатора параллельно любой линии или Tx, или Rx.
Это самое я и говорю :-) Цитирую: "А передающие линии TX в обеих внешних прослушках не подсоединять."
То есть мы об одном и том же. Прослушка должна лезть в исследуемую схему только своим RX-входом.
0
0 / 0 / 1
Регистрация: 27.01.2010
Сообщений: 3,435
17.04.2013, 16:07 18
В-общем - надо ТРИ переходника USB<->UART

2 штуки на подслушку
третий - на софверный УАРТ, для отслеживания состояния программы, вывод дебажной инфы.
0
0 / 0 / 0
Регистрация: 21.08.2011
Сообщений: 1,057
17.04.2013, 17:12 19
Проще взять другой чип, для атмеги 162 даже код не надо менять, для 128й это час работы.
0
0 / 0 / 0
Регистрация: 30.06.2011
Сообщений: 45
17.04.2013, 17:37 20
Можно сделать софтварный "квазиуарт". Без таймеров, без ничего - просто последовательно выводить биты на ножку. Осциллографом померять скорость и выставить такую же в терминале. Делал такое для MSP430.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.04.2013, 17:37

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Обмен элементов двух массивов, в чем ошибка?
начал изучать работу с двумя массивами и застрял. Объясните почему после сортировки на энран...

Два TX UART на один RX. Мультиплексирование UART.
Привет, сообщество. Возник небольшой затык. Есть необходимость при одном UART на Atmego32 подавать...

Обмен между УПП и ЗУП - При выгрузке данных пишется что элементов выгружается больше, чем было изменено
Настраиваю обмен справочников между 2-мя базами (никогда такого не делала). Т.е. из УПП обновляю...

Отладить программу
Вот программа, которая в каждом слове текста заменяет &quot;а&quot; на букву &quot;е&quot;, если &quot;а&quot; стоит на четном...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.