Índice:

Cérebro de robô: construir um computador de placa única em uma noite: 11 etapas
Cérebro de robô: construir um computador de placa única em uma noite: 11 etapas

Vídeo: Cérebro de robô: construir um computador de placa única em uma noite: 11 etapas

Vídeo: Cérebro de robô: construir um computador de placa única em uma noite: 11 etapas
Vídeo: Sua Língua é assim também?? #shorts 2024, Maio
Anonim
Cérebro de robô: construa um computador de placa única em uma noite
Cérebro de robô: construa um computador de placa única em uma noite

Ficou sem memória no seu Picaxe ou Arduino? Mas um PC é um exagero para o trabalho? Dê uma olhada neste computador de placa única de código aberto que pode ser programado em linguagens como C, Basic, Forth, Pascal ou Fortran. Esta placa usa CIs baratos e deliberadamente usa chips grandes para que seja fácil de soldar. Ele usa um sistema operacional chamado CPM rodando em um Z80, que era popular no final dos anos 1970 até meados dos anos 1980. Como resultado, há pelo menos um gigabyte de software disponível, incluindo linguagens de programação, programas de planilha e processadores de texto. CPM é um sistema operacional baseado em texto e é uma versão simples do DOS. Esta placa é perfeita se você está construindo um robô altamente complexo ou sistema de automação residencial e continua descobrindo que computadores de chip único como fotos, arduinos e atmegas simplesmente não têm o memória. A tecnologia moderna significa que os discos rígidos e as unidades de disquete podem existir em um único chip de memória, e os computadores que costumavam precisar de uma fonte de alimentação trifásica agora podem ser emulados em uma placa alimentada por baterias. Várias placas N8VEM estão sendo construídas em todo o mundo por um grupo de entusiastas amigáveis https://groups.google.com.au/group/n8vemBoards são um design de código aberto, e você pode construir o seu próprio ou comprar um de um entusiasta nos EUA a preço de custo (US $ 20). Os Eproms podem ser adquiridos pré-programados ou você pode programar o seu próprio. Vamos montar um e ver o que ele pode fazer …

Etapa 1: Junte-se ao Grupo do Google

Junte-se ao Grupo Google
Junte-se ao Grupo Google

Você pode navegar pelo grupo https://groups.google.com.au/group/n8vem, mas se enviar uma solicitação para ingressar no grupo, poderá contribuir para a discussão. Há uma biblioteca de arquivos e muitas fotos de placas em funcionamento. Enviei uma mensagem ao grupo há algumas semanas e pedi para entrar. Encomendei uma prancha e ela chegou uma semana depois, o que é bem rápido dos Estados Unidos para a Austrália. Eu não tinha muitas das partes, então eu tenho a lista de peças a partir daqui https://n8vem.googlegroups.com/web/TestPrototype_BOM_PART-LIST.lst?gda=6DMrhVQAAABRoI8ydU505jGCwGWcAnRLVYTZaCdyJias028kLbDjM7mHeIlRNZNuWyWm5kKNAJr2D8gD3ctlIYKczaAghgqdUwk_6Qi3BU8HCN0q6OYwM6JXPqrFQS5SIfKND7QsaYYQuite algumas lojas têm as partes, incluindo Digikey, Jameco e Futurlec. Todos os chips lógicos são especificados como peças LS. LS é um pouco antiquado e os chips usam mais energia e aquecem. Substituí todos os chips LS pela gama HCT mais moderna. HCT são diretamente compatíveis, mas usam muito menos energia. Da mesma forma, optei por um CMOS Z80, um CMOS UART (16C550) e um chip de entrada / saída CMOS (82C55). A placa chegou quase ao mesmo tempo que as peças, e era hora de começar a soldar.

Etapa 2: Solde a placa

Soldar a placa
Soldar a placa

Soldar foi bem fácil e feito em uma hora e meia. Decidi encaixar os chips grandes e soldar os chips menores diretamente. O maior problema foi entortar levemente todos os pinos do chip para que eles se encaixassem na placa. Há um chip de relógio de tempo real que eu não precisava, então o deixei de fora. Pode ser adicionado depois. Também coloquei um plugue DC na minha placa e um regulador de 5V. Esta placa é tão eficiente que nem precisa de um dissipador de calor no regulador. Eu o executei em uma verruga de parede de 9V. O eprom tem uma etiqueta sobre sua janela, caso contrário, pode ser apagado se for exposto ao sol. O esquema está aqui https://n8vem.googlegroups.com/web/Printing+TestPrototype- sch.pdf? gda = MaRhCFMAAABRoI8ydU505jGCwGWcAnRLnTJP08ZxIX8TVeSmRPYsxGLTiGlLa5mMzgNTsMYdvKCD3Kr1rUv-XML38vqpBkuybczT-QjqLvocê realmente precisa do esquema Jx2-QW2-KW2 para criar o esquema Jx2-KW2-QW2-Kwm para compreender o esquema Jx2-Ymbcz-QW2-KW2 para realmente não compreender o esquema JW2D-QW2-Kwm-Qw2-qwm para realmente entender o esquema JxD-Qw2-Qwm-8Ymb para entender o quadro JxD Ymbcz-QW-2 para compreender o esquema JW2DYmbcz-qwm-Qw-2 você realmente precisa de _QwqL-qd-qbcv -t para compreender a placa Jx2-Kw-2 Ymbq para você realmente não entender o esquema JW2D-Qwm-8 Ymbq2. Mas achei útil comparar com meu primeiro computador que tinha 8 chips de RAM para obter 64K. Esta placa tem meio meg em um único chip. A CPU é um Z80. O Z80 veio do chip 8080, e o 8080 também gerou o 8086, 80286 até o 80586, que foi chamado de pentium porque o escritório de patentes disse que não era possível patentear números. As instruções do código de máquina 8080 em um Z80 ainda existem em PCs modernos.

Etapa 3: programe o Eprom

Programe o Eprom
Programe o Eprom

Se você não quiser programar uma eprom, você sempre pode comprar uma pré-programada ao adquirir a placa. Mas descobri que poderia usar eproms programados em alguns outros projetos, então peguei um programador e uma borracha. Isso costumava custar milhares. Mas comprei o programador por $ 34 incluindo frete (pesquise por programador eprom no ebay), e a borracha foi $ 25 incluindo frete. O programador vem com seu próprio software e, se você informar o número do chip, terá uma ideia de como inserir o chip e definir todas as chaves. Os eproms vêm em branco, mas eu programei um, apaguei por 5 minutos e reprogramei, só para verificar se tudo funcionou. A imagem rom inteira está aqui https://n8vem.googlegroups.com/web/ROMIMAGE.zip?gda = 5RkX1kEAAABRoI8ydU505jGCwGWcAnRLTpwShSoH8O7HvxGhdHl1lXeXmbZQXujx0V3ulhJIKNrhtrFcBixfottYTQUy-Muj7WbB0sVAO2H2H inclui o sistema operacional útil e alguns arquivos ANDPExB0sVAO2H2H2H. É como o disco de instalação do XP, exceto que ele vai para um chip. Descompacte o arquivo, abra o programador, carregue o arquivo.bin e programe o chip. Você pode ler os dados para verificar se foram processados. O único problema com este programador é que ele precisa de uma porta paralela. Alguns PCs mais novos não possuem uma porta paralela. Eu construí um cabo de extensão de porta paralela para não ter que ficar procurando atrás do PC. Consiste em um plugue IDC D25 e um soquete IDC D25 e 2 metros de cabo plano. Use um torno para apertar o plugue no conector. O programador willem que comprei não mostra todas as configurações necessárias para programar uma eprom de 1 megabyte. À esquerda do chip, perto da parte inferior, um jumper precisa ser movido. As configurações estão no manual, que é um arquivo chamado Willem PCB5.0 Manual.html na seção do manual. Isso tem muito mais detalhes sobre as configurações.

Etapa 4: Conecte um cabo serial

Conecte um cabo serial
Conecte um cabo serial

Se você voltar à etapa 2, poderá ver o cabo serial na imagem. Existem três partes para isso: 1) Meu cabo de extensão que vem da parte de trás do PC. Este é o cabo arco-íris. Eu o construí da mesma forma que o cabo de extensão do programador, exceto que este usa um plugue e soquete D9 IDC. É realmente útil não ter que ficar procurando atrás do computador o tempo todo. O cabo de extensão tem uma fêmea em uma extremidade e um macho na outra.2) Um modem nulo. Esta é uma conexão de mulher para mulher. Peguei o circuito aqui https://www.beyondlogic.org/serial/serial.htm (role um pouco para baixo). Essencialmente, um modem nulo une os pinos 7 e 8, une os pinos 1, 4, 6 e troca os pinos 2 e 3. A conexão de 9 pinos então se torna uma conexão de 3 fios - aterramento, transmite e recebe dados. Isso meio que simplifica RS232.3) Um conector de 10 pinos na placa para um conector macho D9. Mais sobre isso na próxima página. No esquema, o D9 macho à esquerda se conecta ao PC. O modem nulo é uma conexão fêmea para fêmea com as conexões nos plugues. Eu poderia ter conectado tudo isso com muito menos plugues, mas usarei o modem nulo em outros projetos.

Etapa 5: Conecte o cabeçalho serial

Conecte o cabeçalho serial
Conecte o cabeçalho serial

O conector na placa é projetado para ir para um cabo de fita IDC de 9 vias e, em seguida, para um plugue macho D9. O único truque é que o conector de 10 vias foi projetado para receber um cabo de fita de 10 vias. Se você usar um cabo de 9 vias, há uma lacuna para o fio ausente. Eu tirei um close para ajudar a esclarecer isso. Se você fizer a fiação certa, o pino 1 na placa vai para o pino 1 no D9. O pino 5 no D9 deve se conectar ao terra na placa. Se esses dois estiverem conectados, o resto dos fios também estará ok.

O fio 1 está à esquerda de ambas as visualizações do cabo plano. Você pode usar um cabo de fita com cores, se quiser. A parte complicada do plugue do IDC é cola quente derretida. Provavelmente não é necessário, mas torna as coisas um pouco mais fortes.

Etapa 6: Baixe Algum Software

Baixe algum software
Baixe algum software

Precisamos de algum software na placa e, antes de fazer o download dos programas, precisamos de um programa de modem. Estaremos usando o xmodem, que é um padrão que existe há anos. O Xmodem existe como um programa CPM e existe em muitas formas em programas de PC, como hiperterminal. Portanto, podemos usar isso para nos comunicarmos entre a velha e a nova tecnologia. Vamos pegar o arquivo hex de xmodem a partir daqui: https://n8vem.googlegroups.com/web/xm50_LB1.zip?gda=O2tYn0EAAABRoI8ydU505jGCwGWcAnRL1RQ8Aj5bHZQJ6hxcf7VyVbwBih-m421sIN3Oibiyd_vhtrFcBixfottYTQUy-Muj7WbB0sVAO2Hmgtm1PE2xNgUnzip-lo e você terá dois arquivos. Você precisa daquele que termina em.hex. Agora precisamos enviar isso para a diretoria. Você precisa de um programa de terminal, que emula um monitor e um teclado para este computador de placa única. O Windows tem um chamado hiperterminal, que geralmente fica oculto na pasta iniciar / programas / acessórios. Ou você pode usar o hiperterminal privado. Ou Teraterm. Ou absolutetelnet. Ou um programa baseado em DOS chamado conex. Existem muitos programas de terminal por aí porque era assim que você discava para a Internet antes da banda larga. Vamos iniciar o hiperterminal. Isso lhe dará três telas e você precisa de todas as configurações corretas! Depois de inserir isso uma vez, você pode salvar esta sessão e ela criará um pequeno arquivo terminando em.ht Se você clicar nesse arquivo (arraste-o para a área de trabalho para que possa encontrá-lo mais tarde), ele iniciará o hiperterminal com todos as configurações corretas. Primeira tela = nome da conexão. Chame-o de SBC e escolha um ícone. Segunda tela. Defina a porta de comunicação. O padrão do meu computador é COM2 na tela de configuração e precisa ser alterado para COM1. Vá em frente e mude para COM1. Terceira tela. Taxas de transmissão, etc. Defina os bits por segundo para 9600. 8 Bits de dados. Paridade com nenhum. Bits de parada para 1. E controle de fluxo para Nenhum. Provavelmente, você só precisará alterar os bits por segundo e o Controle de fluxo. Agora, será exibida a tela do terminal. Conecte a placa à porta serial e ligue-a e você receberá uma mensagem de boas-vindas. Se não, entre no grupo do Google e peça ajuda. Agora é hora de falar com a diretoria!

Etapa 7: Baixe o Xmodem

Baixe o Xmodem
Baixe o Xmodem

Se você comprou o chip ram com bateria, precisará fazer isso apenas uma vez. Na verdade, outros estão trabalhando para colocar isso no chip da eprom, portanto, talvez você não precise fazer isso em um futuro muito próximo. No prompt>, digite h

Não digite mais nada. Não digite Enter. Apenas um único h, em maiúsculas ou minúsculas. O cursor irá descer uma linha, mas nada mais acontecerá. Agora clique no topo do programa do hiperterminal no menu Transferir. Clique em Enviar arquivo de texto. Em Nome do arquivo, use o navegador para localizar a cópia hexadecimal do xmodem que você baixou. É denominado XM50LB1. HEX. Pode ser necessário alterar a pesquisa padrão de *.txt para *.hex para localizá-lo. Clique em ok e muitos números irão cruzar a tela por cerca de 30 segundos. Espere até eles pararem. Em seguida, pressione a letra c mais uma vez, novamente sem inserir. Aguarde 2 segundos e você estará no CPM com um prompt A>. Agora digite o seguinte e pressione Enter: Salvar 40 b: xm.com Agora digite B: e digite, para mudar para a unidade B e você obterá um prompt B>. Agora digite DIR e entre para listar os arquivos. Existem três unidades neste computador, A, B e F. Você pode ver o que está em cada uma digitando a letra da unidade, depois dois pontos, Enter e DIR. A imagem mostra uma captura de tela.

Etapa 8: pegue algum software

Pegue Algum Software
Pegue Algum Software

Existem muitos softwares de CPM por aí. Eghttps://www.loomcom.com/cpm/cpm_cdrom/https://www.gaby.de/ecpmlink.htmMas vamos tentar algo simples. Vamos fazer o Basic adicionar alguns números e imprimir a resposta. Para fazer isso, precisamos de uma cópia do Basic. Muitas cópias estão por aí, mas vamos sair um pouco pela tangente e falar sobre o simulador Altair. Este pequeno programa é uma emulação completa de uma máquina CPM rodando em um PC. Ele tem uma grande biblioteca de software, convenientemente empacotada em porções do tamanho de um disco, e funciona muito mais rápido do que um computador CPM real, o que é muito útil durante a compilação. O simulador está aqui: https://www.schorn.ch/cpm/intro.phpFaça download do software e baixe, no mínimo, a imagem do disco CPM2.2 e, aproximadamente na metade da página, a imagem básica. Coloque-os todos no mesmo diretório. Enquanto você estiver lá, verifique todas as outras linguagens como C Cobal, Fortran, Pascal. Se você executar o programa AltairZ80.exe, obterá uma janela do DOS. Se você baixou o arquivo basic.dsk, pode executá-lo com o comando Do basic no simulador. Em seguida, DIR para listar os arquivos (que estão na unidade A: e B:) Queremos o MBASIC e ele está na unidade A. Para copiar para um diretório do PC, digite W MBASIC. COM e isso salvará o arquivo no diretório em que o programa altair está. Você pode fazer o inverso com o comando R, que transfere arquivos do PC para os discos do simulador altair. Na verdade, se você quiser jogar com CPM, esta é uma ótima maneira de fazê-lo sem ter que construir ou comprar nada. Se você deseja salvar arquivos no disco virtual, saia do simulador altair com um ctrlE (tecla de controle e E). Isso sai e salva. Se você não quiser salvar nenhuma alteração, basta fechar a janela com o X no canto superior direito.

Etapa 9: Mova o arquivo MBASIC. COM para o quadro

Mova o arquivo MBASIC. COM para o quadro
Mova o arquivo MBASIC. COM para o quadro

Vamos transferir o Basic para a placa.

Na sessão de hiperterminal, vá para a unidade B: e digite XM R MBASIC. COM e digite. Isso iniciará o programa xmodem e ele ficará parado esperando a chegada de um arquivo. Agora vá ao menu do hiperterminal e clique em Transfer e em seguida em Send File. Procure o arquivo MBASIC. COM. Na seção de protocolo, selecione Xmodem. No hiperterminal, é o terceiro para baixo. Clique em enviar e depois de alguns segundos o arquivo irá embora. Demora cerca de um minuto. Se funcionar, você deverá obter o prompt B>. Digite DIR para verificar se está lá. (Ignore todos os B> abaixo da tela - eu apertei a tecla Enter algumas vezes acidentalmente)

Etapa 10: execute o Basic e escreva um programa

Execute o Basic e escreva um programa
Execute o Basic e escreva um programa

Agora podemos executar o Basic na placa e escrever um pequeno programa. Eg mbasic10 A = 2020 B = 3030 C = A + B40 imprimir "A resposta é:"; CRUNSave "MYPROG", ANAgora temos um computador funcionando.

Etapa 11: compilar um programa

Compile um programa
Compile um programa

Se você se sentir realmente entusiasmado, pode compilar um programa. Isso produz um.com (o equivalente a um.exe em um PC). Os arquivos COM podem ser executados como programas independentes e podem até mesmo ser configurados para execução automática quando a placa for inicializada. Agora a placa pode funcionar como um controlador autônomo, sem nunca precisar estar conectada a um PC. A placa N8VEM pode compilar programas na placa ou você pode usar o simulador altair. O último é mais rápido, mas isso realmente não importa. Se você deseja compilar programas, você precisa do seguinte: MBASIC. COM, BRUN. COM L80. COM BCLOAD, BASLIB. REL E BASCOM. COMC é um pouco diferente, mas acho que ainda usa o vinculador L80. Veja a captura de tela para saber como escrever, compilar e executar um programa. E fiquem ligados, pois em breve haverá discos rígidos, um mini display LCD, um display que usa um antigo monitor vga https://www.tvterminal.de/index.html#english com interface de teclado, pen drive e entrada e placas de saída!

Recomendado: