ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
Выход из спячки Pic12f629 |

10.10.2007, 21:45
|
|
Участник форума
Регистрация: 08.11.2006
Сообщений: 208
Провел на форуме: 1038169
Репутация:
184
|
|
Выход из спячки Pic12f629
контроллер впадает в спячку, но выходить из нее по прерыванию по изменению уровня на линиях ввода\вывода не желает. если включить но заранее подать выс уровень на линию - тогда горит светодиод (бит 4 GPIO=1 )
Код:
list p=12F629
#include <p12f629.inc>
__CONFIG _CP_OFF & _WDT_OFF & _MCLRE_OFF & _INTRC_OSC_NOCLKOUT
counter equ 0x0a
count1 EQU 0x0b
count2 equ 0x0c
#define led GPIO,4
#define KEY1 GPIO,0
#define KEY2 GPIO,1
#define KEY3 GPIO,3
;------calibr Gen--------
bsf STATUS,RP0;Bank 1
call 3FFh ;Get the calibr value
movwf OSCCAL ;Calibrate
clrf INTCON
init;-----------inst GPIO--------
bsf STATUS,RP0
movlw b'00000000'
movwf OPTION_REG
movlw B'00101111'
movwf TRISIO
movlw b'00001011'
movwf WPU
movlw b'00001011'
movf IOCB
bsf INTCON,3
bcf INTCON,0
bcf STATUS,RP0
movlw 0xff
movwf CMCON
clrf GPIO
;---------------------------
opr btfss KEY1
goto $+4
bcf led
sleep
nop
goto init
bsf led
goto opr
end
кто хотябы вообще имел дело с этим намекните что нетак понимяю что в этой писаине разбиратся никто небудет, даже отладчик дальше слипа не работает 
Последний раз редактировалось MegaDeth; 10.10.2007 в 23:46..
|
|
|

10.10.2007, 23:05
|
|
Постоянный
Регистрация: 01.01.2007
Сообщений: 796
Провел на форуме: 2693408
Репутация:
861
|
|
Я не мастер в этом деле, но может надо указать сколько по времени sleep должен длица?)
|
|
|

10.10.2007, 23:44
|
|
Участник форума
Регистрация: 08.11.2006
Сообщений: 208
Провел на форуме: 1038169
Репутация:
184
|
|
n0ne, нет, это спячка дло тех пор пока не изменятся уровни на входах (прерывание простоя если мона выразицо)
простой для экономии энергии (в пульте ДУ система)
смотрел другие исходники - ну все же также и работает! инициализацию брал из даташита по контроллеру.
|
|
|

12.10.2007, 00:28
|
|
Участник форума
Регистрация: 22.04.2007
Сообщений: 113
Провел на форуме: 355395
Репутация:
159
|
|
А можно по подробней о контроллере? Где именно используешь его? И чем его программишь? Поннипрогом?...
|
|
|

12.10.2007, 15:09
|
|
Участник форума
Регистрация: 08.11.2006
Сообщений: 208
Провел на форуме: 1038169
Репутация:
184
|
|
EmitRemus, http://www.microchip.ru/files/d-sheets-rus/PIC12F629_675.pdf русский даташит если кому нада вдруг) контроллер на 6 линий ввода\вывода, юзаю в пульте ДУ (почему не RfPic - надо чтобы схема вышла минимальной по цене).
задача контроллера - просыпаться когда жмут на кнопку и посылать данные на ИК передатчк (модуляция частотная). но вот просыпаться он не желает... я воообще думаю надо с нуля прошивку написать но не факт что не повторю ошибки. пробовал после sleep установить на ноге лог. 1 и повесить контроллер в безк. цикл, но уровень так и выставляется на ноге значит он не пробуждается...
програмлю ЖДМ'ом. (jdm)
|
|
|

12.10.2007, 18:51
|
|
Участник форума
Регистрация: 08.11.2006
Сообщений: 208
Провел на форуме: 1038169
Репутация:
184
|
|
проблема решена, тему в треш, спасибо тем кто пытался помочь!
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|