Easyelectronics.ru

Электроника для всех
Текущее время: 24 янв 2019, 18:16

Часовой пояс: UTC + 5 часов




Начать новую тему Ответить на тему  [ Сообщений: 19 ] 
Автор Сообщение
 Заголовок сообщения: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 21 дек 2016, 16:21 
Только пришел

Зарегистрирован: 23 окт 2016, 12:01
Сообщения: 9
Уважаемые знатоки!
Есть задача вывода данных из ADuC845 на монитор ПК
Вложение:
UART2.docx [14.21 Кб]
Скачиваний: 120
(с помощью UART)
Приобрёл отладку Eval ADuC845, к ней есть куча умных примеров, в т.ч. код UART2 (попробую приложить). Приложенный код работает "на ура", но мучает нюанс: в блоке инициализации стоит: MOV SCON,#52h, что приводит к установке в "1" флага TI, который, согласно datasheet, устанавливается АППАРАТНО! Пробовал заменить на MOV SCON,#50h - полный крах! Объясните несведущему влияние ручной установки АППАРАТНО УСТАНАВЛИВАЕМОГО ФЛАГА TI!
Эт первое.
Второе. Понадобилось мне изменить синхронизацию UART вместо Т3 на Т2. И опять полный крах! Где я сбаранничал, подскажите, знатоки!
В приложенном рабочий код исправлен на использование Т2, а исходные фрагменты "заремлены" (;) (исправления только в MAIN до слова START).

С П А С И Б О !


Вложения:
UART2.txt [5.47 Кб]
Скачиваний: 97


Последний раз редактировалось Peotr 22 дек 2016, 14:39, всего редактировалось 2 раз(а).
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 21 дек 2016, 22:53 
Старожил
Аватара пользователя

Зарегистрирован: 28 дек 2011, 11:24
Сообщения: 3840
Откуда: г. Липецк
>> UART2.docx !!!
Это какая система программирования создает код в таком формате? MS Office? Странный выбор...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 21 дек 2016, 23:04 
Только пришел

Зарегистрирован: 23 окт 2016, 12:01
Сообщения: 9
anakost писал(а):
>> UART2.docx !!!
Это какая система программирования создает код в таком формате? MS Office? Странный выбор...

"странный выбор" сделан потому что этот редактор универсальный, и есть у всех. А также в этом редакторе нагляднее текст, если не всем, то мои извинения, кому не угодил. В этом редакторе текст легко копируется, и вставляется в любой другой редактор практически любой программы. Если же пришлю ФАЙЛ моей любимой программы, то открыть его смогут только обладатели ЭТОЙ программы, другие начнут возмущаться, почему-де файл этой программы, а не другой.
Если у кого-то аллергия к Ворду, просто не скачивайте этот файл, и не читайте сообщение.
Спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 22 дек 2016, 00:08 
Старожил
Аватара пользователя

Зарегистрирован: 27 окт 2014, 10:36
Сообщения: 274
Откуда: Самара
Peotr, исходники практически всех языков программирования имеют простой текстовый формат и открываются блокнотом, вне зависимости от расширения. Не заморачивайтесь


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 22 дек 2016, 00:16 
Только пришел

Зарегистрирован: 23 окт 2016, 12:01
Сообщения: 9
smoluks писал(а):
Peotr, исходники практически всех языков программирования имеют простой текстовый формат и открываются блокнотом, вне зависимости от расширения. Не заморачивайтесь


Как по мне, так заморачиваются как раз в Блокноте, который не имеет автопереноса, в следствие чего плохая читаемость. Кроме того, если при анализе текста программы возникает необходимость в выделении какой-то части текста, различных выделений каких-то частей текста, то, прочертыхавшись, переходишь на Ворд, чтобы НЕ ЗАМОРАЧИВАТЬСЯ.
Меня удивляет, чем так страшен Ворд? Неужели ездить на современном лимузине - это заморочка по сравнению с архаичным авто на еловых шишках?
Впрочем, у меня вопрос был о другом.
Спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 22 дек 2016, 00:21 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2012, 00:31
Сообщения: 1797
Откуда: Новокузнецк
Peotr писал(а):
smoluks писал(а):
Peotr, исходники практически всех языков программирования имеют простой текстовый формат и открываются блокнотом, вне зависимости от расширения. Не заморачивайтесь


Как по мне, так заморачиваются как раз в Блокноте, который не имеет автопереноса, в следствие чего плохая читаемость. Кроме того, если при анализе текста программы возникает необходимость в выделении какой-то части текста, различных выделений каких-то частей текста, то, прочертыхавшись, переходишь на Ворд, чтобы НЕ ЗАМОРАЧИВАТЬСЯ.
Меня удивляет, чем так страшен Ворд? Неужели ездить на современном лимузине - это заморочка по сравнению с архаичным авто на еловых шишках?
Впрочем, у меня вопрос был о другом.
Спасибо.

