Конфигурация портов
|
|
QWERTY |
Дата: Пн, 17.02.2025, 14:07 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
100
Замечания:
±
На сайте с 11.05.2008
Статус:
Offline
|
Никак не могу победить. Как включить подтяжку? Пробовал команду Input PORTA.0 Никакого эффекта. Device = 16F1823
Declare Xtal=8
TRISA = %10000001 TRISC = %00000000
OSCCON.7 = 0 '4XPLL OSCCON.6 = 1 'БИТЫ 6-3 ЧАСТОТА INTOSC OSCCON.5 = 1 '1110 -8МГц ПРИ 4XPLL = 32МГц, 1111 - 16МГц OSCCON.4 = 1 OSCCON.3 = 1 OSCCON.1 = 1 'Работа от внутреннего генератора
OSCTUNE = %000000 'калибровка внутреннего генератора 000000 - заводская, 111111 - максимум
Clear Main:
If PORTA.0=1 Then High PORTC.2 DelayMS 500 Low PORTC.2 DelayMS 500 Else Low PORTC.2 DelayMS 2000 EndIf GoTo Main
Сообщение отредактировал
QWERTY - Пн, 17.02.2025, 14:09
|
|
|
|
xvovanx |
Дата: Пн, 17.02.2025, 19:35 | Сообщение # 2 |
Группа:
Модераторы
Ранг:
Помогаю всем
Сообщений:
350
Замечания:
±
На сайте с 02.05.2013
Статус:
Offline
|
Цитата QWERTY (  ) Никак не могу победить. Как включить подтяжку?
А даташит смотрели? Нееет 
WPUA.5=0/1 для входа А5 выбираем 0 либо1 WPUA.4=0/1 WPUA.3=0/1 WPUA.2=0/1 WPUA.1=0/1 WPUA.0=0/1 для входа А0 соответственно.
Для порта C по аналогии
Либо в таком виде WPUA = %00000001 (тут вход A0 с подтяжкой)
Сообщение отредактировал
xvovanx - Пн, 17.02.2025, 19:43
|
|
|
|
QWERTY |
Дата: Пн, 17.02.2025, 20:24 | Сообщение # 3 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
100
Замечания:
±
На сайте с 11.05.2008
Статус:
Offline
|
Цитата xvovanx (  ) А даташит смотрели? Нееет А для чего указывать TRISA =%00000001?
 Я думал что переключение регистра порта на вход автоматически натягивает функцию Pullaps на порт. Что тогда делает объявление Declare Pullaps=ON? У данного контроллера порты обрезаны по 6 выводов. Тогда и для TRISA можно указывать только 6 бит конфигурации? Типа TRISA= %010100, так? Еще и это нужно задавать наоборот. Младший разряд порта находится слева? в моем случае заработало на вход только так: TRISA = %10000000 хотя это портА.0 и, казалось бы, должно быть TRISA = %00000001 Получается протон без знания полного внутреннего устройства контроллера не работает. Вот вам и уровень входа в профессию для начинающих . Beginner's All-purpose Symbolic Instruction Code P.S. Однако же, спасибо за наставление!
Сообщение отредактировал
QWERTY - Вт, 18.02.2025, 00:04
|
|
|
|
xvovanx |
Дата: Вт, 18.02.2025, 00:22 | Сообщение # 4 |
Группа:
Модераторы
Ранг:
Помогаю всем
Сообщений:
350
Замечания:
±
На сайте с 02.05.2013
Статус:
Offline
|
TRISA регистр включает только вход/выход без подтяжек, не везде они нужны. Если портов меньше 8, то пустые места забиваем любыми 0/1. Младший разряд всегда справа, TRISA = %00000001 должен работать. Уровень для начинающих - вы выбрали не самый простой контроллер, там у каждого пина куча возможных конфигураций, отсюда и нюансы.
|
|
|
|
QWERTY |
Дата: Вт, 18.02.2025, 18:43 | Сообщение # 5 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
100
Замечания:
±
На сайте с 11.05.2008
Статус:
Offline
|
Цитата xvovanx (  ) вы выбрали не самый простой контроллер, там у каждого пина куча возможных конфигураций, отсюда и нюансы. Да вроде раньше пользовался протоном по мелочи. До сих пор в закромах 16Ф84, 16Ф877, и еще несколько лежат. Похоже контроллер битый, то что вчера работало, сегодня не работает(( Завтра постараюсь новый купить если будет оказия. Этот у меня вместе с индикаторами из устройства контроля фаз. Новый приклею и попробую все с начала)) Похоже досталось ему, не зря выбросить хотели.
|
|
|
|