Код:movlw b'00001111' ; port A: высокий уровень movwf porta movlw b'11111111' ; Порт B: высокий уровень (светодиоды погашены) ..............................
Это ассемблер, а то что показывает IC-Prog - что получилось после компиляции.
PNP-LinE |
Привет, Гость! Войдите или зарегистрируйтесь.
Вы здесь » PNP-LinE » Контроллеры и Компьютеры. » Языки программирования
Код:movlw b'00001111' ; port A: высокий уровень movwf porta movlw b'11111111' ; Порт B: высокий уровень (светодиоды погашены) ..............................
Это ассемблер, а то что показывает IC-Prog - что получилось после компиляции.
Ааа, я сначала путал... думал ассемблер это набор цифр...
010001010010110011010101001010100101101111011101
Картина проясняется! Ура! Вчера уже выбрал для себя первое устройство!
Обычно кнопки ставят на порт В, и работают по прерываниям, но это потом.
Есть такая вещь как banksel, мне кажется удобнее чем самому банк переключать.
banksel TRISB
movlw b'11100001'
movwf TRISB
Отредактировано Deimos (2006-05-22 20:55:42)
Это не я писал, это исходник к самоделке на 16F84.... скачал у автора... пока я еще не разобрался с ассемблером и не совсем понимаю всех этих команд
В DS есть описание команд, где то ближе к концу.
Так по памяти:
movlw - положить литерал в WREG(регистр аккамулятор).
movwf - переместить из WREG в регистр
bsf - установить один бит в регистре.
bcf- очистить один бит в регистре
clrf- полностью очистить регистр.
Отредактировано Deimos (2006-05-22 15:37:43)
Я как раз сейчас читаю DS, эти команды как раз для ассемблера да?
Да.
Хорошо что их для 16f84 не так много как в 18-х
Да у меня с 18-ми совсем крыша съедет....
Вот смотрю описание команд... но все равно пока тяжело связать мысли о том как этот набор команд может что то включать или выключать, я уж молчу про обработку и какой-то примитивный анализ сигналов... :/
Вот смотрю описание команд... но все равно пока тяжело связать мысли о том как этот набор команд может что то включать или выключать, я уж молчу про обработку и какой-то примитивный анализ сигналов... :/
Через пару дней пройдет, вначале всегда голова тяжелая, поток как поймешь станет легче.
Для начала нужно с портами разобраться.
Зачем там TRIS.
Прочитал в DS, что TRIS вобще не рекомендуют использовать. Что это устаревшая команда что то вроде того...
Может тебе дать ссылочку на исходный текст программы - глянешь?
Я не о команде говорил, это регистр отвечающий за направление работы порта.
Может тебе дать ссылочку на исходный текст программы - глянешь?
Давай.
Я не о команде говорил, это регистр отвечающий за направление работы порта.
прости, путаю... вот про него из DS
Alexder1 написал(а):Может тебе дать ссылочку на исходный текст программы - глянешь?
Давай.
http://alexder1.narod.ru/NYT_RUS.ASM
ВЕС: 7кБ
Я говорил про это.
movlw b'00000000' ; Конфигурация порта B все на выход movwf trisb
Архив поврежден, не могу открыть.
Я не о команде говорил, это регистр отвечающий за направление работы порта.
Направление - ввод/вывод? (сигналов)
Архив поврежден, не могу открыть.
Секунду - сейчас исправлю..
ПРОВЕРЯЙ!!
Направление ввода/вывода линий порта.
Допустим PORTB0 = 1 ;
При TRISB0 = 1 на ножке RB0 не будет высокого уровня, а при TRISB0 = 0, будет.
Направление ввода/вывода линий порта.
Допустим PORTB0 = 1 ;
При TRISB0 = 1 на ножке RB0 не будет высокого уровня, а при TRISB0 = 0, будет.
Понял. Только логика обратная получается... 1=0, а 0=1...
Потихоньку стараюсь врубиться...
Вы здесь » PNP-LinE » Контроллеры и Компьютеры. » Языки программирования