i2cwrites.c

来自「PIC16单片机实现I2C IIC总线的程序库」· C语言 代码 · 共 31 行

C
31
字号
#include <pic18fregs.h>

#include <i2c.h>

char i2c_writestr(unsigned char *ptr)
{
  while( *ptr ) {
    if( SSPCON1bits.SSPM3 ) {
      if(i2c_writechar( *ptr )) {
        return (-3);
      }
      I2C_IDLE();
      if( SSPCON2bits.ACKSTAT ) {
        return (-2);
      }
    } else {
      PIR1bits.SSPIF = 0;
      SSPBUF = *ptr;
      SSPCON1bits.CKP = 1;
      while( !PIR1bits.SSPIF );

      if((!SSPSTATbits.R_W) && ( !SSPSTATbits.BF )) {
        return (-2);
      }
    }

    ptr++;
  }

  return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?