یه برنامه رقص نور با led و دو تا push button میخوام که با زدن دکمه ها جهت چرخش نور LED ها عوض بشه
اطلاعیه
Collapse
No announcement yet.
برنامه رقص نور به زبان C
Collapse
X
-
پاسخ : برنامه رقص نور به زبان C
با سلام.
دوست عزیز اینجا کسی پروژه اماده تحویل نمیده، شما خودت شروع به کار کن مطمئن باش دوستان کمک می کنن.
تو پروزه های سایت هم یه سری بزنی بد نیست.
موفق باشید.چرا ناراحتی پاتریک!
+ امروز ی بچه دیدم سرچهارراه گل میفروخت
- از دیدنش ناراحت شدی؟
+ نه
پس چی ناراحتت کرده
+ اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
------------------------------------------------------------------------------------------------------
تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
------------------------------------------------------------------------------------------------------
محصولات
-
پاسخ : برنامه رقص نور به زبان C
بگو یا علی وشروع کن
ما هم کمکت می کنیم :applause: :applause:معجزه این است که هرچه داشته هایت را بیشتر با دیگران سهیم شوی،داراتر می شوی (لئونارد نیموی)
اگر مغزانسان،چنان ساده می بود که ما از آن سر در می آوردیم،هنوز چنان احمق بودیم که هیچ از آن سر در نمی آوردیم!
آموزش Modelsim
دیدگاه
-
پاسخ : برنامه رقص نور به زبان C
فرضا اگه از یک پورت میکرو یعنی 8 پایه استفاده کنید هر بار که خروجی رو در 2 ضرب کنید led ها در یک جهت مشخص به ترتیب روشن میشن و اگر تقسیم بر 2 کنید خلاف جهت قبل روشن میشن. کافیه خروجی مضربی از 2 باشه!It's nice to be important but it's important to be nice!
از اینکه نمی رسم جواب دوستان را بدم معذرت می خوام.
دیدگاه
-
پاسخ : برنامه رقص نور به زبان C
من برنامه زیر رو نوشتم البته فعلا برای یک کلید. مشکلم کار با پوش باتتنه.آخه این دکمه فقط برای یک لحظه عوض می شه و دوباره به حالت قبلی بر می گرده در حالی که ما می خوایم از وقتی این دکمه زده شد جهت چرخش تغییر کنه تا زمانی که دکمه دوباره زده بشه.چطور باید این قسمت رو اصلاح کنم؟
/
Project :
Version :
Date : 03/24/2012
Author :
Company :
Comments:
Chip type : ATmega32
Program type : Application
Clock frequency : 1.000000 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 512
************************************************** ***/
#include <mega32.h>
#include <delay.h>
#define d1 PINC.0
#define SP PORTD
// Declare your global variables here
unsigned char i=8;
void backward();
void forward()
{ if(i==8)
{ SP=8;
i=1;
}
else
{ SP=i;
i=i*2 ;
}
}
void backward()
{
if (i==1)
{SP=1;
i=8;
}
else
{SP=i;
i=i/2;
}
}
void main(void)
{
DDRD=0xFF;
PORTC=0xFF;
DDRC=0x00;
while (1)
{
delay_ms(1000);
if(!d1)
forward();
else
backward();
}
}
دیدگاه
-
پاسخ : برنامه رقص نور به زبان C
این برنامه واسه یک کلید هست که با زدن اون LED ها در یک جهت روشن میشن.
در این مدار 8 led به پورت d و یک button به پین b.0 وصل شده.
کد:#include <mega32a.h> #include <delay.h> // Declare your global variables here int i=1; bit x=0; void main(void) { // Declare your local variables here // Input/Output Ports initialization // Port A initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00; DDRA=0x00; // Port B initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=P State6=P State5=P State4=P State3=P State2=P State1=P State0=P PORTB=0xFF; DDRB=0x00; // Port C initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00; DDRC=0x00; // Port D initialization // Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out // State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0 PORTD=0x00; DDRD=0xFF; // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=0xFF // OC0 output: Disconnected TCCR0=0x00; TCNT0=0x00; OCR0=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2 output: Disconnected ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // External Interrupt(s) initialization // INT0: Off // INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; // USART initialization // USART disabled UCSRB=0x00; // Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; // ADC initialization // ADC disabled ADCSRA=0x00; // SPI initialization // SPI disabled SPCR=0x00; // TWI initialization // TWI disabled TWCR=0x00; while (1) { if (PINB.0==0) x=1; if (x==1){ PORTD=i; delay_ms(500); i=i*2; if (i>128) i=1; } } }
چرا ناراحتی پاتریک!
+ امروز ی بچه دیدم سرچهارراه گل میفروخت
- از دیدنش ناراحت شدی؟
+ نه
پس چی ناراحتت کرده
+ اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
------------------------------------------------------------------------------------------------------
تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
------------------------------------------------------------------------------------------------------
محصولات
دیدگاه
-
پاسخ : برنامه رقص نور به زبان C
به نظرم بهتره کلیدها به اینتراپت متصل بشند و داخل زیر برنامه اینتراپت بنا به شماره اینتراپت تشخیص داده میشه که کدوم کلید فشرده شده و چه کار باید انجام بشه.It's nice to be important but it's important to be nice!
از اینکه نمی رسم جواب دوستان را بدم معذرت می خوام.
دیدگاه
-
پاسخ : برنامه رقص نور به زبان C
نوشته اصلی توسط سوران آراستهاین برنامه واسه یک کلید هست که با زدن اون LED ها در یک جهت روشن میشن.
در این مدار 8 led به پورت d و یک button به پین b.0 وصل شده.
کد:#include <mega32a.h> #include <delay.h> // Declare your global variables here int i=1; bit x=0; void main(void) { // Declare your local variables here // Input/Output Ports initialization // Port A initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00; DDRA=0x00; // Port B initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=P State6=P State5=P State4=P State3=P State2=P State1=P State0=P PORTB=0xFF; DDRB=0x00; // Port C initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00; DDRC=0x00; // Port D initialization // Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out // State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0 PORTD=0x00; DDRD=0xFF; // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=0xFF // OC0 output: Disconnected TCCR0=0x00; TCNT0=0x00; OCR0=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2 output: Disconnected ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // External Interrupt(s) initialization // INT0: Off // INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; // USART initialization // USART disabled UCSRB=0x00; // Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; // ADC initialization // ADC disabled ADCSRA=0x00; // SPI initialization // SPI disabled SPCR=0x00; // TWI initialization // TWI disabled TWCR=0x00; while (1) { if (PINB.0==0) x=1; if (x==1){ PORTD=i; delay_ms(500); i=i*2; if (i>128) i=1; } } }
دیدگاه
-
پاسخ : برنامه رقص نور به زبان C
یعنی می خوای وقتی اون یکی کلید رو زدی این بار ledها از این طرف روشن بشن ؟
چرا ناراحتی پاتریک!
+ امروز ی بچه دیدم سرچهارراه گل میفروخت
- از دیدنش ناراحت شدی؟
+ نه
پس چی ناراحتت کرده
+ اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
------------------------------------------------------------------------------------------------------
تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
------------------------------------------------------------------------------------------------------
محصولات
دیدگاه
-
پاسخ : برنامه رقص نور به زبان C
کد:#include <mega32a.h> #include <delay.h> // Declare your global variables here int i=1; bit x=0; void main(void) { // Declare your local variables here // Input/Output Ports initialization // Port A initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00; DDRA=0x00; // Port B initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=P State6=P State5=P State4=P State3=P State2=P State1=P State0=P PORTB=0xFF; DDRB=0x00; // Port C initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00; DDRC=0x00; // Port D initialization // Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out // State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0 PORTD=0x00; DDRD=0xFF; // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=0xFF // OC0 output: Disconnected TCCR0=0x00; TCNT0=0x00; OCR0=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2 output: Disconnected ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // External Interrupt(s) initialization // INT0: Off // INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; // USART initialization // USART disabled UCSRB=0x00; // Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; // ADC initialization // ADC disabled ADCSRA=0x00; // SPI initialization // SPI disabled SPCR=0x00; // TWI initialization // TWI disabled TWCR=0x00; while (1) { PORTD=i; delay_ms(500); i=i*2; if (i>128) i=1; if (PINB.0==0) { while (1) { PORTD=i; delay_ms(500); i=i/2; if (i<1) i=128; if (PINB.0==0) break; } } } }
این برنامه سوران جان هستش که با کمی تغییر همونیه که شما خواستید. برنامه تست شده و کار میکنه.
دیدگاه
دیدگاه