Índice:

O KIM Uno - um emulador de kit de desenvolvimento de microprocessador de 5 €: 13 etapas (com fotos)
O KIM Uno - um emulador de kit de desenvolvimento de microprocessador de 5 €: 13 etapas (com fotos)

Vídeo: O KIM Uno - um emulador de kit de desenvolvimento de microprocessador de 5 €: 13 etapas (com fotos)

Vídeo: O KIM Uno - um emulador de kit de desenvolvimento de microprocessador de 5 €: 13 etapas (com fotos)
Vídeo: NR-12 Acidente em torno 2024, Junho
Anonim
Image
Image
O KIM Uno - um emulador de kit de desenvolvimento de microprocessador de 5 €
O KIM Uno - um emulador de kit de desenvolvimento de microprocessador de 5 €
O KIM Uno - um emulador de kit de desenvolvimento de microprocessador de 5 €
O KIM Uno - um emulador de kit de desenvolvimento de microprocessador de 5 €

O KIM Uno é um kit de desenvolvimento portátil definido por software para microprocessadores (retro). Mas deixe-me apresentar a ideia voltando no tempo:

No final de 2018, veio à minha mente que eu queria construir um pequeno kit de desenvolvimento de microprocessador portátil, assim como o famoso KIM-1 da MOS Technology, Inc. e projetado por Chuck Peddle, que também estava envolvido na criação da CPU 6502.

Mas construir um kit de desenvolvimento "esqueleto" com componentes lógicos discretos não era opção, já que precisava de uma grande fonte de alimentação (já que esses dispositivos antigos tendem a consumir muita corrente) e também o desenvolvimento seria muito demorado. E eu quero isso agora!

Portanto, projetei o KIM Uno como um dispositivo portátil, que cabe em uma das mãos e é alimentado por duas baterias CR2032. Ele usa o microcontrolador ATMega328p ("Arduino") rodando a 8 MHz para emular (ou simular) uma CPU desejada. Essa arquitetura também garante que as CPUs emuladas sejam intercambiáveis com qualquer coisa que caiba na memória flash do microcontrolador. Portanto, é um dispositivo multifuncional.

Por coincidência, mais tarde assisti a uma palestra realmente boa - chamada The Ultimate Apollo Guidance Computer Talk (34C3) - no YouTube, onde "One Instruction Set Computers" ou OISCs são mencionados. Eu não sabia sobre eles e achei esse o candidato perfeito para implementá-lo.

O KIM Uno emula uma CPU com apenas uma instrução: subleq - subtrai e ramifica se for menor ou igual a zero.

Se você seguir comigo neste Instructable, poderá construir seu próprio KIM Uno em nenhum momento. E o melhor - para além do facto de poder modificá-lo ao seu gosto - é que custa apenas 4, 75 € para fazer (no final de 2018).

Uma dica: existe um repositório Git que contém todos os arquivos fornecidos pelas diferentes etapas deste instrutível. Caso você queira modificar alguns recursos e compartilhá-los com todos nós, você pode fazer um PR. Mas você também pode baixar todos os arquivos de uma vez lá. Basta acessar https://github.com/maxstrauch/kim-uno. Obrigado!

Existe outro projeto bem interessante, chamado do mesmo (KIM Uno), que faz uma réplica real do 6502 KIM Uno. Confira aqui. O criador ainda vende o kit. Então, se você está interessado no 6502 e gosta desse projeto, dê uma olhada lá!

Etapa 1: Fornecimento do PCB

Fornecimento de PCB
Fornecimento de PCB
Fornecimento de PCB
Fornecimento de PCB

Como você pode ver, aproveitei a oportunidade para projetar um PCB e deixá-lo ser feito profissionalmente. Uma vez que fabricá-lo externamente e enviá-lo para você levará muito tempo (dependendo de onde você está no mundo;-)), fazer o pedido é o primeiro passo. Podemos então continuar com as outras etapas enquanto o PCB é feito e enviado para você.

Encomendei meus PCBs na China na PCBWay por apenas $ 5. Não recebo nenhum benefício por apresentar o PCBWay como meu fabricante goto para PCBs, só que funcionou bem para mim e também pode funcionar bem para você. Mas você pode encomendá-los em qualquer outro lugar como JLCPCB, OSH Park ou qualquer empresa de PCB local.

Mas se você estiver disposto a encomendá-los no PCBWay, você pode baixar o arquivo ZIP anexado "kim-uno-rev1_2018-12-12_gerbers.zip" e carregá-lo diretamente no PCBWay sem qualquer alteração. Este é o arquivo original que usei para encomendar os PCBs que você pode ver nas imagens.

Se você estiver encomendando-os de outro fabricante, talvez seja necessário exportá-los novamente das fontes KiCad originais, porque eu os gerei com as especificações do PCBWay que você pode encontrar aqui. Para as fontes KiCad originais, baixe "kim-uno-kicad-sources.zip" e extraia-o.

Mas há até uma segunda maneira: se você não quiser pedir o PCB, você pode construir sua própria versão usando perfboard ou até mesmo uma breadboard.

Enfim: como os PCBs já estão a caminho, podemos nos concentrar nas outras partes! Venha me seguir.

Etapa 2: Fornecimento de componentes

Fornecimento de componentes
Fornecimento de componentes
Fornecimento de componentes
Fornecimento de componentes
Fornecimento de componentes
Fornecimento de componentes

Agora você precisa obter os componentes. Para isso, você encontrará uma imagem geral de todos os componentes e quantidades de que precisa, anexada a esta etapa, bem como uma lista de materiais (lista de materiais).

O BOM contém links para o eBay. Embora essas ofertas possam ser fechadas quando você ler isto, você pode usá-las como um ponto de partida. Os componentes usados são bastante padronizados.

A seguir, explicarei a você todos os componentes necessários:

  • 7x resistores de 1 kΩ para os displays de sete segmentos. Você pode reduzir o valor (por exemplo, para 470 Ω) para torná-los mais brilhantes, mas não reduza muito, caso contrário os LEDs irão morrer ou a bateria se esgotará muito rapidamente. Eu descobri que esse valor funciona para mim
  • 1x 10 kΩ como um resistor pull-up para a linha RESET do microcontrolador
  • 1x capacitor 100nF para suavizar quaisquer picos de tensão (o que não deve acontecer, já que estamos usando baterias, certo, mas para uma boa medida …)
  • 1x ATMega328P no pacote DIP-28 (geralmente denominado ATMega328P-PU)
  • 1x o PCB principal - consulte a etapa anterior; ou encomendado ou construído por você
  • 2 porta-baterias CR2032
  • 1x interruptor SPDT (pólo único, duplo curso) que basicamente tem três contatos e em cada um de seus dois estados (ligado ou desligado) ele conecta dois contatos
  • Botões táteis 20x para o teclado. Para usar a parte traseira do PCB eu usei botões táteis SMD (os padrão 6x6x6 mm) - eles são muito fáceis de soldar como você verá
  • OPCIONAL: 1x 1x6 pin header para conectar o programador, mas isso é opcional, como você verá mais tarde
  • 1 display de sete segmentos com 4 dígitos e 1 display de sete segmentos com 2 dígitos - a placa aceitará apenas 0,36 pol. (9, 14 mm) de elementos com fiação de ânodo comum. Ambos os requisitos são importantes para obter uma unidade de trabalho. Mas também este tipo de display de sete segmentos é muito comum

Anexado a esta etapa você pode encontrar o arquivo "component-datasheets.zip" que contém informações mais precisas sobre as dimensões e tipos dos componentes usados. Mas a maioria dos componentes são muito padronizados e podem ser adquiridos facilmente por pouco dinheiro.

Agora você precisa esperar até que todos os componentes estejam prontos para continuar a soldagem. Durante esse tempo, você já pode pular para o fim e ler um pouco sobre como usar o KIM Uno, se quiser.

Etapa 3: Visão geral da ferramenta de solda

Visão geral da ferramenta de solda
Visão geral da ferramenta de solda
Visão geral da ferramenta de solda
Visão geral da ferramenta de solda

Para soldar e construir o KIM Uno você precisa das ferramentas mostradas pelas imagens:

  • Cortador de fio (para cortar a extremidade dos fios do componente)
  • Alicate plano
  • Par de pinças
  • Solda (decente) que não é muito grossa - eu uso uma solda de 0,56 mm
  • Um ferro de solda - você não precisa de um ferro de solda de última geração (porque também não estamos fazendo ciência de foguetes aqui) - eu uso o Ersa FineTip 260 há muito tempo e é muito bom
  • Uma caneta de fluxo: adicionar fluxo aos componentes e almofadas torna muito mais fácil soldá-los, pois a solda então "flui" por conta própria para o lugar certo *
  • Opcionalmente: uma esponja (de lã de metal) para o seu ferro de soldar

