collapse

* Posts Recentes

OpAmp Rail2Rail, 30V ... e mais umas coisinhas por SerraCabo
[Hoje às 01:25]


Por que nunca se deve confiar no que diz o cliente por jm_araujo
[28 de Novembro de 2021, 11:08]


Loja a EVITAR por dropes
[27 de Novembro de 2021, 19:35]


Projecto LED fundem por pouco funcionamento? por filjoa
[24 de Novembro de 2021, 10:45]


Um recurso muito completo com implementações de algoritmos. por blabla
[23 de Novembro de 2021, 12:04]


Como resolver "uhmmm" 50Hz Colunas de PC por dropes
[22 de Novembro de 2021, 14:12]


Software TV sala espera + Publicidades por m90mine
[19 de Novembro de 2021, 14:32]


Stenography - Using programming to save ancient writing method por blabla
[18 de Novembro de 2021, 13:55]


Identificador Via Verde por almamater
[15 de Novembro de 2021, 16:20]


Meu novo robô por josecarlos
[13 de Novembro de 2021, 12:12]

Autor Tópico: Aproveitamento display "Brother MFC-490CW"  (Lida 11332 vezes)

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

Online dropes

  • Mini Robot
  • *
  • Mensagens: 2.026
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #15 em: 02 de Agosto de 2016, 13:05 »
Obrigado  :)
O micro é o Atmega8515 mas suporta até ao Atmega1284.
Tem 8k mas já deu para servir de interface, agora já lhe posso colocar um código mais apropriado para um stand-alone... creio que vou colocar o tetris, é simples e só peca pela falta de cache de video, com alguma ginástica consegue-se bem.
Assim que terminar coloco aqui  ;)

Online dropes

  • Mini Robot
  • *
  • Mensagens: 2.026
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #16 em: 19 de Agosto de 2016, 22:06 »
Boa noite

3 semanas e mais de 1k linhas estou finalizando o código do tetris mas está com uns artefactos que não consigo descobrir o motivo, acredito que seja por exceder alguma variável e saber qual é é de doidos, tenho apagado algumas partes de código até funcionar bem, exclusão de partes que às vezes funciona outras nem por isso, enfim...
(o problema afecta apenas o programa e não o display)

Estou a programar em Bascom AVR, gosto do programa e tem funcionado, não tenho formas de fazer um debug por falta de hardware, a simulação faz bem mas ao ultrapassar tipo 255 passa para 0 e nem piu, pelo menos que eu saiba.
Stack overflow, flag, um sinal que me diga olha, foi aqui :P

Existe alguma forma de ter uma resposta, via hardware, simulação ou outra qualquer que me avise que a variável excedeu?

Offline Njay

  • Mini Robot
  • *
  • Mensagens: 3.559
    • Tróniquices
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #17 em: 20 de Agosto de 2016, 02:04 »
Os compiladores de C/C++ costumam ter uma flag para gerar código que verifique os limites da variável, agora o BASCOM... terás que verificar os valores à mão sempre que mexes nas variáveis, caso não tenha opção similar.

Online dropes

  • Mini Robot
  • *
  • Mensagens: 2.026
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #18 em: 20 de Agosto de 2016, 21:53 »
Desde já obrigado pela resposta  ;)

Estive a procurar e lá encontrei como proceder recorrendo ao comando "Stcheck" (Calls a routine to check for various stack overflows).

Estou a usar cerca de 17 rotinas e cada vez que uma chama outra, tem de gravar as variáveis temporariamente, chego a usar 3 ou 4 sub-rotinas e as coisas tendem a piorar ficando sem memória disponível, é muito bonito a compilar mas na prática dá nisto...

Offline artur36

  • Mini Robot
  • *
  • Mensagens: 795
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #19 em: 20 de Agosto de 2016, 23:14 »


Estou a usar cerca de 17 rotinas e cada vez que uma chama outra, tem de gravar as variáveis temporariamente, chego a usar 3 ou 4 sub-rotinas e as coisas tendem a piorar ficando sem memória disponível, é muito bonito a compilar mas na prática dá nisto...

Nunca programei nada tão "complicado" nem conheço em que contexto são usadas as subrotinas e que dados estás a passar, mas não dá para colocares os valores numa variável global e aceder a ela em cada subrotina?

Online dropes

  • Mini Robot
  • *
  • Mensagens: 2.026
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #20 em: 21 de Agosto de 2016, 00:29 »
Nunca programei nada tão "complicado" nem conheço em que contexto são usadas as subrotinas e que dados estás a passar, mas não dá para colocares os valores numa variável global e aceder a ela em cada subrotina?

