terça-feira, maio 23, 2017

Módulo Amplificador e decodificador de MP3

Este é mais destes módulos chineses que eu acho curioso e acabo comprando mesmo sem ter um uso imediato: um tocador simples de MP3.

O módulo é bem pequeno

domingo, maio 21, 2017

Resenha: How Apollo Flew to the Moon

"How Apollo Flew to the Moon" de W. David Woods tem um objetivo interessante: descrever o voo das missões Apollo que foram até a Lua, do lançamento até o pouso no oceano.



quinta-feira, maio 18, 2017

Resolvendo Sudoku - Parte 3

Fechando a série, vamos ver como usar o Algorítimo X com Dancing Links (DLX) para resolver Sudokus,

Dancing Links - Diagrama extraído do artigo de Donald Knuth

terça-feira, maio 16, 2017

Resolvendo Sudoku - Parte 2

Neste segundo post vamos abordar uma teoria que nos permitirá resolver problemas Sudoku de forma bastante rápida.

quinta-feira, maio 11, 2017

Resolvendo Sudoku - Parte 1

Esta curta série de posts tem origem em uma pequena piada. Entrando em uma revistaria de um shopping na Holanda, o livro abaixo foi o único que eu consegui ler (ba dum tss):


Piadas ruins à parte, eu gosto de Sudoku e naturalmente veio a questão de como resolver um destes problemas, de forma eficiente, no computador. Fiquei ainda mais interessado depois que vi na Wikipedia que uma das soluções usa uma ideia do grande Donald Knuth.

terça-feira, maio 09, 2017

Z80 na Protoboard: Revisão dos LEDs e Ram

Para completar as minhas experiências falta conectar a Ram. Vou aproveitar e revisar o acionamento dos meus LEDs, para ter informações mais úteis.


sábado, abril 29, 2017

Resenha: DC - The New Frontier

DC: The New Frontier é uma premiada minissérie escrita e desenhada por Darwyn Cooke, publicada originalmente em seis revistas. Provavelmente o que me atraiu foi a arte da capa da coletânea:



quinta-feira, abril 27, 2017

Z80 na Protoboard: Rom e Z80

Hora de colocar o Z80 para trabalhar! Com os circuitos de apoio prontos, faltava somente conectar a memória Rom e acertar alguns sinais adicionais do Z80.


terça-feira, abril 25, 2017

Z80 na Protoboard: Decodificação de Endereços

Estamos nos aproximando do ponto em vamos conectar uma memória ao Z80. Antes disto precisamos definir o nosso mapeamento de memória e como vamos decodificar os endereços e sinais de controle para acionar os diversos componentes.

Estamos quase lá

sexta-feira, abril 21, 2017

Z80 na Protoboard: Display de Endereços e Dados

Dada a finalidade didática da minha montagem, quero ser capaz de ver em LEDs o conteúdo dos barramentos de endereço e dados.

Quantidade de fios aumentando

quarta-feira, abril 19, 2017

Z80 na Protoboard: Reset

Nos microcontroladores modernos, estamos acostumados a ligar o pino de reset (ativo com nível baixo) a um resistor de pullup e esquecer. Se quisermos um reset sem desligar a alimentação, colocamos um botão  entro o pino e terra. Com o Z80 é recomendado algo mais sofisticado.

Mais uns fios e componentes conectados

quinta-feira, abril 13, 2017

Z80 na Protoboard: Clock

Como parte dos meus estudos sobre o microprocessador Z80 resolvi fazer uma montagem simples em protoboard. Esta série de posts vai descrever passo a passo esta montagem. Vamos começar com o circuito de clock.

Protoboard com os CIs espetados, mas ainda não conectados

terça-feira, abril 11, 2017

Mais uma Memória Não Volátil: W27E512

Seguindo no estudo de memórias não voláteis, um post rápido sobre a memória W27E512 da Winbond.


terça-feira, abril 04, 2017

Testes com a EEProm X24HC64

Só para documentar, fiz  experiências rápidas com a EEProm X24HC64 da Xicor.

O primeiro teste foi ligando a um Arduino Mega, usando a mesma montagem e software que usei com a AT28C64B da Atmel. Tudo funcionou como esperado: leitura, escrita byte a byte, escrita em página (tanto de 32 como 64 bytes), proteção e desproteção. Como também esperado, o comando "semi-secreto" de apagamento da Atmel não funcionou.

O segundo teste foi com o programador TL866, selecionando X28C64. As operações de leitura e escrita funcionaram corretamente, assim como as opções de proteger e desproteger.

As conclusões são que a AT28C64B tem um bug na escrita de 64 bytes no modo página e que os problemas que eu tive anteriormente com a X28C64 foram erro meu na operação do software (culminando com torrar as memórias selecionando modelos que usam 12V para o apagamento).

quinta-feira, março 30, 2017

Vamos Falar de Arduino? Parte 3

Fechando a série, vamos falar um pouco sobre o software.


quarta-feira, março 29, 2017

Vamos Falar de Arduino? Parte 2

Continuando minhas ruminações sobre o Arduino, vamos falar sobre as placas oficiais.


terça-feira, março 28, 2017

Vamos Falar de Arduino? Parte 1

No próximo sábado, 1o de abril de 2017, teremos o "Arduino/Genuino Day", quando ocorrem diversos eventos celebrando o Arduino. Me parece um bom momento para falar um pouco sobre esta tão popular plataforma. Estou prevendo três post: este primeiro falando um pouco da história do Arduino, o segundo falando das placas oficiais e o terceiro falando do software.


terça-feira, março 21, 2017

RISC OS Pico: Uma Experiência "Retrô" no Raspberry Pi

Este post teve a origem no lamento de um conhecido: o Rasperry Pi com o seu sistema padrão é bastante distante da simplicidade dos computadores clássicos dos anos 80, que iniciavam quase que instantaneamente para um interpretador BASIC.

Eu comecei a pensar como o Raspberry poderia ser usado de forma semelhante aos micros antigos, mas antes de me aprofundar resolvi dar uma olhada nos softwares jé existentes e encontrei o RISC OS Pico, que é algo bem próximo do desejado.



domingo, março 19, 2017

quinta-feira, março 16, 2017

Corujando: 23a Competição Baja SAE Brasil

Após um ano de ausência, no final de semana passado acompanhei um pouco a competição Baja SAE Brasil. A crise afastou alguns patrocínios e desde o ano passado a prova está sendo disputada na FATEC de São José dos Campos, mas o interesse dos alunos de engenharia só aumenta - este ano teve o recorde de 88 carros inscritos.

Chegada do Enduro

terça-feira, março 14, 2017

Desrespeito, Assédio e Outas Violências na Escola Politécnica e na USP

Este é um post diferente do que normalmente aparece por aqui, mas o vídeo abaixo é tão forte que merece ser divulgado. Todos nós sabemos que este problema é praticamente universal, mas dói a confirmação de que isto ocorre mesmo num ambiente frequentado por pessoas que provavelmente receberam um educação acima da média da população brasileira.




terça-feira, fevereiro 28, 2017

28C64: Segundo Round

Como relatei, minhas primeiras experiências com a EEProm 28C64 foram frustrantes. Catalisando o meu lado masoquista, parti para novas experiências, agora ligando a AT28C64B a um Arduino para controlar diretamente cada um dos sinais. Após muita luta com maus contatos e bytes hostis, o resultado continua frustrante, mas contém algumas informações curiosas. Obs: nestes testes usei exclusivamente a AT28C64B da Atmel; outros modelos e outros fabricantes podem ter comportamento diferente.


domingo, fevereiro 26, 2017

RC2014: Quest

Alguns anos atrás eu me diverti rodando alguns jogos antigos no Raspberry PI, usando o YABASIC. Como o RC2014 vem com o Microsoft BASIC na ROM, nada mais natural do que repetir a experiência. Um dos programas que adaptei foi o Quest.

quinta-feira, fevereiro 16, 2017

28C64 Programming Blues

Aviso: este é um relato frustrante. É comum eu me deparar com problemas inesperados durante os meus projetos, mas normalmente uma boa dose de insistência e estudo leva a uma explicação e solução satisfatória. No caso das minhas experiências com as memórias EEProm do tipo 28C64 eu consegui achar uma forma de programá-las mas não tenho uma explicação melhor que "software buggado".

As vítimas dos meus experimentos

terça-feira, fevereiro 14, 2017

Kaspersky e Adobe Descem um Degrau

Estava eu fazendo mais um destes projetinhos internos no trabalho... Um programa para ler alguns arquivos texto e consolidar algumas informações. Meio que por brincadeira, resolvi gravar o resultado em um arquivo PDF, usando o PdfSharp (uma biblioteca .Net para gerar arquivos PDF). Durante os testes eu estava abrindo manualmente o arquivo gerado para ver o resultado. Depois da terceira vez já estava cansativo. Daí eu resolvi usar uma ideia de um tutorial: abrir automaticamente o PDF, através de Process.Start("resultado.pdf").  Nada de muito especial, só aproveitar o fato do Windows ter uma associação da extensão pdf a um programa (no caso o Adobe Acrobat Reader).

O resultado? O Kaspersky Anti-Virus acusou o meu programa de ser um Cavalo de Troia (HEUR:Trojan.Win32.Generic). Sim, amiguinhos, a heurística dele considera que abrir automaticamente um arquivo PDF é uma ação criminosa. Ação bloqueada e executável apagado sumariamente.

Eu fico em dúvida se isto reflete mais negativamente sobre o Kapersky Anti-Virus ou sobre o Adobe Acrobat Reader (se bem que cada vez menos pessoas usam o aplicativo oficial para abrir arquivos pdf).

quinta-feira, fevereiro 09, 2017

Atari Punk Console

Atari Punk Console é um circuito clássico de geração de sons utilizando dois timers 555. O circuito foi criado por Forrest M. Mims III, inicialmente com o nome "Sound Synthesizer" e posteriormente com o enfadonho nome "Stepped Tone Generator". É com este nome que ele aparece no livro "Timer, Op Amp and Optoelectronic Circuits & Projects", que eu tenho e recomendo para todos os hobbistas. Mas ele ficou famoso com o nome dado pela semelhança de seus sons com os gerados pelo Atari 2600.


terça-feira, fevereiro 07, 2017

RC2014: Primeiras Experiências de Programação Assembler

Um dos meus objetivos com o RC2014 é relembrar os tempos heroicos e brincar um pouco com Assembler. A meta final é criar um "programa monitor" que permita examinar e alterar a memória e criar pequenos programas em assembler.

Por padrão o RC2014 inicia no BASIC

domingo, fevereiro 05, 2017

Resenha: Raspberry Pi Cookbook for Python Programmers (1a Edição)

Mais um livro sobre programação com Python no Raspberry Pi. Este aqui é da Packt Publishing, foi publicado em 2014 e já foi algumas vezes objeto da promoção de eBook grátis, talvez pelo fato de terem lançado uma nova edição no final de 2016. O autor é Tim Cox, que é co-fundador da revista MagPi.




quinta-feira, fevereiro 02, 2017

O Kit RC2014 - Comunicação Serial

É através deste último módulo que vamos interagir com o nosso computador, interligando-o a um PC ou terminal.


terça-feira, janeiro 31, 2017

O Kit RC2014 - Memórias

Depois do clock e processador, as memórias são provavelmente a parte mais importante de um computador. Precisamos de uma memória não volátil, para armazenar o código a ser executado quando o Z80 for ressetado. Memórias não voláteis são normalmente de apenas leitura (Rom, Prom, EProm) ou de escrita demorada (EEProm e Flash). Para as variáveis precisamos de uma memória que permita leitura e escrita rápida (Ram).


domingo, janeiro 29, 2017

Resenha: Superman for All Seasons

Superman for All Seasons foi publicado inicialmente em 1998 como uma série limitada de quatro revistas. O roteiro é de Jeph Loeb e a arte é de Tim Sale, colorida por Bjarne Hansen. A versão que eu li é a "Deluxe", que inclui duas histórias curtas do mesmo time e no mesmo estilo, publicadas em 2003 e 2006.



quinta-feira, janeiro 26, 2017

O Kit RC2014 - Clock e Processador

Neste post vamos ver duas placas essenciais do computador: o clock e o processador.



terça-feira, janeiro 24, 2017

O Kit RC2014 - O Backplane

A minha montagem começou pelo backplane, que é a placa onde são conectadas as demais.

Backplane montado

quinta-feira, janeiro 19, 2017

O Kit RC2014 - Introdução

O interesse no Z80 continua forte e não é difícil encontrar na internet projetos usando o Z80. O RC2014 me interessou por ser algo relativamente simples e disponível em kit por um preço acessível.




terça-feira, janeiro 17, 2017

O Microprocessador Zilog Z80

No episódio post anterior, vimos o Intel 8080, o primeiro microprocessador largamente utilizado. O seu projetista, Frederico Faggin, saiu da Intel pouco depois e fundou a ZiLOG ("the last word in integrated logic"). E seu primeiro produto foi o Z80, que é uma extensão e aperfeiçoamento do 8080, com o qual manteve compatibilidade binária (isto é, código de máquina do 8080 executava diretamente no Z80).

Este é meu!


quarta-feira, janeiro 11, 2017

O Microprocessador Intel 8080

Tenho um brinquedo novo para montar: um RC2014, que é um kit básico de microcomputador feito com o Z80. Pretendo fazer (sem pressa) uma série de posts sobre ele. Para começar, vou voltar ao meus tempos de faculdade e falar no Intel 8080, que é o precursor do Z80.

Foto de Konstantin Lanzet

domingo, janeiro 01, 2017

Resoluções de Ano Novo - Edição 2017

Mantendo a tradição deste blog, segue um balanço das resoluções anteriores (de 2016) e um novo conjunto de resoluções para este novo ano.