Está en la página 1de 11

Manual chino CH341 (b) 1

USB CH341 chip de convertir autobús

Manual Chino (B): Descripción paralelo y en serie síncrona

Versión: 3B
http://wch.cn

1, función paralela

1.1 Descripción General

CH341 puerto paralelo paralelo está activo, bajo terminal de control de programa de ordenador, puede datos de entrada y de salida directamente desde un circuito

externo, en general, no se requiere una MCU / DSP / MCU externa.

CH341 Existen dos tipos principales modo de interfaz de puerto paralelo: PPE y el MEM. EPP EPP manera V1.7 o V1.9 similares especificación PPE, MEM forma de

memoria similar de lectura-escritura de INTEL de temporización. El modo por defecto después de la viruta del reajuste del PPE es, cuando la configuración USB, el programa

de ordenador puede ser terminado en cualquier interruptor de control CH341 tiempo entre las dos formas. BUS También hay una manera de abordar y bus de datos de

manera multiplexada para proporcionar dirección y 8 bits de datos 7 bits.

CH341B y CH341F chips de soporte funciones de personalización en masa del programa.

1.2. Puerto paralelo EPP

EPP puerto paralelo WR # pasador comprende un pasador principal, DS # pin, AS # pin, ESPERE # pin, la señal de temporización puede ser descrita con referencia

a la V1.7 y V1.9 especificación EPP relevante.

modo EPP operación específica realizada por una combinación lógica de WR #, DS #, y el AS #. WR # se utiliza para indicar una dirección dirección o de datos de

transmisión actual, en el lado del ordenador, el alto nivel del circuito externo es una operación de lectura, el circuito externo se realiza en el funcionamiento de bajo nivel de

escritura. señal estroboscópica es señal de pulso activo-bajo, que comprende una luz estroboscópica señal de datos DS # estroboscópico y la luz estroboscópica dirección

AS #, DS # realizar de manera eficiente las operaciones de datos, AS # aplicación efectiva de la operación de dirección. Se produce en la operación EPP período efectivo

señal estroboscópica real, por ejemplo: WR # es en el período de nivel alto del impulso de salida DS #, una lectura de datos se lleva a cabo la operación; en WR # AS # es baja durante la salida de im

CH341B / F / A del PPE apoya leer y escribir datos DS # esperan señal Esperar #, se da salida a un nivel bajo después de la señal estroboscópica CH341 inicio, si la

espera # es baja, la señal estroboscópica se mantendrán bajos hasta espere # de nuevo a alta o 85US esperar el tiempo de espera antes del final de la salida.

PPE escribir la dirección CH341B / F / Una operación como # señal Esperar ESPERA # no es compatible, por lo que la dirección de la lectura y escritura PPE

ligeramente más rápido que el número de datos de lectura y escritura.

Activo anchura bajo luz estroboscópica de escritura es mínima o 0.16uS 0.25uS, la anchura de la señal de baja estroboscópica de lectura activa es el mínimo de la

0.25us velocidad máxima de transferencia o 0.33uS, el estado ideal es 800 KB / S, que se utiliza en el entorno WINDOWS XP SP2 gran bloque continuo de prueba de

velocidad de datos, la velocidad de transmisión medida es de aproximadamente: 510KB aguas abajo / S, cargados 560KB / S.

1.3. Puerto paralelo MEM

MEM-pin del puerto paralelo incluyen principalmente WR # pin, RD # pasador (alias DS # pin), pin A0 (alias AS # pin), ESPERE # pin.

Leer y escribir de manera similar memoria MEM, WR y RD # # es señal de impulso activo bajo. Se produjo en la operación real del MEM RD # WR # o periodo

efectivo, en el lado del ordenador, cuando el circuito externo WR # efectiva lleva a cabo una operación de escritura, cuando la operación de lectura RD # efectiva a un

circuito externo. A0 indica la dirección de la lectura actual y las operaciones de escritura, por ejemplo: invirtiendo el A0 y A0 se utilizan para seleccionar dos dispositivos

externos de chip; o A0 = 1 se establece que señala puerto del dispositivo de mando externo, y el A0 = operación puerto de datos direccional cero.

MEM escribir CH341B / F / A del apoyo ESPERA # operación señal de espera.

Low mínimo ancho efectivo WR # es 0.25uS, RD # anchura efectiva mínima baja es 0.33uS, la velocidad de transmisión máxima en el estado ideal se 800KB / S.

velocidad y transmisión de datos Encontrado leen y escriben EPP similar, pero ligeramente inferior a la velocidad de leer y escribir dirección EPP operaciones.

1.4. Parallel BUS

El pasador BUS principal puerto paralelo, incluyendo WR # pin, pin RD # (alias DS # pin), el pin ALE (alias como # pines), espera #
Manual chino CH341 (b) 2

