Подскажите что не так
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
|
Отправлено
AVR2313 26 марта 2004 г. 10:28
|
|
|
|
Подпрограмма должна определить когда линия освободится после приема.
Опрашиваю 41 раз порт с интервалом DL, если что есть значит пауза и обратно опрос. В реале не работает, не пойму в чем проблема.
Подскажите. В заранее спасибо.
void test() // Функция проверяющая окончание сигнала
{byte n,i=0,b_t=0;
A1: for (i =0; i<41;i ++)
{
DelayEx(DL); // Опрос порта в 41 DL
n = RFIn;
b_t += n;
}
if (b_t >1) {//СИГНАЛ ЕСТЬ}
else {//СИГНАЛА НЕТ}
b_t = 0;
goto A1;
Составить ответ
|||
Конференция
|||
Архив
Ответы
- Спасибо всем за советы попробую все исправить. — AVR2313 (29.03.2004 14:36, пустое)
- Ответ: — Михаил Е. (26.03.2004 17:39, 1931 байт)
- Может DelayEx(DL) не работает из-за оптимизации? — Бендер++ (26.03.2004 15:23, пустое)
- Увас свободна линия определяеться по биту или по всему байту? И потом использовать в языках высокого уровня признак плохого тона :)) — des00 (26.03.2004 13:15, пустое)
- Что такое RFIn? Для чего нужен оператор if? ???? — Bill (26.03.2004 12:48, пустое)
- уберите на всякий случай goto, а вместо него поставьте while(1){............} — KAN (26.03.2004 12:33, пустое)
- Как именно не работает? Поподробнее . А причин может быть 1000 — =L.A.= (26.03.2004 10:46, 135 байт)
- Не работает, или не компилируется? — A1exD (26.03.2004 10:42, пустое)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru