Índice:

Construa o seu próprio (barato!) Controlador de câmera sem fio multifuncional: 22 etapas (com fotos)
Construa o seu próprio (barato!) Controlador de câmera sem fio multifuncional: 22 etapas (com fotos)

Vídeo: Construa o seu próprio (barato!) Controlador de câmera sem fio multifuncional: 22 etapas (com fotos)

Vídeo: Construa o seu próprio (barato!) Controlador de câmera sem fio multifuncional: 22 etapas (com fotos)
Vídeo: #2 - Construa seu próprio robô esteira! Parte Eletrônica - Controlando Com Controle de XBOX Sem Fio 2024, Junho
Anonim
Construa o seu próprio (barato!) Controlador de câmera sem fio multifuncional
Construa o seu próprio (barato!) Controlador de câmera sem fio multifuncional
Construa o seu próprio (barato!) Controlador de câmera sem fio multifuncional
Construa o seu próprio (barato!) Controlador de câmera sem fio multifuncional
Construa o seu próprio (barato!) Controlador de câmera sem fio multifuncional
Construa o seu próprio (barato!) Controlador de câmera sem fio multifuncional

Introdução Você já imaginou construir seu próprio controlador de câmera? NOTA IMPORTANTE: Os capacitores do MAX619 são 470n ou 0,47u. O esquema está correto, mas a lista de componentes estava errada - atualizada. Esta é uma entrada para a competição Dias Digitais, então se você achar útil, avalie / vote / comente favoravelmente! Se você realmente gosta e tropeça, clique em "Gosto!":) Atualização: destaque no hackaday! hackaday.com/2009/10/13/a-different-breed-of-camera-controllers/ Atualização: novas fotos do disparador de laser em ação! Atualização: Primeiro Prêmio = D, obrigado pela votação e / ou classificação! Isso pode ser instruído principalmente para o benefício de usuários de SLRs que buscam obter um pouco mais de autonomia de suas câmeras; no entanto, se houver qualquer point-and-shoot com interfaces IR, você pode achar isso interessante. Certamente isso também funcionará (com algumas modificações) com hacks de câmera, onde você pode conectar saídas lógicas aos terminais de disparo da câmera. Isso começou como um tutorial completo, mas devido a algumas restrições inesperadas que encontrei mais tarde, pode ser mais um guia de como realizar várias coisas - muitas vezes deixo a você a escolha de como você poderia fazer coisas que Acho que é uma maneira melhor de fazer as coisas do que apenas dizer cegamente "você deve fazer isso". Pense nisso como uma lição sobre o design do controlador de câmera. Forneci esquemas e código completo para que você possa apenas copiá-lo. Para a maioria das pessoas, será um simples caso de transferir o design para um stripboard e adicionar o LCD. Já expliquei como fazer o breadboard, já que o processo é muito semelhante e permite corrigir erros antes de tornar o design permanente! Recursos: Modo de disparo único Modo de intervalo (lapso de tempo) Modo de disparo disparado (disparo de sensor externo) com condições variáveis Projetos de sensor incluídos - luz, som (muitos mais possíveis!) Custo total - menos de £ 25 (excluindo ferramentas) Display LCD para fácil alteração de configurações Compatível com Nikon / Canon (codificado), suporte potencial (não testado) para Olympus / Pentax Sem firmware modificação necessária Usa infravermelho, por isso é sem fio e não danifica sua câmera. Tive a ideia para isso depois de ficar sentado lá fora no frio clicando no controle remoto por horas. Eu estava fazendo um intervalo de 8 segundos para cerca de 1000 fotos. Eu pensei, ei, é apenas um LED IV, não é? Por que não consigo replicá-lo e fazer meu próprio controle remoto com um atraso integrado? Então descobri (um tanto envergonhado, porque pensei que tinha tido uma onda cerebral massiva) que isso foi feito e há até alguns instrutores sobre o assunto. Onde minha implementação difere da maioria dos intervalômetros e controles remotos DIY é que permite muita personalização e modularidade, é compatível com Nikon / Canon (e provavelmente outros mais tarde) e combina a capacidade de tirar uma foto em um determinado gatilho. A ideia é simples. Você quer tirar uma foto de algo bem rápido (atualmente limitado pelo atraso do seu obturador, para mim 6ms). Há uma variedade de métodos para fazer isso: 1. Tentativa e erro: você tenta tirar a foto no momento certo 2. Tentativa e erro aprimorada você escurece a sala, coloca sua câmera na lâmpada (obturador aberto) e dispara um flash no momento certo 3. Compre um controlador de gatilho dedicado que tenha algum tipo de sensor de áudio / luz para tirar a foto ao seu comando 4. Construa um você mesmo! Ok, 1 e 2 são bons para mexer e podem render algumas fotos muito boas. Mas o que vou mostrar a você é que é possível construir um circuito que lhe dará resultados consistentes continuamente. E o mais importante, nestes tempos difíceis, o custo é menor do que os modelos alternativos (algumas pessoas produziram kits fazendo esse tipo de coisa, mas custam uma fortuna, consulte os links). A versatilidade do design é esta: se o seu sensor gerar uma tensão de saída entre 0 e 5 V, você pode usá-lo para acionar a câmera! Aparentemente, esta é uma afirmação enfadonha, mas assim que você começa a entender as implicações, ela se torna muito poderosa. Simplesmente monitorando um nível de tensão, seu gatilho pode ser baseado em luz (LDR), baseado em som (microfone ou ultrassom), baseado em temperatura (termistor) ou até mesmo um potenciômetro simples. Na verdade, quase tudo. Você pode até mesmo vincular o circuito a outro controlador e desde que ele possa fornecer uma saída lógica, portanto, você pode disparar a partir dele. A única grande limitação do design atualmente é que ele funciona apenas com interfaces IR, seria bastante simples modificar o software e hardware para saída via mini-USB ou qualquer tipo de interface necessária. Nota: Código-fonte: forneci alguns aplicativos na etapa 13. O código que executo no meu controlador a partir de agora está lá em um arquivo hex junto com o arquivo c principal e suas dependências. Você pode simplesmente executar meu código se não tiver certeza sobre a compilação. Também incluí alguns códigos de amostra que você pode usar em várias etapas (eles são nomeados obviamente como remote_test, teste de intervalômetro e teste adc. Se eu me referir ao código em uma etapa, é provável que esteja lá. EDITAR: Uma atualização sobre balões estourando - parece que fui um pouco míope quando disse que você poderia facilmente tirar fotos de balões estourando. Acontece que a pele de um balão normal viaja tão rápido que estourará completamente quando a câmera disparar. é um problema com a maioria das câmeras, NÃO com o controlador (que detecta o ADC a uma taxa de cerca de 120 kHz). A maneira de contornar isso é usar um flash disparado, que é possível se você adicionar um fio extra e outro pequeno circuito. disse, você poderia, em teoria, usar outra coisa para estourá-lo e brincar com o atraso (ou até mesmo alterar o código de atraso para incluir microssegundos). Um projétil de ar viajando 1m a 150ms-1 leva cerca de 6 a 7ms, tempo suficiente para disparar e disparar. Apenas mover a arma proporcionaria um atraso rudimentar de alguns microssegundos s. Mais uma vez, desculpas por isso, vou brincar de hoje à noite se conseguir alguns balões, mas ainda há muitos usos para um acionador de áudio, como fogos de artifício! Eu coloquei um lapso de tempo rápido e sujo abaixo para mostrar que funciona no entanto:) Não se esqueça de ler, avaliar e / ou votar! Saúde, Josh Isenção de responsabilidade No caso improvável de algo dar terrivelmente errado ou de você, de alguma forma, bloquear sua câmera / dremel seu gato, não sou responsável por nada. Ao iniciar um projeto com base neste instrutível, você aceita e continua por sua própria conta e risco. Se você fizer um destes, ou usar o meu instrutível para ajudá-lo - envie-me um link / foto para que eu possa incluí-lo aqui! A resposta tem sido impressionante até agora (pelo menos para os meus padrões), então seria incrível ver como as pessoas estão interpretando isso. Estou trabalhando na revisão 2 enquanto digito;)

Etapa 1: alguns pensamentos iniciais …

Então, como vamos construir isso? Microcontrolador O coração e a alma deste projeto é um AVR ATMega8. É essencialmente uma versão ligeiramente ajustada do chip ATMega168 que o Arduino usa. É programável em C ou Assembly e possui uma variedade de recursos realmente úteis que podemos usar a nosso favor. "28 pinos, a maioria dos quais são de entrada / saída (i / o)" Conversor analógico para digital integrado "Baixo consumo de energia "3 temporizadores integrados" Fonte de relógio interno ou externo "Muitas bibliotecas de código e exemplos on-line Ter muitos pinos é bom. Podemos fazer interface com uma tela LCD, ter 6 entradas de botão e ainda sobrar o suficiente para um LED IR disparar e alguns LEDs de status. A série de processadores Atmel AVR tem muito suporte online e há muitos tutoriais para obter iniciado (vou abordar isso brevemente, mas existem tutoriais melhores dedicados) e montes e montes de código para refletir. Para referência, estarei codificando este projeto em C usando a biblioteca AVR-LibC. Eu poderia facilmente ter escolhido o PIC para fazer isso, mas o AVR é bem suportado e todos os exemplos que encontrei para controles remotos foram baseados em AVR! Display LCDAqui são dois tipos principais de display, gráfico e alfanumérico. As telas gráficas têm uma resolução e você pode colocar pixels onde quiser. A desvantagem é que são mais difíceis de codificar (embora existam bibliotecas). Os visores alfanuméricos são simplesmente uma ou mais linhas de caracteres, o LCD tem um armazenamento integrado de caracteres básicos (ou seja, o alfabeto, alguns números e símbolos) e é relativamente fácil gerar strings e assim por diante. A desvantagem é que eles não são tão flexíveis e a exibição de gráficos é virtualmente impossível, mas atende ao nosso propósito. Eles também são mais baratos! Os alfanuméricos são categorizados por sua contagem de linhas e colunas. O 2x16 é bastante comum, com duas linhas de 16 caracteres, cada caractere sendo uma matriz 5x8. Você pode obter 2x20 s também, mas não vejo a necessidade. Compre tudo o que você se sentir confortável com. Eu escolhi usar um LCD retroiluminado vermelho (eu quero usar isso para astrofotografia e luz vermelha é melhor para visão noturna). Você pode ficar sem luz de fundo - a escolha é inteiramente sua. Se você escolher uma rota sem luz de fundo, economizará energia e dinheiro, mas pode precisar de uma lanterna no escuro. Ao procurar um LCD, você deve garantir que ele seja controlado pelo HD44780. É um protocolo padrão da indústria desenvolvido pela Hitachi e há várias bibliotecas boas que podemos usar para gerar dados. O modelo que comprei é um JHD162A do eBay. InputInput será feito por meio de botões (simples!). Eu escolhi selecionar 6 modos, ok / shoot e 4 direções. Também vale a pena obter outro pequeno botão para reiniciar o micro em caso de falha. Quanto à entrada do acionador, algumas idéias básicas são um resistor dependente de luz ou um microfone de eletreto. É aqui que você pode ser criativo ou mesquinho, dependendo do seu orçamento. Os sensores de ultrassom custarão um pouco mais e exigirão alguma programação extra, mas você pode fazer coisas realmente legais com eles. A maioria das pessoas ficará feliz com um microfone (provavelmente o sensor geral mais útil) e os eletretos são muito baratos. Esteja ciente de que também precisará ser amplificado (mas examinarei isso mais tarde). Saída - Status A única saída real de que precisamos é o status (além da tela), então alguns LEDs funcionarão bem aqui. Saída - Tiro para tirar fotos, precisamos fazer a interface com a câmera e para isso precisamos de uma fonte de luz que possa produzir radiação infravermelha. Felizmente, há uma infinidade de LEDs que fazem isso e você deve tentar pegar um de potência razoavelmente alta. A unidade que escolhi tem uma corrente nominal de 100mA máx. (A maioria dos LEDs tem cerca de 30mA). Você também deve tomar cuidado para observar a saída do comprimento de onda. A luz infravermelha está na parte do comprimento de onda mais longo do espectro EM e você deve estar procurando por um valor em torno de 850-950nm. A maioria dos LEDs IR tende para o final de 950 e você pode ver um pouco de luz vermelha quando está ligado, isso não é um problema, mas é espectro desperdiçado, então tente chegar mais perto de 850, se possível. isto? Bem, vai ser portátil, então baterias! Eu escolhi usar 2 pilhas AA que são aumentadas para 5V. Explicarei o raciocínio por trás disso nas próximas seções. 'Processo e construção' Depende inteiramente de você decidir como fazer isso. Decidi usar stripboard para o circuito após a prototipagem porque é barato e flexível e economiza projetar um PCB personalizado. Eu forneci os esquemas para que você fique livre para fazer seu próprio layout de PCB - embora se o fizer, eu ficaria grato por ter uma cópia! Mais uma vez, o caso é inteiramente sua escolha, ele precisa ser capaz de caber na tela, botões (em um layout bastante intuitivo, se possível) e as baterias. No que diz respeito às placas de circuito, esta não é tão complicada, muitas das conexões são simplesmente para coisas como botões / LCD.

Etapa 2: Gerenciamento de energia

Gerenciamento de energia
Gerenciamento de energia

Gerenciamento de energia Para um projeto como este, é óbvio que a portabilidade deve ser um aspecto fundamental. As baterias são, portanto, a escolha lógica! Agora, para dispositivos portáteis, é bastante importante que você escolha uma fonte de bateria que seja recarregável ou facilmente disponível. As duas opções principais são a bateria PP3 de 9V ou as baterias AA. Tenho certeza que algumas pessoas vão presumir que uma bateria de 9V é a melhor opção porque hey, 9V é melhor do que 3, certo? Bem, não neste caso. As baterias de 9 V embora muito úteis, produzem sua voltagem em detrimento da vida útil da bateria. Medida em mAh (miliamperes-hora), essa classificação indica, em teoria, quanto tempo uma bateria vai durar operando a 1mA em horas (embora seja tomada com uma pitada de sal, geralmente sob condições ideais de baixa carga). Quanto mais alta for a classificação, mais tempo durará a bateria. As baterias de 9 V têm capacidade nominal de até 1000mAh. Por outro lado, os AA alcalinos têm quase três vezes mais a 2900mAh. Os recarregáveis NiMH podem atingir isso, embora 2500mAh seja uma quantidade razoável (observe que as baterias recarregáveis operam a 1,2 V, não a 1,5!). A tela LCD precisa de uma entrada de 5 V (10%) e o AVR (o microcontrolador) precisa aproximadamente do mesmo (embora possa chegar a 2,7 para velocidades de clock de baixa frequência). Também precisamos de uma tensão razoavelmente estável, se ela flutuar sobre isso pode causar problemas com o microcontrolador. Para fazer isso, usaremos um regulador de tensão, você precisa fazer uma escolha entre preço e eficiência agora. Você tem a opção de usar um regulador de tensão de 3 pinos simples como o LM7805 (série 78, saída de +5 volts) ou um pequeno circuito integrado. Usando um regulador simples. alguns pontos em mente. Em primeiro lugar, os reguladores de três pinos quase sempre precisam de uma entrada maior do que sua saída. Eles então reduzem a tensão até o valor desejado. A desvantagem é que eles têm uma eficiência terrível (50-60% é bom). A vantagem é que eles são baratos e funcionam com uma bateria de 9V, você pode comprar um modelo básico por 20 pence no Reino Unido. Você também deve ter em mente que os reguladores têm uma tensão de queda - a lacuna mínima entre a entrada e a saída. Você pode comprar reguladores especiais LDO (Low DropOut) que têm dropouts em torno de 50mV (em comparação com 1-2V com outros projetos). Em outras palavras, procure LDOs com saída de + 5V. Usando um circuito integradoA maneira ideal de fazer isso é um regulador de comutação. Esses serão, para nosso propósito, normalmente pacotes de 8 pinos que recebem uma tensão e nos fornecem uma saída regulada em uma alta eficiência - quase 90% em alguns casos. Você pode obter conversores step up ou step down (boost / buck respectivamente) dependendo do que você deseja colocar, alternativamente, você pode comprar reguladores que irão ficar acima ou abaixo da saída desejada. O chip que estou usando para este projeto é um MAX619 +. É um regulador de aumento de 5 V que usa 2 AA (a faixa de entrada é 2 V-3,3 V) e fornece uma saída de 5 V estável. Ele só precisa de quatro capacitores para operar e é muito eficiente em termos de espaço. Custo - 3,00 incluindo os limites. Sem dúvida, vale a pena gastar apenas para usar um pouco mais as baterias. A única grande desvantagem é que não é protegido contra curto-circuito, portanto, se houver um pico de corrente, esteja avisado! No entanto, isso é razoavelmente trivial de consertar com um circuito adicional: Outro projeto de chip útil - embora não seja uma solução tão legal é o LT1307. Novamente, um regulador de 5 V, mas pode levar uma variedade de entradas e tem coisas úteis como detecção de bateria fraca. Custa um pouco mais, quase 5 com indutores, grandes capacitores e resistores. Trilhos de tensão Vamos usar dois trilhos de tensão principais (mais um aterramento comum). O primeiro será o 3V da bateria, que será usado para alimentar os LEDs e outros componentes de potência relativamente alta. Meu MAX619 é avaliado apenas até 60mA (embora o máximo absoluto seja 120mA), portanto, é mais fácil conectar o microcontrolador a um MOSFET para controlar quaisquer LEDs. O MOSFET quase não consome corrente e atua como uma interrupção no circuito quando a entrada da porta está em torno de 3V. Quando o microcontrolador envia 1 lógico no pino, a voltagem é 5 V e o FET liga, agindo então como um curto-circuito (ou seja, um pedaço de fio). O trilho de 5 V alimentará o LCD, o microcontrolador e quaisquer circuitos de amplificação para sensores de entrada. Consumo de energia Se olharmos para várias planilhas de dados, notamos que o AVR não leva mais do que 15-20 mA com carga máxima. O LCD leva apenas 1mA para operar (pelo menos quando eu testei, orçamento para 2). Com a luz de fundo ligada, é você quem decide. Conectá-lo diretamente ao trilho de 5 V (tentei) é bom, mas certifique-se de que ele tenha um resistor integrado (siga os rastros no PCB) antes de fazer. Ele desenhou 30mA dessa forma - terrível! Com um resistor de 3,3k ainda é visível (perfeito para fotografia astronômica) e consome apenas 1mA. Você ainda pode obter um brilho decente usando um 1k ou outro. Estou bem com o meu desenho abaixo de 2mA com a luz de fundo ligada! Se você quiser, é trivial adicionar um botão de brilho usando um potenciômetro de 10k. O LED IV pode levar 100mA no máximo, mas tive bons resultados com 60mA no meu (experimento!). Você pode então reduzir essa corrente pela metade porque está efetivamente operando em um ciclo de trabalho de 50% (quando o LED é modulado). De qualquer forma, está ligado apenas por uma fração de segundo, então não precisamos nos preocupar com isso. Os outros LEDs com os quais você deve brincar, você pode descobrir que apenas uma corrente de 10mA é suficiente para lhe dar um bom brilho - certamente olhe para LEDs de baixa potência (excluindo o infravermelho), você não está projetando uma tocha! Eu optei por não adicionar um indicador de energia no meu circuito, simplesmente porque ele consome muita corrente para não usar muito. Use o botão liga / desliga para verificar se ele está ligado! No total, você não deve estar executando mais do que 30mA de uma só vez e com um fornecimento teórico de cerca de 2500 (permitindo a variação) mAh que deve dar a você bem mais de 80 horas direto com tudo ligado. Com o processador ocioso na maior parte do tempo, isso vai pelo menos dobrar / triplicar, então você não deve ter que trocar as baterias com muita frequência. ConclusãoLá vamos nós, foi fácil, não foi! Você pode ir barato e alegre com uma bateria de 9V e um regulador LDO em detrimento da eficiência ou pagar um pouco mais e usar um IC dedicado para fazer isso. Meu orçamento ainda estava abaixo de 20, mesmo COM o IC, então você pode diminuí-lo ainda mais se precisar.