Pin.
realización BUS corresponde más líneas de dirección MEM manera, WR # y RD # es una señal de impulso de bajo activo, antes de que ocurra cada pulso de

escritura, el bus de datos de salida D0-D7 7 a la dirección de destino para ser operado y luego emite una ALE alto nivel de la señal, la dirección externa circuito de retención

(por ejemplo 74LS373) 7 salidas el pestillo de dirección, un dispositivo externo de selección de chip, y luego, WR #, o uno de la salida válido RD # leer y escribir pulsos. La

lectura actual y las operaciones de escritura WR # BUS se produce en o efectiva periodo RD #, en el lado del ordenador, cuando el circuito externo WR # efectiva lleva a

cabo una operación de escritura, cuando RD # es válido para el circuito externo realiza una operación de lectura.

Bus de escritura CH341B / F / A del apoyo ESPERA # operación señal de espera.

Low mínimo ancho efectivo WR # es 0.33uS, RD # bajo mínimo ancho efectivo es 0.51uS, la velocidad de transmisión máxima en el estado ideal es de 300 KB / S,

pero una pluralidad de realizar de forma independiente una lectura de direcciones de E / S cuando la velocidad de escritura puede ser 1K / S.

1.5. Pasador auxiliar

Particular de los auxiliares pin RST # pin y pin # INT, y ERR #, SLCT, PEMP y otros pines.

RST # pin es un pin de salida de reposición, cuando es baja, lo que indica que el equipo se reinicia o CH341 el programa terminal de reinicio requiere un circuito

externo. INT # pin es una interrupción pines de entrada de solicitud, cuando se detecta el flanco ascendente, el programa de ordenador recibirá al final de la notificación de

interrupción. pines de entrada de propósito general, las aplicaciones del lado del equipo otros pines pueden ser consulta personalizada y su estado.

2, descripción funcional serie síncrona

2.1 Descripción General

puerto serie síncrono CH341 está activo, sólo como un anfitrión Anfitrión / Master, bajo terminal de control de programa de ordenador, pueden datos de entrada y de

salida directamente desde un circuito externo, por lo general no requiere una MCU / DSP / MCU externa.

Una tecnología usando FlexWire (TM) CH341B / F /, los procedimientos que combinan puede ser implementado mediante control por ordenador: interfaz en serie de 2

hilos, el cable de serie 4, 5 línea serie, en el que el puerto serie de dos hilos y 4 hilos se utiliza más comúnmente.

2.2. De serie de 2 hilos

interfaz de serie 2 de alambre comprende un pasador principal pin SCL, pin SDA. reloj SCL síncrono para la salida de una sola vía, y la resistencia pull-up de salida

de drenaje abierto, la SDA para cuasi entrada bidireccional de datos y de salida, y la entrada y salida de la resistencia pull-up drenaje abierto.

2 cable serial elemento operativo básico que comprende: un bit de inicio, bit de parada, la salida de bits, los bits de entrada. Define como el

bit de inicio es alto SDA, SCL caída de la producción (cambio de nivel alto a nivel bajo). Define como el bit de parada es alta SDA, SCL

ascendente de la entrada de borde (conmuta de nivel bajo a nivel alto). salida Bit definida como la SCL es baja, los datos de salida

SDA-bits, y luego da salida a la SCL pulso de alto nivel. bit de entrada SCL se define como la salida de impulsos de alto nivel, los datos de

bits de SDA de entrada desde antes del flanco de bajada. Byte salida de 8 bits se define como entrada de 1 bit y de salida para la

respuesta. Byte se define como la entrada de bits de entrada y salida de 8 bits para una respuesta.

de entrada de 2 hilos de datos en serie y bytes de salida, cada byte que contiene 8 bits, LSB en primer lugar. CH341 interfaz en serie de 2 hilos apoya de dos hilos

de serie A / D, D / A, la memoria y la I / O chip de expansión. Por ejemplo, una serie 24C común EEPROM de serie: 24C01A a 24C16,24C32 a 24C1024 y así

sucesivamente.

2.3. De serie de 4 hilos

puerto serie 4-pin comprende una línea DCK pasador principal, pin DIN, DOUT el pasador, de selección de chip pasadores CS0, CS1, CS2. DCK para la salida de reloj

síncrona unidireccional, los datos de entrada DIN para un solo sentido, de una sola vía para los datos de salida DOUT al dispositivo de selección CSn de selección de chip pin.

El funcionamiento básico de los elementos 4 de alambre interfaz que comprende en serie: una de selección de chip se selecciona, el

extremo de la salida del bit de selección de chip, los bits de entrada. Con hoja seleccionada se define como de selección de chip

pasadores CSn nivel activo de salida (alta o baja puede ser definido). extremo de chapa metálica se define como la seleccione pin CSn nivel inactivo chip de salida seleccionado.

Definida como la producción DCK bits es baja, los datos de bits de salida DOUT y, a continuación, da salida a la pulso alto nivel DCK. Se

