Matriz de Leds

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Mensagempor [Daniel] » 19 Mar 2010 12:53

vtrx escreveu:Sem ser chato,só não entendí o porque de 'chegar' num PIC de 40 Pinos,não vai ficar um Layout 'grande' com pinos sobrando?
A não ser que pretende algo a mais...


Bem, eu queria adicionar um sensor de temperatura e usar a serial, a matriz tem 24pinos para os leds, afinal e uma matriz bicolor. E ai aproveitar que o pic tem 8K de flash e fazer o alfabeto todo maiusculo e minustulo com letras personalizadas...

E também, queria aprender a programar um pic maior, mas isso la pra frente.
Avatar do usuário
[Daniel]
Byte
 
Mensagens: 106
Registrado em: 18 Nov 2009 09:14

Mensagempor vtrx » 19 Mar 2010 19:36

fazer o alfabeto todo maiusculo e minustulo com letras personalizadas

Com uma Eeprom 24C16 voce grava (8X8-mono)a tabela ASCII todinha,inclusive os caracters especias.
sensor de temperatura

Usa o DS1621,vai utilizar dois pinos (I2C) que podem ser compartilhados com uma Eeprom e um DS1307 se for implemetar um relógio.
matriz bicolor

Realmente não tive 'saco' pra implementar colorido...
aproveitar que o pic tem 8K de flash

Para programar apenas uma matriz mesmo com os caracteres é bastante coisa,ainda mais em ASM.No PIC 16F628 tive que usar Eeprom 24C16 para os caracteres e efeitos, e tive que implementar um 'chaveador' para poder usar os pinos I2C para utilizar o PS2 junto,mas em compensação a placa ficou bem pequena.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Mensagempor [Daniel] » 20 Mar 2010 09:06

vtrx escreveu:Com uma Eeprom 24C16 voce grava (8X8-mono)a tabela ASCII todinha,inclusive os caracters especias.


Siceramente eu nao consigo compreender isso ainda, pelo que sei uma E2PROM externa usa a serial do PIC, nao faço a minima ideia de:
-como sao organizados esses caracteres la dentro, ou seja, voce poe la dentro os caracteres assim: 0x1c, 0x0f...etc?
-como fazer essa comunicação do pic com algo externo, digo a eeprom e a dalas...
-como voce grava os dados nesse eeprom? tem um programa que faz isso?

bem admito para aprender e maravilhoso, certamente se eu concluisse isso desta forma aprenderia muita coisa!


vtrx escreveu:Usa o DS1621,vai utilizar dois pinos (I2C) que podem ser compartilhados com uma Eeprom e um DS1307 se for implemetar um relógio.
Quote:


cara!! eu nao entendo como comunicar duas coisas nos mesmos pinos! eles tem frequencias diferentes algo assim?

vtrx escreveu:Realmente não tive 'saco' pra implementar colorido...


rsrs, bem eu fiz assim tambem pois quando comprei as matrizes só tinha bicolor ai eu pensei, vais esta mesmo, mas dpos na h0ora de montar eu vi isso e pensei, "po eu paguei mais por isso, entao vou usar todos os recursos!"


vtrx escreveu:Para programar apenas uma matriz mesmo com os caracteres é bastante coisa,ainda mais em ASM.No PIC 16F628 tive que usar Eeprom 24C16 para os caracteres e efeitos, e tive que implementar um 'chaveador' para poder usar os pinos I2C para utilizar o PS2 junto,mas em compensação a placa ficou bem pequena.


:shock: uhm, chaveador... ?
Mestre, (rsr) estais a falar em uma linguagem proxima a minha porém nao compreendo tudo, to intrigado com isso, so obrigado a estudar mais essas coisas também agora.
Avatar do usuário
[Daniel]
Byte
 
Mensagens: 106
Registrado em: 18 Nov 2009 09:14

Mensagempor vtrx » 20 Mar 2010 13:51

Siceramente eu nao consigo compreender isso ainda, pelo que sei uma E2PROM externa usa a serial do PIC, nao faço a minima ideia de:
-como sao organizados esses caracteres la dentro, ou seja, voce poe la dentro os caracteres assim: 0x1c, 0x0f...etc?
-como fazer essa comunicação do pic com algo externo, digo a eeprom e a dalas...
-como voce grava os dados nesse eeprom? tem um programa que faz isso?

