Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: demanik, ivan_fd  
Pic12F629
tolyan249 Дата: Ср, 24.02.2016, 10:00  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 199
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

не могу понять почему на выходе GPIO.4 всегда 1, хотя пишу что GPIO.4=0

------------------------- Опции компилятора --------------------------------

Device = 12F629 'Выберем микроконтроллер
Declare Xtal= 4                    'Частота генератора
Declare Reminders NO      'Отключим предупреждения компилятора
'All_Digital YES                     'Выключим АЦП
'Включим защиту данных и программы, выключим внешний вход сброса,
'включим сброс при включении питания, включим "собаку" для надежности
'устройства, используем внутренний генератор:
Config CPD_OFF, CP_OFF, MCLRE_OFF, PWRTE_ON, WDT_OFF, INTRC_OSC_NOCLKOUT

Dim flag    As Bit  '0-выключен 1-включен
Dim flag1   As Bit
Dim flag2   As Bit
Dim flag3   As Bit
Dim flag4   As Bit
Dim flag5   As Bit

Dim flgokl  As Bit
Dim flagvkl As Bit
Dim n       As Byte
Dim n1      As Byte
Dim tm      As Word
Dim m       As Byte
Dim nn      As Byte
Dim nm      As Byte

GPIO = %000000                    'Настроим порты
CMCON = 7                          'Компаратор нам не нужен, отключим его
TRISIO = %001000                'Настроим направление работы портов(см. выше описание портов)
'OPTION_REG = %00000100 'Разрешим подтягивающие резисторы, прерывание - по спаду
'предделитель на 16 включим перед
'WPU = %011101 'Настроим подтягивающие резисторы индивидуально для каждого порта

Clear

main:
GPIO.4=0
delayms 1000
GPIO.4=1
delayms 1000
goto main

end

простая мигалка
Спасибо.


если знаешь,помоги.
Сообщение отредактировал tolyan249 - Ср, 24.02.2016, 13:08
ЯНДЕКС Дата: 24.02.2016
Matrix252005 Дата: Ср, 24.02.2016, 10:23  |                                                                                                                Сообщение # 2
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 636
Репутация: 43   ±
Замечания:   ±
На сайте с 12.10.2007

Статус: Offline

Приятного времени суток!!!!

Цитата tolyan249 ()
GPIO = %000000                    'Настроим порты
CMCON = 7                          'Компаратор нам не нужен, отключим его
TRISIO = %001000                'Настроим направление работы портов(см. выше описание портов)
tolyan249, я давно не работал с протоном, но разве TRISIO - это не "Настроим порты"??? А GPIO -"Настроим направление работы портов(см. выше описание портов)"...

Попробуйте так:
....
TRISIO = %000000
GPIO = $FF
....

Ну или как Вам нужно...


THE TRUTH IS OUT THERE.

С уважением, Николай.
ivan_fd Дата: Ср, 24.02.2016, 10:54  |                                                                                                                Сообщение # 3
Группа: Модераторы
Ранг:  Специалист
Сообщений: 894
Репутация: 124   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Нет там все правильно. TRISIO - это направление, а GPIO - это сами порты.

tolyan249, а где у вас не работает? У меня в протеусе все работает как надо.
tolyan249 Дата: Ср, 24.02.2016, 13:04  |                                                                                                                Сообщение # 4
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 199
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

В железе светодиод постоянно горит, стираю программу включаю пик естественно он не горит.
значит где то проблема в конфигурации.  а где копать не наю, в протеусе то работает.
на других портах работает ну естественно кроме GPIO.3-так как всегда является входом.


если знаешь,помоги.
Сообщение отредактировал tolyan249 - Ср, 24.02.2016, 13:09
Matrix252005 Дата: Ср, 24.02.2016, 13:10  |                                                                                                                Сообщение # 5
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 636
Репутация: 43   ±
Замечания:   ±
На сайте с 12.10.2007

Статус: Offline

Попробуйте такую конфигурацию:

Device = 12F629 
Reminders = OFF
Config INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, MCLRE_OFF ;No crystal, no reset
Reminders = On

All_Digital = On
....

Ну и дальше по тексту...


THE TRUTH IS OUT THERE.

С уважением, Николай.
ivan_fd Дата: Ср, 24.02.2016, 15:39  |                                                                                                                Сообщение # 6
Группа: Модераторы
Ранг:  Специалист
Сообщений: 894
Репутация: 124   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Посмотрите при программировании внимательно на конфигурацию.
Должна быть, при вашей конфигурации, 0x3F84.
tolyan249 Дата: Ср, 24.02.2016, 16:07  |                                                                                                                Сообщение # 7
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 199
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

Хорошо Спасибо ,проверю отпишу.

если знаешь,помоги.
tolyan249 Дата: Ср, 24.02.2016, 16:09  |                                                                                                                Сообщение # 8
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 199
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

это конфигурация при програмировании
Прикрепления: 5017000.jpg (148.4 Kb)


если знаешь,помоги.
ivan_fd Дата: Ср, 24.02.2016, 16:48  |                                                                                                                Сообщение # 9
Группа: Модераторы
Ранг:  Специалист
Сообщений: 894
Репутация: 124   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

На рисунку не видно FOSC0.
Но еще у Вас пишет config = 4005, а это уже INTOSC_Clockout
tolyan249 Дата: Ср, 24.02.2016, 17:12  |                                                                                                                Сообщение # 10
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 199
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

Спасибо всем проблема решилась при програмировании контролера програматором пр выствлениии флагов, вот так заработало
Прикрепления: 1496298.jpg (74.7 Kb)


если знаешь,помоги.
  • Страница 1 из 1
  • 1
Поиск: