I have this project that my boss asked me to do and the first step is to figure out how to set a given I2C register to high or low using the silicon lab library, if anyone knows any good sources for this type of problem please provide them thank you. The pic that I am using is the pic16f1823, I've already looked at the documentation of the pic but into only states how to read and write to an I2c.
1
There are 1 answers
Related Questions in PIC
- What is the difference between these 2 programs, one in C and the other in PIC assembly?
- Can't call second function (PIC XC16)
- I2C LCD1602 interfacing with PIC16F877A
- What is wrong with my SPI configuration/programming?
- Symbol not previously defined (TRISA)
- How to Enable UART Interrupt For PIC32MX?
- problem when separating an integer and displaying it on a 7-segment display
- No source code lines were found at current PC 0xc7. Use Program memory view to see instruction code disassembly
- Problem when implementing a scoreboard for a stadium, how can I fix this code
- PIC18F2550 assembly code for turning led on with a switch isn't working
- DHT11 code from pic18f4550 does not work with pic18f57Q84
- PIC18F4580 isn't turning the LED on in Proteus
- Using an ADC with PIC24 and storing the data in an SD card
- link PIC24 with SDcard
- Can connect and write hex files from MPLAB X IPE but can not debug from MPLAB X IDE
Related Questions in I2C
- Adafruit BNO08x Lib Not working with PicoRP2040 - PlatformIO
- msp430f5438a reading multiple sensor tmp117
- Raspberry pi 4, ina219 Bi-Directional DC Current Power Supply Sensor
- read block data with smbus2 is slow on Raspberry Pi
- I2C problems communicating with I2C Analog Devices AD5112 Digital Pot
- How to receive a float array using esp8266 via I2c
- I2C Communication with Tiva TM4C123GXL
- GPIO I2C IMU on OrangePi CM4 Running Android Doesn't Interface With Native Apps
- I2C LCD1602 interfacing with PIC16F877A
- Sets huskylens modes
- Find out which protocol to communicate with a TFT LCD display
- Why does one of the arguments in this MPU-6050 code mean something different from the official Arduino documentation?
- I want to change the slave address in runtime again after the first configuration of i2c SLAVE. Is this possible , I'm getting errors while doing that
- Issue with MAX32664 breakout board from Protocentral on STM32L476RG Nucleo-64: Fixed SpO2 value
- enabling cdc-acm uart and I2C at the same time on zephyr OS
Related Questions in SILICON
- How to detect Apple Silicon Macs in Cordova App?
- Error during flutter installation: No such file or directory
- Not working java on Mac m2 MacBook Air (any jar sent error)
- Pod install not working on Mac M1 Pro chip
- mac m1 12.4 with brew arm and x86 versions installed, how do I uninstall the x86 brew
- when I install gitlab-ce through docker on m1 mac mini, it stucks on gitlab::database::migrations
- Android Studio Bumblebee 2021.1.1 Canary 4 Emulator not working on m1
- libvirt on Apple Silicon with qemu-system-aarch64
- Apple silicon Macs support issue because of SKOverlay.AppConfiguration
- UIView snapshot crashes in iOS app running natively on Apple Silicon
- Xcode 12 Apple M1 arm64 - Designable error: "wrong architecture"
- Build static lib for Apple Silicon mac simulator
- How to fix "IPA processing failed" in Xcode 12.2 with MAC M1
- Problem with iOS devices and BLE stack version 02.12
- How to get out of the infinite loop?
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
I use this as a header file and seems to work well for PIC16F1827 which is basically the same as the 1823. It used the peripheral of the PIC. Just include in in any c file you want to use i2c in. Make sure you #define FOSC in order to calculate the correct baud rate. Also double check the port and tris assignments are correct for your device and make adjustments.
It uses polling instead of an interrupt. Uncomment the interrupt setup code and write an interrupt service routine to catch the interrupts.
Then you can use the higher level functions defined above to control a device, which is described in the datasheet of the slave device.
For example, to read from an eeprom: