PIC 16F877 I2C Introduction

Most of PIC controllers specially 16F and 18F series have onchip I2C Modules. In this section of tutorial we are going to talk about PIC16F877A I2C Module and all derivatives of PIC has same module i.e. similar registers to configure. Lets take a look at the important registers which are to be configured to make I2C modules active and running on a PIC microcontroller.

For I2C master mode, there are three important register are to be configured

  • SSPSTAT: MSSP Status Register
  • SSPCON1: MSSP Control Register 1
  • SSPCON2: MSSP Control Register 2

SSPSTAT:

SSPCON1:

SSPCON2:

Baudrate Generator

In I2C Master mode, the Baud Rate Generator (BRG) reload value is placed in the lower 7 bits of the SSPADD register (Figure 9-17). When a write occurs to SSPBUF, the Baud Rate Generator will automatically begin counting. The BRG counts down to 0 and stops until another reload has taken place. In I2C Master mode, the BRG is reloaded automatically.

PIC16F877A - SSPADD as baudrate generator

Conversation

naqirizvi
Wed Jan 28 2015, 08:08 AM
the web theme is too much buggy and heavy , admin please change it to simple theme, so that user can browse quickly
naqirizvi
Wed Jan 28 2015, 08:07 AM
some one please share software name or ebooks related to avr
bhagyesh.bhavasar
Tue Jan 27 2015, 11:06 AM
i want to share my project but there is problem occurred during postng
bhagyesh.bhavasar
Tue Jan 27 2015, 05:58 AM
@ExperimentalUK i have used that purple button but same as previous it takes me to blank page
ExperimenterUK
Sun Jan 25 2015, 08:10 PM
This box is for chat. Post problems in a suitable forum
ExperimenterUK
Sun Jan 25 2015, 08:04 PM
@gaurav.k Use the purple "Post reply" button. Green buttons often present a fresh edit box.
ExperimenterUK
Sun Jan 25 2015, 07:33 PM
@avianash..we have no entry for avianash.. Are you sure that is your login name ?
Fri Jan 23 2015, 04:29 AM
lolokijuh
DJ Bakal tulungan mo ako s IC Tester
Fri Jan 23 2015, 04:29 AM
lolokijuh
sir help about IC Tester
Thu Jan 22 2015, 01:59 PM
apparao majji
could you please help in programming

Downloads

Comments

nawfel
Sat Jan 17 2015, 07:27 AM
Rohi123
Sat Jan 10 2015, 11:00 AM
safakarici
Fri Jan 09 2015, 08:55 PM
Nikita_Pinjare
Thu Jan 08 2015, 03:10 PM
mayank058
Wed Jan 07 2015, 05:43 AM
Overeating
Tue Jan 06 2015, 05:56 AM
trancebreaker11
Sun Jan 04 2015, 07:42 AM
akash474001
Thu Jan 01 2015, 05:49 AM

Online

Guests: 41, Members: 0 ...

most ever online: 182184
(Members: , Guests: 182184) on 06 Aug 2010: 05:37 AM

Members: 37573
Newest member: nawfel
Forum Activity
Karan123 Avatar
Posted By Karan123
Wed Jan 28 2015, 05:01 AM
Hello,I have changed schematic according to this c...
naqirizvi Avatar
Posted By naqirizvi
Tue Jan 27 2015, 07:10 PM
Have you done anything with devices like the ATme...
naqirizvi Avatar
Posted By naqirizvi
Tue Jan 27 2015, 07:09 PM
I am using avr gcc compiler and avrstudio 4 .I am ...
naqirizvi Avatar
Posted By naqirizvi
Tue Jan 27 2015, 05:43 PM
I have read that tutorial I am using AVR GCC Compi...
sairfan1 Avatar
Posted By sairfan1
Tue Jan 27 2015, 03:41 PM
Hi,Recently i bought saleae logic analyzer clone f...
mayank058 Avatar
Posted By mayank058
Tue Jan 27 2015, 06:05 AM
dear sir, I was working on a project ...
ExperimenterUK Avatar
Posted By ExperimenterUK
Sun Jan 25 2015, 08:19 PM
According to this page the output is fairly linear...
mayank058 Avatar
Posted By mayank058
Thu Jan 22 2015, 12:16 PM
dear sir, Now i want to generate a si...
mayank058 Avatar
Posted By mayank058
Tue Jan 20 2015, 06:40 AM
dear sir, Now its working properly. Th...
ajay_bhargav Avatar
Posted By ajay_bhargav
Tue Jan 20 2015, 04:36 AM