Skip to content

Commit f663c10

Browse files
Usha Gsaikprasad
authored andcommitted
MPAE-18367 Incorporated Tech writer review comments and added UTM links
1 parent d4a014d commit f663c10

File tree

1 file changed

+16
-16
lines changed

1 file changed

+16
-16
lines changed

README.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,52 +2,52 @@
22

33
[![MCHP](images/microchip.png)](https://www.microchip.com)
44

5-
# UART-I2C Bridge Implementation: I2C Client(Client-1) Implementation using PIC16F15244 Microcontroller
5+
# UART-I2C Bridge Implementation: I2C Client(Client-1) Implementation Using the PIC16F15244 Microcontroller
66

7-
This code example is one of good use case to demonstrate uart-i2c bridge implementation using PIC16F152xx family microcontrollers. In this code example, PIC16F15244 MCU acts as I2C client 1 device. It periodically collects the data from the sensor, process the acquired data and keep the data ready to transmit to Host device over I2C interface. When the Host device requests to send the processed sensor data, then client device responds back to host request with the processed data through i2c interface. After receiving the data from the client device, host device displays the data on the terminal window.
7+
This code example is a good use case to demonstrate UART-I2C bridge implementation using the PIC16F152xx family microcontrollers. In this code example, PIC16F15244 MCU acts as an I2C client as device 1. It periodically collects the data from the sensor, process the acquired data and keep the data ready to transmit to the Host device over the I2C interface. When the Host device requests to send the processed sensor data, then the client device responds back to the host request with the processed data through the I2C interface. After receiving the data from the client device, the host device displays the data on the terminal window.
88

9-
Refer GitHub code example [UART-I2C Bridge and I2C Host Implementation using PIC16F15244 Microcontroller](https://github.com/microchip-pic-avr-examples/pic16f15244-uart-i2c-bridge-and-i2c-host-mplab-mcc) and [UART-I2C Bridge Implementation: I2C Client(Client-2) Implementation using PIC16F15244 Microcontroller](https://github.com/microchip-pic-avr-examples/pic16f15244-uart-i2c-bridge-i2c-client2-mplab-mcc) for more details about the application.
9+
Refer to the GitHub code example [UART-I2C Bridge and I2C Host Implementation using PIC16F15244 Microcontroller](https://github.com/microchip-pic-avr-examples/pic16f15244-uart-i2c-bridge-and-i2c-host-mplab-mcc) and [UART-I2C Bridge Implementation: I2C Client(Client-2) Implementation using PIC16F15244 Microcontroller](https://github.com/microchip-pic-avr-examples/pic16f15244-uart-i2c-bridge-i2c-client2-mplab-mcc) for more details about the application.
1010

1111
## Related Documentation
1212

13-
- [PIC16F152xx Product Family Page](https://www.microchip.com/en-us/products/microcontrollers-and-microprocessors/8-bit-mcus/pic-mcus/pic16f15244)
13+
- [PIC16F152xx Product Family Page](https://www.microchip.com/en-us/products/microcontrollers-and-microprocessors/8-bit-mcus/pic-mcus/pic16f15244?utm_source=GitHub&utm_medium=TextLink&utm_campaign=MCU8_PIC16F15244&utm_content=pic16f15244-uart-i2c-bridge-i2c-client1-mplab-mcc-github&utm_bu=MCU08)
1414
- [PIC16F152xx Family Code Examples on GitHub](https://github.com/orgs/microchip-pic-avr-examples/repositories?q=pic16f152&type=all&language=&sort=)
1515
- [PIC16F15244 MCU Family Video](https://www.youtube.com/watch?v=nHLv3Th-o-s)
16-
- [PIC16F15244 MCU Product Page](https://www.microchip.com/en-us/product/PIC16F15244)
16+
- [PIC16F15244 MCU Product Page](https://www.microchip.com/wwwproducts/en/PIC16F15244?utm_source=GitHub&utm_medium=TextLink&utm_campaign=MCU8_PIC16F15244&utm_content=pic16f15244-uart-i2c-bridge-i2c-client1-mplab-mcc-github&utm_bu=MCU08)
1717
- [Technical Brief - Using the MSSP in I2C Master mode](https://www.microchip.com/wwwappnotes/appnotes.aspx?appnote=en1001796)
1818
- [Technical Brief – Using the MSSP in I2C Slave mode](https://www.microchip.com/wwwappnotes/appnotes.aspx?appnote=en1001796)
1919
- [Application Note – AN3538 A Simple Water Monitoring System with I2C Communication](https://ww1.microchip.com/downloads/en/Appnotes/A-Simple-Water-Monitoring-System-with%20I2C-Communication-DS00003538A.pdf)
2020

2121
## Description
2222

23-
In this code example, the PIC16F15244 microcontroller communicate with Data Visualizer terminal window application, running on a PC, through USART interface and receive user inputs/commands. Based on the commands received from the user, the PIC16F15244 microcontroller communicates with the I2C client devices and collect the required sensors data and, transmit to PC for displaying it on the terminal window. This way, the PIC16F15244 microcontroller acts as a EUART-I2C bridge to communicate with Data Visualizer terminal window application and acts as a I2C host device to communicate with the I2C client devices.
23+
In this code example, the PIC16F15244 microcontroller communicate with the Data Visualizer terminal window application, running on a PC, through the USART interface and receives user inputs/commands. Based on the commands received from the user, the PIC16F15244 microcontroller communicates with the I2C client devices and collects the required sensors data and transmit to PC for displaying it on the terminal window. Thus, the PIC16F15244 microcontroller acts as a EUART-I2C bridge to communicate with the Data Visualizer terminal window application and acts as a I2C host device to communicate with the I2C client devices.
2424

25-
The code example uses two I2C clients, named as client 1 and client 2 and, they are based on PIC16F15244 microcontroller. Figure 1 shows the block diagram view of the application.
25+
The code example uses two I2C clients, named Client 1 and Client 2, which are based on the PIC16F15244 microcontroller. Figure 1 shows the block diagram view of the application.
2626

27-
<p align="center">
27+
<p align="left">
2828
<img width=auto height=auto src="images/block diagram.png">
2929
<br>Figure 1 : Block diagram view of the application<br>
3030
</p>
3131

32-
For the purpose of demonstration, pH sensor is interfaced to client 1 and, temperature and capacitive soil moisture sensors are interfaced to client 2. Both the clients periodically collect data from the sensors, process the acquired data and keep the data ready to transmit to Host device over I2C interface.
32+
For demonstration purposes, the pH sensor is interfaced to Client 1 and, temperature and capacitive soil moisture sensors are interfaced to Client 2. Both clients periodically collect data from the sensors, process the acquired data and keep the data ready to transmit to the Host device over the I2C interface.
3333

34-
The input commands and clients I2C address information has been displayed on the terminal window of data visualizer. The user needs to enter a client device address from where the sensor data needs to be collected. If the entered client device address is correct, then the next input command, asking the user to enter sensor information from where data needs to be collected, is displayed on the terminal window. After entering the correct sensor information, the host device establishes I2C communication with the respective client device and requests to send the processed sensor data. The client device responds back to host request with the processed sensor data. Upon receiving the sensor data, the host device transmits data to data visualizer tool through UART interface, for displaying it on the terminal window. If the user entered client address or sensor input command is incorrect, then terminal window display the supplied client address or sensor information is incorrect and requests the user to re-enter details.
34+
The input commands and I2C client address information have been displayed on the terminal window of the Data Visualizer. The user needs to enter a client device address from where the sensor data needs to be collected. If the entered client device address is correct, then the next input command, asking the user to enter sensor information from where data needs to be collected, is displayed on the terminal window. After entering the correct sensor information, the host device establishes I2C communication with the respective client device and requests to send the processed sensor data. The client device responds back to the host request with the processed sensor data. Upon receiving the sensor data, the host device transmits data to the Data Visualizer tool through the UART interface, for displaying it on the terminal window. If the client address or sensor input command entered by the user is incorrect, then terminal window display supplied by the client address or the sensor information is incorrect and requests the user to re-enter more details.
3535

3636
## Software Used
3737

38-
- MPLAB® X IDE [6.20 or newer](http://www.microchip.com/mplab/mplab-x-ide)
39-
- MPLAB® XC8 [2.50 or newer](http://www.microchip.com/mplab/compilers)
40-
- MPLAB® Code Configurator (MCC) [5.7.1 or newer](https://www.microchip.com/mplab/mplab-code-configurator)
41-
- Microchip PIC16F1xxxx Series Device Support [1.25.389 or newer](https://packs.download.microchip.com/)
38+
- [MPLAB® X IDE](https://www.microchip.com/en-us/tools-resources/develop/mplab-x-ide?utm_source=GitHub&utm_medium=TextLink&utm_campaign=MCU8_PIC16F15244&utm_content=pic16f15244-uart-i2c-bridge-i2c-client1-mplab-mcc-github&utm_bu=MCU08) 6.20 or newer
39+
- [MPLAB® XC8](https://www.microchip.com/en-us/tools-resources/develop/mplab-xc-compilers?utm_source=GitHub&utm_medium=TextLink&utm_campaign=MCU8_PIC16F15244&utm_content=pic16f15244-uart-i2c-bridge-i2c-client1-mplab-mcc-github&utm_bu=MCU08) 2.50 or newer
40+
- [MPLAB® Code Configurator (MCC)](https://www.microchip.com/en-us/tools-resources/configure/mplab-code-configurator?utm_source=GitHub&utm_medium=TextLink&utm_campaign=MCU8_PIC16F15244&utm_content=pic16f15244-uart-i2c-bridge-i2c-client1-mplab-mcc-github&utm_bu=MCU08) 5.7.1 or newer
41+
- [Microchip PIC16F1xxxx Series Device Support](https://packs.download.microchip.com/) 1.25.389 or newer
4242
- MSSP MCC Melody Core 7.0.1
4343
- ADC MCC Melody Core 3.0.10
4444
- TMR0 MCC Melody Core 4.0.13
4545
- UART MCC Melody Core 1.10.0
4646

4747
## Hardware Used
4848

49-
- Curiosity Nano Base for Click boards™[AC164162](https://www.microchip.com/en-us/development-tool/AC164162)
50-
- PIC16F15244 Curiosity Nano Evaluation Kit [EV09Z19A](https://www.microchip.com/en-us/development-tool/EV09Z19A)
49+
- Curiosity Nano Base for Click boards™[AC164162](https://www.microchip.com/en-us/development-tool/AC164162?utm_source=GitHub&utm_medium=TextLink&utm_campaign=MCU8_PIC16F15244&utm_content=pic16f15244-uart-i2c-bridge-i2c-client1-mplab-mcc-github&utm_bu=MCU08)
50+
- PIC16F15244 Curiosity Nano Evaluation Kit [EV09Z19A](https://www.microchip.com/en-us/development-tool/EV09Z19A?utm_source=GitHub&utm_medium=TextLink&utm_campaign=MCU8_PIC16F15244&utm_content=pic16f15244-uart-i2c-bridge-i2c-client1-mplab-mcc-github&utm_bu=MCU08)
5151
- SHT AN Click [MIKROE-3984](https://www.mikroe.com/sht-an-click)
5252
- PH Sensor [EC-4743](https://www.electronicscomp.com/analog-ph-sensor-kit-for-arduino?gclid=EAIaIQobChMIhfv3t-q58QIVu4NLBR2VKQGWEAYYAyABEgKhdPD_BwE)
5353
- Capacitive Soil Moisture Sensor V2.0 [EC-5092](https://www.electronicscomp.com/capacitive-soil-moisture-sensor-v2?gclid=EAIaIQobChMI3YCgheq58QIVxZVLBR1PZQKPEAQYAiABEgJW9_D_BwE)

0 commit comments

Comments
 (0)