Para programar posteriormente o KIM Uno, você também precisará:

  • um computador com o conjunto de ferramentas AVR-GCC e avrdude para fazer o upload do firmware
  • um ISP (programador) - como você pode ver na imagem, estou usando meu Arduino Uno como um ISP com um esboço especial - portanto, não há necessidade de comprar nenhum hardware sofisticado

* alguma orientação humana necessária;-)

Você está pronto? Na próxima etapa iniciaremos a montagem do KIM Uno.

Etapa 4: Solda nº 1: Adicionando resistores e capacitores

Solda # 1: Adicionando resistores e capacitores
Solda # 1: Adicionando resistores e capacitores
Solda # 1: Adicionando resistores e capacitores
Solda # 1: Adicionando resistores e capacitores
Solda # 1: Adicionando resistores e capacitores
Solda # 1: Adicionando resistores e capacitores
Soldagem # 1: Adicionando resistores e capacitores
Soldagem # 1: Adicionando resistores e capacitores

Você deve sempre trabalhar desde os componentes menores (em termos de altura do componente) primeiro, para os componentes mais altos por último. Portanto, começamos adicionando os resistores e dobrando as pernas na parte de trás para que os resistores sejam fáceis de soldar e permaneçam no lugar. Depois corte os fios compridos.

Além disso, não mostrado nas imagens, adicione o pequeno capacitor de 100 nF da mesma forma.

Uma dica: mantenha essas pernas de arame em um pequeno recipiente, às vezes elas são úteis.

Etapa 5: Solda nº 2: Montagem do teclado

Solda # 2: Montando o teclado
Solda # 2: Montando o teclado
Solda # 2: Montando o teclado
Solda # 2: Montando o teclado
Solda # 2: Montando o teclado
Solda # 2: Montando o teclado

A próxima etapa é soldar as chaves táteis de 20 SMD. Uma vez que este trabalho é um pouco complicado, nós o fazemos agora, quando o PCB está deitado na bancada.

Trabalharemos de cima para baixo (ou da esquerda para a direita se o PCB estiver orientado como mostrado nas fotos) e começaremos com a primeira linha: escolha um dos quatro pads para cada switch e umedeça-o com a caneta flux.

Em seguida, use uma pinça para agarrar uma chave e posicione-a com cuidado nas quatro almofadas. Em seguida, solde apenas a perna da chave que está na almofada que você escolheu e preparou com fluxo. Para isso, você deve "pegar" um pouco de solda com o ferro antes de começar. Usando este método, complete toda a linha de interruptores, soldando apenas uma perna.

A imagem com as setas mostra uma ampliação de como a soldagem foi feita exatamente.

Depois de soldar toda a fileira (apenas um pino), você pode fazer pequenos ajustes aquecendo o pino de volta e reposicionando a chave. Certifique-se de que os interruptores estejam alinhados da melhor maneira possível.

Se você estiver satisfeito com o alinhamento, você pode molhar todos os outros pinos com a caneta flux e então soldá-los tocando-os com o ferro de solda e adicionando um pouco de solda tocando também. Você verá que a solda é sugada diretamente para a almofada.

Depois de soldar uma linha ou algo assim, você notará que pegou o jeito e não é tão difícil, mas repetitivo. Portanto, faça o resto e você terá um teclado pronto em um piscar de olhos.

Etapa 6: Solda nº 3: a tela de sete segmentos, interruptor e cabeçote de pino

Solda # 3: a tela de sete segmentos, interruptor e cabeçote de pino
Solda # 3: a tela de sete segmentos, interruptor e cabeçote de pino
Solda # 3: a tela de sete segmentos, interruptor e cabeçote de pino
Solda # 3: a tela de sete segmentos, interruptor e cabeçote de pino
Solda # 3: a tela de sete segmentos, interruptor e cabeçalho de pino
Solda # 3: a tela de sete segmentos, interruptor e cabeçalho de pino

Agora você pode adicionar a chave e o conector do pino (opcional) segurando-o com o dedo e soldando um pino para prendê-lo ao PCB, de modo que você possa soldar os outros pinos e finalmente retocar o pino de retenção inicial.

Tenha cuidado para não se queimar com o ferro de solda quente. Se você não se sentir confortável com isso, pode usar um pouco de fita adesiva (por exemplo, fita adesiva) para segurar o componente. Dessa forma, você tem as duas mãos livres para se mover.

Os monitores de sete segmentos são soldados da mesma maneira (veja a imagem): você coloca, segura com sua mão ou fita e solda dois pinos opostos para mantê-lo no lugar enquanto você pode soldar os outros pinos.

