Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Какой такой TI0 - я его нигде не использую (я ж передачу без прерываний делаю, через printf)
Отправлено
ZoltriX
(97.74.144.88)
08 января 2010, г. 16:22
В ответ на:
Конечно может повиснуть. Где у вас сброс ТI0 (нужна в прерывании ветка else)? Сделайте принцип точно так, как вам сказал BB. Только его дополнительный бит сделайте volatile и присвойте изначально = 1. И - printf запоёт. Я б для острастки перед каждым printf делал Tiimage=1.
отправлено
VasilyS
08 января 2010, г. 15:41
Составить ответ
|
Вернуться на конференцию
Ответы
Этот TI0 я нигде не устанавлюю, чё я его сбрасывать должен??
-
ZoltriX
(08.01.2010, 16:23:16
97.74.144.88
,
пустое
)
О майн гот! Ви собираетесь использовать printf или нет? :-)
-
VasilyS
(08.01.2010, 16:28:6
80.92.96.25
,
пустое
)
Установка TI0 - как неконтролируемая эрекция. Только встает он после извержения байта. И завалит вашу программу в прерывание, ведь оно разрешено по (RI0 || TI0). Вот такая несправедливость.
-
VasilyS
(08.01.2010, 16:35:48
80.92.96.25
,
пустое
)
Нихрена не понял. ВВ посоветовал, но putchar я не использую
-
Радиогубитель
(08.01.2010, 17:48:4
208.87.243.66
, 529 байт)
putchar - это функция, вызываемая из принтф. Она является функцией "нижнего уровня", где собственно и происходит физический вывода символа. Как правило, она изначально "заточена" на вывод через UART. Но если программист напишет свою функцию с тем же именем путчар, то она автоматически подменит оригинальную, компиляторную. Там можно выводить символы не в UART, а например на ЖКИ.
-
VasilyS
(08.01.2010, 17:59:7
80.92.96.25
,
пустое
)
Выводится только одна буква "J", приём вообще перестал работать
-
Радиогубитель
(08.01.2010, 18:21:37
208.87.243.66
, 174 байт)
Ну что же вы, Иглесиас... Я вам говорю: сделайте в прерывании ветку else if для TIO. Нет, вы просто if поставили. ВВ вам говорит, в прерывании по TIO сбросьте TIO и сделайте TIimage=1. Тоже не сделали. И почему вы объявили CHAR TIimage, а не битTIimage? Это разные вещи.
-
VasilyS
(08.01.2010, 18:32:49
80.92.96.25
,
пустое
)
Работает!! Но есть неприятный глюк (ньюанс). Как его объяснить?
-
Радиогубитель
(08.01.2010, 20:12:35
208.87.243.66
, 733 байт)
Данные не пропадают! Просто Ваш алгоритм кривой.(+)
-
ВВ
(08.01.2010, 23:30:22
95.26.104.124
, 635 байт)
У кого есть идеи почему так происходит??
-
Радиогубитель
(08.01.2010, 21:05:32
208.87.243.66
,
пустое
)
Потому что вся идея построения программы через задницу. Не успевает обработать символ до прихода следующего
-
1111111
(08.01.2010, 23:29:36
95.133.106.198
,
пустое
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
увеличьте 6 на 2:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru