collapse

* Posts Recentes

Diferenças entre potenciometro e reostato por senso
[Hoje às 13:46]


Router MEO ads, saídas do telefone não funcionam por brunus
[22 de Junho de 2018, 23:45]


Board com dsPIC por beirao
[19 de Junho de 2018, 08:42]


otto robot por josecarlos
[19 de Junho de 2018, 07:28]


Ligar bomba de água 400W a inversor por senso
[18 de Junho de 2018, 19:16]


VS-Solar Challenge 2018 por edeweld
[18 de Junho de 2018, 16:19]


NiCd - Lipo por almamater
[18 de Junho de 2018, 09:51]


Alfândega / Taxas Alfandegárias / Portes por SerraCabo
[17 de Junho de 2018, 17:26]


Vídeos: pontas prova osciloscópio e misturadora de som Tascam por SerraCabo
[17 de Junho de 2018, 15:34]


Bloco óptico (Laser-Sony) por senso
[15 de Junho de 2018, 09:29]

Autor Tópico: at89s52  (Lida 2144 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline dio123

  • Mini Robot
  • *
  • Mensagens: 932
at89s52
« em: 11 de Dezembro de 2012, 23:59 »
Boa noite,

A uns tempos a trás achei um at89s52 numa box televisão francesa,  e no fim de semana construi o usbasp.
Hoje montei este circuito
Fiz o programa no keil so ficar ligado porta 3 ligada e a 4 desligada . E testei no proteus tudo ok.
Fiz o upload para o at89s52 com proisp  tambem tudo ok.  O led 3 ligado 4 desligado.

Acontece que  o led está aceso mas muito fraquinho.
pensei que fosse por estar a alimentar pelo usbasp. peguei numa pilha 9v mais 7805 e o resultado é o mesmo.
Até exprimentei ligar o led sem resistencia mas a intensidade fica igual.
Troquei led e porta e o resultado é o mesmo.

O que está aqui mal?

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 1.941
Re: at89s52
« Responder #1 em: 12 de Dezembro de 2012, 00:15 »
Duas coisas, o link da foto (que até podias colocar directamente a foto aqui), e a ligação do cristal, nenhum terminal dele deve ser ligado ao gnd

Offline Hugu

  • Mini Robot
  • *
  • Mensagens: 5.531
  • Keyboard not found. Press any key to continue.
    • [url=www.g7electronica.net]G7 Electrónica.net[/url]
Re: at89s52
« Responder #2 em: 12 de Dezembro de 2012, 00:24 »

Offline dio123

  • Mini Robot
  • *
  • Mensagens: 932
Re: at89s52
« Responder #3 em: 12 de Dezembro de 2012, 18:46 »
Montei o circuito deste tutorial http://www.8051projects.info/content/8051-tools/14-usb-8051-avr-programmer.html.  Mas o problema continua.

O problema é que os pinos ON ficam apenas com 1.75v.  Porque? o que está mal?
Já remontei o circuito 3 vezes mas está bem não vejo qualquer problema.

O codigo que estou a usar é.
Citar
#include <REGX52.h>
#include <math.h>
void main(){
     while(1){
            P1_0 = 0;   //Turn ON the LED
            P1_1 = 1;    // Turn OFF the LED
                 P1_2 = 0;   //Turn ON the LED
            P1_3 = 1;    // Turn OFF the LED
                  }
}

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.520
  • Helpdesk do sitio
Re: at89s52
« Responder #4 em: 12 de Dezembro de 2012, 19:49 »
Não estás a definir os pinos como saidas, o que estás a fazer é a ligar e desligar os pull-ups e ter os pinos como entradas.
Avr fanboy

Offline dio123

  • Mini Robot
  • *
  • Mensagens: 932
Re: at89s52
« Responder #5 em: 14 de Dezembro de 2012, 13:49 »
Boa tarde,

Descobri que a ligação dos leds estavam mal.
tinha  pino-resistencia-led-gnd.
e é  vcc-resistencia-led-pino.

Outro problema é que ainda nao descobri como defino o p1^2 como saida.
 Deve ser algo tipo  p1^2 = 0xff; mas nao encontro nada.
Vi vários exemplos da net mas nenhum tem como definir o pino/porta como saida.
este foi o exemplo de blink led mais completo que encontrei http://pastebin.com/F3yeTPZk
Todos os outros tem +/- a mesma coisa.

Estou a usar keil uVision4.0 para compilar há melhor que isto?

obrigado

Offline ivitro

  • Mini Robot
  • *
  • Mensagens: 451
Re: at89s52
« Responder #6 em: 14 de Dezembro de 2012, 15:52 »
Neste micro não defines nada como saída ou entrada, ou lês o pino ou metes o valor lá dentro.