Mas tome cuidado e coloque o display de sete segmentos na direção certa (com os pontos decimais voltados para o teclado). Caso contrário, você está com problemas …

Etapa 7: Soldar nº 4: Soldar o microcontrolador

Soldando # 4: Soldando o Microcontrolador
Soldando # 4: Soldando o Microcontrolador

Agora que você tem bastante prática, pode ir em frente e colocar o microcontrolador com o entalhe na parte superior (ou o primeiro pino) voltado para o interruptor. Usando um alicate plano, você pode dobrar com cuidado as pernas do microcontrolador um pouco para dentro, para que coincidam com os orifícios do PCB.

Uma vez que é um ajuste apertado, você precisa de alguma força controlada para colocar o microcontrolador. A vantagem é que ele não cai. Isso significa que você pode usar seu tempo e soldá-lo por trás.

Etapa 8: Solda nº 5: adicionar os suportes da bateria (etapa final)

Soldagem # 5: Adicione os suportes da bateria (etapa final)
Soldagem # 5: Adicione os suportes da bateria (etapa final)
Soldagem # 5: Adicione os suportes da bateria (etapa final)
Soldagem # 5: Adicione os suportes da bateria (etapa final)
Soldagem # 5: Adicione os suportes da bateria (etapa final)
Soldagem # 5: Adicione os suportes da bateria (etapa final)

Finalmente, você precisa adicionar os suportes da bateria na parte de trás. Para isso, basta usar a caneta flux e umedecer todas as quatro almofadas e, em seguida, colocar um pouco de solda em seu ferro. Alinhe o suporte da bateria com cuidado em ambos os eletrodos. Em ambas as extremidades dos contatos deve haver a mesma quantidade de placa de PCB visível. Toque na almofada do PCB e na perna do suporte da bateria com o seu ferro. A solda fluirá sob a almofada e sobre ela e a fixará no lugar, conforme mostrado na imagem. Se tiver problemas com isso, você pode adicionar mais fluxo com a caneta.

Etapa 9: atualizando o emulador

Atualizando o emulador
Atualizando o emulador
Atualizando o emulador
Atualizando o emulador
Atualizando o emulador
Atualizando o emulador

No arquivo zip anexado "kim-uno-firmware.zip" você pode encontrar o código-fonte do emulador junto com um "main.hex" já compilado que você pode enviar diretamente para o microcontrolador.

Antes de poder realmente usá-lo, você precisa definir os bits de fusível do microcontrolador, de modo que ele use o clock interno de 8 MHz sem dividi-lo pela metade. Você pode realizar o trabalho com o seguinte comando:

avrdude -c stk500v1 -b 9600 -v -v -P /dev/cu.usbmodem1421 -p m328p -U lfuse: w: 0xe2: m -U hfuse: w: 0xd9: m -U efuse: w: 0xff: m

Se você não conhece avrdude: é um programa para enviar programas para um microcontrolador. Você pode aprender mais sobre isso aqui. Basicamente, você o instala e está pronto para usar. Para sua configuração, você pode precisar alterar o argumento de "-P" para outra porta serial. Verifique em seu computador qual porta serial é usada (por exemplo, dentro do IDE do Arduino).

Depois disso, você pode fazer o flash do firmware no microcontrolador com este comando:

avrdude -c stk500v1 -b 9600 -v -v -P /dev/cu.usbmodem1421 -p m328p -U flash: w: main.hex

Novamente: a mesma coisa se aplica a "-P" acima.

Como não possuo um ISP (Programador In-System) "profissional", sempre uso meu Arduino UNO (veja a imagem) e o esboço que anexei ("arduino-isp.ino", de Randall Bohn). Eu sei que existe uma versão mais recente, mas com esta versão não tive nenhum problema nos últimos cinco anos, então eu a mantenho. Simplesmente funciona. Usando o comentário no cabeçalho do esboço, você obtém a pinagem no Arduino UNO e usando o esquema do KIM Uno (consulte o anexo), você pode obter a pinagem do cabeçalho ISP 1x6 no KIM Uno. O pino quadrado, próximo ao display de sete segmentos, é o pino 1 (GND). Os seguintes pinos são (na ordem certa): RESET, MOSI, MISO, SCK, VCC. Você pode conectar o VCC a 3V3 ou 5V.

Se você não adicionou o conector de pino 1x6, você pode usar os fios da placa de ensaio e colocá-los nos orifícios de conexão e angulá-los com o dedo - como mostrado na imagem. Isso cria contato suficiente para atualizar o firmware e definir os fusíveis. Mas se você gosta de uma configuração mais permanente, você definitivamente deve adicionar os cabeçalhos de pino 1x6.

Eu tenho dois dispositivos: uma versão de produção sem cabeçalhos de pinos e uma versão de desenvolvimento com cabeçalhos de pinos que deixo conectados e os uso repetidamente durante o desenvolvimento. Isso é muito mais confortável.

Etapa 10: Concluída

Finalizado
Finalizado
Finalizado
Finalizado

Agora você terminou e pode começar a escrever seus próprios programas de subleq no papel, montando-os e depois registrando-os na memória.

O KIM Uno vem com um cálculo de Fibonacci pré-programado começando na localização de memória 0x0a. Ele é definido por padrão como n = 6, portanto, deve resultar em um valor de 8. Pressione "Go" para iniciar o cálculo.

Etapa 11: Análise de Design de PCB

Análise de Design PCB
Análise de Design PCB
Análise de Design PCB
Análise de Design PCB

Depois de concluir este projeto, encontrei alguns pontos que são dignos de nota e devem ser abordados em uma nova revisão do quadro:

  • o silk screen do ATMega328p não tem o entalhe usual onde o primeiro pino está localizado. A pegada do DIP-28 não tem nem mesmo uma almofada quadrada onde o primeiro pino está localizado. Isso definitivamente deve ser melhorado com uma serigrafia mais detalhada para evitar confusão
  • o cabeçalho do ISP não tem rótulos de conexão na tela de seda. Isso torna difícil reconhecer como conectá-lo ao ISP
  • o cabeçalho do ISP pode ser alterado para um cabeçalho de pino 2x6 com um layout de pino padrão para evitar qualquer confusão

Tirando esses pontos, estou muito feliz como tudo funcionou e funcionou na primeira tentativa.

Etapa 12: Como programar SUBLEQ?

Image
Image
Como programar SUBLEQ?
Como programar SUBLEQ?
Como programar SUBLEQ?
Como programar SUBLEQ?

Conforme mencionado no início, o firmware atual do KIM Uno emula um One Instruction Set Computer (OISC) e fornece a instrução subleq para realizar a computação.

A instrução subleq significa subtrair e ramificar se for menor ou igual a zero. No pseudocódigo, isso se parece com o seguinte:

subleq A B C mem [B] = mem [B] - mem [A]; if (mem [B] <= 0) ir para C;

Como o KIM Uno emula uma máquina de 8 bits, todos os argumentos A, B e C são valores de 8 bits e, portanto, pode endereçar uma memória principal total de 256 bytes. Obviamente, isso pode ser estendido, tornando A, B e C valores multibyte. Mas, por enquanto, vamos manter as coisas simples.

O KIM Uno também possui "periféricos": a tela e o teclado. Ele usa uma arquitetura mapeada de memória para fazer a interface desses periféricos, embora o mapa de memória seja muito simples:

  • 0x00 = o registrador Z (zero) e deve ser mantido zero.
  • 0x01 - 0x06 = seis bytes que representam o valor de cada um dos segmentos do display (da direita para a esquerda). Um valor 0xf - consulte o código-fonte (main.c) para obter mais detalhes.
  • 0x07, 0x08, 0x09 = três bytes onde cada byte representa duas telas de sete segmentos (da direita para a esquerda). Essas localizações de memória permitem simplesmente exibir um resultado sem dividir o resultado em dois nibbles para colocá-lo nas localizações de memória de dígito único 0x01 - 0x06.
  • 0x0a + = Um programa começa em 0x0a. Atualmente, a tecla "Go" executa a partir de 0x0a fixo.

Com esta informação pode-se agora escrever um programa em assembler e inserir as instruções na memória e então executá-lo. Como há apenas uma instrução, apenas os argumentos (A, B e C) são inseridos. Assim, após três localizações de memória, os próximos argumentos de instrução começam e assim por diante.

Anexado a este passo você pode encontrar o arquivo "fibonacci.s" e também uma imagem do programa escrito à mão que é um exemplo de implementação do Fibonacci. Mas espere: há três instruções usadas - especificamente ADD, MOV e HLT - que não são subleq. "Qual é o problema? Você não disse que só há uma instrução, subleq?" você está perguntando? É muito fácil: com o subleq, pode-se imitar essas instruções muito facilmente:

MOV a, b - os dados de cópia no local a para b podem ser compostos por:

  1. subleq b, b, 2 (próxima instrução)
  2. subleq a, Z, 3 (próxima instrução)
  3. subleq Z, b, 4 (próxima instrução)
  4. subleq Z, Z, por ex. 5 (próxima instrução)

Usando o recurso de subtração de subleq, que executa mem - mem [a] e sobrescreve mem com o resultado, o valor é copiado usando o registrador zero. E "subleq Z, Z, …" simplesmente redefine o registrador zero para 0, independentemente do valor de Z.

ADICIONE a, b - adiciona os valores a + be armazena a soma em b pode ser composta por:

  1. subleq a, Z, 2 (próxima instrução)
  2. subleq Z, b, 3 (próxima instrução)
  3. subleq Z, Z, por ex. 4 (próxima instrução)

Esta instrução simplesmente calcula mem - (- mem [a]) que é mem + mem [a] usando também o recurso de subtração.

HLT - para a CPU e termina a execução:

Por definição, o emulador sabe que a CPU deseja encerrar se saltar para 0xff (ou -1 se marcado). Tão simples

subleq Z, Z, -1

faz o trabalho e indica ao emulador que ele deve encerrar a emulação.

Usando essas três instruções simples, o algoritmo de Fibonacci pode ser implementado e funciona bem. Isso ocorre porque o OISC pode computar tudo que um computador "real" pode computar apenas com o subleq da instrução. Mas, é claro, há muitas compensações a serem feitas - como comprimento e velocidade do código. Mesmo assim, é uma ótima maneira de aprender e experimentar programação de software de baixo nível e computadores.

Anexado a esta etapa, você também pode encontrar o arquivo zip "kim_uno_tools.zip". Ele contém um montador básico e simulador para o KIM Uno. Eles são escritos em NodeJS - certifique-se de que você os instalou.

Montagem de programas

Se você der uma olhada em "fibonacci / fibonacci.s", verá que é o código-fonte para a implementação de fibonacci discutida. Para montá-lo e fazer dele um programa, que o KIM Uno possa executar, você insere o seguinte comando (na raiz do arquivo extraído "kim_uno_tools.zip"):

node assemble.js fibonacci / fibonacci.s

e irá imprimir um erro se você cometer um erro ou derramar o programa resultante. Para salvá-lo, você pode copiar a saída e salvá-lo em um arquivo ou simplesmente executar este comando:

node assemble.js fibonacci / fibonacci.s> yourfile.h

A saída é formatada de forma que possa ser incluída diretamente no firmware KIM Uno como um arquivo de cabeçalho C, mas o simulador também pode usá-lo para simular. Basta inserir:

node sim.js yourfile.h

E você será apresentado com o resultado da simulação e a saída esperada do KIM Uno no visor.

Esta foi uma breve introdução a essas ferramentas; Eu recomendo que você brinque com eles e veja como eles funcionam. Desta forma, você obtém um conhecimento profundo e aprende os princípios de funcionamento por trás de CPUs, instruções, montadores e emuladores;-)

Etapa 13: Outlook

Panorama
Panorama
Panorama
Panorama
Panorama
Panorama

Parabéns

Se você leu isso, provavelmente passou por todo este instrutível e construiu seu próprio KIM Uno. Isso é muito bom.

Mas a jornada não termina aqui - há um número infinito de opções de como você pode modificar o KIM Uno e personalizá-lo de acordo com suas necessidades e gosto.

Por exemplo, o KIM Uno poderia ser equipado com um emulador de CPU "real" retro que poderia emular o famoso MOS 6502 ou Intel 8085, 8086 ou 8088. Então, seria o caminho para minha visão inicial, antes de aprender sobre OISCs.

Mas existem outros usos possíveis, já que o design do hardware é bastante genérico. O KIM Uno pode ser usado como …

  • … um controle remoto, por exemplo para CNCs ou outros dispositivos. Talvez com fio ou equipado com um diodo IR ou qualquer outro remetente sem fio
  • … Uma calculadora de bolso (hexadecimal). O firmware pode ser adaptado facilmente e o design da placa não precisa ser muito alterado. Talvez a serigrafia possa ser adaptada com operações matemáticas e a lacuna entre os segmentos possa ser removida. Além disso, já está pronto para essa transformação

Espero que você tenha se divertido tanto seguindo e construindo o KIM Uno quanto eu me diverti ao projetá-lo e planejá-lo. E se você estendê-lo ou modificá-lo - por favor, me avise. Saúde!

Concurso PCB
Concurso PCB
Concurso PCB
Concurso PCB

Vice-campeão no concurso PCB

Recomendado: