Cars · Sensors

Conversor Analógico-Digital NEC uPD7004C

Especificações técnicas, mapeamento de pinagem e encaminhamento de canais para o chip Conversor Analógico-Digital (ADC) NEC uPD7004C em ECUs Honda OBD0 MPFI.

Avançado

Adaptado de pgmfi.org wiki

O NEC uPD7004C é um circuito integrado conversor analógico-digital (ADC) de 10 bits usado em Unidades de Controlo do Motor (ECUs) Honda OBD0 Multi-Point Fuel Injection (MPFI) como a PM6 e PR3. O seu papel é converter leituras de tensão analógica dos sensores do motor (por exemplo, MAP, TPS, temperatura do líquido de refrigeração) em dados digitais que o processador principal da ECU possa interpretar.


Arquitetura e Programação

Embora o uPD7004C suporte fisicamente uma resolução de 10 bits, o código OBD0 da Honda opera o chip num equivalente a modo de 8 bits descartando os 2 bits menos significativos (LSB). O MCU lê apenas o registo de dados superior (high data register), poupando espaço de RAM e ciclos de processamento.

Mapeamento de Registos

Na arquitetura OBD0 da Honda, a interface ADC utiliza dois registos mapeados em memória:

  • 0x4000 (Registo de Controlo): Escrito para iniciar uma conversão. Enviar um valor de canal (0 a 7) para este endereço inicia uma medição nesse canal.
  • 0x4001 (Registo de Dados): Lê o byte mais significativo (high byte) do valor analógico convertido.

Fluxo de Trabalho do Ciclo de Conversão

Na prática, a sequência de conversão é gerida periodicamente por uma interrupção de temporizador controlada por hardware:

  1. A rotina da interrupção externa 1 salta para o endereço de vetor 0x0064h.
  2. A rotina lê o valor analógico atual do registo de dados do byte mais significativo em 0x4001h.
  3. O registo do byte menos significativo (low byte) é reposto escrevendo 0 em 0x4001h.
  4. A rotina inicia a medição seguinte escrevendo o ID do canal pretendido (0 a 0x7) no registo de controlo em 0x4000h.
  5. O MCU armazena os resultados nas posições de RAM externa 0x0000h a 0x0006h para os canais 0 a 6. O canal 7 utiliza um multiplexador secundário para expandir as entradas disponíveis.

Configuração da Pinagem

O uPD7004C é apresentado num invólucro DIP de 28 pinos (Dual In-line Package). Abaixo está a configuração completa de pinagem quando operado em modo paralelo (pino de Seleção de Modo MC ligado ao nível lógico alto):

Pino Símbolo Função Pino Símbolo Função
1 CH4 Canal 4 de Entrada Analógica 28 CH3 Canal 3 de Entrada Analógica
2 CH5 Canal 5 de Entrada Analógica 27 CH2 Canal 2 de Entrada Analógica
3 CH6 Canal 6 de Entrada Analógica 26 CH1 Canal 1 de Entrada Analógica
4 CH7 Canal 7 de Entrada Analógica 25 CH0 Canal 0 de Entrada Analógica
5 VREF Entrada de Tensão de Referência 24 AGND Massa Analógica
6 DGND Massa Digital (Terra) 23 AVDD Tensão de Alimentação Analógica
7 DB7/SO Bit de Dados 7 / Saída Série 22 /CS Seleção de Chip (Ativo em Baixo)
8 DB6/SI Bit de Dados 6 / Entrada Série 21 /RD/SCI Habilitação de Leitura / Entrada de Relógio Série
9 DB5/SHIFT Bit de Dados 5 / Entrada Shift 20 A0 Entrada de Endereço de Controlo
10 DB4/SCKO Bit de Dados 4 / Saída de Relógio Série 19 /WR/STB Habilitação de Escrita / Entrada Strobe
11 DB3/SOEN Bit de Dados 3 / Habilitação de Saída Série 18 MC Seleção de Modo (Alto = Modo Paralelo)
12 DB2/CODE Bit de Dados 2 / Saída de Código 17 CLK Entrada de Relógio
13 DB1/DEV1 Bit de Dados 1 / Seleção de Dispositivo 1 16 EOC Fim de Conversão (Ativo em Baixo)
14 DB0/DEV0 Bit de Dados 0 / Seleção de Dispositivo 0 15 DVDD Alimentação Digital (+5V)

Mapeamento de Canais de Entrada Analógica

Como a ECU requer mais entradas analógicas do que os 8 canais nativos do uPD7004C, o Canal 7 está ligado a um multiplexador analógico (MUX) externo Toshiba de 8 canais. Isto expande eficazmente a capacidade A/D da ECU para 15 canais.

Canal ADC Canal MUX Sensor Alvo / Entrada Notas
0 - Sensor MAP (Pressão Absoluta do Coletor) Cálculo primário da carga do motor
1 - Sensor TPS (Posição da Borboleta) Feedback do ângulo da borboleta
2 - Feedback da Tensão do Alternador Monitorizado para ajustes de ralenti e carga elétrica
3 - Sensor PA (Pressão Atmosférica) Compensação barométrica (sensor integrado na ECU)
4 - Sensor ECT (Temperatura do Líquido de Refrigeração do Motor) Compensação de combustível por temperatura do líquido de refrigeração
5 - Sensor IAT (Temperatura do Ar de Admissão) Compensação de densidade de combustível por temperatura do ar
6 - EGR / Sensor de O2 Secundário JDM SiR '89-91: O2 Secundário; US Si/HF '88-91 & Teg '88-89: Sensor de elevação da EGR
7 0 Sensor de O2 Primário (Sonda Lambda) Feedback de combustível em closed-loop
7 1 Referência interna do ADC Verificação de tensão para diagnóstico
7 2 Não utilizado / Desconhecido -
7 3 Não utilizado / Desconhecido -
7 4 Não utilizado / Desconhecido -
7 5 Não utilizado / Desconhecido -
7 6 ELD (Detetor de Carga Elétrica) Sinal de carga elétrica da caixa de fusíveis
7 7 Pino B18 do Conector da ECU Feedback não utilizado ou de acessório opcional

Fichas Técnicas (Datasheets)

Créditos e fonte

Fonte Adaptado de UPD7004C em pgmfi.org wiki. Licenciado sob CC BY-NC-SA 1.0.