All pastes #2113256 Raw Edit

Mine

public text v1 · immutable
#2113256 ·published 2012-02-08 19:52 UTC
rendered paste body
#ifndef HAL_H
#define HAL_H


//Clock Config
#define F_CPU 4000000L

#include <avr/io.h>
#include <avr/interrupt.h>


#include <inttypes.h>
#include <stdio.h>
#include <stdlib.h>
#include <avr/pgmspace.h>
#include <avr/wdt.h>
#include <util/delay.h>
#include <stdlib.h>

#include "avrlibtypes.h"
#include "avrlibdefs.h"
#include "i2c_ultimate.h"
#include "i2c_AT24C_EEP.h"
#include "i2c_ADS1110_ADS.h"

#define INLINE __attribute__((always_inline))




//System Timer Config
//#define Prescaler	  		64
//#define	TimerDivider  		(F_CPU/Prescaler/1000)		// 1 mS



//PORT Defines
	#define LED2		7

	#define LED1 		4
	#define LED_PORT 	PORTD
	#define LED_DDR		DDRD


//USART Config
	#define usart_baudrate		9600L
	#define usart_bauddivider	(F_CPU / (16*usart_baudrate) - 1)
	#define usart_HI(x)			((x) >>  8)
	#define usart_LO(x)			((x)& 0xFF)

	#define SEND(X) do{buffer_index = 1; UDR = X; UCSRB|=(1<<UDRIE); }while(0)

//	i2c_init

// for 4-16 MHz CPU, 100KHz i2c div = 12..72
// for 4-16 MHz CPU, 400KHz i2c div = 48..288
// i2cBR must be >10
// if >255 i2cPS=1, i2cBR=i2cBR/4

	#define i2c_baudrate		100000L
	#define i2c_bauddivider		(F_CPU / i2c_baudrate - 16) / 2
		
	#define i2c_PORT	PORTC				// Порт i2c (С по умолчанию)
	#define i2c_DDR		DDRC
	#define i2c_SCL		0					// Биты соответствующих выводов
	#define i2c_SDA		1					// тоже по умолчанию
////////////////////////////////////////////////////////////////////////////////

extern void Init_all(void);

#endif