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

📄 gpi2c.h

📁 atmel avr software i2c communication source
💻 H
字号:
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/pgmspace.h>
#include <avr/eeprom.h>
#include <avr/wdt.h>

#include "lcd.h"
#include "types.h"
#include "delay.h"
#include "Constants.h"
#include "uart.h"


#define I2C_PORT PORTD
#define I2C_DDR  DDRD
#define I2C_INPUT  PIND

#define SCL_PORT  PD0
#define SDA_PORT  PD1

#define SCL_SET  ( 1 << SCL_PORT )
#define SDA_SET ( 1 << SDA_PORT )
/*************************************************/
// PLL control

#define PLL_SERIAL	PORTG
#define PLL_DDR			DDRG
#define PLL_SCK		PG3
#define PLL_SDA		PG4
#define PLL_SCK_SET  ( 1 << PLL_SCK )
#define PLL_SDA_SET ( 1 << PLL_SDA )

#define   SCL_L      cbi(PLL_SERIAL,PLL_SCK)
#define   SCL_H      sbi(PLL_SERIAL,PLL_SCK)
#define   SDA_L      cbi(PLL_SERIAL,PLL_SDA)
#define   SDA_H      sbi(PLL_SERIAL,PLL_SDA)

#define nop()	asm("nop")

void nops(unsigned char num);
void gpi2c_init(void);
void gpi2c_start(void);
void gpi2c_stop(void);
void gpi2c_clock(void);

unsigned char gpi2c_ackn(void);
void write_gpi2c_byte(unsigned char byte);
unsigned char read_gpi2c_byte(unsigned char ch);
void read_gpi2c_word(unsigned char add);
void write_gpi2c_word(unsigned char add);
void write_gpi2c_4byte(u32 command_long );

void plli2c_init(void);
void pll_write(u32 data1);
void pll_cont_write(u08 data1, u08 data2, u08 data3);
//void pll_cont2_write(u08 data1, u08 data2, u08 data3);
void load_pll(u08 control, u08 data3, u08 data2, u08 data1);

⌨️ 快捷键说明

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