Так никто блокнотом и не пользуется. Пользуются нормальными смотрелками текстовых файлов разного уровня навороченности? Notepad++, Sublime Text, Geany, Gedit, vim, emacs и др.
Они все умеют и автоперенос, и подсветку синтаксиса, и подсказку кода и много еще чего.

_________________
elisey.su


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 22 дек 2016, 08:00 
Только пришел

Зарегистрирован: 23 окт 2016, 12:01
Сообщения: 9
elisey писал(а):
Peotr писал(а):
smoluks писал(а):
Peotr, исходники практически всех языков программирования имеют простой текстовый формат и открываются блокнотом, вне зависимости от расширения. Не заморачивайтесь


Как по мне, так заморачиваются как раз в Блокноте, который не имеет автопереноса, в следствие чего плохая читаемость. Кроме того, если при анализе текста программы возникает необходимость в выделении какой-то части текста, различных выделений каких-то частей текста, то, прочертыхавшись, переходишь на Ворд, чтобы НЕ ЗАМОРАЧИВАТЬСЯ.
Меня удивляет, чем так страшен Ворд? Неужели ездить на современном лимузине - это заморочка по сравнению с архаичным авто на еловых шишках?
Впрочем, у меня вопрос был о другом.
Спасибо.

Так никто блокнотом и не пользуется. Пользуются нормальными смотрелками текстовых файлов разного уровня навороченности? Notepad++, Sublime Text, Geany, Gedit, vim, emacs и др.
Они все умеют и автоперенос, и подсветку синтаксиса, и подсказку кода и много еще чего.


Мне кажется, проблема открытия файла Ворд и конвертации его в любой из перечисленных здесь форматов яйца выеденного не стОит.
Я сейчас на радиотехническом форуме?
Спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 22 дек 2016, 11:29 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2014, 13:25
Сообщения: 440
Откуда: Earth
Да, на радиотехническом. Просто разместив исходник в таком виде, Вы автоматически отсекаете часть потенциальных помощников. Вот например у меня, как у радиолюбителя, на компьютере установлена много всяких студий и читалок PDF, djvu и прочего, а вот docx открыть просто нечем. И я не буду ставить себе офис под этот формат, только чтобы прочитать 1 исходник.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 22 дек 2016, 19:19 
Заглядывает иногда

Зарегистрирован: 26 сен 2015, 03:02
Сообщения: 79
Peotr писал(а):
Приложенный код работает "на ура", но мучает нюанс: в блоке инициализации стоит: MOV SCON,#52h, что приводит к установке в "1" флага TI, который, согласно datasheet, устанавливается АППАРАТНО! Пробовал заменить на MOV SCON,#50h - полный крах! Объясните несведущему влияние ручной установки АППАРАТНО УСТАНАВЛИВАЕМОГО ФЛАГА TI!


Запись в этот флаг 1 означает, что его состояние не будет изменяться.
А вот запись 0 - сбрасывает его. Аппаратно он только устанавливается в 1, но не наоборот.
Возможно, что в вашей программе этот флаг где-то ещё используется,
и сбросив его вы нарушаете алгоритм работы.

Но желания читать программы на ассемблере в ворде, действительно нет.
Попробуйте освоить С и какой-нибудь специализированный текстовый редактор.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 22 дек 2016, 19:32 
Только пришел

Зарегистрирован: 23 окт 2016, 12:01
Сообщения: 9
IvanSh писал(а):
Запись в этот флаг 1 означает, что его состояние не будет изменяться.
А вот запись 0 - сбрасывает его. Аппаратно он только устанавливается в 1, но не наоборот.
Возможно, что в вашей программе этот флаг где-то ещё используется,
и сбросив его вы нарушаете алгоритм работы.

Но желания читать программы на ассемблере в ворде, действительно нет.
Попробуйте освоить С и какой-нибудь специализированный текстовый редактор.


Не понял по поводу флага. Меняться он будет всё равно. Аппаратно будет устанавливаться в единицу, а программно сбрасываться в ноль, независимо от начальной установки. Я так и не понял, почему я его должен устанавливать в 1 при инициализации. Тем более, что Редькин в своём учебнике "Микроконтроллеры AD..." этого не делает, и у него, судя по всему, всё работает. А в предложенной изготовителем ADuC демонстрационной программе без этой начальной установки не работает.
Спасибо за преодолённое нежелание. На Си я пишу для AVR, но вот пришлось взяться за адуку, а для неё у меня нет транслятора под Си. Вот и гребу, как раб на галерах :). А Ворд люблю за гибкость. Сначала всё пишу на нём, а когда всё сделано, транслирую в нужный редактор. Не думал, что у кого-то его может не быть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 11 янв 2019, 17:19 
Здравствуйте!

