Enhance ASK LoGO dedicated code:
- Initialize the device right after pn53x_init() instead of pn53x_initiator_init(). - Turn on LED1 when initialized - Switch On/Off LED2 on Activation/Desactivation of the field.
This commit is contained in:
parent
494e0f4474
commit
bd7c9a2b85
1 changed files with 7 additions and 5 deletions
|
@ -70,6 +70,7 @@ struct pn53x_usb_data {
|
||||||
|
|
||||||
const struct pn53x_io pn53x_usb_io;
|
const struct pn53x_io pn53x_usb_io;
|
||||||
bool pn53x_usb_get_usb_device_name (struct usb_device *dev, usb_dev_handle *udev, char *buffer, size_t len);
|
bool pn53x_usb_get_usb_device_name (struct usb_device *dev, usb_dev_handle *udev, char *buffer, size_t len);
|
||||||
|
bool pn53x_usb_init (nfc_device_t *pnd);
|
||||||
|
|
||||||
int
|
int
|
||||||
pn53x_usb_bulk_read (struct pn53x_usb_data *data, byte_t abtRx[], const size_t szRx)
|
pn53x_usb_bulk_read (struct pn53x_usb_data *data, byte_t abtRx[], const size_t szRx)
|
||||||
|
@ -312,10 +313,11 @@ pn53x_usb_connect (const nfc_device_desc_t *pndd)
|
||||||
|
|
||||||
// HACK2: Then send a GetFirmware command to resync USB toggle bit between host & device
|
// HACK2: Then send a GetFirmware command to resync USB toggle bit between host & device
|
||||||
// in case host used set_configuration and expects the device to have reset its toggle bit, which PN53x doesn't do
|
// in case host used set_configuration and expects the device to have reset its toggle bit, which PN53x doesn't do
|
||||||
if (!pn53x_init (pnd)) {
|
if (!pn53x_usb_init (pnd)) {
|
||||||
usb_close (data.pudh);
|
usb_close (data.pudh);
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
|
|
||||||
return pnd;
|
return pnd;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -532,9 +534,9 @@ pn53x_usb_ack (nfc_device_t * pnd)
|
||||||
}
|
}
|
||||||
|
|
||||||
bool
|
bool
|
||||||
pn53x_usb_initiator_init (nfc_device_t *pnd)
|
pn53x_usb_init (nfc_device_t *pnd)
|
||||||
{
|
{
|
||||||
if (!pn53x_initiator_init (pnd))
|
if (!pn53x_init (pnd))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (ASK_LOGO == DRIVER_DATA (pnd)->model) {
|
if (ASK_LOGO == DRIVER_DATA (pnd)->model) {
|
||||||
|
@ -585,7 +587,7 @@ pn53x_usb_configure (nfc_device_t * pnd, const nfc_device_option_t ndo, const bo
|
||||||
if (NDO_ACTIVATE_FIELD == ndo) {
|
if (NDO_ACTIVATE_FIELD == ndo) {
|
||||||
// Switch on/off progressive field according to ACTIVATE_FIELD option
|
// Switch on/off progressive field according to ACTIVATE_FIELD option
|
||||||
DBG ("Switch progressive field %s", bEnable ? "On" : "Off");
|
DBG ("Switch progressive field %s", bEnable ? "On" : "Off");
|
||||||
if (!pn53x_write_register (pnd, SFR_P3, _BV (P34), bEnable ? 0xff : 0x00))
|
if (!pn53x_write_register (pnd, SFR_P3, _BV(P31) | _BV (P34), bEnable ? _BV (P34) : _BV (P31)))
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -604,7 +606,7 @@ const struct nfc_driver_t pn53x_usb_driver = {
|
||||||
.disconnect = pn53x_usb_disconnect,
|
.disconnect = pn53x_usb_disconnect,
|
||||||
.strerror = pn53x_strerror,
|
.strerror = pn53x_strerror,
|
||||||
|
|
||||||
.initiator_init = pn53x_usb_initiator_init,
|
.initiator_init = pn53x_initiator_init,
|
||||||
.initiator_select_passive_target = pn53x_initiator_select_passive_target,
|
.initiator_select_passive_target = pn53x_initiator_select_passive_target,
|
||||||
.initiator_poll_targets = pn53x_initiator_poll_targets,
|
.initiator_poll_targets = pn53x_initiator_poll_targets,
|
||||||
.initiator_select_dep_target = pn53x_initiator_select_dep_target,
|
.initiator_select_dep_target = pn53x_initiator_select_dep_target,
|
||||||
|
|
Loading…
Reference in a new issue