با عرض سلام
من می خوام برای اولیت بار برم یه میکرو avr از نوع مگا بخرم
به نظر شما تو تهران کجا برم
رنج قیمتا چقدره
با تشکر
با عرض سلام
من می خوام برای اولیت بار برم یه میکرو avr از نوع مگا بخرم
به نظر شما تو تهران کجا برم
رنج قیمتا چقدره
با تشکر
با عرض سلام
من می خوام 1) از visual C++ برای برنامه نویسی avr استفاده کنم چجوری امکان پذیر هست؟ 2) قصد دارم از یک دوربین برای پردازش تصویر توسط avr استفاده کنم چجوری باید دوربین رو به avr وصل کنم و فریم ها رو از اون بگیرم؟ برای پردازش تصویرش آیا می تونم از کتابخونه opencv استفاده کنم ؟ 3) برای این کار ها از کدوم سری از avr ها می تونم استفاده کنم؟
دوست عزیز بهتره سوالات توی یه تاپیک دیگه بپرسی
اونجا بیشتر می بینند و شاید بتونند بهت جواب دهند
1) با visuall C++نمیشه. اگه میخاید C++ باشه باید با avr studioبنویسید که البته همون ide ویژال سی پلاس پلاس رو داره. 2)پردازش تصویر خودش یه مبحث جداس . بهتره بدون میکرو اول کار کنید بعد . برای پردازش تصویر خود میکرو احتمالا کم میاره. بهتره یه کامپیوتر این وسط باشه که کار پردازش رو انجام بده 3) بستگی به کارتون داره و این که میخایند چجوری این کارارو انجام بدید
من از visul C++ به این دلیل می خوام استفاده کنم چون از کتابخونه opencv هم می شه اونجا استفاده کرد حالا اگه از این مو ضوع بگذریم می خوام بدون که کتابخونه opencv تو میکروکنترلر avr جواب می ده یا نه بعدش حتی اگه من از avr 32 بیتی هم استفاده کنم به نظر شما کم می یاره؟؟؟ من نمی خوام از کامپیوتر این وسط استفاده کنم پردازش تصویر تو کامپیوتر رو با کتابخونه opencv رو کار کردم
والا من فکر نکنم پردازش تصویر با یدونه میکرو و یه دوربین شدنی باشه ( اینا نظرات منه ها. شاید درست نباشه ) . استفاده از opencv هم کلا تو میکرو 99.99٪ نشدنیه ( والا تو این دنیا نمیشه چیزی رو 100٪ گفت ) . الان دیگه پردازش تصویر رو با کینکتی چیزی انجام میدند . که اونم میکرو خالی نیست. خلاصه من اطلاعاتم در مورد اینکاری که شما میخواید بکنید در همین حد بود. فکر نکنم با یه دوربین و یه میکرو بشه کاری کرد. ( مثلا فکر نکنم یه برنامه پردازش تصویر بتونه تو atmega 32 جا بشه )
opencv رو نمی تونید با AVR یا avr32 استفاده کنید. البته اگر بتونید توابعش رو متناسب با پلتفورمتون پورت کنید،قابل استفاده هست ولی این کار خیلی سخت و زمانگیر است. به جز پلتفورم x86 و ARM های جدید (cortex-a8,cortex-a9) به طور رسمی opencv برای پلتفورم دیگه ای پورت نشده و قابل استفاده نیست.
البته 2-3 تا پروژه تو اینترنت هست که از AVR برای پردازش تصویر ساده (تشخیص تعقیب رنگ) استفاده کرده. اگر بگردید میتونید پیدا کنید.
سلام سال نو مبارک چه طور میتونم با ات مگا32 یه برنام برایه 8 خروجی بنویسم به این شکل که در هرثانیه یک پالس بفرسته و یک ال ای دی رو روشن کنه بیزحمت فقط کد
شما به این انجمن برو حتما به جواب میرسی.
http://www.eca.ir/forum2/index.php
شمارنده 3 رقمی با کلید و lcd متنی
با سلام .
من برای اولین بار تو کدویژن برنامه نوشتم و تو پروتئوس طراحی کردم .اما به یه مشکل بر می خورم برنامم اینه : باید بازدن کلید از 0 تا 999 بشماره اگه کلید قطع شد دوباره 0 بشه .
برنامه تو کد ویزن اروری نمیده اما تو پروتئوس وقتی کلید و میزنی هیچی نشون نمیده یا چند تا حروف واعدادو علائم بی ربط نشون میده ممنون میشم کمکم کنید.
اینم برنامه ای که نوشتم:
http://up.iran30t.com/uploads/1366404276.zip
با سلام به همه دوستان.
بیزحمت تو این برنامه راهنماییم کنید.
نمایش یک عدد 4 رقمی بروی سون سگمنت مالتی پلکسری( عددها با کلید وارد شود.)
من این برنامه رو نوشتم اما نمایشگر چرت و پرت نشون میده و کلید ها اصلا" کار نمی کنند.
ممنون میشم راهنماییم کنید.
اینم برنامم:
http://up.iran30t.com/uploads/1366553988.zip
سلام
مقدارمنسوب به پورت A را متمم 2 کنید
PORTA=~part1;
کدهای تصحیح شده و تصویر درحال اجرا
void main(void)
{
unsigned char number;
PORTA=0xff;
DDRA=0xFF;
PORTB=0xFF;
DDRB=0x00;
PORTC=0x0F;
DDRC=0x0F;
while (1)
{
number=PINB;
hex_to_seg(number);
PORTC=0b00001110;
PORTA=~part1;
delay_ms(5);
PORTC=0b00001101;
PORTA=~part2;
delay_ms(5);
PORTC=0b00001011;
PORTA=~part3;
delay_ms(5);
PORTC=0b00000111;
PORTA=~part4;
delay_ms(5);
}
}
سلام من واسه یک پروژه از یک lcd 128 64 استفاده کردم ولی فونتش خیکی بزرگه . آیا میشه کوچیکش کرد ؟ دستورش تو codevision چیه؟
دوسن خوبم بهتره سوالات تو تاپیک ها معمولی بپرسی
سلام دوست عزیز
میخوام به زبان اسمبلی با atmege32 هرکلید کی پد 4*4 که زده شد روی LCD نمایش داده بشه کلید با پورت سریال به کامپیوتر فرستاده بشه؟
میتونی کمکم کنی؟ :(
سلام دوستان خوشحالم که یه پست avr دیدم . من ic sim900 رو با avr راه اناختم همچیش Ok ]ست خالا میخوام کدهایی رو که از sim 900 با usart میگیرم رو داخل یه ارایه بریزم و بعد تحلیل کنم . مشکل اینجاست که کد ها طولشون معلوم نیست بعضیا 3 10 یا 40 تان اما عموما بیشتر از 100 نمیشن . ولی مشکلم اینجاست که نمیدونم با چه دستوری میتونم بگیرمشون ؟ scan - gets- fget رو امتحان کردم همه تعداد میخوان و واییسن تا اخرین کاراکتر هم بیاد ! چجوری یه رسته ای بگیرم که تعدادش مشخص نیست !؟ راستی اسپیس هم داره :(
سلام دوستان
من میخوام برف پاک کن خودکار بسازم،که با بارش بارون شدت اون رو تشخیص بده و برف پاک کن به همون اندازه سرعت داشته باشه(2 یا 3 level) .
حالا من برای تشخیص شدت بارون میخوام از سنسور فرستنده گیرنده مادون قرمز (به شکل زیر) استفاده کنم.که اگه شیشه خشک باشه تمام امواج رو برمیگردونه و درصورت خیس بودن ،به نسبت میزان خیس بودن برگشت امواج هم کمتر میشه ، خلاصه من برنامه ای (به زبان c ) برای راه اندازی این سنسور میخواستم .
در هر حدی که تونستید راهنمایی کنین ممنون میشم.
سلام
من با کد ویژن یه برنامه چراغ چشمک زن نوشتم
و هرعددی رو بریا delay_ms میدم
اصلا برای delay اهمیتی قائل نیست و باز همون آهنگ خاموش روشن شدن خود رو دنبال میکنه
ممنون میشم کمک کنید اینم سورس
#include <mega16.h>#include <delay.h>
void main ()
{
PORTA=0x00;
DDRA=0xFF;
for(;;)
{
if(PORTA.0==0)
{
PORTA.1=1;
delay_ms(5);
}
if(PORTA.1==1)
{
PORTA.0=0;
}
if(PORTA.1==0)
{
PORTA.0=1;
delay_ms (5);
}
}
}
این کد رو قبل از تابع main اضافه کن:
#ifndef F_CPU
#define F_CPU 8000000UL
#endif
با دستکاری کردن اون عدد 8000000UL به مواردی مانند 1000000UL یا 4000000UL می تونی به مدت وقفه مورد نظرت در کد دست پیدا کنی.
سلام.من میخوام یه پیغام رابرا2ثانیه روی سگمنت4تایی نمایش بدم.حرف اول پیغام درست نمایش داده میشه ولی 3حرف بعدناخوانا اند.بعداز2ثانیه سگمنت خاموش میشه ولی بقیه برنامه باتغییروضعیت دیپ سوئیچ اجرانمیشه.خواهشااگه میشه کمک کنیدتامشکل برنامه راحلش کنم.
این حلقه forهستش برا2ثانیه اول:واینم قسمتی ازبقیه برنامه:
امیر هوشنگ خان ، اینجوری که نمیشه . باید کدت رو بزاری . کد تیکه تیکه فایده نداره.
موفق باشی.
سلام .این هم کدکامل.فقط آپلودکه شدبه هم ریخت میی بخشید.اگه میتونین کمک یاراهنمایی کنین که مشکلش راپیداکنم.خیلی ممنون:#include <mega16.h>
#include <delay.h>
unsigned int m;
void main(void)
{
DDRA=(1<<DDA7) | (1<<DDA6) | (1<<DDA5) | (1<<DDA4) | (1<<DDA3) | (1<<DDA2) | (1<<DDA1) | (1<<DDA0);
PORTA=(0<<PORTA7) | (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0);
DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (1<<DDB3) | (1<<DDB2) | (1<<DDB1) | (1<<DDB0);
PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0);
DDRC=(0<<DDC7) | (0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC3) | (0<<DDC2) | (0<<DDC1) | (0<<DDC0);
PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);
DDRD=(0<<DDD7) | (0<<DDD6) | (0<<DDD5) | (0<<DDD4) | (0<<DDD3) | (0<<DDD2) | (0<<DDD1) | (0<<DDD0);
PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3) | (0<<PORTD2) | (0<<PORTD1) | (0<<PORTD0);
for(m=0;m<=200;m++){PORTB=0X0E;
PORTA=0X77;
delay_ms(4);
PORTB=0X0D;
PORTA=0X5E;
delay_ms(4);
PORTB=0X0B;
PORTA=0X54;
delay_ms(6);
PORTB=0X07;
PORTA=0X6D;
delay_ms(6);}
PORTB=0X0F;
while (1)
{
switch(PINC){case 1:
PORTB=0X0E;
PORTA=0X6D;
delay_ms(4);
PORTB=0X0D;
PORTA=0X29;
delay_ms(4);
PORTB=0X0B;
PORTA=0X77;
delay_ms(1);
PORTB=0X07;
PORTA=0X38;
break;
case 2:
PORTB=0X0E;
PORTA=0X77;
delay_ms(1);
PORTB=0X0D;
PORTA=0X3E;
delay_ms(1);
PORTB=0X0B;
PORTA=0X78;
delay_ms(1);
PORTB=0X07;
PORTA=0X5C;
break;
case 3:
PORTB=0X0E;
PORTA=0X55;
delay_ms(1);
PORTB=0X0D;
PORTA=0X5F;
delay_ms(1);
PORTB=0X0B;
PORTA=0X54;
delay_ms(1);
PORTB=0X07;
PORTA=0X1C;
break;
case 4:
PORTB=0X0E;
PORTA=0X76;
delay_ms(1);
PORTB=0X0D;
PORTA=0X10;
delay_ms(1);
PORTB=0X0B;
PORTA=0X79;
delay_ms(1);
PORTB=0X07;
PORTA=0X50;
break;
case 5:
PORTB=0X0E;
PORTA=0X5C;
delay_ms(1);
PORTB=0X0D;
PORTA=0X54;
delay_ms(1);
PORTB=0X0B;
PORTA=0X5E;
delay_ms(1);
PORTB=0X07;
PORTA=0X76;
break;
case 6:
PORTB=0X0E;
PORTA=0X76;
delay_ms(1);
PORTB=0X0D;
PORTA=0X6E;
delay_ms(1);
PORTB=0X0B;
PORTA=0X76;
delay_ms(1);
PORTB=0X07;
PORTA=0X10;
break;
case 7:
PORTB=0X0E;
PORTA=0X5C;
delay_ms(1);
PORTB=0X0D;
PORTA=0X71;
delay_ms(1);
PORTB=0X0B;
PORTA=0X5E;
delay_ms(1);
PORTB=0X07;
PORTA=0X76;
break;
case 8:
PORTB=0X0E;
PORTA=0X38;
delay_ms(1);
PORTB=0X0D;
PORTA=0X5C;
delay_ms(1);
PORTB=0X0B;
PORTA=0X79;
delay_ms(1);
PORTB=0X07;
PORTA=0X50;
break;
case 9:
PORTB=0X0E;
PORTA=0X6C;
delay_ms(1);
PORTB=0X0D;
PORTA=0X54;
delay_ms(1);
PORTB=0X0B;
PORTA=0X5E;
delay_ms(1);
PORTB=0X07;
PORTA=0X38;
break;
case 10:
PORTB=0X0E;
PORTA=0X76;
delay_ms(1);
PORTB=0X0D;
PORTA=0X6E;
delay_ms(1);
PORTB=0X0B;
PORTA=0X38;
delay_ms(1);
PORTB=0X07;
PORTA=0X5C;
break;
case 11:
PORTB=0X0E;
PORTA=0X5C;
delay_ms(1);
PORTB=0X0D;
PORTA=0X71;
delay_ms(1);
PORTB=0X0B;
PORTA=0X5E;
delay_ms(1);
PORTB=0X07;
PORTA=0X38;
break;
case 12:
PORTB=0X0E;
PORTA=0X76;
delay_ms(1);
PORTB=0X0D;
PORTA=0X10;
delay_ms(1);
PORTB=0X0B;
PORTA=0X77;
delay_ms(1);
PORTB=0X07;
PORTA=0X38;
break;
case 13:
PORTB=0X0E;
PORTA=0X38;
delay_ms(1);
PORTB=0X0D;
PORTA=0X5C;
delay_ms(1);
PORTB=0X0B;
PORTA=0X77;
delay_ms(1);
PORTB=0X07;
PORTA=0X38;
break;
case 14:
PORTB=0X0E;
PORTA=0X76;
delay_ms(1);
PORTB=0X0D;
PORTA=0X6E;
delay_ms(1);
PORTB=0X0B;
PORTA=0X77;
delay_ms(1);
PORTB=0X07;
PORTA=0X38;
break;
case 15:
PORTB=0X0E;
PORTA=0X73;
delay_ms(1);
PORTB=0X0D;
PORTA=0X77;
delay_ms(1);
PORTB=0X0B;
PORTA=0X6D;
delay_ms(1);
PORTB=0X07;
PORTA=0X6D;
break;
case 16:
PORTB=0X0D;
PORTA=0X5C;
delay_ms(1);
PORTB=0X0B;
PORTA=0X50;
break;}
// Place your code here
}
}
احتمالا کلیدهات تو وضعیتی هستند که عدد حاصلش بزرگتر از 16 میشه. شما بیاید و بجای"case 16:"بنویسید : "default:".
با اینکار شما به میکرو میگید که اگر غیر از حالتهایی که من گفتم بود بیا اینکار رو انجام بده.
موفق باشید.
شما یه زحمتی بکش، فایل پروتئوس و کدت رو بفرست.
چشم فایل هاراآپلودمی کنم.
آخرین ویرایش به وسیله amirhsg : شنبه 18 بهمن 1393 در 14:44 عصر
سلام امیرمهدی خان.این هم لینک فایل های کدوپروتئوس که گفته بودیدآپلودکنم.
http://uplod.ir/b00f8kcxoo39/P1.prj.htm
http://uplod.ir/gztvjjk41xlh/p1.DSN.htm
فایل پروژه کامل نیست. باید کل فولدر رو zip کنی و بفرستی عزیز.
موفق باشی.
می بخشین اینم لینک فایل کل فولدر.
http://uplod.ir/aylhngp0v47z/P1.zip.htm
کد شما رو بهینه کردم و حجمش کم شد. اما مشکلات :
شما از دیپ سوییچ 5 بیتی استفاده کردید و چون 16 حالت میخواستید ، آنرا به 4 بیتی تغییر دادم.
کد شما بسیار ناخوانا بود که با تبدیل شدن به تابع و نوشتار صحیح (اضافه کردن TAB بعد از while و سایر موارد) کد اصلاح شد. اما علامتهایی که قصد داشتید روی سگمنتها نمایش دهید همچنان ناخوانا هستند و چون نمیدانستم چه چیزی قرار است نمایش داده شود نتوانستن در این بخش کمکی کنم.
طراحی علائم شما اشکال دارد ولی سایر بخشهای برنامه درست عمل میکند.
مثلا کاراکتر 'A' درست طراحی شده ولی مابقی خیر.
این هم لینک پروژه تغییر داده شده.
http://uplod.ir/9dn15pajqatx/P1.rar.htm
موفق باشید.
سلام خسته نباشید
من موضوع پروژه کارشناسیم ساخت قفل دربازکن با سنسور اثرانگشت sm621با کدویژنه ولی اصلا نمیدونم از کجا باید شروع کنم فقط میدونم که باید تو usart بنویسم اما چطوری نمیدونم
- تورو خدا کمکم کنین تا آخر تیر وقت دارم فقط
هنوز هستی که بپرسم؟ پست مال خیلی وقت پیشه