اینو خودم ساختم.
فقط بگو مشکلی نداره؟ اگه راه ساده تری هم داره بگید. ممنون :roll:
کد:
/*********************************************
Name : vahid.h
Version : 20070202
Date : 2007/02/02
Author : Vahid
Comments:
1. bitset(port,bit)
2. bitclr(port,bit)
3. bsc(port,bit,val)
3. POA~E(val)
4. DRA~E(val)
*********************************************/
// Define bitset/clr >
#define bitset(port,bit) ((port) |= (1<<bit))
#define bitclr(port,bit) ((port) &= (~(1<<bit)))
// <
// Define scb >
#define bsc(port,bit,val) if(val) bitset(port,bit); else bitclr(port,bit)
// <
//Define POA~E >
#define POA0(val) bsc(PORTA,0,val)
#define POA1(val) bsc(PORTA,1,val)
#define POA2(val) bsc(PORTA,2,val)
#define POA3(val) bsc(PORTA,3,val)
#define POA4(val) bsc(PORTA,4,val)
#define POA5(val) bsc(PORTA,5,val)
#define POA6(val) bsc(PORTA,6,val)
#define POA7(val) bsc(PORTA,7,val)
#define POB0(val) bsc(PORTB,0,val)
#define POB1(val) bsc(PORTB,1,val)
#define POB2(val) bsc(PORTB,2,val)
#define POB3(val) bsc(PORTB,3,val)
#define POB4(val) bsc(PORTB,4,val)
#define POB5(val) bsc(PORTB,5,val)
#define POB6(val) bsc(PORTB,6,val)
#define POB7(val) bsc(PORTB,7,val)
#define POC0(val) bsc(PORTC,0,val)
#define POC1(val) bsc(PORTC,1,val)
#define POC2(val) bsc(PORTC,2,val)
#define POC3(val) bsc(PORTC,3,val)
#define POC4(val) bsc(PORTC,4,val)
#define POC5(val) bsc(PORTC,5,val)
#define POC6(val) bsc(PORTC,6,val)
#define POC7(val) bsc(PORTC,7,val)
#define POD0(val) bsc(PORTD,0,val)
#define POD1(val) bsc(PORTD,1,val)
#define POD2(val) bsc(PORTD,2,val)
#define POD3(val) bsc(PORTD,3,val)
#define POD4(val) bsc(PORTD,4,val)
#define POD5(val) bsc(PORTD,5,val)
#define POD6(val) bsc(PORTD,6,val)
#define POD7(val) bsc(PORTD,7,val)
#define POE0(val) bsc(PORTE,0,val)
#define POE1(val) bsc(PORTE,1,val)
#define POE2(val) bsc(PORTE,2,val)
#define POE3(val) bsc(PORTE,3,val)
#define POE4(val) bsc(PORTE,4,val)
#define POE5(val) bsc(PORTE,5,val)
#define POE6(val) bsc(PORTE,6,val)
#define POE7(val) bsc(PORTE,7,val)
// <
// Define DRA~E >
#define DRA0(val) bsc(DDRA,0,val)
#define DRA1(val) bsc(DDRA,1,val)
#define DRA2(val) bsc(DDRA,2,val)
#define DRA3(val) bsc(DDRA,3,val)
#define DRA4(val) bsc(DDRA,4,val)
#define DRA5(val) bsc(DDRA,5,val)
#define DRA6(val) bsc(DDRA,6,val)
#define DRA7(val) bsc(DDRA,7,val)
#define DRB0(val) bsc(DDRB,0,val)
#define DRB1(val) bsc(DDRB,1,val)
#define DRB2(val) bsc(DDRB,2,val)
#define DRB3(val) bsc(DDRB,3,val)
#define DRB4(val) bsc(DDRB,4,val)
#define DRB5(val) bsc(DDRB,5,val)
#define DRB6(val) bsc(DDRB,6,val)
#define DRB7(val) bsc(DDRB,7,val)
#define DRC0(val) bsc(DDRC,0,val)
#define DRC1(val) bsc(DDRC,1,val)
#define DRC2(val) bsc(DDRC,2,val)
#define DRC3(val) bsc(DDRC,3,val)
#define DRC4(val) bsc(DDRC,4,val)
#define DRC5(val) bsc(DDRC,5,val)
#define DRC6(val) bsc(DDRC,6,val)
#define DRC7(val) bsc(DDRC,7,val)
#define DRD0(val) bsc(DDRD,0,val)
#define DRD1(val) bsc(DDRD,1,val)
#define DRD2(val) bsc(DDRD,2,val)
#define DRD3(val) bsc(DDRD,3,val)
#define DRD4(val) bsc(DDRD,4,val)
#define DRD5(val) bsc(DDRD,5,val)
#define DRD6(val) bsc(DDRD,6,val)
#define DRD7(val) bsc(DDRD,7,val)
#define DRE0(val) bsc(DDRE,0,val)
#define DRE1(val) bsc(DDRE,1,val)
#define DRE2(val) bsc(DDRE,2,val)
#define DRE3(val) bsc(DDRE,3,val)
#define DRE4(val) bsc(DDRE,4,val)
#define DRE5(val) bsc(DDRE,5,val)
#define DRE6(val) bsc(DDRE,6,val)
#define DRE7(val) bsc(DDRE,7,val)
// <