Ir ao conteúdo
  • Cadastre-se

shunt

Membro Pleno
  • Posts

    260
  • Cadastrado em

  • Última visita

Reputação

12
  1. Deve ser o velho problema do 628A ... Se ele for configurado para oscilador interno e gravado uma vez, ele entra em operação tão logo seja alimentado, portanto mesmo que se aplique a VPP ele não entra no modo de gravação, por isto você não consegue apagar o dispositivo. A solução é simples, No menu "tools" deve ter algo como: Use VPP First (não me recordo bem se está desta forma). Significa que é para o gravador aplicar a VPP antes de alimentar o 628A, colocando ele no modo de gravação. Lembre-se de desativar esta opção se for testar com outros modelos. Foi um quebra-cabeças até descobrir isto para este modelo. Tente aí, veja se funciona. Abraço.
  2. Perdoem o [off], mas sendo um compartilhamente mister, poderia indicar o "endereço" aos amigos membros deste forum, pois deve haver muita informação que será de grande valia/auxilio para todos. É só uma dica. Abç.
  3. Amigo, existe uma apostila do proteus que ensina criar o componente tanto no isis quanto no ares em português BR. Faça uma busca na rede que a encontrará. Uma solução rápida para este componente é o uso de uma barra de pinos que possui exatamente a mesma distancia entre seus pinos iguais aos pinos do TDA7056. Busque no Isis por "conn-sil9" (escreva sem as aspas no campo de busca). Agora respeite os pinos do CI e faça as devidas ligações. Abraço.
  4. Ao colega que alegou ser perigoso, digo que usamos isto em feiras de escolas onde moro, sem perigo. O perigo que pode existir é o cara se quebrar todo dependendo da altura que ele estiver. Segue um esquema. Sou péssimo em desenho Com uma pilha já dá um choque e tanto, não coloque mais que 4. Lembre-se que para utilizar isto, você precisa adquirir aquelas placas que informam a presença de tensão e risco de choque eletrico: Se fosse assim edusrj as empresas de segurança (que instalam eletrificadores) estariam onde? O dia que cadeado segurar ladrão, compro muitos deles. Abç.
  5. Não amigo, isso não dará choque ... é o valor comum encontrado naquelas chaves de teste com neon. Você pode fazer algo mais simples sem risco. Um reator antigo (aqueles à transformador) para lampadas de 20w, 4 pilhas médias ou grandes ... voce liga as 4 pilhas em série (somando as tensões 4 x 1,5v = 6v), e por sua vez, liga o positivo das pilhas em um dos fios do reator (estes antigos são 2 fios). Lembra a brincadeira do fio torto onde uma vareta com argola deve passar sem encostar? A ideia é essa ... duas argolas uma em cada extremidade do muro ... estas vão ao GND das pilhas e a uma barra de terra. O outro fio do transformador, você passa entre estas argolas sem encostar, bem esticado, de forma que qualquer toque ele encoste em uma delas, e isole bem. Como o circuito consome algo apenas quando os 2 fio se tocam, a durabilidade vai ser bem grande. Já fiz isso e provei do veneno é fácil e barato, e nada perigoso. Ao tocar um fio no outro, nada acontece, mas ao desencostar ... nem precisa dizer ... Use por sua conta e risco. Abç.
  6. Para motor, alguns que possuem redutor são perfeitos para o trabalho: http://loja.multcomercial.com.br/ecommerce_site/categoria_1593-3867_4689_Motores-Motor-com-Reducao Quanto ao controle, precisa definir que tipo de aprimoramento/facilidade quer no automatismo: * Eletronica discreta * Eletronica embarcada Existe diversas formas, ex. pequenos kits já montados, que se aciona por um controle de portão (RF), dois fins-de-cursos para não destruir o trilho da persiana ... você já tem um sistema funcionando! Pense um pouco. Abç.
  7. Sempre uso eletrolítico de 1uF x 6,3v ou 10v de boa qualidade. Se tiver de tantalo melhor ainda. Cabos bons também faz parte do sucesso no projeto. Abraço.
  8. Se fizer a descompactação com o winrar, sim! Ele extrai tudo para uma pasta. Assim, você acessa as videoaulas dentro deste diretório!
  9. Julio, não uso o CCS. Prefiro o mikroC. Estou no trabalho, não tenho como mandar algo em C agora. À noite, faço um exemplo de código e envio. O assunto que deverá saber, equivalente ao lookup, é matrizes. Se quer aprender em C, pode estudar C ansi, pois a maioria dos compiladores para pic usam este padrão. Este curso vai te ajudar muito. É um arquivo de ~240Mb. Tem todo o básico. Abraço.
  10. É isso mesmo Julio. Use uma variável para "Modo" ex.: (x), um botão para incrementar x, se quiser, outro para decrementar, senão quando x for igual ao numero de funções máxima definida, se pressionar para incrementar, x retorna à função inicial. Exemplo: 5 funções: 0, 1, 2, 3, 4. Se x == 4 e for pressionado incrementar, x agora vale 5, //Você não tem 6 funções (0 à 5 = 6 funções), então: se x == 5, x = 0 //x recebe zero e retorna à função inicial. -- Outra unica variável (deve ser global para ser acessada por todas as funções) pode ser usada dentro de cada função ex: velocidade. Um botão para incrementar e outro para decrementar. . Ex.: Se x == 0: Velocidade = xxx //aqui você inicializa a velocidade, caso contrario, a velocidade atual será igual a da última função executada; Também informe a velocidade desejada inicial ou dentro do laço abaixo, para poder variar em RealTime. Enquanto x == 0: faça isto, ou aquilo. . Creio que elucida um pouco como "prender" o programa em uma função. Percebi que quando você disse fazer uma interrupção, creio que entendeu fazer a varredura dela o tempo todo. Isso não é legal, pois pode interferir no desempenho do programa. Tente diferenciar Interrupção por Hardware e Varredura "no braço"! A interrupção que cito, é por Hardware ex.: TMR0, TMR1, TMR2, TMR3, INT_externa, Mudança de estado B4:B7 entre outras dependendo do tipo do microcontrolador. . Existe diversas forma de fazer sua lógica. Vá pensando aí, enquanto que em segundo plano aprende cada vez mais lógica e raciocínio lógico. Abraço.
  11. Maravilha seu trabalho! Quanto ao uso dos botões, em basic não sei como fica, mas o material do mestre Paulo, contido no link abaixo vai te mostrar o caminho das pedras: http://forum.clubedohardware.com.br/microcontroladores-circuitos-linguagens/594329 Basicamente o que tem de fazer é: Configurar no TRIS de qualquer PORT, o pino que deseja usar como entrada. TRISx = 0b00000001 // Chamei o bit0 do tris de entrada, o restante é saída... O restante já sabe como é (configurações iniciais: oscilador, lookup, etc.) Em determinadas ocasiões, seu programa tem que analisar o estado do botão. Se externamente deixar ele em pullup, terá que aterrar o pino ao pressionar o botão. A analise fica assim: Se o pino x == 0, faça isto ou aquilo. -- Se externamente deixar em pulldown, terá que levar o pino à +VCC. Analise: Se o pino x == 1, faça isto ou aquilo. Você terá apenas que descobrir como fazer isto em basic. -- Em C, fica assim(fica evidente que algumas macros deverão ser usadas nisso): if(!pinoX){ // Se o pino for de +Vcc para GND, faça isto. } if(pinoX){ // Se o pino for de GND para +Vcc, faça isto. } A lógica, você propõe. Dependendo da situação em que se encontra o seu programa, a varredura do botão deverá ocorrer sempre, caso contrario deverá trabalhar com interrupções. O pessoal do basic pode te ajudar com isso, muito melhor que eu! Excelente o cubo que montou! Deve ter dado mais trabalho fazer o cubo do que o software
  12. Parabéns!!! Agora já é um especialista! o resto é "pipoca"!!! Mande o vídeo para vermos como ficou seu projeto. Grande abraço!
  13. É isso aí! O "mecanismo" do negócio você já entendeu! Agora é mão na massa, ou melhor na placa e programação. O tempo para que pareçam estar todos acesos, fica entre 3 e 6 ms, acima disso perceberemos a cintilação (leds piscando). Abraço!
  14. Considere a imagem: Você escolhe um port do microcontrolador para saída de dados, ou seja os valores de sua matriz. Para cada indice da matriz, terá de ter um outro pino de qualquer outro port para poder ativar sua coluna, em nossa imagem, é o uln2803. A matriz no seu código possui 8 indices. Então um loop de 0 à 7 contagens (totalizando 8) vai varrendo sua matriz. Em cada índice jogado no port de dados você tem que ligar um pino correspondente a este índice. Neste momento sua coluna será ligada e verá os leds correspondentes acesos. Creio que já elucida como funciona (Expliquei 2x ). . Vamos criar a matriz de acordo com a imagem acima: Começamos no quadrado amarelo (Considere o peso dos bits à direita e somente os "leds" que estão em "acesos"): . 128+64+32+1 = 225 (indice 0 da matriz) 16+2 = 18 (indice 1 da matriz) 32+8+4 = 44 (indice 2 da matriz) 64+2 = 66 (indice 3 da matriz) 64+2 = 66 (indice 4 da matriz) << daqui p/ baixo repete veja a figura. 32+8+4 = 44 (indice 5 da matriz) 16+2 = 18 (indice 6 da matriz) 128+64+32+1 = 225 (indice 0 da matriz) . mascara = LookUp(225, 18, 44, 66, 66, 44, 18, 225), loop Nossa mascara já está pronta! Em decimal mesmo! Se quiser use em hex. Agora falta definirmos os pinos que irão ser associados com cada índice na mascara. São os coloridos: Preto = indice 0; Bordô = indice 1; Amarelo = indice 2; Verde = indice 3; Roxo = indice 4; Vermelho = indice 5; Cinza = indice 6; Marron = indice 7; . Lembre-se: não defini pinos por não saber qual microcontrolador está usando. Fiz colorido para generalizar, com isso possibilita o uso em qualquer tipo de uC. . Seu código está quase completo. Só não definiu os pinos para cada índice. . Vamos em quase pseudo código explicar como funciona. . 1 - Pega-se o indice 0 da matriz e escreve no port de dados. 2 - Liga o pino de controle correspondente ao indice 0 para acender os leds (é o preto). 3 - Aguarda um tempo (delay"zinho", determine o melhor tempo testando ). 4 - Desliga o pino de controle (preto). . ... e tudo se repete: . 1 - Pega-se o indice 1 da matriz e escreve no port de dados. 2 - Liga o pino de controle correspondente ao indice 1 para acender os leds (é o bordô). 3 - Aguarda um tempo. 4 - Desliga o pino de controle (bordô). . ... indice 2: . 1 - Pega-se o indice 2 da matriz e escreve no port de dados. 2 - Liga o pino de controle correspondente ao indice 2 para acender os leds (amarelo). 3 - Aguarda um tempo. 4 - Desliga o pino de controle (amarelo). . ... indice 3: . 1 - Pega-se o indice 3 da matriz e escreve no port de dados. 2 - Liga o pino de controle correspondente ao indice 3 para acender os leds (verde). 3 - Aguarda um tempo. 4 - Desliga o pino de controle (verde). . ... indice 4: . 1 - Pega-se o indice 4 da matriz e escreve no port de dados. 2 - Liga o pino de controle correspondente ao indice 4 para acender os leds (roxo). 3 - Aguarda um tempo. 4 - Desliga o pino de controle (roxo). . ... indice 5: . 1 - Pega-se o indice 5 da matriz e escreve no port de dados. 2 - Liga o pino de controle correspondente ao indice 5 para acender os leds (vermelho). 3 - Aguarda um tempo. 4 - Desliga o pino de controle (vermelho). . ... indice 6: . 1 - Pega-se o indice 6 da matriz e escreve no port de dados. 2 - Liga o pino de controle correspondente ao indice 6 para acender os leds (cinza). 3 - Aguarda um tempo. 4 - Desliga o pino de controle (cinza). . ... indice 7: . 1 - Pega-se o indice 7 da matriz e escreve no port de dados. 2 - Liga o pino de controle correspondente ao indice 7 para acender os leds (marrom). 3 - Aguarda um tempo. 4 - Desliga o pino de controle (marrom). . Fica nesse loop infinitamente ou mesmo gere outros padrões, etc ... Creio que isto ajuda elucidar um pouco. Para controlar o cubo, digamos que terá que fazer isto em cada matriz dele, e mais pinos serão usados. Teste este exemplo mais simples e quando estiver pronto, faça o mais avançado. Espero ter contribuído um pouco. Muito obrigado ao jfeliciano pelo link da devboard. Abraço à todos.
  15. Falava do cubo de leds. Já tinha visto. Trabalhe com matrizes, o código fica mais legivel(enxuto se preferir!). Veja este post. E procure mais sobre lookup(matrizes). Abraço.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...