PIC 12F683

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

PIC 12F683

Mensagempor jessicapaloma22 » 10 Abr 2014 19:50

Olá gente,

Preciso de ajuda, estou tendo matéria de programação em assembler de PIC, e ele explicou quase nada tenho 3 PIC para programar, peguei já algumas coisas da net e tou tentando entender sozinha, tenho uma minuteria para fazer com o PIC 12F683, a configuração eu sei que é bem simples mas estou me batendo um pouco com as portas desse pic e com a referencia que vou precisar usar... Será que alguém pode me dar um HELP???? :roll:
jessicapaloma22
 
Mensagens: 2
Registrado em: 10 Abr 2014 19:44

Re: PIC 12F683

Mensagempor cfreund » 10 Abr 2014 20:05

Em ASSEMBLY.

Já tem o circuito pronto? Está com problemas com o ADC? É isso?
Cláudio F
Avatar do usuário
cfreund
Word
 
Mensagens: 672
Registrado em: 14 Out 2006 14:02
Localização: São Paulo

Re: PIC 12F683

Mensagempor andre_luis » 10 Abr 2014 22:57

O primeiro passo é criar um esboço do funcionamento do programa, seja em fluxograma, ou algo mais simples, tipo:

1- Se pressionar e soltar o botão A, a saída do pino B vai para o estado C
2 - Se a entrada analogica apresentar um valor maior que X durante um tempo Y, a saída Z vai para o estado W
3 - etc...etc...


Daí, o resto é apenas programação, e aí fica mais fácil pro pessoal ajudar...



+++
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Re: PIC 12F683

Mensagempor jessicapaloma22 » 11 Abr 2014 09:51

cfreund escreveu:Em ASSEMBLY.

Já tem o circuito pronto? Está com problemas com o ADC? É isso?


Siim sim eu tenho já o esquemático do circuito, e já comecei a fazer o programa mas estou com dificuldades fiz algumas linhas, porém estou com dificuldade na portas e os registradores, porque ele é diferente do PIC 16f628a. Os registradores são o GPSIO E O TRISIO. O meu circuito é simples, mas não tenho a mínima noção de programação to correndo atrás sozinha p aprender. É uma minuteria, um botão vai acionar, dai ele deve ler o LDR para dai acionar uma lâmpada, então dai conta 30segundos e desliga. Esse é o programa que já comecei

Código: Selecionar todos
#iclude <p12f683.inc>

__CONFIG _CP_OFF&_CPD_OFF&_INTOSCIO&_MCLRE_OFF&_PWRTE_ON&_WDT_OFF&_BODEN_ON

#define banco 0 bcf STATUS,RP0
#define banco 1 bsf STATUS,RP0
#define LDR    PORTA,0
#define BOTAO  PORTA,0
#define LAMP   PORTB,0

org 0x000          ;ínicio do programa
goto setup         ;configuração inicial

setup
banco 1
movlw B'00000001'   
movwf  TRISIO          ;dfine como entrada
movlw B'00000000'
movwf  GPIO             ;define como saída
movlw B'00000110'   
movwf  OSCON            ;( ou usar   bcf OSCON, IRCF, pois quando este é resetado opera em 4MHZ)   

banco 0
movlw B'00000101'        ; usar comparador

movwf  CMCON

clrf      PORTA
clrf    PORTB

goto main

main
btfsc BOTAO

goto ligalerLDR
goto desliganlerLDR

ligalerLDR

bsf  LDR  ; liga LDR

desliga nao lê LDR

bcf ; desliga LDR
goto main
jessicapaloma22
 
Mensagens: 2
Registrado em: 10 Abr 2014 19:44

Re: PIC 12F683

Mensagempor cfreund » 11 Abr 2014 12:52

Não tenho experiência com PIC, mas vou arriscar uns pitacos:

Pelo que vejo no datasheet, esse PIC não tem PORTA/PORTB e sim, GPIO[6:0].

Exemplo do manual para Inicializar porta:

asm code
BANKSEL	GPIO	;
CLRF GPIO ;Init GPIO - page 31

MOVLW 07h ;
MOVWF CMCON0 ;digital I/O - page 56

BANKSEL ANSEL ;
CLRF ANSEL ;digital I/O - page 33

MOVLW B'11111110' ;
MOVWF TRISIO ;Set GP<6:1> as inputs and set GP0 as output - page 32


Para operar em 8MHz:

asm code
BANKSEL	OSCCON	;
MOVLW B'1110001' ;
MOVWF OSCCON ;

WAIT_HTS
BTFSS OSCCON,HTS ;oscillator stable?
GOTO WAIT_HTS


Testar GPIO2 (Pino 5):

asm code
BTFSS	GPIO,GP2	;
GOTO EN_LDR ; GPIO2 = 0



Para evitar erros na leitura do botão, trabalhe sempre em nível alto (5V) quando aberto e indo a nível baixo (0V) quando acionado.

Datasheet:
Cláudio F
Avatar do usuário
cfreund
Word
 
Mensagens: 672
Registrado em: 14 Out 2006 14:02
Localização: São Paulo


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

cron

x