Etapa 3: Uma análise mais detalhada do ATmega8

Um olhar mais atento sobre o ATmega8
Um olhar mais atento sobre o ATmega8

PinsImage 1 é o diagrama de pinagem para o ATMega8 (exatamente o mesmo que o 168/48/88, a única diferença é a quantidade de memória onboard e opções de interrupção). Pin 1 - Reset, deve ser mantido na tensão VCC (ou pelo menos lógico 1). Se aterrado, o dispositivo irá reconfigurar suavementePin 2-6 - Porta D, entrada / saída geralPin 7 - VCC, tensão de alimentação (+ 5V para nós) Pino 8 - GroundPin 9, 10 - XTAL, entradas de relógio externo (parte da Porta B) Pinos 11 - 13 Porta D, entrada / saída geralPin 14 - 19 Porta B, entrada / saída geralPin 20 - AVCC, tensão de alimentação analógica (igual ao VCC) Pino 21 - AREF, referência de tensão analógica Pin 22 - GroundPin 23-28 Porta C, portas de entrada / saída utilizáveis gerais: D = 8, C = 6, B = 6 Um total de 20 portas utilizáveis é ótimo, para simplificar você deve agrupar suas saídas em portas (digamos, D como a porta de saída) ou em grupos na placa - você pode querer que o LCD saia da porta C apenas para manter os fios organizados naquele canto. Há três pinos extras necessários para a programação. Esses são MISO (18), MOSI (17) e SCK (19). No entanto, eles funcionarão como pinos de I / O, se necessário. Relógio O sinal que enviamos para a câmera precisa ser cronometrado com precisão (cerca de um microssegundo), por isso é importante escolher uma boa fonte de relógio. Todos os AVRs têm um oscilador interno de onde o chip pode obter seu clock. A desvantagem disso é que eles podem flutuar em torno de 10% com temperatura / pressão / umidade. O que podemos fazer para combater isso é usar um cristal de quartzo externo. Estão disponíveis em qualquer valor de 32768kHz (relógio) a 20MHz. Eu escolhi usar um cristal de 4Mhz, pois fornece uma quantidade decente de velocidade, mas é bastante conservador de energia em comparação com talvez 8Mhz +. Onboard Power ManagementEu realmente queria usar rotinas de sono em meu código. Na verdade, eu escrevi a primeira versão que dependia muito de deixar o processador ocioso enquanto o tempo passava. Infelizmente, devido a restrições de tempo, tive alguns problemas com o funcionamento externo do relógio e a interrupção do uso dos temporizadores. Em essência, eu teria que reescrever o código para lidar com o controlador simplesmente sem acordar - o que eu poderia fazer, mas o tempo está contra mim. Como tal, o dispositivo consome apenas 20 mA, então você pode se safar. Se você estiver realmente pronto para isso, não deixe de mexer no código, tudo o que você precisa fazer é marcar o clock internamente e, em seguida, executar o Timer 2 no modo assíncrono usando o cristal de 4 MHz para atrasos mais precisos. É simples de fazer, mas demorado. ADCO canivete suíço no conjunto de ferramentas AVR, o ADC significa Conversor Analógico para Digital. Como funciona é relativamente simples do lado de fora. Uma tensão é amostrada em um pino (de algum sensor ou outra entrada), a tensão é convertida em um valor digital entre 0 e 1024. Um valor de 1024 será observado quando a tensão de entrada for igual à tensão de referência do ADC. Se definirmos nossa referência como VCC (+ 5V), cada divisão será 5/1024 V ou cerca de 5mV. Assim, um aumento de 5mV no pino aumentará o valor do ADC em 1. Podemos tomar o valor de saída do ADC como uma variável e então mexer nele, compará-lo com coisas, etc. no código. O ADC é uma função incrivelmente útil e permite que você faça muitas coisas interessantes, como transformar seu AVR em um osciloscópio. A frequência de amostragem é de cerca de 125 kHz e deve ser ajustada em proporção à frequência do clock principal. RegistrosVocê pode ter ouvido falar de registradores antes, mas não se preocupe! Um registro é simplesmente uma coleção de endereços (localizações) na memória do AVR. Os registros são classificados por seu tamanho de bit. Um registrador de 7 bits tem 8 localizações, já que começamos de 0. Existem registradores para quase tudo e vamos examiná-los com muito mais detalhes posteriormente. Alguns exemplos incluem os registros PORTx (onde x é B, C ou D) que controlam se um pino é definido alto ou baixo e define resistores de pull up para entradas, os registros DDRx que definem se um pino é de saída ou entrada e assim por diante. The DatasheetUm gigante da literatura, pesando cerca de 400 páginas; as planilhas de dados do AVR são uma referência inestimável para o seu processador. Eles contêm detalhes de cada registro, cada pino, como funcionam os temporizadores, quais fusíveis devem ser ajustados e muito mais. Eles são gratuitos e você precisará deles mais cedo ou mais tarde, então baixe uma cópia! Www.atmel.com/dyn/resources/prod_documents/doc2486.pdf

Etapa 4: alocando pinos

Alocação de pinos
Alocação de pinos

Já mencionei as entradas e saídas que precisamos, então devemos alocar os pinos deles! Agora, a PORTA D tem 8 pinos, o que é conveniente, pois pode atuar como nossa porta de saída. O LCD requer 7 pinos para operar - 4 pinos de dados e 3 pinos de controle. O LED IR requer apenas um pino, então isso faz com que nosso 8. PORTB seja nossa porta de botão, ela tem 6 entradas, mas vamos precisar apenas de 5. Esses serão os botões de modo e direcionais. O PORTC é especial, é a porta ADC. Precisamos apenas de um pino para a entrada do acionador e faz sentido colocá-lo no PC0 (uma abreviatura comum para pinos de porta neste caso, Porta C, Pino 0). Temos então alguns pinos para LEDs de status (um acende quando o valor ADC está acima de alguma condição, o outro acende quando está abaixo de alguma condição). Também colocaremos nossa entrada do botão ok / atirar aqui, por motivos que ficarão claros mais tarde. Depois de tudo isso, usamos a maioria das portas, mas ainda temos algumas restantes se você deseja expandir o projeto - talvez vários gatilhos?

Etapa 5: comunicação com a câmera

Comunicando-se com a câmera
Comunicando-se com a câmera
Comunicando-se com a câmera
Comunicando-se com a câmera

Primeiro prêmio no Digital Days Photo Contest

Recomendado: