PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : جمع اوري پروژها ي PIC



aliAVR
24-12-2009, 22:35
سلام
دوستان این بخش رو فقط برای پروژه ها می ذاریم و هیچ پست اضافی می خوایم نباشه
تمامی پروژه های مطرح شده در انجمن ها و پروژه های در سطح وب در این بخش قرار می گیره
دوستان فقط در مورد پروژه توضیح بنویسید و یک عکس از شماتیک و.. هم بذارید خیلی بهتره
لطفا روی سرور ما آپلود کنید اگر هم موفق نشدید لطفا روی سرور You can see links before reply آپلود کنید :wink:

aliAVR
25-12-2009, 00:19
ترموستات بر روي LCD3310 NOKIA
You can see links before reply
You can see links before reply
سايت اصلي (You can see links before reply)

alnz
17-01-2010, 18:36
Wireless controlled lightdimmer :



You can see links before reply

alnz
17-01-2010, 18:37
RC5 remote control :



You can see links before reply

alnz
17-01-2010, 18:38
اين دو تا رو از سايت زير گرفتم ، به بقيش هم خودتون يه نيگاهي بندازيد


You can see links before reply

arsalan681
02-04-2010, 13:33
اتصال E2PROM سریال به PIC16F877A
توضیحات به همراه فایل پروتئوس
You can see links before reply
You can see links before reply

sajjad_AD
24-03-2012, 20:08
سلام :hi:
هر جند پروژه ی قابلی نیست ولی چون این بخش واقعا متروکه شده گفتم بذازمش شاید نکات آموزشی خوبی واسه تازه کارایی مثه خودم توش داشته باشه.
این پروژه رو یه استاد گرامی قبل از اینکه به دانشجوهاش چیزی یاد بده ازشون خواسته منم واسه دوستم نوشتم و گفتم اینجا هم بذارمش.
کامپایلر : MicroC
میکرو : 18F452
همراه با تست پروتئوس
عیدتون هم مبارک :fan:

sajjad_AD
29-06-2012, 18:06
سلام

به طور ساده بگم که تو این پروژه دما با سنسور LM35 اندازه گیری و روی سون سگمنت نمایش داده میشه

دارای چهار کانال خروجی هست که هرکدام به صورت جداگانه تنظیم میشن که بین چه دما هایی خروجی بدن

برای تنظیم,کلید Menu رو چند لحظه نگه دارین و بعد از اومدن شماره ی کانال روی سون سگمنت,
میتونید کانال مورد نظر رو به وسیله ی کلید های Incr و Decr انتخاب کنید
و بعد از اومدن روی کانال مورد نظر دوباره کلید Menu رو چند لحظه نگه دارید
تا وارد مرحله ی تنظیم بازه ی روشن بودن کانال مورد نظر بشین
و مقادیر High و Low رو تنظیم کنید.
کلا با نگه داشتن کلید Menu به منوی بعدی و با یک لحظه کلید زدن آن به منوی قبلی می روید
و با کلید های INCR و DECR میتونید مقادیر رو افزایش و کاهش بدید.
در ضمن مقادیر تنظیم شده در EEPROM ذخیره میشن تا با خاموش شدن دستگاه قرار نباشه
دوباره تنظیم شه.

در این برنامه از یه هدر هم برای کنترل سون سگمنت ها استفاده کردم که آموزش استفاده از اون رو تو این تایپیک گذاشتم (You can see links before reply)

یه پروژه ی سادس ولی خوب گفتم چون توش از امکاناتی چون ADC,EEPROM و چگونگی هدر نویسی و استفاده از اونا رو داره شاید واسه تازه کارایی مث خودم مفید باشه

کامپایلر MikroC
میکرو 16F873
تست پروتئوس 7.10

bascom2
11-07-2012, 17:34
با سلام
در سایت زیر میتوانید یک dvd از بهترین پروژه ها را با توضیحات به زبان فارسی ببابید

You can see links before reply

sajjad_AD
24-11-2012, 22:06
سلام :hi:
قبل از هر چیز ایام تاسوعا و عاشورای حسینی رو به همه ی کاربران تسلیت میگم...

خوب,اجبارا (مشق شب,تکلیف مدرسه) یه هدر برای این نوع LCD نوشتم که شامل توابع روبروست:



