Matriz de Leds

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Mensagempor tcpipchip » 06 Dez 2009 09:51

vtrx escreveu:Djalma,o Daniel esta sendo orientado no outro forum com rotinas em ASM,pois temos muitas rotinas para painel de leds.Estou esperando ele citar o uso de memoria externa para passar alguma rotina.
Me parece que ele está 'estudando' aos poucos,inclusive ja passei o programa de PC que programei para montar os caracteres 8x8 ja dando a saída em bytes com visulaização.Se ele usar uma pequena memoria externa não terá dificuldade em rotacionar os caracteres,pois a rotina em ASM terá apenas que gerar os endereços sequencialmente da cadeia de caracteres mudando o ponteiro.o pic 16F628A ja da conta disto.
André,esse tipo de circuito não é difícil,pelo menos em ASM.Existe várias maneiras de fazer este tipo de circuito.
tcpipchip,qual o preço do MAX e a tabela de caracteres é fixa?


Na faixa de U$10,00 FOB USA

Parece que tem como definir teus caracteres tambem...mas nao fiz uso disto...
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Mensagempor andre_luis » 06 Dez 2009 14:04

vtrx escreveu:André,esse tipo de circuito não é difícil, pelo menos em ASM.Existe várias maneiras de fazer este tipo de circuito.


Posso estar exagerando mesmo, mas me baseei na minha experiência.
No caso, não me referi exatamente à complexidade, mas ao trabalho.

Se no caso dele não precisar realizar algumas animações ( deslocamento vertical e horizontal ) vai simplificar bastante.

+++
"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 [Daniel] » 07 Dez 2009 10:08

andre_teprom:

Segue mais alguns comentários :

O uC que voce está usando possui 4K.
O uC que usei, o 16F877A, possui 8K.


Me desculpe mais eu busquei conhecer o PIC antes de começar a usá-lo e de acordo com as especificações do fabricante:

Imagem
link: http://www.microchip.com/wwwproducts/De ... e=en010212

Ele tem 7K, é praticamente um PIC 16F628A só que com mais memória de programa.

Um detalhe. é que voce descobrirá que não consegue criar vetores com mais de 255 posições com o PIC, e assim terá de sub-dividir a sua tabela. Isso inseriu um nível de chamada de rotina a mais no indexamento dos caracteres.


Sim, mais eu tenho já idéias de como fazer isso.

Segundo o enunciado da sua primeira pergunta, voce fez referencia á instruções do assembly do PIC. Desaconselho criar trabalhos com esse nível de dificuldade se não for em linguagem C.


Sim, obrigado, infelizmente até então só sei programar em assembly, desconheço C, até o fim do 2010 pretendo programar em C também.


Djalma Toledo Rodrigues:

A Propósito [Daniel] você deveria ter feito o levantamento do Diagrama Esquemático do Circuito que seria mais importante que esse "3 x 4" dele.


Pois bem eu tenho o esquema também...Na verdade não no papel nem no computador, fiz ele todo de cabeça mesmo, mas eu sei ele todo. Não axei que fosse preciso dele, afinal o que eu preciso saber eu sei, tem 2 fios para alimentação e 3 para o controle, sendo: clock, dado, reset, e os outros 16 são responsáveis pelas colunas.


vtrx

Djalma,o Daniel esta sendo orientado no outro forum com rotinas em ASM,pois temos muitas rotinas para painel de leds.Estou esperando ele citar o uso de memoria externa para passar alguma rotina.


Pois bem, eu não vou poder citar isto, afinal eu não sei usar a e2prom ainda. Vou fazer unicamente (para aprender e ter como base) uma tabela com tudo que quero "passar" no display, quando aprender a usar as configurações avançadas do PIC vou atualizar meu soft e hard.

Me parece que ele está 'estudando' aos poucos,inclusive ja passei o programa de PC que programei para montar os caracteres 8x8 ja dando a saída em bytes com visulaização.Se ele usar uma pequena memoria externa não terá dificuldade em rotacionar os caracteres,pois a rotina em ASM terá apenas que gerar os endereços sequencialmente da cadeia de caracteres mudando o ponteiro.o pic 16F628A ja da conta disto.


Sim é verdade eu estou, eu fiz um curso tals, mais eu gosto de praticar e estou fazendo por minha conta mesmo, quero praticar isso, e realmente vou estar muito feliz ao ver ela funcionando como eu quero e vou querer também =D.

Este programa é muito bom, uso ele como base para ver como ficam os caracteres antes de escrever ele na tabela.

Como eu disse anteriormente não seu usar comunicação serial e e2pron ainda D:. Mas o PIC16F648A como também citei acima tem as mesmas configurações do 628A.


tcpipchip:

Bem é uma boa, mas ainda pretendo me esforçar e criar meus próprios caracteres personalizados e gostei desse desafio também. De qualquer forma muito obrigado e sua dica é de grande valia, principalmente para o futuro.



andre_teprom:

Posso estar exagerando mesmo, mas me baseei na minha experiência.
No caso, não me referi exatamente à complexidade, mas ao trabalho.

Se no caso dele não precisar realizar algumas animações ( deslocamento vertical e horizontal ) vai simplificar bastante.

+++


Não vou dizer nada a respeito. Agora indiferente do trabalho ou um pouco de tempo não me importo, afinal eu não trabalho com isso ainda, não tenho que entregar nada, é só um estudo/desafio que estou fazendo, por conta própria, o que eu quero é alcançar as metas traçadas, chegando lá, parto para outras.


Bem colegas muito obrigado pelas dicas! Estou muito feliz com tudo e estou muito grato a todos vocês.

Até então fiz o contador que ja citei, e consegui escrever meu nick:

Imagem

E ainda fazer meu nome "correr" em meia matriz, infelizmente com as 40 colunas parece que "bugou" e não funcionou.

Abraço e ate mais (conforte tiver resultados vou postando)
Avatar do usuário
[Daniel]
Byte
 
Mensagens: 106
Registrado em: 18 Nov 2009 09:14

Mensagempor Djalma Toledo Rodrigues » 07 Dez 2009 10:16

Bravo ! Parabéns

DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor andre_luis » 08 Dez 2009 09:06

[Daniel] escreveu:
...Me desculpe mais eu busquei conhecer o PIC antes de começar a usá-lo e de acordo com as especificações do fabricante:

Ele tem 7K, é praticamente um PIC 16F628A só que com mais memória de programa....



Existe alguma discrepancia entre a tabela apresentada no link e o datasheet da própria Microchip.
No manual, diz que esse uC possui 4K.

http://ww1.microchip.com/downloads/en/DeviceDoc/40044G.pdf
( vide tabela no final da página 3 )

O pior, é que não há nenhuma referencia a isso na Errata do fabricante.

+++
"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 Djalma Toledo Rodrigues » 08 Dez 2009 09:35

Esta em Word

PIC16F648A Prog. Memo Flash (word) 4096

na verdade Word de 14 Bits:
Código: Selecionar todos
4.1 Program Memory Organization
 4K x 14 space
(PIC16F648A).


Daí os 7 kB
4096 x 14Bits = 57344 Bits / 8 = 7168 Bytes

Equivalente a 7168 Bytes evidentemente.

DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor andre_luis » 08 Dez 2009 12:21

Djalma,

Sáo barramentos distintos :
14bits para endereços e 8 bits para dados.
Como a arquitetura do PIC os separa, esses 7K não são acessíveis para nós programadores, mas são reservados para instruções.

Na prática, isso realmente equivale à apenas 4K bytes.

+++
"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 Djalma Toledo Rodrigues » 08 Dez 2009 14:06

Sim claro.

Barramentos distintos mas, nada impede que hája Dados na Rom Flash

Tabelas, Strigs etc.

Já imaginou seu "embarcado' poligrota?
Português / Inglês / Castelhano . :D

DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor andre_luis » 09 Dez 2009 10:58

Djalma Toledo Rodrigues escreveu:Sim claro.
...nada impede que hája Dados na Rom Flash...
DJ


Tem certeza ?

O fato da arquitetura do PIC ser Harward, permite que o barramento de endereços acesse somente o interpretador de instruções do uC.

Quando informam 14bits, ao meu ver é pura propaganda, para que saibamos que o core é pretensamente mais robusto que os da concorrencia.

+++
"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 lpagano » 09 Dez 2009 11:10

tcpipchip,

Esse MAX6952 é difícil de achar???

Valeu!!!
lpagano
Byte
 
Mensagens: 393
Registrado em: 06 Nov 2006 14:23

Mensagempor [Daniel] » 12 Dez 2009 14:03

Bem, fiquei bem confuso com isso depois que li, mas então esta ok, creio que ficou esclarecido agora.

Não estou tendo tempo para continuar meus testes mas assim que tiver notícias volto aqui.

Alguém tem alguma dica de como fazer para mapear os caracteres? Eu não sei como isso funciona.

Abraço a todos, bom final de semana.
Avatar do usuário
[Daniel]
Byte
 
Mensagens: 106
Registrado em: 18 Nov 2009 09:14

Mensagempor Djalma Toledo Rodrigues » 12 Dez 2009 14:44

andre_teprom escreveu:
Djalma Toledo Rodrigues escreveu:Sim claro.
...nada impede que hája Dados na Rom Flash...
DJ


Tem certeza ?

O fato da arquitetura do PIC ser Harward, permite que o barramento de endereços acesse somente o interpretador de instruções do uC.

Quando informam 14bits, ao meu ver é pura propaganda, para que saibamos que o core é pretensamente mais robusto que os da concorrencia.

+++


Desculpe André não havia tomado conhecimento desta.

A Arquitetura do PIC é Harward modificado:

<-------------------->Imagem

Observar que existe um barramento de 8 bits interligando a Flash com o Mux da ALU
Isto permite a Leitura de Tabelas (Dados) contidas na Flash, através das iInstruções:
Call Tabela
ADDWF PCL,1 ; Ponteiro da Tabela e
RETLW ; Retorna com o Dado

Dica: Quando criar Tabelas colocar o Comprimento da mesma na primeira posição.

Afinal Tabela é como CPI , agente sabe como começa (Endereço inicial) mas, não sabe
como termina.


DJ
Editado pela última vez por Djalma Toledo Rodrigues em 13 Dez 2009 10:56, em um total de 1 vez.
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor vtrx » 12 Dez 2009 16:53

Djalma,voce programa AVR tambem?
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Mensagempor Djalma Toledo Rodrigues » 13 Dez 2009 11:38

Vtrx

Tenho o seguinte 'método':

1°) Ter o datasheet aberto

2°) Copio o Set de Instruções do µC, provisóriamente, para o final da Página onde vou Editar o Programa

Programar em ASM o que é ?

É escolher as Instruções necessárias a resolução do que se prentende
-----------
De maneira que tendo esses dois recursos, o µC qual seja não faz muita diferença

DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor tcpipchip » 14 Dez 2009 09:31

andre_teprom escreveu:Djalma,

Sáo barramentos distintos :
14bits para endereços e 8 bits para dados.
Como a arquitetura do PIC os separa, esses 7K não são acessíveis para nós programadores, mas são reservados para instruções.

Na prática, isso realmente equivale à apenas 4K bytes.

+++


Nao sao para endereços, são para as instruções
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

AnteriorPróximo

Voltar para PIC

Quem está online

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

x