Categories


UART 1-Wire Click

Product Code: MIKROE-3340

UART 1-Wire Click
UART 1-Wire Click
UART 1-Wire Click
UART 1-Wire Click

₹2,309.00
GST inclusive



Qty:

Availability: Backorder


Add to Wish List



Featuring a set of options for fine-tuning the 1-Wire® bus performance, allowing it to accommodate to a wide variety of different applications, complex state machine which allow straight-forward conversion of characters sent over the UART interface, using the accurate crystal-driven UART timing as a reference for the 1-Wire® time base, UART 1-Wire click represents a perfect solution for rapid development of 1-Wire® applications: it can be used to facilitate working with various iButton® devices or similar applications based on 1-Wire® communication, offering a simple and familiar UART interface to the host microcontroller (MCU).

About the 1-Wire® protocol

1-Wire® is a very popular communication protocol developed by Dallas Semiconductors (acquired by Maxim Integrated in 2001), that requires only two wires: signal line and GND. In most cases GND is common to both devices, so the whole bus is reduced to just a single line. The 1-Wire®protocol is often used between different devices when low-speed communication is sufficient. With the appearance of iButton® devices and MicroLAN interfaces, the 1-Wire® protocol gains popularity. However, there are not many MCUs that have the 1-Wire® peripheral integrated onboard, so they must rely on bit-banging routines to provide accurate 1-Wire® signal waveforms. Producing accurately timed signals by using such routines may prove demanding for most applications. Because of this, devices such as UART 1-Wire click simplify the firmware development greatly, reducing the host MCU workload.

How does it work?

UART 1-Wire click is based on the DS2480B IC, a serial to the 1-Wire® driver IC, from Maxim Integrated. This IC is designed to directly interface the UART with the 1-Wire® bus. It performs data conversion using independent data rates for both interfaces, allowing standard and overdrive communication speeds. Internal timing generators of the DS2480B IC are continuously synchronized with the incoming UART data, which is typically driven by a high-precision crystal oscillator of the host microcontroller (MCU). This allows time-critical 1-Wire® signals to be generated by the IC itself, greatly reducing the processing load from the host MCU. Many physical parameters of both the UART and 1-Wire® buses can be fine-tuned so that the UART 1-Wire click can be accommodated to any type of UART/RS232 to 1-Wire® signal conversion application.

MikroE Click Boards Interface UART 1-Wire Click

The DS2480B IC can be observed as a complex state-machine. It can be configured by UART commands, so the IC must parse the incoming data prior to conversion. The device can be operated in two main operating modes: Command Mode and Data Mode. The Command Mode is the default state after the Power ON event. This mode allows the configuration parameters to be set. However, the DS2480B IC must be initialized prior to any operation: the 1-Wire® bus reset command should be sent over the TXD line at a fixed rate of 9600 bps. This is used only to calibrate the internal timing generators, without performing any action on the 1-Wire® bus. After the initialization, the DS2480B IC can be used normally.

The Data Mode is used to convert bytes received at the TXD line into their equivalent 1-Wire® waveforms, and to report the responses back to the host MCU through the RXD line. The datasheet of the DS2480B IC illustrates the operating principles of this IC by using the state transition diagram. Along with several examples at the end of the datasheet, it represents a very useful starting point for the application development. However, the included mikroSDK compatible library offers functions that simplify the firmware development even more.

The DS2480B IC requires using 5V for both the power supply and logic levels. Having in mind that most MCUs use 3.3V logic levels for UART communication, a level translator had to be added. UART 1-Wire click uses the TXB0106, a bi-directional level translator IC, by Texas Instruments. This IC allows reliable logic voltage level translation, allowing the Click board™ to be used with a wide range of MCUs that use 3.3V logic levels on their UART lines.

The 1-Wire® bus can be accessed over the screw terminal on the Click board™. Due to the nature of most 1-Wire® applications, the signal line of the 1-Wire® bus is protected by the DS9503, an integrated ESD Protection Diode with resistors. This IC is specifically designed to be used as the Electrostatic Discharge (ESD) protection in 1-Wire® applications.

Specifications

Type 1-Wire
Applications The Click board™ can be used to facilitate working with various iButton® devices or similar applications based on 1-Wire communication, offering a simple and familiar UART interface to the host microcontroller (MCU)
On-board modules DS2480B IC, a serial to 1-Wire driver IC, from Maxim Integrated; TXB0106, a bi-directional level translator IC, by Texas Instruments
Key Features A set of options for fine-tuning the 1-Wire bus performance, complex state machine which allow straight-forward conversion of characters sent over the UART interface, an accurate 1-Wire bus timing derived from the crystal-driven UART reference, etc.
Interface UART
Input Voltage 3.3V,5V
Click board size M (42.9 x 25.4 mm)

 

Pinout diagram

This table shows how the pinout on UART 1-Wire click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).

Notes Pin Mikrobus logo.png Pin Notes
  NC 1 AN PWM 16 NC  
  NC 2 RST INT 15 NC  
  NC 3 CS RX 14 TX UART TXD Line
  NC 4 SCK TX 13 RX UART RXD Line
  NC 5 MISO SCL 12 NC  
  NC 6 MOSI SDA 11 NC  
Power Supply 3V3 7 3.3V 5V 10 5V Power Supply
Ground GND 8 GND GND 9 GND Ground

Onboard settings and indicators

Label Name Default Description
PWR PWR - Power LED indicator
CN1 GND, 1-W - 1-Wire® bus connector

Software support

We provide a library for the UART 1-Wire Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.

Library Description

The library initializes and defines the UART bus driver and drivers that offer a choice for writing data on UART. The library includes the function for reading data and functions for go to Command/Data mode. The user also has the function for reset chip and storage read data.

Key functions:

  • void uart1wire_writeCommand(uint8_t input) - Functions for write one byte on UART.
  • uint8_t uart1wire_readByte() - Functions for read byte from UART.
  • void uart1wire_goToCommandMode() - Functions for go to command mode.
  • void uart1wire_goToDataMode() - Functions for go to data mode.
  • void uart1wire_readData(uint8_t *buf, uint8_t nData) - Functions for read data.

Examples description

The application is composed of the three sections :

  • System Initialization - Initializes UART module.
  • Application Initialization - Initializes Driver init, interrupt routine and init thermo 2 click.
  • Application Task - (code snippet) - Reads the temperature from the Thermo 2 click board and logs data to UART. Connection between Thermo 2 and UART 1 Wire is made through 1- Wire interface. You can place thermo 2 click on mikrobus 2 socket and use side headers to make connection between click boards.
void applicationTask()
{
    /* Start converzion */
    uart1wire_reset();
    uart1wire_goToDataMode();
    Delay_10ms();
    uart1wire_writeCommand(_UART1WIRE_SKIP_ROM);
    uart1wire_writeCommand( 0x44 );
    Delay_ms( 750 );
    
    /* Start reading temperature */
    uart1wire_reset();
    uart1wire_goToDataMode();
    Delay_10ms();
    uart1wire_writeCommand(_UART1WIRE_SKIP_ROM);
    uart1wire_writeCommand( 0xBE );
    Delay_10ms();
    
    uart1wire_readData(&dataBuffer[0], 8);
    
    Temp = dataBuffer[ 1 ];
    Temp = Temp << 8;
    Temp = Temp | dataBuffer[ 0 ];
    
    fTemp = Temp * 0.0625;
    mikrobus_logWrite(" Temperature : ", _LOG_TEXT);
    FloatToStr(fTemp, demoText);
    mikrobus_logWrite(demoText, _LOG_LINE);
    
    Delay_ms( 1000 );
}

The full application code, and ready to use projects can be found on our LibStock page.

Other mikroE Libraries used in the example:

  • UART
  • Conversions

Additional notes and information

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.

Downloads

 mikroBUS™ Standard specification 

 LibStock: mikroSDK 

 Click board catalog

 UART 1-Wire Click Libstock 

 UART 1-Wire 2D and 3D files

 DS2480B Datasheet

 UART 1-Wire click schematic

Write a review
Your Name:


Your Review:
Note: HTML is not translated!
Rating:
Bad           Good

Enter the code in the box below:



© 2019, MG Automation Technologies. Powered by MG Super LABS.Find us on Google+
Designed with by