TOP Contributors

  1. MIKROE (2762 codes)
  2. Alcides Ramos (374 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (118 codes)
  5. Bugz Bensce (90 codes)
  6. S P (73 codes)
  7. dany (71 codes)
  8. MikroBUS.NET Team (35 codes)
  9. NART SCHINACKOW (34 codes)
  10. Armstrong Subero (27 codes)

Most Downloaded

  1. Timer Calculator (139248 times)
  2. FAT32 Library (71743 times)
  3. Network Ethernet Library (57115 times)
  4. USB Device Library (47428 times)
  5. Network WiFi Library (43082 times)
  6. FT800 Library (42403 times)
  7. GSM click (29835 times)
  8. mikroSDK (28073 times)
  9. PID Library (26885 times)
  10. microSD click (26198 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
mikroSDK Library

Secure 6 click

Rating:

0

Author: MIKROE

Last Updated: 2019-08-15

Package Version: 1.0.0.0

mikroSDK Library: 1.0.0.0

Category: Encryption

Downloaded: 439 times

Not followed.

License: MIT license  

Secure 6 Click includes the ATSHA204A, a secure CryptoAuthentication device from Microchip, which is equipped with an EEPROM array which can be used for storing of up to 16 keys, certificates, consumption logging, security configurations and other types of secure data.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "Secure 6 click" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "Secure 6 click" changes.

Do you want to report abuse regarding "Secure 6 click".

  • Information
  • Comments (0)
DOWNLOAD LINK RELATED COMPILER CONTAINS
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc

mikroSDK Library Blog

Secure 6 Click

Secure 6 Click

Native view of the Secure 6 Click board.

View full image
Secure 6 Click

Secure 6 Click

Front and back view of the Secure 6 Click board.

View full image

Library Description

The library demonstrates the operation of the software single wire interface implementation.

Key functions:

  • int8_t secureswi_init(T_SECURESWI_DIRSET inSet, T_SECURESWI_DIRSET outSet) - Initialize the SWI interface and pass the pin direction setting functions.
  • void secureswi_sendBytes(uint8_t len,uint8_t *stBuf) - Encode data buffer and send the data to the SWI bus.
  • void secureswi_receiveBytes(uint8_t len,uint8_t *stBuf) - Receive and decode data from the SWI bus.

Examples description

The application is composed of three sections :

  • System Initialization - Initialize the GPIO sturcture and configure the serial port for logging data.
  • Application Initialization - Initialize the driver and configure swi for communication.
  • Application Task - Data is read from the secure chip. If the readout is successful the data is then printed on the serial port in the hex format.
void applicationTask()
{
     uint8_t bufferOut[128];

     cfg_atsha204a_swi_default.iface_type  = ATCA_SWI_IFACE;
     cfg_atsha204a_swi_default.devtype     = ATSHA204A;
     cfg_atsha204a_swi_default.atcaswi.bus = 1;
     cfg_atsha204a_swi_default.wake_delay  = 2560;
     cfg_atsha204a_swi_default.rx_retries  = 10;

     atcab_init(&cfg_atsha204a_swi_default);

     mikrobus_logWrite("Starting test",_LOG_LINE);

     memset(bufferOut,0,127);

     if (atcab_read_serial_number(bufferOut) == ATCA_SUCCESS)
     {
         mikrobus_logWrite("rn Serial number: ",_LOG_LINE);
         secureswi_printHex(bufferOut,9);
     }
     else
     {
         mikrobus_logWrite("rn Reading serial number failed...",_LOG_LINE);
         secureswi_printHex(bufferOut,sizeof(bufferOut));
     }

     Delay_ms (1500);
     memset (bufferOut, 0x00, 128);
     if (atcab_read_config_zone(bufferOut) == ATCA_SUCCESS)
     {
        mikrobus_logWrite("rnrn First 32 bytes of device configuration: ",_LOG_LINE);
        secureswi_printHex(bufferOut,32);
     }
     else
     {
        mikrobus_logWrite("rnrn Reading config zone failed...",_LOG_LINE);
        secureswi_printHex(bufferOut,sizeof(bufferOut));
     }

     while(1)
     {

     }
}

Other mikroE Libraries used in the example:

  • Conversions
  • C_String
  • UART

Additional notes and informations

Depending on the development board you are using, you may need USB UART clickUSB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.

ALSO FROM THIS AUTHOR

Fram Click

0

FRAM Click is a Click board™ that carries a ferroelectric RAM module. Ferroelectric RAM, also known as FRAM, is a non-volatile memory type, with characteristics comparable to much faster DRAM memory modules.

[Learn More]

MAGNETO 4 Click

0

Magneto 4 Click is a high-resolution magnetic encoder Click board™ which allows contactless motion sensing down to 0.5µm.

[Learn More]

Expand 4 Click

0

Expand 4 Click carries TPCIC6A595, a chip that combines an 8-bit serial-in, parallel-out shift register with an 8-bit D-type storage register.

[Learn More]