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

 
 
> Как сделать нормальный putchar
tvilsa
сообщение Mar 16 2009, 07:44
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 27-01-09
Пользователь №: 43 990



Всем привет.
В CodeVision для AVR использовал конструкцию
putchar('S') и на экране в терминале получал символ S.
В ИАРе такая конструкция не работает. Почему?
Обмен MSP PC нормальный. Передаю значения путем помещения его в TXBUF0.
Как сделать чтоб работала конструкция putchar('s')?
Заранее спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Dog Pawlowa
сообщение Mar 16 2009, 07:51
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(tvilsa @ Mar 16 2009, 11:44) *
Обмен MSP PC нормальный. Передаю значения путем помещения его в TXBUF0.
Как сделать чтоб работала конструкция putchar('s')?

А UART проинициализирован? Скорость, разрешение передачи...


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
tvilsa
сообщение Mar 16 2009, 08:22
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 27-01-09
Пользователь №: 43 990



Цитата(Dog Pawlowa @ Mar 16 2009, 11:51) *
А UART проинициализирован? Скорость, разрешение передачи...


А при чем здесь это?
Я же написал что обмен уже работает, но только через непосредственную запись значений в регистр.
Как сделать чтоб работал putchar?
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Mar 16 2009, 08:53
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(tvilsa @ Mar 16 2009, 11:22) *
А при чем здесь это?
Я же написал что обмен уже работает, но только через непосредственную запись значений в регистр.
Как сделать чтоб работал putchar?

То есть? где то записанная запись значения в регистр работает, а в самом putchar - нет?


Цитата(MrYuran @ Mar 16 2009, 11:34) *
Насколько я помню, в ИАре putchar() и printf() - это обёртки функции put_one_symbol(), которую надо определить самостоятельно (по крайней мере я так делал)

Странно, может в старых версиях так было.
Сам putchar нужно определить самостоятельно. А printf - обертка, конечно же.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
tvilsa
сообщение Mar 16 2009, 10:07
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 27-01-09
Пользователь №: 43 990



Цитата(Dog Pawlowa @ Mar 16 2009, 12:53) *
То есть? где то записанная запись значения в регистр работает, а в самом putchar - нет?


именно. передача простой записью в регистр работает т.е. при выполнении
TXBUF0 = 0х30;
работает,а
putchar('s'); не работает
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Mar 16 2009, 10:24
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(tvilsa @ Mar 16 2009, 13:07) *
именно. передача простой записью в регистр работает т.е. при выполнении
TXBUF0 = 0х30;
работает,а
putchar('s'); не работает

Дык в самом putchar что записано?! Приведите текст этой функции.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 16:16
Рейтинг@Mail.ru


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