Зарегистрирован: 11 янв 2019, 16:59
Сообщения: 1
SENDCHAR: ; sends ASCII value contained in A to UART
JNB TI,$ ; wait til present char gone
CLR TI ; must clear TI
MOV SBUF,A
RET

Это неверный код ! Правильный код:

SENDCHAR: ; sends ASCII value contained in A to UART
MOV SBUF,A ; сначала заносим A
JNB TI,$ ; и только потом ожидаем
CLR TI
RET

Это старая растиражированная ошибка документации Intel
Дело в том, что TI устанавливается _после_ передачи символа, следовательно
если ждать TI перед передачей, то программа зависает. "Избавляются" от этого
таким образом: где-то в коде перед передачей принудительно ставят TI=1 и всё
"вроде бы" начинает работать. До того момента, как требуется окончить передачу,
а потом возобновить... Аналогично, если Вы пишите на Си следует проверить,
не переписать ли явно функцию putchar


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 11 янв 2019, 17:37 
Только пришел

Зарегистрирован: 23 окт 2016, 12:01
Сообщения: 9
deckard писал(а):
Это старая растиражированная ошибка документации Intel


Вот где собака-то зарыта. Спасибо, никак не мог подумать об ошибке в документации. Урок на будущее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 11 янв 2019, 23:06 
Заглядывает иногда

Зарегистрирован: 10 мар 2012, 11:11
Сообщения: 76
Peotr писал(а):
Мне кажется, проблема открытия файла Ворд и конвертации его в любой из перечисленных здесь форматов яйца выеденного не стОит.
Я сейчас на радиотехническом форуме?
Спасибо.

А мне кажется, Пеотр, что выкладывая файл в таком формате вы просто не уважаете читающих. И клал я на ваши не выеденные яйца. Как по мне, вы просто село.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 12 янв 2019, 20:17 
Только пришел

Зарегистрирован: 23 окт 2016, 12:01
Сообщения: 9
Snake писал(а):
Peotr писал(а):
Мне кажется, проблема открытия файла Ворд и конвертации его в любой из перечисленных здесь форматов яйца выеденного не стОит.
Я сейчас на радиотехническом форуме?
Спасибо.

А мне кажется, Пеотр, что выкладывая файл в таком формате вы просто не уважаете читающих. И клал я на ваши не выеденные яйца. Как по мне, вы просто село.


Простите, не учёл Ваших городских амбиций.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 13 янв 2019, 13:47 
Старожил
Аватара пользователя

Зарегистрирован: 28 дек 2011, 11:24
Сообщения: 3840
Откуда: г. Липецк
Да не в амбициях дело, вы обратились за помощью к сообществу, при этом опубликовали исходник в формате xml doc. Т.е. намеренно внесли в него символы форматирования и разметки не имеющие отношения к коду. Зачем? Мне например и открыть его нечем...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 13 янв 2019, 17:04 
Старожил
Аватара пользователя

Зарегистрирован: 28 янв 2010, 11:56
Сообщения: 2961
Откуда: Винница
То было достаточно давно. Более того - отредактировано 22 декабря 2016 г., дополнено .txt, что есть явный прогресс. ;) Какой смысл ворошить?
А прикол с TI, да, есть. У Интела в библиотеках много чего ещё интересного было, не столь очевидного...

_________________
Китайская комплектация - европейское качество!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 13 янв 2019, 17:37 
Только пришел

Зарегистрирован: 23 окт 2016, 12:01
Сообщения: 9
Katz писал(а):
То было достаточно давно. Более того - отредактировано 22 декабря 2016 г., дополнено .txt, что есть явный прогресс. ;) Какой смысл ворошить?
А прикол с TI, да, есть. У Интела в библиотеках много чего ещё интересного было, не столь очевидного...

Спасибо за понимание. Не сомневался, что таких, как Вы на форуме большинство.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 13 янв 2019, 23:23 
Заглядывает иногда

Зарегистрирован: 10 мар 2012, 11:11
Сообщения: 76
Peotr, извиняюсь. Если честно на дату поста я не обратил внимания. Но мысль моя вам должна быть понятна.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с ADuC845, вывод данных через UART
СообщениеДобавлено: 14 янв 2019, 00:05 
Только пришел

Зарегистрирован: 23 окт 2016, 12:01
Сообщения: 9
Snake писал(а):
Peotr, извиняюсь. Если честно на дату поста я не обратил внимания. Но мысль моя вам должна быть понятна.


На ошибки стоит указывать. Иначе они не будут поняты и исправлены. :)
Спасибо.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 19 ] 

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB