Índice:
- Etapa 1: Visão geral do hardware 3EEPROM
- Etapa 2: 25AA- / 25LC- SPI EEPROM
- Etapa 3: 24AA- / 24LC I2C EEPROM
- Etapa 4: EEPROM de 1 fio DS2431
- Etapa 5: Conclusão
Vídeo: Bus Pirate 3EEPROM Explorer Board: 5 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:40
Se você tem um dos Piratas do Ônibus do Hack a Day's, o que fazer com ele? Aprenda mais sobre EEPROMs de 1 fio, I2C e SPI com a placa explorer 3EEPROM (nós a chamamos de THR-EE-PROM). EEPROM é um tipo de chip de memória que armazena dados sem uma fonte de alimentação contínua. É útil para armazenamento permanente de dados em pequenos circuitos de log ou para manter páginas personalizadas em um minisservidor da web. Os EEPROMs vêm em vários tamanhos e protocolos. O 3EEPROM tem três chips EEPROM comuns: o DS2431 (1-fio), 24AA- (I2C) e 25AA- (SPI). Todos os três foram demonstrados anteriormente no Hack a Day, mas cada demonstração usa uma versão diferente do hardware e firmware do Bus Pirate, é difícil para um iniciante seguir usando um Bus Pirate v2go. Continue lendo para obter um guia passo a passo atualizado para usar os EEPROMs DS2431, 24AA- e 25AA- com o Bus Pirate v2go. Também temos os logs de sessão completos como arquivos de texto para que você não perca um único detalhe. Podemos ter 3EEPROM explorer board PCBs ou kits produzidos no Seeed Studio. Os PCBs custam cerca de US $ 10, os kits custam cerca de US $ 15, vendidos em todo o mundo. Precisamos organizar uma compra em grupo de 10 PCBs ou 20 kits para começar. Se você estiver interessado em um Bus Pirate, a versão 3 está chegando. Eu não pude incluir alguns elementos de formatação e tabelas HTML em um Instructable, você pode ver a postagem original no blog Dangerous Prototypes.
Etapa 1: Visão geral do hardware 3EEPROM
O objetivo deste protótipo é aprender sobre EEPROM e três protocolos de barramento comuns. Primeiro, olhamos para o PCB 3EEPROM e, em seguida, demonstramos cada EEPROM usando uma ferramenta de interface serial universal Bus Pirate. Se você não tem um Bus Pirate, você ainda pode acompanhar porque a ordem básica das operações da interface permanece a mesma, não importa como você as implemente. Esquema de tamanho total do circuito [PNG]. Fizemos o circuito e o PCB usando a versão freeware do Cadsoft Eagle. Você pode baixar o esquema e o PCB do arquivo Bus Pirate SVN. O PCB 3EEPROM contém um EEPROM de 1 fio DS2431 (IC1), um EEPROM 24AA-I2C (IC4) e um EEPROM 25AA-SPI (IC5). O DS2431 (IC1) extrai energia parasiticamente do barramento de 1 fio, ele não tem um pino de fonte de alimentação externa e não requer um capacitor de desacoplamento. IC2 e IC3 são pontos vazios para dispositivos adicionais de 1 fio, como outro DS2431 ou um sensor de temperatura DS1822. C1 (0,01uF) é opcional e necessário apenas se IC2 ou IC3 forem preenchidos com um dispositivo alimentado de 1 fio.1 O fio requer um resistor de pull-up forte, no máximo 2,2K ohms. Os resistores pull-up on-board do Bus Pirate são de 10K, muito fracos para alimentar adequadamente o DS2431 durante as gravações. A placa do explorer 3EEPROM inclui um resistor pull-up de 1,8 k ohm, 1/8 watt (R1) no barramento de 1 fio, de modo que nenhum resistor pull-up adicional é necessário. O 24AA- (IC4) e o 25AA- (IC5) cada um recebe um capacitor de 0,1 uF para desacoplá-los da fonte de alimentação (C2, C3). Você provavelmente não precisa dos capacitores em um circuito tão simples, nós os omitimos da placa de protótipo na demonstração. O barramento I2C usado pelo 24AA- também requer resistores pull-up, mas os resistores pull-up de 10K ohm on-board do Bus Pirate são suficientes. Todos os componentes irão operar de 2,8 volts a 5 volts DC. O circuito é alimentado através dos pinos VCC e GND do jumper 3. Há dois pinos VCC, um é para alimentação, o outro é para o pino de entrada de tensão do resistor pull-up do Bus Pirate (Vpullup). PCBFizemos o circuito e o PCB usando o versão freeware do Cadsoft Eagle. Você pode baixar o esquema e o PCB do arquivo Bus Pirate SVN. Se você gostaria de um PCB preparado profissionalmente ou kit 3EEPROM, podemos conseguir uma compra em grupo se 10 ou 20 pessoas estiverem interessadas. Lista de peças R1 resistor de 1800 ohm (1/8 watt) C2, 3 capacitor 0,1uF / 10volts + JP1-4 0,1 "cabeçote de pino machoIC1 DS2431 1K EEPROM de 1 fio TO-92IC4 ** 24AA014-I / P I2C EEPROM DIP8IC5 ** 25AA010A-I / P SPI EEPROM DIP8ICS4, 5 soquete DIP de 8 pinos para IC5, 6 ** IC4, IC5 poderia ser de qualquer tamanho, vinculamos a pequenos chips, usamos 128 bytes e 128 KB. Não pude incluir algumas tabelas de formatação e HTML em um Instructable, você pode ver a postagem original no blog Dangerous Prototypes.
Etapa 2: 25AA- / 25LC- SPI EEPROM
DemonstraçõesTodas as demos EEPROM têm praticamente a mesma aparência. Vamos escrever alguns números no chip e depois lê-los. Cada dispositivo tem condições que se aplicam quando você deseja gravar mais do que alguns valores, como tamanho da página e limitações de limite. Leia mais sobre isso na folha de dados do seu dispositivo específico. Se você não conseguir fazer uma demonstração funcionar, baixe o log completo do terminal para não perder nada do que fizemos. Resistores pull-up são o problema mais comum, verifique a tensão do pino pull-up usando o menu 'v' no terminal Bus Pirate. Chip: 25AA, SPI EEPROM (1Kbyte). Bus: SPI. Resistores pull-up necessários apenas para interface de tensão mista. Requisitos de energia: 1,8 volts a 5,5 volts (AA), 2,5 volts a 5,5 volts (LC). Referências: folha de dados, demonstração de Hack a Day. Registro de sessão completo do Bus Pirate para esta demonstração. Eu não pude incluir alguma formatação e tabelas HTML em um Instructable, você pode ver o original no blog Dangerous Prototypes. IC5 é uma EEPROM I2C da série 25AA da Microchip, essas EEPROMs vêm em uma tonelada de tamanhos. As peças AA funcionam de 1,8 volts a 5,5 volts, enquanto as peças 25LC- têm o requisito mínimo de 2,5 volts. C3 (0,1uF) desacopla o SPI EEPROM da fonte de alimentação. A proteção contra gravação (WP) e os pinos de retenção podem ser controlados por um microcontrolador, mas nós os desativamos mantendo esses pinos altos. Os pinos do barramento SPI, CS, DO, CLK e DI, são trazidos para o cabeçalho JP4. Configuração Se você estiver usando um Bus Pirate, conecte-o ao 3EEPROM ou 25AA-IC conforme mostrado na imagem do gráfico abaixo. O SPI normalmente não requer resistores pull-up. Interface no terminal Bus Pirate pressione 'm' para o menu de modo e selecione SPI. Configure a biblioteca SPI para saída de pinos normal, use os padrões para todas as outras configurações do modo SPI. Habilite as fontes de alimentação (grande 'W') no prompt do modo SPI. Finalmente, obtenha um relatório de voltagem para ter certeza de que as fontes de alimentação estão funcionando ('v'). Vamos demonstrar como fazer a interface da EEPROM diretamente a 3,3 volts usando a biblioteca SPI no modo de pinos normal. Resistores pull-up não são necessários para esta demonstração. Se você deseja fazer a interface com uma EEPROM alimentada por 5 volts, use a biblioteca SPI no modo de pino de coletor aberto (HiZ) e habilite os resistores pull-up com o pino Vpullup (Vpu) conectado à fonte de alimentação da EEPROM. Etapa 1, desative a proteção contra gravação 'SPI> [0b110] CS ENABLED <<< seleção de chip habilitadaWRITE: 0x06 <<< desabilite o comando de proteção contra gravaçãoCS DISABLED <<
Etapa 3: 24AA- / 24LC I2C EEPROM
Chip: 24AA, I2C EEPROM (1Kbyte). Bus: I2C, resistores pull-up necessários. Requisitos de energia: 1.8volts a 5.5volts (24AA), 2.5volts a 5.5volt (24LC). Referências: folha de dados, demonstração de Hack a Day. Log completo da sessão do Bus Pirate para esta demonstração. Não pude incluir algumas tabelas de formatação e HTML em um Instructable, você pode ver o original no blog Dangerous Prototypes. IC4 é um EEPROM I2C da série 24AA da Microchip, esses EEPROMs vêm em um toneladas de tamanhos. As peças AA funcionam de 1,8 volts a 5,5 volts, enquanto as peças 24LC- têm um requisito mínimo de 2,5 volts. Um capacitor de 0,1uF (C2) desacopla IC4 da fonte de alimentação. O pino de proteção contra gravação (WP) poderia ser controlado por um microcontrolador, mas para esta demonstração simples, nós o desativamos com uma conexão ao terra. Os pinos de barramento I2C, SDA e SCL, são trazidos para o cabeçalho JP2. O endereço da maioria dos EEPROMs 24AA é 1010AAAS, com os quatro bits finais determinados pelos pinos de endereço (A0, A1, A2) e o bit de seleção do modo de leitura / gravação (S). Todos os bits de endereço são aterrados neste exemplo, portanto, o endereço de gravação da EEPROM é 10100000 (ficha técnica, página 6). Configuração Se você estiver usando um Bus Pirate, conecte-o ao 3EEPROM ou 24AA-IC conforme mostrado na imagem do gráfico abaixo. I2C é um barramento bidirecional que requer resistores pull-up em ambos os pinos. Você pode usar os resistores pull-up on-board do Bus Pirate conectando o pino Vpullup (Vpu) à fonte de alimentação de 3,3 volts e ativando-os no terminal. Nota de interface: Nem todos os EEPROMs I2C funcionam da mesma forma. O minúsculo 24AA01, por exemplo, tem um sistema de endereçamento e comando completamente diferente. Certifique-se de verificar a folha de dados do seu chip. Pressione 'm' no terminal Bus Pirate e selecione I2C no menu de modo. Habilite as fontes de alimentação ('W' grande) e os resistores pull-up ('p', opção 2) no prompt I2C. Obtenha um relatório de voltagem ('v') para certificar-se de que as fontes de alimentação estão ligadas e que o pino Vpullup está conectado a uma voltagem. I2C> (0) <<
Etapa 4: EEPROM de 1 fio DS2431
Chip: DS2431, EEPROM de 1 fio (1 Kbyte). Bus: 1 fio, resistor pull-up de <2,2 Kohm necessário. Requisitos de energia: 2,8 volts a 5,25 volts. Referências: folha de dados, demonstração de Hack a Day. Registro de sessão completo do Bus Pirate para esta demonstração. Não pude incluir algumas tabelas de formatação e HTML em um Instructable, você pode ver o original no blog Dangerous Prototypes. O DS2431 extrai energia do resistor pull-up e não precisa de uma fonte externa ou capacitor de desacoplamento. 1-Wire precisa de um resistor pull-up forte, um máximo de 2.2Kohms. Os resistores pull-up on-board do Bus Pirate são de 10K, muito fracos para alimentar adequadamente o DS2431 durante as gravações. Você deve usar um resistor externo de 2,2 Kohm ou menor entre a alimentação e o pino de barramento de 1 fio. Se você tiver dificuldades para gravar dados, certifique-se de que seu resistor pull-up seja grande o suficiente. A placa do explorer 3EEPROM inclui um resistor pull-up de 1800 ohm (R1) no barramento de 1 fio, portanto, nenhum resistor externo é necessário. Configuração Se você estiver usando um Bus Pirate, conecte-o à placa 3EEPROM ou DS2431 conforme mostrado na imagem do gráfico abaixo. O DS2431 não requer o pino da fonte de alimentação, ele é usado na placa 3EEPROM para alimentar o grande resistor pull-up para o barramento de 1 fio. Interfacing Pressione 'm' no terminal Bus Pirate e selecione o modo 1-Wire. Habilite as fontes de alimentação on-board (grande 'W') e verifique o monitor de tensão (v). Etapa 1, encontre o endereço do dispositivo 1-WIRE> (0xf0) <<< Macro de pesquisa de 1 fio 1WIRE ROM COMMAND: SEARCH (0xF0) Dispositivos encontrados em: Macro 1WIRE address1.0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2B <<< DS2431 ID exclusivo * DS2431 1K EEPROM <<
Etapa 5: Conclusão
Conclusão Este protótipo ensina sobre a memória EEPROM e demonstra como usar o Bus Pirate com três protocolos comuns: 1-Wire, I2C e SPI. A placa do explorer 3EEPROM garante as conexões adequadas para cada EEPROM e fornece um resistor pull-up externo para o barramento de 1 fio mais exigente com componentes alimentados por parasitas. Podemos ter PCBs de placa explorer 3EEPROM ou kits produzidos no Seeed Studio. Os PCBs custam cerca de US $ 10, os kits custam cerca de US $ 15, vendidos em todo o mundo. Precisamos organizar uma compra em grupo de 10 PCB ou 20 kits para começar.
Recomendado:
Chaves do volante para o adaptador estéreo do carro (CAN Bus -> Key1): 6 etapas
Teclas do volante para o adaptador estéreo do carro (CAN Bus -> Key1): Alguns dias depois de comprar um carro usado, descobri que não consigo tocar música do meu telefone no estéreo do carro. Ainda mais frustrante era que o carro tinha bluetooth, mas só permitia chamadas de voz, não de música. Ele também tinha uma porta USB do Windows Phone, mas eu
Roomba Explorer: 4 etapas
Roomba Explorer: ao utilizar o MATLAB e o robô Create2 da iRobot, este projeto irá explorar várias áreas de um local desconhecido. Empregamos os sensores do robô para ajudar a manobrar em um terreno perigoso. Obtendo fotos e vídeo de um Raspberry Pi que
Atalhos de teclado para Internet Explorer !!: 4 etapas
Atalhos de teclado para o Internet Explorer !!: Este Instructable mostrará alguns atalhos de teclado úteis para o Internet Explorer. Inscreva-se no meu canal. Obrigado
Roomba Scout Explorer: 8 etapas
Roomba Scout Explorer: Como um dos projetos americanos mais esperados e pesquisados, os projetos do Mars rover se tornaram realizações humanas na produção cada vez mais avançada de sistemas autônomos de alta tecnologia com o único propósito de investigar e inte
HD44780 LCD para placa adaptadora I2C para o Bus Pirate: 9 etapas
HD44780 LCD para placa adaptadora I2C para o Bus Pirate: LCDs de caracteres baratos baseados no chipset HD44780 vêm em uma variedade de tamanhos: 2x16, 4x20, etc. Esses monitores têm dois modos de interface padrão, paralelo de 4 bits e 8 bits. 8 bits requer um total de 11 linhas de dados, 4 bits requer 7 (6 para somente gravação). Algum