SetDot(signed char x,signed char y,unsigned char c);
DrawVerticalLine(unsigned char Y0,unsigned char Y1,unsigned char X,unsigned char Color);
DrawHorizontalLine(unsigned char X0,unsigned char X1,unsigned char Y,unsigned char Color);
DrawLine(signed char X0,signed char Y0,signed char X1,signed char Y1,unsigned char Color);
DrawRectangle(unsigned char X0,unsigned char Y0,unsigned char X1,unsigned char Y1,unsigned char Fill,unsigned char Color);
DrawCircle(unsigned int X,unsigned int Y,unsigned int R,unsigned char Fill,unsigned char Color);
ClearGlcd(unsigned char Color);
ShowPicture(const rom unsigned char *pic);
PutString(unsigned char line,unsigned char X,unsigned char *text);
InitGlcd(void);

برنامه ی هدر:


#define RS PORTDbits.RD0
#define RW PORTDbits.RD1
#define EN PORTDbits.RD2
#define CS1 PORTDbits.RD3
#define CS2 PORTDbits.RD4
#define RST PORTDbits.RD5

#define DirRS TRISDbits.TRISD0
#define DirRW TRISDbits.TRISD1
#define DirEN TRISDbits.TRISD2
#define DirCS1 TRISDbits.TRISD3
#define DirCS2 TRISDbits.TRISD4
#define DirRST TRISDbits.TRISD5

#define GlcdDataBus PORTB
#define DirGlcdDataBus TRISB

const rom unsigned char Bascom8x8Font[760] = {
0,0,0,0,0,0,0,0
,0,0,6,95,6,0,0,0
,0,7,3,0,7,3,0,0
,0,36,126,36,126,36,0,0
,0,36,43,106,18,0,0,0
,0,99,19,8,100,99,0,0
,0,54,73,86,32,80,0,0
,0,0,7,3,0,0,0,0
,0,0,62,65,0,0,0,0
,0,0,65,62,0,0,0,0
,0,8,62,28,62,8,0,0
,0,8,8,62,8,8,0,0
,0,0,224,96,0,0,0,0
,0,8,8,8,8,8,0,0
,0,0,96,96,0,0,0,0
,0,32,16,8,4,2,0,0
,0,62,81,73,69,62,0,0
,0,0,66,127,64,0,0,0
,0,98,81,73,73,70,0,0
,0,34,73,73,73,54,0,0
,0,24,20,18,127,16,0,0
,0,47,73,73,73,49,0,0
,0,60,74,73,73,48,0,0
,0,1,113,9,5,3,0,0
,0,54,73,73,73,54,0,0
,0,6,73,73,41,30,0,0
,0,0,108,108,0,0,0,0
,0,0,236,108,0,0,0,0
,0,8,20,34,65,0,0,0
,0,36,36,36,36,36,0,0
,0,0,65,34,20,8,0,0
,0,2,1,89,9,6,0,0
,0,62,65,93,85,30,0,0
,0,126,17,17,17,126,0,0
,0,127,73,73,73,54,0,0
,0,62,65,65,65,34,0,0
,0,127,65,65,65,62,0,0
,0,127,73,73,73,65,0,0
,0,127,9,9,9,1,0,0
,0,62,65,73,73,122,0,0
,0,127,8,8,8,127,0,0
,0,0,65,127,65,0,0,0
,0,48,64,64,64,63,0,0
,0,127,8,20,34,65,0,0
,0,127,64,64,64,64,0,0
,0,127,2,4,2,127,0,0
,0,127,2,4,8,127,0,0
,0,62,65,65,65,62,0,0
,0,127,9,9,9,6,0,0
,0,62,65,81,33,94,0,0
,0,127,9,9,25,102,0,0
,0,38,73,73,73,50,0,0
,0,1,1,127,1,1,0,0
,0,63,64,64,64,63,0,0
,0,31,32,64,32,31,0,0
,0,63,64,60,64,63,0,0
,0,99,20,8,20,99,0,0
,0,7,8,112,8,7,0,0
,0,113,73,69,67,0,0,0
,0,0,127,65,65,0,0,0
,0,2,4,8,16,32,0,0
,0,0,65,65,127,0,0,0
,0,4,2,1,2,4,0,0
,128,128,128,128,128,128,128,128
,0,0,3,7,0,0,0,0
,0,32,84,84,84,120,0,0
,0,127,68,68,68,56,0,0
,0,56,68,68,68,40,0,0
,0,56,68,68,68,127,0,0
,0,56,84,84,84,8,0,0
,0,8,126,9,9,0,0,0
,0,24,164,164,164,124,0,0
,0,127,4,4,120,0,0,0
,0,0,0,125,64,0,0,0
,0,64,128,132,125,0,0,0
,0,127,16,40,68,0,0,0
,0,0,0,127,64,0,0,0
,0,124,4,24,4,120,0,0
,0,124,4,4,120,0,0,0
,0,56,68,68,68,56,0,0
,0,252,68,68,68,56,0,0
,0,56,68,68,68,252,0,0
,0,68,120,68,4,8,0,0
,0,8,84,84,84,32,0,0
,0,4,62,68,36,0,0,0
,0,60,64,32,124,0,0,0
,0,28,32,64,32,28,0,0
,0,60,96,48,96,60,0,0
,0,108,16,16,108,0,0,0
,0,156,160,96,60,0,0,0
,0,100,84,84,76,0,0,0
,0,8,62,65,65,0,0,0
,0,0,0,119,0,0,0,0
,0,0,65,65,62,8,0,0
,0,2,1,2,1,0,0,0
};

const rom unsigned char MikroE_Logo_BMP[1024] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0,192,224,112,176,176,176,176,176,176,176,176,
176,176,176,176,176,176,176,176,176,176,176,176,17 6,176,176,176,
176,176,176,176,176,176,176,176,176,176,176,176,17 6,176,176,176,
176,176,176,176,176,176,176,176,176, 96,224,128, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0,255,255, 0,255,255,255, 3, 35, 49, 49, 49,
49, 49, 49, 49, 51, 3,199,255,127, 31, 31, 15, 7, 7, 3, 3,
3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, 7, 7, 15,
15, 31,127,255,255,255,255,255,255, 0,255,255, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0,255,255, 0,255,255,255, 7, 6, 6, 14, 30,
30, 30, 30, 30,254,255,255, 1, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0,252,255,255,255,254, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 7,255,255,255,255, 0,255,255, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0,255,255, 0,255,255,255, 17, 51, 3, 3, 15,
7, 3, 3, 17,255,255,255, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0,129,129,129,129,128,128,128,128,128,128,128,128,
128,128,128,128,128,255,255,255,255, 0,255,255, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0,255,255, 0,255,255,255, 98,127,111, 99, 99,
99, 99, 99, 99,255,255,255, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0,255,255,255,255,255,255, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3,255,255,255,255, 0,255,255, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0,255,255, 0,255,255,255, 8,140,140,140,140,
140,140,140,140,141,159,255,240,192, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 7, 31, 63, 31, 31, 7, 0, 0, 0, 0, 0, 0, 0,
0, 0,128,192,248,255,255,255,255, 0,255,255, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0,127,255,128,127,127,127,112,113,113,113,113,
113,113,113,113,113,113,113,113,115,119,126,124,12 4,120,120,112,
112,112,112,112,112,112,112,112,112,112,112,112,11 2,120,120,124,
126,127,127,127,127,127,127,127, 63,192,255,127, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 0, 0, 0, 0, 0, 0
};

float sqrt( float x );
char *strcpypgm2ram(char *dest,const rom char *src);

//ResetGlcd -------------------------------------------------------------------------------------------------------------------------------------------
void ResetGlcd(void){

RST = 0;
RST = 1;
}

//LatchData -------------------------------------------------------------------------------------------------------------------------------------------
void LatchData(void){

EN = 1;
EN = 0;
Delay10TCYx(5);
}

//WriteCmdGlcd ----------------------------------------------------------------------------------------------------------------------------------------
void WriteCmdGlcd(unsigned char cmd){

RS = 0;
RW = 0;
GlcdDataBus = cmd;
LatchData();
}

//WriteDataGlcd ---------------------------------------------------------------------------------------------------------------------------------------
void WriteDataGlcd(unsigned char data){

RS = 1;
RW = 0;
GlcdDataBus = data;
LatchData();
}

//ReadDataGlcd ----------------------------------------------------------------------------------------------------------------------------------------
unsigned char ReadDataGlcd(void){

unsigned char data;

RS = 1;
RW = 1;

DirGlcdDataBus = 0xFF;

EN = 1;
EN = 0;

EN = 1;
Delay10TCYx(1);
data = GlcdDataBus;
EN = 0;
DirGlcdDataBus = 0x00;

return(data);
}

//LeftSelect ------------------------------------------------------------------------------------------------------------------------------------------
void LeftSelect(void){

CS1 = 0;
CS2 = 1;
}

//RightSelect -----------------------------------------------------------------------------------------------------------------------------------------
void RightSelect(void){

CS1 = 1;
CS2 = 0;
}

//SetDot -------------------------------------------------------------------------------------------------------------------------------------------Ex
void SetDot(signed char x,signed char y,unsigned char c){

unsigned char data;

if(x<64) {
LeftSelect();
x = x|0x40;
}else {
RightSelect();
x = (x-64)|0x40;
}
WriteCmdGlcd(x);

WriteCmdGlcd((y/8)|0xB8);

data = ReadDataGlcd();

WriteCmdGlcd(x);

WriteDataGlcd(c ? ((1<<(y-((y/8)*8)))|data) : ((~(1<<(y-((y/8)*8))))&data));
}

