TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (402 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (129 codes)
  5. Bugz Bensce (97 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 (140787 times)
  2. FAT32 Library (73380 times)
  3. Network Ethernet Library (58203 times)
  4. USB Device Library (48387 times)
  5. Network WiFi Library (43995 times)
  6. FT800 Library (43544 times)
  7. GSM click (30472 times)
  8. mikroSDK (29178 times)
  9. PID Library (27174 times)
  10. microSD click (26850 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: 467 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

Magneto 9 Click

0

Magneto 9 Click is a compact add-on board that contains a low-power, accurate, and reliable magnetic sensing device. This board features the A1359, dual tracking output linear hall-effect sensor from Allegro MicroSystems.

[Learn More]

Barometer 10 Click

0

Barometer 10 Click is a compact add-on board that measures air pressure in a specific environment. This board features the LPS28DFW, an ultra-compact piezoresistive absolute pressure sensor that functions as a digital output barometer from STMicroelectronics. The LPS28DFW comprises a sensing element and an IC chip for signal processing in one package, converts pressure into a 24-bit digital value, and sends the information via I2C serial interface. It has a selectable dual full-scale absolute pressure range of up to 1260hPa and 4060hPa, with an absolute pressure accuracy of 0.5hPa over a wide operating temperature range.

[Learn More]

Speed Sense Click

0

Speed Sense Click is a compact add-on board that allows you to measure the speed and rotation of a spinning object. This board features the A17501, a dual output differential speed and direction sensor from Allegro Microsystems. It has a high-speed switching bandwidth of up to 40kHz for two different signals. The sensor has two independent output channels with options for high-resolution XOR speed, pulse, and direction protocol.

[Learn More]