Sim, posso colocar as variáveis em global e tenho feito isso o máximo possível para poupar RAM.
É preciso bastante cuidado ao usar variáveis globais para que não altere alguma em presente uso.

Sei que os procedimentos ocupam bastante memória, mas por vezes ocupam menos do que estar a repetir as mesmas instruções e é preferível ter uma macro, daí tanta rotina.

Um texto de "score" no meu caso:
- Main
- Show_next = apresenta a peça que vai aparecer a seguir, assim como a pontuação e o presente nível
- Call Header_y(3 ,1) = configuração do LCD para uma determinada área
   este ainda vai chamar outro procedimento de clock e registo (12 passos) + endereçamento de configuração
- Aqui já posso colocar o texto com a fonte gravada numa label + procedimento de clock
- Depois de sair tenho outra rotina de fecho para os dados do LCD

Isto foi apenas para um simples texto, coloquei também alguns efeitos que gosto de ver tanto de fundo como das peças, entusiasmei-me :P
Claro que se for recorrer a bibliotecas não é preciso nada disto, LCD compatível.

À lá arduino seria lcd.setCursor(0,1); lcd.print(score); mas não era a mesma coisa

Online dropes

  • Mini Robot
  • *
  • Mensagens: 2.026
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #21 em: 06 de Outubro de 2016, 14:57 »
Projecto finalizado  8)

Visão geral:


Visão interior:


Adaptação de um Atmega328P em 40-pin PDIP:


Demonstração:


creio que vou colocar o tetris, é simples e só peca pela falta de cache de video, com alguma ginástica consegue-se bem.
Claro que sim, até se pegar nele e não haver velocidade suficiente de refrescamento para tanta instrução.

- Display CMG48MC1-FJ (Brother MFC-490CW)
- Atmega328P 16MHz
- Pilha Lithium (capacidade desconhecida)
- Carregador Lithium via USB
- Conversor dc-dc 3.7V to 6V para a iluminação do display
- Teclado de um auto-rádio para a interface, iluminado
- Programado em BascomAVR (80% space)
- Consumo +-70mA

 :) :) :)

Offline almamater

  • Mini Robot
  • *
  • Mensagens: 1.815
    • GrcByte - Projectos
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #22 em: 06 de Outubro de 2016, 15:18 »
Bem.. excelente mesmo! Muito bom trabalho  8)

Online dropes

  • Mini Robot
  • *
  • Mensagens: 2.026
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #23 em: 06 de Outubro de 2016, 15:35 »
Bem.. excelente mesmo! Muito bom trabalho  8)
Obrigado :)

Meu maior desafio foi mudar do Atmega8515(8k) para o Atmega328P(32k), usei todas as portas e restou apenas um terminal para o teclado que teve de ser via ADC.
Foi um pouco arriscado até porque o cristal está mais longe do que devia, mas até agora está a portar-se bem.
Sabia que o 328 tinha mais para dar...

Para filmar pedi emprestado a semi profissional canon de minha irmã, ainda tentei com duas que tenho por aqui e ficou péssimo, agora já tenho um smartfone decente mas não o usei, fica para a próxima.

Offline Njay

  • Mini Robot
  • *
  • Mensagens: 3.559
    • Tróniquices
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #24 em: 06 de Outubro de 2016, 16:15 »
 8) 8) 8) 8) :D

Offline beirao

  • Mini Robot
  • *
  • Mensagens: 1.531
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #25 em: 06 de Outubro de 2016, 21:16 »
Muito bom! Parabens!
"O único lugar onde o sucesso vem antes do trabalho, é no dicionário" - Albert Einstein

Offline Hugu

  • Mini Robot
  • *
  • Mensagens: 5.594
  • Keyboard not found. Press any key to continue.
    • [url=www.g7electronica.net]G7 Electrónica.net[/url]
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #26 em: 06 de Outubro de 2016, 22:15 »
Mto fixe! À primeira vista, quase parecia um telemovel nokia (falha-me o modelo)  ;D

Online dropes

  • Mini Robot
  • *
  • Mensagens: 2.026
Re: Aproveitamento display "Brother MFC-490CW"
« Responder #27 em: 29 de Setembro de 2021, 12:52 »
Após vários pedidos pela internet sobre informações desta montagem, e dois dias a organizar para fácil entendimento, apresento código fonte, entre ouros:

https://github.com/pdropes/Display-Brother


Entretanto tenho andado entretido  ;D
Esta lanterna fiz com uma fita de LEDs de uma TV avariada, cortei-a em tiras, soldei-as e colei num powerbank de 5A, o consumo é de 200mA:


Nokia1616:


*este ninguém vai adivinhar, se criar um jogo foi complicado...