//DrawVerticalLine ----------------------------------------------------------------------------------------------------------------------------------Ex
void DrawVerticalLine(unsigned char Y0,unsigned char Y1,unsigned char X,unsigned char Color) {

for(Y0;Y0<=Y1;Y0++) SetDot(X,Y0,Color);
}

//DrawHorizontalLine -------------------------------------------------------------------------------------------------------------------------------Ex
void DrawHorizontalLine(unsigned char X0,unsigned char X1,unsigned char Y,unsigned char Color) {

for(X0;X0<=X1;X0++) SetDot(X0,Y,Color);
}

//DrawLine -----------------------------------------------------------------------------------------------------------------------------------------Ex
void DrawLine(signed char X0,signed char Y0,signed char X1,signed char Y1,unsigned char Color) {

signed int Dy,Dx,Fraction;
signed char StepX,StepY;

Dy=Y1-Y0;
Dx=X1-X0;

if(Dy<0) {Dy=-Dy;StepY=-1;} else {StepY=1;}
if(Dx<0) {Dx=-Dx;StepX=-1;} else {StepX=1;}

Dy<<=1;
Dx<<=1;

SetDot(X0,Y0,Color);

if(Dx>Dy) {

Fraction=Dy-(Dx>>1);

while(X0!=X1) {

if(Fraction>=0) {

Y0+=StepY;
Fraction-=Dx;
}
X0+=StepX;
Fraction+=Dy;
SetDot(X0,Y0,Color);
}
}else {

Fraction=Dx-(Dy>>1);

while (Y0!=Y1) {

if(Fraction>=0) {

X0+=StepX;
Fraction-=Dy;
}
Y0+=StepY;
Fraction+=Dx;
SetDot(X0,Y0,Color);
}
}
}

//DrawRectangle -------------------------------------------------------------------------------------------------------------------------------------Ex
void DrawRectangle(unsigned char X0,unsigned char Y0,unsigned char X1,unsigned char Y1,unsigned char Fill,unsigned char Color) {

if(Fill) {

for(Y0;Y0<=Y1;Y0++)
DrawHorizontalLine(X0,X1,Y0,Color);

}else {

DrawHorizontalLine(X0,X1,Y0,Color);
DrawVerticalLine(Y0,Y1,X0,Color);
DrawHorizontalLine(X0,X1,Y1,Color);
DrawVerticalLine(Y0,Y1,X1,Color);
}
}

//DrawCircle ----------------------------------------------------------------------------------------------------------------------------------------Ex
void DrawCircle(unsigned int X,unsigned int Y,unsigned int R,unsigned char Fill,unsigned char Color) {

unsigned int Rx,Ry;

if(Fill) {

for(Rx=0;Rx<=R;Rx++) {

Ry = sqrt((R*R)-(Rx*Rx));

DrawHorizontalLine(X-Ry,X+Ry,Y+Rx,Color);
DrawHorizontalLine(X-Ry,X+Ry,Y-Rx,Color);
}
}else {

for(Rx=0;Rx<=R;Rx++) {

Ry = sqrt((R*R)-(Rx*Rx));

SetDot(Rx+X,Ry+Y,Color);
SetDot(Ry+X,Rx+Y,Color);
SetDot((Rx*-1)+X,Ry+Y,Color);
SetDot(Ry+X,(Rx*-1)+Y,Color);
SetDot(Rx+X,(Ry*-1)+Y,Color);
SetDot((Ry*-1)+X,Rx+Y,Color);
SetDot((Rx*-1)+X,(Ry*-1)+Y,Color);
SetDot((Ry*-1)+X,(Rx*-1)+Y,Color);
}
}
}

//ClsGlcd -------------------------------------------------------------------------------------------------------------------------------------------Ex
void ClearGlcd(unsigned char Color){

unsigned char Page,X,R;

Color *= 255;

for(R=0;R<2;R++) {

if(R == 0) LeftSelect();
else RightSelect();

for(Page=0;Page<8;Page++){

WriteCmdGlcd(Page|0xB8);
WriteCmdGlcd(0x40);

for(X=0;X<64;X++) WriteDataGlcd(Color);
}
}
}

