prólogo
El objetivo principal de este documento se centra en explicar los pasos para construir la pila de software NxpRdLib para CLRC663, MFRC631, MFRC630 y SLRC610. Para configurar el lector y la punta correctamente, debe generar y vincular objetos dependientes en diferentes capas.
La comunicación relacionada con el protocolo a las tarjetas MIFARE está más allá del alcance de este documento. Para obtener más información sobre los comandos de la tarjeta y cómo usarlos, consulte el código fuente del proyecto de muestra, la documentación de la biblioteca del lector NXP y la nota de la aplicación MIFARE.
descripción general
Los proyectos de muestra (basados en Visual Studio) brindan a los desarrolladores ejemplos de comunicación de tarjetas, principalmente basados en el producto de tarjetas MIFARE, para iniciar el desarrollo rápido de aplicaciones. Los ejemplos incluidos son:
- MIFARE clásico
- MIFARE ultraligero, MIFARE ultraligero C
- ISO14443B
- FeliCa
- CÓDIGO
La programación de una aplicación con NXPRdLib requiere conocimientos básicos de los diferentes modos de lectura. La construcción de una pila de software para un modo de lector en particular requiere la generación de diferentes modelos de software.
Descripción general de la biblioteca de lectores NXP
La biblioteca de lectores de NXP está encapsulada en capas y componentes escritos en ANSI C. La estructura de la biblioteca proporciona un enfoque modular para programar y configurar interfaces de lectura. La biblioteca del lector consta de cuatro capas.
- BAL (capa de abstracción de bus)
- HAL (capa de abstracción de hardware)
- PAL (capa de abstracción de protocolo)
- AL (capa de aplicación)
Cada capa consta de varios componentes con interfaces genéricas e implementaciones específicas.
Construyendo una pila
El uso de la biblioteca de software requiere la creación de una pila de componentes desde la capa inferior (BAL) hasta la capa superior (AL). La Figura 2 muestra los diferentes elementos para construir una pila de software completa en un sitio de PC para la comunicación con tarjeta sin contacto.
Todos los componentes deben inicializarse antes de su uso. Por ejemplo, la inicialización de la capa BAL requiere que se ingresen ciertos parámetros de contexto o datos en el componente.
Debe establecer el parámetro de puerto de lector correcto mediante la función setPort. Son posibles diferentes parámetros dependiendo del modo de lector.
estado=phbalReg_SetPort(&balSerial, pComPort);
estado=phbalReg_OpenPort(&balSerial);
La siguiente capa se puede construir siguiendo los mismos pasos.