⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 i2c_api.h

📁 CANopenNode source code with tutorials - free CANopen stack
💻 H
字号:
/****************************************************************************
* (C) 1999-2005 by BECK IPC GmbH
*
*  BECK IPC GmbH
*  Germany
*  
*  http://www.beck-ipc.com
*
* ---------------------------------------------------------------------------
* Module        : I2C_API.H
* Function      : Defines and typedefs for I2C_API.C
* ---------------------------------------------------------------------------
* History       :
*  Vx.yy                   Author  Changes
*  V1.00      17.07.00     roth    Create
* ---------------------------------------------------------------------------
*  Published on the BECK WebSite with kind permission of Bernhard Roth.

$Header: /cvsrepo/CANopenNode/_src/CANopen/BECK_SC1x+SJA1000/Clib/i2c_api.h,v 1.1 2006/03/08 11:29:44 jani Exp $

****************************************************************************/

#ifndef __I2CAPI_H__
#define __I2CAPI_H__


/*************************************************************************/
//prototypes
/*************************************************************************/
#ifdef __cplusplus
extern "C" {
#endif

void _cdecl I2C_init             (void);
void _cdecl I2C_release          (void);
void _cdecl I2C_restart          (void);
unsigned char _cdecl I2C_scan    (unsigned char start_addr, unsigned char end_addr);
int  _cdecl I2C_transmit_block   (unsigned char slave,
                                  const char far * buffer,
                                  int length);
int  _cdecl I2C_receive_block    (unsigned char slave, char far * buffer, int length);
int  _cdecl I2C_transmit_char    (unsigned char slave, char char_out);
int  _cdecl I2C_receive_char     (unsigned char slave,
                                  char * char_in,
                                  unsigned char not_last);
void _cdecl I2C_select_clock_pin (unsigned char pio_no);
void _cdecl I2C_select_data_pin  (unsigned char pio_no);

// Extended address versions
unsigned int _cdecl I2C_scan_ext  (unsigned int start_addr, unsigned int end_addr);
int  _cdecl I2C_transmit_block_ext(unsigned int slave,
                                   const char far * buffer,
                                   int length);
int  _cdecl I2C_receive_block_ext (unsigned int slave, char far * buffer, int length);
int  _cdecl I2C_transmit_char_ext (unsigned int slave, char char_out);
int  _cdecl I2C_receive_char_ext  (unsigned int slave,
                                   char * char_in,
                                   unsigned char not_last);

// SC123/SC143 functions
void _cdecl I2C_set_speed         (unsigned char n, unsigned char m);
void _cdecl I2C_reset             (void);
void _cdecl I2C_slave_address     (unsigned int addr, unsigned char gencalladdr);
void _cdecl I2C_slave_sendack     (unsigned char ack);
unsigned char _cdecl I2C_slave_readbyte (void);
void _cdecl I2C_slave_sendbyte    (unsigned char data, unsigned char next);
void _cdecl I2C_slave_idle        (void);


#ifdef __cplusplus
}
#endif

/*************************************************************************/
#endif /* __I2CAPI_H__*/
/*************************************************************************/
//end i2c_api.h
/*************************************************************************/

⌨️ 快捷键说明

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