//ShowPicture ---------------------------------------------------------------------------------------------------------------------------------------Ex
void ShowPicture(const rom unsigned char *pic){

unsigned char Page,X,R;
unsigned int P;

for(R=0;R<2;R++) {

if(R == 0) {
P = 0;
LeftSelect();
}else {
P = 64;
RightSelect();
}

for(Page=0;Page<8;Page++){

WriteCmdGlcd(Page|0xB8);
WriteCmdGlcd(0x40);

for(X=0;X<64;X++) {

WriteDataGlcd(pic[P]);
P++;
}
P += 64;
}
}
}

//PutString -----------------------------------------------------------------------------------------------------------------------------------------Ex
void PutString(unsigned char line,unsigned char X,unsigned char *text){

unsigned int R,P=0;

while(text[P] != 0) {

for(R=0;R<8;R++) {

if(X<64) {
LeftSelect();
WriteCmdGlcd(X|0x40);
}else {
RightSelect();
WriteCmdGlcd((X-64)|0x40);
}

WriteCmdGlcd(line|0xB8);

WriteDataGlcd(Bascom8x8Font[(((unsigned int)text[P]-32)*8)+R]);
X++;
}
P++;
}
}

//InitGlcd ------------------------------------------------------------------------------------------------------------------------------------------Ex
void InitGlcd(void){

DirRS = 0;
DirRW = 0;
DirEN = 0;
DirCS1 = 0;
DirCS2 = 0;
DirRST = 0;
DirGlcdDataBus = 0x00;

RS = 0;
RW = 0;
EN = 0;
CS1 = 0;
CS2 = 0;
RST = 0;
GlcdDataBus = 0x00;

ResetGlcd();
ClearGlcd(0);
}

هدر برای کامپایلر PIC MPLAB C18 نوشته شده
به همراه یه مثال و شبیه سازی با پروتئوس
PDF توضیحات و آموزش هدر
دیتاشیت چیپ KS0108
و نرم افزار GLCD BMP Editor شرکت MikroEleKtroniKa ضمیمه شده اند.

milad066
20-12-2012, 07:49
سلام منم يه پروژه طراحي كردك يه ساعته با ال سي دي كاراكتري(2*16) كه ميشه به جاي ساعت پرايد نسبش كرد
از مزايايش اينه كه تاريخ داره هم ميلادي هم شمسي تاريخ رو اگه به ميلادي يا شمسي واردش كردي خودش به اون يكي(ميلادي يا شمسي)تبديلش ميكنه با در نظر گرفتن سالهاي كبيسه هم براي تاريخ شمسي هم تاريخ ميلادي بدونه كوچكترين خطايي.مثلا من سال 2050/3/24رو بهش دادم دقيقا سال شمسي مطابق با اون رو بهم نشون داد(دستي محاسبه كردم كه جواب همون بود كه ساعت نشون داد).ساعت هردو تاريخ رو پشت(مثل تابلوي روان)سر هم نشون ميده.واز اي سي ds1307 براي دخيره و محاسبه زمان در اون استفاده شده.ازديگر مزاياي اين ساعت اينه كه دما رو ميخونه ونشون ميده
من الان رشتم(دانشجوام)به محض اينكه رفتم خونه(خوزستان)اونو تو سايت برادانلود قرار ميدم. خدايشش خيلي براش زحمت كشيدم مخصوصا تو تبديل تاريخش از شمسي به ميلادي و ميلادي به شمسي

milad066
20-12-2012, 21:51
ترموستات بر روي LCD3310 NOKIA
You can see links before reply
You can see links before reply
سايت اصلي (You can see links before reply)

s/سلام مرسي از لطفت داداش ولي تو لينكي كه دادي نه خبري از ال سي دي نوكيا بود:(:unh: نه ترموستات:018:.البته يه ساعت بود كه بازم نكات مفيدي داره
مرسي از لطفت :wink:

afsaneh emi
30-04-2013, 15:38
با سلام
من نیاز فوری به پروژه ساعت و تقویم با pic دارم
میتونید کمکم کنید؟

sajjad_AD
19-07-2014, 12:56
سلام بعد عمری ی پروژه ساده دیگه میذارم :hi:

از اسمش که معلومه یه مداره که اگر دما یا گاز آلاینده از حد مجاز بیشتر شد (قابل تنظیمه و تنظیمات اعمال شده در EEPROM ذخیره میشه ) رله ی مربوط به آن وصل میشه(دما و گاز هر کدام رله جداگانه دارن) و تا کلیدش رو نزدیم قطع نمی کنه.

کامپایلر : MikroC
میکرو : PIC16F873
همراه با فایل پروتئوس ورژن 8.1 (پی سی بی , شماتیک و شبیه سازی)
به همراه ی PDF آموزش کار با سنسور های گاز
و فایل Word توضیح مختصری در مورد عملکرد مدار

موفق باشید :wink: