|
как прочесть порт |
|
|
|
May 12 2012, 16:00
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 27-06-07
Пользователь №: 28 739

|
Отлаживаю в Кейле с помощью симулятора программу. Цифровые выходы обозначил битовыми пременными например так "sbit rabota = P2^0;" Всё хорохо, когда пишу в порт, но когда пытаюсь использовать этот идентификатор в какой ни буть операции, например, "if (rabota)" или просто его присвоить другой переменной ничего не получается. Компилируется без ошибок, а операции или присвоения не выполняются. Пытался это сделать с помощью маскировки порта, например "P2 & 0x01" та же самая история по отдельности все значения просматриваются, а результат другой. Промучился почти целый день, а результат ноль. Уж очень достало, помогите!!!
|
|
|
|
|
 |
Ответов
|
May 14 2012, 13:40
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 27-06-07
Пользователь №: 28 739

|
Цитата(Палыч @ May 14 2012, 16:01)  Чтобы читать что-то с ноги МК51 нужно выдать в соответствующий бит порта единицу. Вот тут-то и надо не коментить, а изменить на Код pusk = 1; Палыч, спасибо. Попробовал, ничего хорошего не получил. Палыч, Коля, если не трудно, то покажите, пожалуйста, кусок текста или исправьте мой, как правильно, который "железно" работает у Вас. Может это действительно глюк отладчика кейла. Использую Keil4.0
|
|
|
|
|
May 14 2012, 16:53
|

Гуру
     
Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954

|
Цитата(schulgin @ May 14 2012, 17:40)  Палыч, Коля, если не трудно, то покажите, пожалуйста, кусок текста или исправьте мой, как правильно, который "железно" работает у Вас. Вы писали, что строку "pusk = 0;" - закоментировали. Так вот, если это действительно сделать (закоментировать), то строка 68 "if (pusk)" правильно работает в соответствии с установкой "Pins" окне "Parallel Port 0" ! Что у Вас ещё не "работает"? Ещё раз повторюсь: чтобы читать что-то с ноги МК51 нужно чтобы в соответствующем бите порта была единица. Эти единицы помещаются туда по сбросу МК. Вы же зачем то заносите туда нули.
|
|
|
|
Сообщений в этой теме
schulgin как прочесть порт May 12 2012, 16:00 Палыч Цитата(schulgin @ May 12 2012, 20:00) ...... May 14 2012, 05:40 schulgin Спасибо за отклик. Немного лирики. Кейлом и написа... May 14 2012, 08:35 Kolia Меня смущает эта строчка
pusk = 0;
фактически в... May 14 2012, 09:09  schulgin Цитата(Kolia @ May 14 2012, 12:09) Меня с... May 14 2012, 09:40   Kolia Цитата(schulgin @ May 14 2012, 12:40) ... May 14 2012, 10:07 schulgin Большое спасибо Бельченко. Собственно, прочитав ег... May 14 2012, 10:44 Kolia Цитата(schulgin @ May 14 2012, 13:44) Бол... May 14 2012, 12:34 Палыч Цитата(schulgin @ May 14 2012, 14:44) Всё... May 14 2012, 13:01  Kolia Цитата(schulgin @ May 14 2012, 15:41) Кол... May 14 2012, 13:21   Палыч ТС так и не сказал: как определяет, что программа ... May 14 2012, 13:38 schulgin Коля, когда Вы сказали, что можно и логический ан... May 14 2012, 12:41 schulgin Спасибо за участие. После добавления промежуточных... May 15 2012, 07:44 редактор ЦитатаОтлаживаю в Кейле с помощью симулятора прогр... May 17 2012, 11:32 Harbinger Если мне память не изменяет, в силабсах по дефолт... May 17 2012, 16:48 редактор ЦитатаЕсли мне память не изменяет, в силабсах по д... May 18 2012, 07:14
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|