define como cuando la entrada de bit DCK es alta, los datos de los bits de entrada DIN.
Manual chino CH341 (b) 3

salida Byte se define como salida de 8 bits, el byte de entrada se define como entrada de 8 bits.

de entrada de 4 hilos de datos en serie y bytes de salida, con 8 bits por byte, altos y bajos en la antigua soporte delantero.

2.4. Interfaz en serie de 5 hilos

puerto serie 5-pin comprende una línea DCK pasador principal, pin DIN, DIN2 pasador, el pasador DOUT, chips DOUT2 pin seleccione pasadores CS0, CS1, CS2.

DCK para la salida unidireccional síncrono reloj, DIN, y DIN2 entrada de datos para DOUT2 unidireccional, y los datos DOUT de salida de una vía, la selección de chip pin

CSN para la selección de un aparato externo.

5 es una línea serie de 4 hilos en DIN2 de entrada de datos en serie la adición de un conjunto de datos y un conjunto de versión de salida DOUT2. El funcionamiento

básico del elemento de línea serie 5 comprende: selección de chip select, selección de chip de composición, la salida de doble bit, el dibit de entrada. Doble salida

bits definida como la DCK es baja, y la salida DOUT DOUT2 bit de datos, y luego emite el pulso alto nivel DCK. la

bytes de datos de 8 bits, los 4 bits superiores de salida de la DOUT, menor producción de 4 bits de DOUT2.

entrada doble bit se define como cuando DCK es alta, y los datos de la entrada DIN bits de DIN2. 8 un byte de datos, los cuatro bits superiores

Desde la entrada DIN, los 4 bits más bajos de la DIN2 de entrada. salida Byte se define como

un byte se divide en dos grupos de ocho cuatro salidas. Se define como los bytes de entrada son de

entrada cada uno de los cuatro grupos se combinan en un byte.

5 línea de entrada de datos en serie y unidad de salida mordiscos, cada nibble incluyendo cuatro bits, y el anterior soporte de alta endian. Bytes para generar la

salida DOUT y DOUT2, entonces la salida del combinador requiere dos bytes.

CH341 línea serie 5 para un emulador de interfaz serie síncrona más I / O de.

Operación 2.5 Bit

En circunstancias normales, la operación de serie síncrona de bytes CH341 es la unidad básica, una operación puede ser un byte o incluso varias decenas de bytes.

Las aplicaciones prácticas pueden requerir la entrada o salida de múltiples bits no de datos 8, por ejemplo, un convertidor A / D virutas necesitan capturar la entrada de datos

10, a fin de facilitar este tipo de aplicaciones, la tecnología CH341 FlexWire (TM) proporciona un operaciones básicas, una vez una entrada o salida de datos, la operación de

entrada se pueden repetir utilizando los datos de 2 bits, además de una operación de byte, a fin de lograr los datos de salida de entrada de 10 bits. Este método sólo es

aplicable a la interfaz serial de 4 hilos o un cable serie 5 puede ser controlado DCK, DOUT, DOUT2, CS0, CS1, CS2 generar un pin de salida de bits, es posible a partir de la

DCK, DIN, DIN2, DOUT, DOUT2, CS0, CS1, CS2 pin de entrada para lograr un poco.

2.6. Pasador auxiliar

Bajo la misma aplicación en paralelo con las espigas auxiliares aplicación en serie síncrono, consulte la descripción del funcionamiento paralelo.

3, software del lado del equipo

En el extremo del ordenador del sistema operativo de Windows, un CH341 controlador de puerto paralelo y dinámico DLL librería de enlace proporciona una interfaz

a nivel de aplicación a las aplicaciones, incluyendo: API de gestión de dispositivos, API de transferencia de datos en paralelo, API de transferencia de datos en serie sincrónica, interrumpan API de m

Una descripción de los parámetros de la API, se refiere a CH341DLL.H, el API principal es como sigue.

3.1 API de administración de dispositivos

CH341OpenDevice (// equipos CH341 abierto, devuelve un mango, un error no es válido

ULONG iIndex); // número designado dispositivo CH341, el primer dispositivo corresponde a 0 CH341 como un

dispositivo, se debe abrir antes de su uso, con el fin de utilizar

CH341CloseDevice (// cierre equipo CH341


ULONG iIndex); // antes del número de dispositivo designado CH341 CH341 agotado, o CH341

si se cierra la aplicación, el dispositivo debe ser cerrada


Manual chino CH341 (b) 4

CH341SetDeviceNotify (// set programa de notificación de eventos del dispositivo

ULONG iIndex, // designado dispositivo número CH341 0 corresponde al primer dispositivo

PChar iDeviceID, // parámetro opcional para una cadena, el ID especificado del dispositivo supervisado, cadena \ 0 terminado mPCH341_NOTIFY_ROUTINE

iNotifyRoutine); // especificado dispositivo de devoluciones de llamada de eventos para supervisar el caso de aplicación de dispositivo de enchufe CH341, garantizar que