Na implementação por SoftWare,voce escolhe os pinos (e um Micro qualquer) para se comunicar com os dispositivos (2 pinos).Os caracteres serão gravados (8x8) em blocos de 64 Bits,ou seja,8 bytes para cada letra,por exemplo,do endereço zero da Eeprom até o endereço 7,voce terá uma letra ,lembra o programa que te passei para montar os caracteres,cada um com 8 bytes?.
A comunicação com o PIC,em termos de Hardware,é igual ao serial,dois pinos,esses pinos seu programa vai Ler/Gravar na Eeprom.
De uma lida aqui para entender um pouco do protocolo I2C;
http://www.eletronica.org/modules.php?name=News&file=print&sid=13

cara!! eu nao entendo como comunicar duas coisas nos mesmos pinos! eles tem frequencias diferentes algo assim?

Igual ao celular,cada um tem seu 'endereço' própio,lendo o artigo acima (e muitos outros pesquisando na Net) voce entenderá.
uhm, chaveador... ?

Isso ja é outra história...
Lembre-se,voce 'manda' no Micro e não o Micro 'manda' em voce..lol.As únicas coisas que ainda 'mandam' em voce são os protocolos... :?
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Mensagempor [Daniel] » 22 Mar 2010 09:55

Ahbom, entendi! Assim que fazer minhas gambiarras, vou fazer alguns testes, o que eu preciso usar para o hardware? só o PIC e a E2PROM externa? ah e o dallas? Como eu gravo o eeprom depois? Tem um programa para fazer isso?

Pois eh esse seu programa eu lembro, tanto que ainda tenho ele aqui.

hehe posi eh, so estou apanhando um pouco... 8)

edit:
--------------------
como ligar as coisas por I2C encontrei alguma coisa ja em relção a hardware:

Imagem
http://www.winpicprog.co.uk/pic_tutorial_i2c_board.htm

e como fazer o programa de comunicação assembly:
http://www.robot-electronics.co.uk/forum/viewtopic.php?f=2&t=301
Avatar do usuário
[Daniel]
Byte
 
Mensagens: 106
Registrado em: 18 Nov 2009 09:14

Mensagempor vtrx » 22 Mar 2010 12:26

Como eu gravo o eeprom depois? Tem um programa para fazer isso?

Precisa primeiro definir qual pic vai usar.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Mensagempor [Daniel] » 23 Mar 2010 22:21

Vou usar um PIC16F628A, eu acho que ele ta bom pra isso, e vo usar o oscilador interno dele.

O que voce diz?
Avatar do usuário
[Daniel]
Byte
 
Mensagens: 106
Registrado em: 18 Nov 2009 09:14

Mensagempor vtrx » 26 Mar 2010 19:49

O que voce diz?

Eu acho o seguinte,como voce está iniciando,é melhor escolher um que ja tenha I2C implementado por Hardware,implementar protocolos por Software é meio avançado para iniciantes.
Se usar o 16F628,provavelmente vai ter que 'colar' muitas rotinas e voce mesmo não vai desenvolver muita coisa.Quando citei usar o 16F628,pensei que estava mais adiantado no projeto.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Mensagempor [Daniel] » 30 Abr 2010 09:23

E ai tudo bem?

Amigos, ressucitando o tópico, voltei a montar a matriz, terminei a nova parte da placa e em breve vou fazer a placa que controla a mesma e também o circuito.

Duvidas, tanto antes como agora nao consegui eliminar um problema, se alguem tiver uma sugestao...

O meu conjunto de cis 74164 paracem estar "comendo" os bits ou seja se eu colocar 1bit na entrada e ir pulsando com o clock, ate chegar ao final esse bit e "apagado", no caso ele some, e nao vai "pingando" até o fim.

Por acaso, aos shrs que ja tem mais conhecimento com isso, posso resolver isso com capacitores ceramicos nos pinos de alimentacao dos cis?

Eu acho estranho o fato que todos os cis e transistores estarem corretos e nao há nenhum curto naquele emaranhado, eu ja testei...

alguma dica?
Avatar do usuário
[Daniel]
Byte
 
Mensagens: 106
Registrado em: 18 Nov 2009 09:14

Mensagempor andre_luis » 30 Abr 2010 10:14

Olá Daniel,

Na postagem do dia Ter Dez 15, 2009 11:18 am desse tópico, eu já havia comentado sobre esse problema e da solução que adotei, que foi a mesma que voce fez.

Realmente, o Layout deve ser muito bem elaborado com blindagem, desacoplamento e aterramento porque a velocidade do clock á um fator limitante.


+++
"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

Mensagempor ze » 30 Abr 2010 11:04

além dos tradicionais: correta distribução do vcc/gnd, cap de desacop, blindagens (exagero no seu caso acho), etc, tem 1 pulinho de gato: R&C nos sinais de clk e dado pertin do hc164.
ex. prático: -[10R]- em série com sinal com 1nF do pino do ci pro gnd. Em virtude disso, é bom deixar os pulsos clk e dd um pouco + longos. Isso pode ser feito com a única coisa quase útil do asm: nop´s.

Existe uma diferença sutil entre deslocar 1 bit e usar o resultado e deslocar todos e usar o resultado. Infelizmente não consigo lhe explicar com palavras claras humanas. Vou tentar. ao deslocar só 1, der erro, vc fica com mão atadas ao hw. Se todos, vc pode corrigir no sw deslocando de novo. é +- assim.

boa sorte.
Avatar do usuário
ze
Dword
 
Mensagens: 1655
Registrado em: 05 Jun 2007 14:32

Mensagempor [Daniel] » 30 Abr 2010 11:27

andré,

me desculpe nem estava mais lembrado disso! obrigado mais uma vez.


lellis,

Ah certo, um filtro RC entao, beleza! em relação ao tempo de clock eu não estou fazendo o teste com um uC ainda, estava fazendo com dois CIs 555, vou programar no uC e testar assim também.

Uhm pode ser que entendi, mas nao vou comentar... :]

obs, vou colocar também os cap. de desacoplamento.

teh breve!
Avatar do usuário
[Daniel]
Byte
 
Mensagens: 106
Registrado em: 18 Nov 2009 09:14

Mensagempor [Daniel] » 14 Mai 2010 17:30

Oi gente,

Po to com pouco tempo mas como ja disse anteriormente aos poucos vo atualizando...

Ta dificil chegar no fim do tunel, mas eu vo chegar, seguem as novas atualizaçoes:

Anteriormente fiz uma nova placa, ela nao funcionou para variar (rsrs) fazer o que, estou tento dificuldades em projetar um bom layout...

as fotos:

Imagem

Imagem

Imagem

Como eu tenho certeza que o problema esta no layout da placa, montei mais uma vez tudo novamente, e programei mais um pouco o software.
Fiz alguns testes, os Sr.s podem ver no video abaixo (link).

as fotos:

Imagem
Fonte - essa aqui funcionou melhor, descobri que a atx que usava para testes estava dando ruido.

Imagem

Link do video dos testes:

YouTube: " http://www.youtube.com/watch?v=4VrYauIw_VQ "

OBS: quando o letreiro esta em movimento a camera parace embassar a imagem (eu preciso fazer mais alguns ajustes ainda), nao consegui fazer o texto "correr" na matriz interia por enquanto, esta ocorrendo algum "bug"...

Abraço, se alguém quiser comentar fique a vontade.

até
Avatar do usuário
[Daniel]
Byte
 
Mensagens: 106
Registrado em: 18 Nov 2009 09:14

Mensagempor teixeiramg » 14 Mai 2011 21:24

Colegas!

Realmente o tópico é muito interessante! O TCPIPCHIP mencionou o MAX6952. Andei vendo o datasheet dele e trata-se de um driver interessante. Ele trabalha tanto com letras quanto com gráfico.

Alguém tem uma dica de como utilizar esse driver? Qual microcontrolador utilizar? O microcontrolador teria que utilizar o protocolo SPI ou dispor de um módulo, daí minha dúvida sobre qual microcontrolador utilizar.

TCPIPCHIP, vc ja desenvolveu um projeto com o MAX. O que você acha de utiliza-lo em aplicações gráficas?

Abraços a todos,

Marcelo Teixeira
teixeiramg
Byte
 
Mensagens: 136
Registrado em: 16 Out 2006 18:16

Anterior

Voltar para PIC

Quem está online

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

x