la aplicación en cualquier momento para saber si hay un dispositivo USB, para evitar el envío o recepción de datos después de que el dispositivo USB está desconectado,

y la respuesta oportuna para insertar un dispositivo USB

CH341GetStatus (// datos de entrada y el estado directamente a través de CH341, API similar también CH341GetInput

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

Pulong iStatus); // apunta a una unidad de dos palabras, para el almacenamiento de datos de estado

Los datos de estado adquiridos: Bit 7 - bit 0 correspondiente a los pasadores de CH341 D7-D0, que corresponden a 8 bits de CH341 ERR # pasador, correspondientes a 9

bits de CH341 PEMP pin 10 que corresponden a la INT # pin poco de CH341 bit 11 correspondiente a los pasadores de CH341 SLCT, 13 bit BUSY correspondiente a la

CH341 / WAIT # pin, correspondiente a 14 bits de CH341 AUTOFD # / DATAS # pin, correspondiente a 15 bits de CH341 SLCTIN # / addrs # pin, correspondiente a 23 bits

CH341 pin SDA

CH341SetOutput (// set de E / S direcciones de CH341, y datos de salida directamente a través de CH341 // advierten la API, para evitar la modificación I / O dirección

de la patilla de entrada para causar un corto circuito entre la salida y el otro daño pines de salida

ULONG iIndex, // ID de dispositivo CH341 designado ULONG

iEnable, // datos bandera de validez

ULONG iSetDirOut, // establecer I / O direcciones, el bit correspondiente es 0 pin es una entrada, una posición correspondiente a un pin de salida ULONG

iSetDataOut); // los datos de salida, si la dirección de E / S es de salida, los bits de datos en una salida de datos de 32 bits de la clavija de los datos de dirección de e / S y

de salida I descritos anteriormente, en el que: bit 7 - bit 0 correspondiente a los pasadores de CH341 D7-D0, el bit 8 corresponde ERR # pin de CH341, correspondientes a

9 bits de CH341 PEMP-pin, 10-bit INT # pin de CH341 correspondientes a los bits 11 correspondiente a la clavija de CH341 SLCT, correspondiente a 13 bits WAIT # pin de

CH341, correspondiente a 14 bits de CH341 DATAS # / LEER # pin, correspondiente a 15 bits CH341 la addrs # / DIR / ALE pin

Además, sólo el pin de salida, sin tener en cuenta la dirección de E / S: Bit 16 corresponde a la CH341 de RESET # pin, 17 bits correspondientes a ESCRIBIR # pin de

CH341, los bits CH341 correspondientes al pin SCL 18, correspondiente a la posición 29 de CH341 pin SDA

CH341Set_D5_D0 (// establecer la E / S pin dirección I CH341 D5-D0 y D5-D0 a través del pasador de salida de datos directamente // advertir al API, para evitar la

modificación de E / S de pasador a la salida de los resultados dirección de entrada en otro cortocircuito entre el daño pin de salida

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

ULONG iSetDirOut, // establecer D5-D0 I dirección de E / S de cada pasador, el pasador se borra 0 de entrada, pin de salida se establece en un ULONG iSetDataOut);

// conjunto de datos D5-D0 de cada pin de salida, tomar efecto sólo cuando el O dirección I / salida

3,2 interrupción API de manipulación

CH341SetIntRoutine (// establece la rutina de servicio de interrupción

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

mPCH341_INT_ROUTINE iIntRoutine); // especificar la rutina de servicio de interrupción a NULL para cancelar la configuración del servicio de interrupción CH341

rutina de interrupción del servicio, iIntRoutine está en línea con un formato subrutina mPCH341_INT_ROUTINE, cuando el CH341 el pin INT # flanco ascendente, DLL

llamar automáticamente iIntRoutine y proporcionar un pasador de estado de parámetro, el parámetro de estado pin, indica que el bit correspondiente es 1 pin es alta, el bit

correspondiente es 0, entonces el pasador es baja, el bit 7 - bit 0 CH341 correspondiente a la clavija de D7-D0, que corresponden a 8 bits de CH341 ERR # pasador,

correspondientes a 9 bits de pin CH341 PEMP, correspondiente a 10 bits de CH341 INT # pin, correspondiente a 11 bits, por ejemplo, pasadores de CH341 SLCT: main

principal {

......
CH341OpenDevice (0); // abrir el dispositivo, para dispositivos # 0, si hay varios, puede ser contado
Manual chino CH341 (b) 5

CH341SetIntRoutine (0, myInterruptEvent); // establecer la rutina de servicio de interrupción

...... Leer y escribir datos, o después de recibir la notificación de la rutina de servicio de interrupción de

interrupción CH341CloseDevice (0); //} apagar el dispositivo después de su uso

Interrumpir la rutina de servicio cuando el pin INT # CH341 de flanco ascendente, DLL llamará automáticamente a la subrutina

vacío RETROLLAMADA myInterruptEvent (largo sin signo PinStatus) {


si (PinStatus y mStateBitERR) printf ( " Cuando se produce una interrupción ERR # PIN de alto ");

otra cosa printf ( " Cuando se produce una interrupción ERR # pin bajo ");

...... procesamiento propia o notificar el programa principal

3.3. API de transmisión de datos en paralelo

CH341InitParallel (// restablecer y paralela inicializa, RST # salida de baja pulso

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

ULONG iMode); // para especificar el modo paralelo: el modo EPP 0, el modo de 2 MEM,> = 256 mantiene el modo actual es automática inicialización CH341

paralelo durante el encendido, si se desea, puede ser reinicializado paralelo para borrar el buffer. Durante la inicialización, RST # pin da salida a una anchura de

impulso de bajo nivel de aproximadamente 100uS, para informar al dispositivo externo es reset,

CH341EppReadData (PPE // Modo de lectura de datos: WR # = 1, DS # = 0, como # = 1, D0-D7 = entrada

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

PVOID oBuffer, // apunta a un búfer suficientemente grande para almacenar los datos leídos

Pulong ioLength); // puntero a una longitud significa la longitud de la entrada está listo para ser leído, la longitud después de volver a leer realmente los datos leídos

continuamente de temporización PPE, 0 a 4096 bytes de longitud, por ejemplo:

UCHAR buf [1024]; ULONG


len = 1,024;
CH341EppReadData (0, buf, y len); // datos de modo de lectura de 1 KB PPE para el dispositivo # 0

CH341EppReadAddr (PPE // manera de leer direcciones: WR # = 1, DS = # 1, # AS = 0, D0-D7 = entrada

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

PVOID oBuffer, // apunta a una lo suficientemente grande como memoria intermedia para almacenar los datos de dirección de lectura Pulong ioLength); // puntero a

una unidad de longitud está listo para ser leído cuando la longitud de entrada, la longitud después de volver a leer realmente EPP temporización secuencial leer datos

de dirección, una longitud de 0 a 4096 bytes en la secuencia EPP estándar normalmente menos de

CH341EppWriteData (PPE // forma de escribir datos: WR # = 0, DS # = 0, como # = 1, D0-D7 = salida

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

PVOID iBuffer, // apunta a una zona de seguridad, listo para poner los datos escritos

Pulong ioLength); // puntero a una unidad de longitud se prepara para escribir la longitud de entrada, la longitud de retorno a la serie de tiempo de escritura real

continua EPP escribir datos, una longitud de 0 a 4096 bytes, por ejemplo:

UCHAR buf [1024]; ULONG


len = 1,024;
Depositar en los datos buf, preparados en una forma de escritura de EPP

CH341EppWriteData (0, buf, y len); // # 0 para un dispositivo a modo EPP 1 KB de datos de escritura

CH341EppWriteAddr (EPP // modo de escritura de direcciones: WR # = 0, DS = # 1, # AS = 0, D0-D7 = salida

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

PVOID iBuffer, // apunta a una memoria intermedia, la colocación de la preparación de datos de direcciones escrita

Pulong ioLength); // puntero a una longitud significa la longitud de la entrada es la preparación escrito, a su regreso de la longitud real de EPP escritura de

temporización de datos de direcciones de escritura consecutivos, 0 a 4096 bytes de longitud, generalmente en un temporizaciones estándar EPP acaba de escribir una dirección de byte
Manual chino CH341 (b) 6

CH341EppSetAddr (// dirección EPP proporcionado: WR # = 0, DS # = 1, tal como # = 0, D0-D7 = salida

ULONG iIndex, // número de dispositivo CH341 designado UCHAR

iAddr); // dirección especificada EPP

EPP de temporización a la salida de una dirección, un CH341EppWriteAddr simplificado

CH341MemReadAddr0 (// modo MEM leer la dirección 0: WR # = 1, DS # / RD # = 0, AS # / ADDR = 0, D0-D7 = entrada

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

PVOID oBuffer, // apunta a una lo suficientemente grande como tampón para el almacenamiento de datos de la dirección 0 leer Pulong ioLength); // cuando la

longitud del puntero de lectura real para una unidad de longitud está listo para leer la longitud de entrada, devuelve después de MEM de temporización para leer

continuamente la longitud de datos de 0 a 4096 bytes, durante la operación de lectura ADDR = 0, por ejemplo:

UCHAR buf [1024]; ULONG


len = 1,024;
CH341MemReadAddr0 (0, buf, y len); // 1K en MEM lee datos de la dirección 0 para el dispositivo # 0

CH341MemReadAddr1 (// MEM leer el modo de dirección de 1: WR # = 1, DS # / RD # = 0, AS # / ADDR = 1, D0-D7 = entrada

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

PVOID oBuffer, // apunta a una memoria intermedia suficientemente grande para almacenar datos de la dirección de lectura 1 Pulong ioLength); // cuando la

longitud del puntero de lectura real para una unidad de longitud está listo para leer la longitud de entrada, regresa después de MEM de temporización para leer

continuamente la longitud de datos de 0 a 4096 bytes, durante la operación de lectura ADDR = 1

CH341MemWriteAddr0 (MEM // manera de escribir la dirección 0: WR # = 0, DS # / RD # = 1, AS # / DIR = 0, D0-D7 = salida

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

PVOID iBuffer, // apunta a una zona de seguridad, listo para colocar los datos escritos en la dirección 0

Pulong ioLength); // puntero a una unidad de longitud de longitud para preparar entrada escrito, escrito después de regresar la longitud real de una serie continua

MEM escribir datos, una longitud de 0 a 4096 bytes, durante la operación de escritura ADDR = 0, Por ejemplo:

UCHAR buf [1024]; ULONG


len = 1,024;
Depositar en los datos buf, preparados de una manera escriben MEM

CH341MemWriteAddr0 (0, buf, y len); // para aparatos # 0 0 1K escrito a los datos de dirección en forma MEM

CH341MemWriteAddr1 (MEM // manera de escribir dirección 1: WR # = 0, DS # / RD # = 1, AS # / DIR = 1, D0-D7 = salida

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

PVOID iBuffer, // apunta a un tampón, preparar la colocación de los datos escritos en la dirección 1

Pulong ioLength); // puntero a una unidad de longitud de longitud para preparar entrada escrito, escrito después de regresar la longitud real de una serie continua

MEM escribir datos, una longitud de 0 a 4096 bytes, la operación de escritura durante ADDR = 1

3.4 API de transmisión de datos en serie sincrónica

CH341ReadI2C (// leer un byte de datos en serie a partir de las dos líneas, sólo la dirección del dispositivo 7

ULONG iIndex, // número de dispositivo CH341 designado UCHAR iDevice, //

los inferiores 7 bits especifican la dirección del dispositivo UCHAR iAddr, // la

dirección de la unidad de datos designado

Puchar oByte); // apunta a una unidad de byte, el byte de datos de lectura se guarda para

CH341WriteI2C (// escribe un byte de datos a la interfaz serie de dos hilos, el dispositivo se aplica sólo dirección de 7 bits

ULONG iIndex, // número de dispositivo CH341 designado UCHAR iDevice, //

los inferiores 7 bits especifican la dirección del dispositivo UCHAR iAddr, // la

dirección de la unidad de datos designado


Manual chino CH341 (b) 7

UCHAR Ibyte); // byte de datos a escribirse

CH341WriteRead (// ejecutar el flujo de datos del sistema y salida a la entrada

ULONG iIndex, // ID de dispositivo CH341 designado ULONG iWriteLength, // escribe la longitud, la longitud de la escritura listo PVOID

iWriteBuffer, // apunta a una zona de amortiguación, dispuesto para escribir datos colocado ULONG iReadStep, // leer una única preparación de

bloques veces la longitud de la longitud total (iReadStep * iReadTimes) ULONG iReadTimes, // leídos preparados

Pulong oReadLength, // apunta a la longitud de la unidad, después de la vuelta de la longitud real de la lectura PVOID oReadBuffer); //

apunta a una lo suficientemente grande como memoria intermedia para almacenar los datos de lectura a los datos de salida de los datos de

entrada y, a continuación, ejecutar el flujo de datos de comandos, para el puerto serie síncrono.

CH341SetStream (// Establecer el modo de flujo en serie síncrona

ULONG iIndex, // dispositivo CH341 designado ID ULONG iMode); //

patrón especificado, ver enlace descendente

// Bit 1 Bit 0: I2C velocidad / frecuencia SCL, bajo 00 = 20 KHz, 01 = 100 KHz estándar, 10 = 400 KHz rápido, 11 = 750KHz @ alta velocidad de bit 2:

El SPI de I / O / pin IO, 0 = Entrada Única Salida Única (interfaz de 4 hilos), a = doble en un (interfaz 5 hilos) bis

// bit 7: SPI orden de los bits byte, bit menos significativo primero = 0, 1 = Alta anterior

Otros // Reservada, debe ser 0

CH341StreamI2C (// proceso de flujo de datos serie de dos hilos, interfaz serie de dos hilos para todos los dispositivos

ULONG iIndex, // preparación ID de dispositivo CH341 designado ULONG

iWriteLength, // número de bytes de datos escrito

PVOID iWriteBuffer, // puntos a un tampón, escribir la preparación de datos se coloca, el primer byte se lee y escribe los bits de dirección dispositivo ULONG

iReadLength, // listo para leer bytes de datos PVOID oReadBuffer); // puntos a la memoria intermedia, devoluciones después los datos se leen de dos hilos

dispositivo serie opera. Por ejemplo, la dirección inicial 3200H en el 24C256 lee 256 bytes de datos:

UCHAR outbuf [5], inbuf [300]; // tampón de datos a escribir, leer el búfer de datos outbuf [0] = 0xA1; outbuf [1] = 0x32; outbuf [2] = 0x00; // datos a

escribir : la dirección de dispositivo y un CH341StreamI2C dirección de celda (0, 3, outbuf, 256, inbuf); // # 0 para el aparato de procesamiento de

datos de la corriente en serie de dos hilos

CH341ReadEEPROM (// leer el bloque de datos de la EEPROM, una velocidad de aproximadamente 56K bytes

ULONG iIndex, // especificar el número de serie del dispositivo CH341

EEPROM_TYPE iEepromID, // especificar el tipo EEPROM ULONG


iAddr, // la dirección de la unidad de datos designado

ULONG iLength, // número de bytes de datos listos para leer

Puchar oBuffer); // apunta a un búfer, se leen los datos de retorno


soporte para la API para la lectura y la escritura de la EEPROM 24C01 y 24C16 EEPROM memoria de los diversos tipos de 24C32 a 24C4096.

CH341WriteEEPROM (// bloque de escritura de datos en la EEPROM

ULONG iIndex, // especificar el número de serie del dispositivo CH341

EEPROM_TYPE iEepromID, // especificar el tipo EEPROM ULONG


iAddr, // la dirección de la unidad de datos designado

ULONG preparación iLength, // número de bytes de datos escrito

Puchar iBuffer); // apunta a una zona de amortiguación, listo para escribir datos colocados

CH341StreamSPI4 (// SPI de datos de procesamiento de flujo, la interfaz de 4 hilos, la velocidad de alrededor de 68K bytes

// SPI Tiempo: salida de reloj DCK, el valor predeterminado es baja, la salida DOUT antes del flanco de subida del reloj, DIN de entrada después del flanco de bajada del reloj

ULONG iIndex, // Especificar el número de serie del dispositivo CH341

ULONG iChipSelect, // bits de selección de control de la viruta 7 a 0 se ignora de selección de chip de control, bit 7 es un parámetro válido
Manual chino CH341 (b) 8

Número de bytes de datos ULONG iLength, // listos para su transmisión

PVOID ioBuffer); // buffer y colocado listo para escribir datos desde el DOUT, se devuelve después de que los datos leídos de la norma DIN

Ejemplos del uso de cada API DLL relevante, por favor se refieren al código fuente y ejemplos de varios perfil placa de evaluación CH341.

4, parámetros

4.1 MEM parámetros modo de intervalo (Condiciones de prueba: Ta = 25 ℃, con referencia a los dibujos que se acompañan de las porciones media frontal).

nombre Descripción del parámetro Typ Unidades Min Max


TWMEM Write estroboscópica WR # es baja anchura activa 230 250 100 000 nS
TRMEM Leer estroboscópica RD # es baja anchura activa 300 330 100 000 nS
TAS RD # WR # o antes de la dirección efectiva el tiempo de preparación 80 nS
TAH RD # WR # o después de la hora efectiva de retención de direcciones 230 nS
TDS La salida de datos válidos antes de tiempo WR # Configuración 80 nS
TDH Se da salida al tiempo de retención de datos efectiva WR # 300 nS
TIS La entrada de datos antes de RD # tiempo de configuración no válido 170 nS
TIH Después de la entrada de datos RD # Hold Time no válido 0 nS

MEM

EPP

4.2 EPP parámetros modo de intervalo (Condiciones de prueba: Ta = 25 ℃, con referencia a los dibujos adjuntos segundo medio).

nombre Descripción del parámetro Typ Unidades Min Max


TWEPPD la operación de escritura baja el nivel de datos estroboscópica ancho efectivo 220 250 100 000 nS
TWEPPA operación de escritura bajo la dirección estroboscópica ancho efectivo 150 160 10000 nS
TREPPD Bajo luz estroboscópica de datos de lectura ancho efectivo 300 330 100 000 nS
TREPPA operaciones de lectura bajo luz estroboscópica dirección de anchura efectiva 220 250 10000 nS
TXS 500
Antes de la dirección WR tiempo de configuración # estroboscópica efectiva nS
TXH La dirección efectiva de estroboscópicas WR # Hold Time 150 nS
TDS Los datos de salida válidos antes de tiempo de instalación estroboscópica80 nS
Manual chino CH341 (b) 9

TDH Se da salida al tiempo de retención de datos efectiva estroboscópica 220 nS


TIS 170
La entrada de datos estroboscópica no válida antes de la hora establecida nS
TIH 0
Después de la entrada de datos estroboscópica tiempo de retención no válido nS

4,3 BUS parámetros de temporización manera. (Condiciones de prueba: Ta = 25 ℃, la figura, la unidad de valor de referencia nS)

5, Solicitud

5.1 Conexión básica (continuación)

P4 es un puerto USB, bus de alimentación 5V USB comprende un par de líneas y un par de líneas de señales de datos, en general, la línea de fuente de

alimentación rojo + 5V, una línea de tierra es de color negro, la línea de señal D + es verde, línea de señal D- es blanco. bus USB proporciona la corriente de alimentación

puede típicamente hasta 500 mA, en, el chip general CH341 y un bajo consumo de energía productos de alimentación de 5V USB puede ser usado directamente por bus

USB. Si los productos USB proporcionado por otra fuente de alimentación común, que deben CH341 utilizando el poder común, si la necesidad de utilizar la alimentación del

bus USB, el valor de la resistencia puede ser de aproximadamente 1 Ω Una resistencia conectada a la línea de alimentación del bus USB 5V 5V y los productos USB de

potencia común, y ambos conectados directamente a la línea de tierra.

CH341 C18 condensador para desacoplar el nodo fuente interna, C18 es la capacitancia del 0.01μF ~ 0.1μF condensador de cerámica monolítica o de alta frecuencia.

Condensadores C19 y C20 a la disociación fuente de alimentación externa, C19 son la capacidad 0.1μF o de alta frecuencia condensadores cerámicos monolíticos. X4 cristal,

condensadores C16 y C17 para el circuito de oscilación de reloj. frecuencia X4 es 12MHz, C16 y C17 es la capacitancia de 15pF ~ 30pF condensador de cerámica monolítica

o de alta frecuencia. Si el reloj incorporado virutas CH341B / F / C, que se puede quitar y X4 C16, y C17 en 0 Ω Resistencia.

En el diseño de la PCB, nota: condensadores de desacoplamiento C18 y C19 lo más cerca posible pasador de conexión de CH341; señales de habilitación D + y D-

son paralelas y el suministro de suelo o de cobre en ambos lados, desde el exterior para reducir la señal a interferencia; minimizar XI
Manual chino CH341 (b) 10

Y la longitud de la línea de señal asociada pin XO, con el fin de reducir la interferencia de alta frecuencia, puede rodear el suelo o cobre en equipo relativo.

La figura SDA pin está conectada a tierra directamente, CH341 funciona en modo paralelo.

5.2. EPP aplicaciones en modo paralelo (continuación)

La figura utilizando compuertas NAND y una puerta OR se decodifica, una señal de control se genera más, si las aplicaciones requieren menos de entrada y salida, el

descodificador puede ser omitido, y el uso directo de AS #, DS # y otras señales de control fácil de lograr.

5.3. MEM aplicaciones en modo paralelo (continuación)

La figura A0 no se utiliza todavía (como pasadores #), entradas de señal digital de 8 bits y salidas de señal digital de 8 bits puede ser realizado. Si el control 74LS139

A0 respectivamente -Leer -Redacte la dirección y de selección de chip, The CH341 puede conectar dos 74LS244 + 74LS273, a fin de lograr entradas de señal digital de 16

bits y salidas de señal digital de 16 bits.


Manual chino CH341 (b) 11

5.4. Aplicación de interfaz serie síncrona de dos hilos (continuación)

2 hilos interfaz serie síncrona soporta una pluralidad de dispositivos identificados por la dirección, leer y escribir datos utilizando un modo de flujo de datos, para

apoyar una más grandes bloques de lectura de datos y la escritura. velocidad CH341 interfaces en serie de dos hilos 20 KHz / 100KHz / 400KHz 750KHz, y con la interfaz

serie de dos hilos con un dispositivo de hardware puede elegir una velocidad de conexión más alta, la interfaz serie de dos hilos con la simulación de software del microcontrolador puede seleccionar

La figura resistor R4 se utiliza para forzar Cuando ACT # CH341 configuración funcional durante un nivel bajo, así como para inhibir el acceso a la configuración en

serie síncrono dos hilos cuando CH341 afectar a otros dispositivos en el bus, si no hay pantalla LED, la resistencia R3 se puede omitir el tubo de arco y L2, y R4 pueden

estar conectados al terminal de tierra RST # GND.

5.5. Aplicaciones en modo de bus paralelo (continuación)

control de la figura ALE por U23 pestillo dar dirección de 7 bits A0-A6, o puede ser utilizado para la conducción de la memoria para producir una pluralidad de selección de chip de decodificac

5.6. Digital Input Output

Si sólo menos de ocho pines de entrada y de salida, sino que también se puede prescindir de varias 74LS externos dispositivos, directamente D7 ~ D0 y demás

alfileres de CH341, de entrada simple y salida llamando a la API en un DLL y similares CH341Set_D5_D0 .