عضویت     ورود  ایمان ؛ شناخت به قلب و اقرار به زبان و عمل به اندام است . حضرت محمد (ص) چهارشنبه، 2 خرداد ماه ، 1397

کانال تلگرام


تبلیغات متنی


منوی سایت


جست و جو در بانك مقالات




مقالات جدید
تعداد شاخه ها: 30 عدد
تعداد مقالات: 758 عدد 1: آزمايشگاه الكترونيك - استاد محرري 
[دفعات مشاهده : 4427 بار]
 2: جزوه درس مخابرات 1 - دانشگاه فردوسي مشهد 
[دفعات مشاهده : 4354 بار]
 3: كتاب مهندسي تاسيسات / دكتر كلهر 
[دفعات مشاهده : 4385 بار]
 4: مجموع اعوجاج هارمونیک T.H.D 
[دفعات مشاهده : 4345 بار]
 5: كتاب "روش طراحي و تحليل مدارهاي الكترونيك" 
[دفعات مشاهده : 10745 بار]
 6: ادوات نوري 
[دفعات مشاهده : 4484 بار]
 7: كتاب اصول تلويزيون رنگي 
[دفعات مشاهده : 5969 بار]
 8: پروژه دزد گیر با سنسور تشخیص حرکت pir با قفل رمز الکترونیکی 
[دفعات مشاهده : 5640 بار]
 9: جزوه اندازه گیری الکتریکی 
[دفعات مشاهده : 4766 بار]
 10: سوالات کنکور کارشناسی ارشد 90 / گروه مهندسی برق 
[دفعات مشاهده : 6729 بار]
 11: آرشيو پروژه هاي 8051 
[دفعات مشاهده : 5418 بار]
 12: آرشيو پروژه هاي AVR‌ (ـ‌ 126 پروژه ) 
[دفعات مشاهده : 13176 بار]
 13: آموزش برنامه نويسي و كار با ماژول Sim300CZ با ميكروكنترلر AVR 
[دفعات مشاهده : 9480 بار]
 14: سوالات كنكور كارشناسي ناپيوسته 89 - گروه برق 
[دفعات مشاهده : 6863 بار]
 15: ارتباط میکروهای PIC با کمک پروتکل سریال I2C و نکات تکمیلی ماژول MSSP 
[دفعات مشاهده : 5036 بار]
 16: ساعت تقویم با کمک میکروکنترلر PIC و DS1307 
[دفعات مشاهده : 5595 بار]
 17: تایمرهای چند زمانه ( ساعت مرکزی ) با میکرو PIC 
[دفعات مشاهده : 5075 بار]
 18: ساعت تقویم شمسی مجهز به آلارم روزانه و هفتگی 
[دفعات مشاهده : 6014 بار]
 19: صفحه کلید وقفه ای با میکروکنترلر PIC 
[دفعات مشاهده : 4714 بار]
 20: کرنومتر دیجیتال با میکروکنترلر PIC با قابلیت ثبت 3 زمان 
[دفعات مشاهده : 4851 بار]
 21: طراحی و ساخت مدارات انتقال دیتا به وسیله ماژول های HMTR + پروژه چت متنی بیسیم 
[دفعات مشاهده : 7634 بار]
 22: سنسورهای حرارت 
[دفعات مشاهده : 7018 بار]
 23: کنترل وسایل برقی از طریق خط تلفن با میکروکنترلر PIC 
[دفعات مشاهده : 6954 بار]
 24: ارتباط سریال UART بین دو میکروکنترلر PIC 
[دفعات مشاهده : 5255 بار]
 25: گزارش کار آموزی : ماشین های ابزار کنترل عددی CNC 
[دفعات مشاهده : 5490 بار]
 26: کنترل وسایل به کمک ماژول HM-TR و میکرو AVR 
[دفعات مشاهده : 7937 بار]
 27: طراحی و ساخت کنترل از راه دور 1 کانال با کمک ماژول های ASK و آی سی های سری PT 
[دفعات مشاهده : 6558 بار]
 28: مجموعه رفرنس های آموزشی میکروکنترلرهای سری dsPIC 
[دفعات مشاهده : 6018 بار]
 29: مجموعه پروژه های میکروکنترلر AVR با کامپایلر بسکام 
[دفعات مشاهده : 11137 بار]
 30: طراحی و ساخت مدارات انتقال دیتا به وسیله ماژول های HM-T و HM-R با میکرو AVR 
[دفعات مشاهده : 9079 بار]


آخرين مطالب ارسال شده
· روش طراحي و تحليل مدارهاي الكترونيك[ 1 نظر شما چيه؟ - 38380 مشاهده ]
· اصول تلويزيون رنگي[ 0 نظر شما چيه؟ - 17120 مشاهده ]
· نرم افزار DigSilent[ 2 نظر شما چيه؟ - 20555 مشاهده ]
· AVR Tech Lib 2011[ 1 نظر شما چيه؟ - 24054 مشاهده ]
· مجموعه كنفرانس هاي سالينه ميكروچيپ / سال 2009 /[ 2 نظر شما چيه؟ - 21715 مشاهده ]
· آموزش كار با ماژول SIM300CZ با ميكرو AVR[ 4 نظر شما چيه؟ - 24098 مشاهده ]
· مجموعه فيلم هاي آموزشي نرم افزار Altium Designer[ 0 نظر شما چيه؟ - 36984 مشاهده ]
·  سوالات كنكور كارشناسي ناپيوسته 89 - گروه برق[ 0 نظر شما چيه؟ - 19000 مشاهده ]
· لينك دانلود مجله October 2010 / SERVO[ 0 نظر شما چيه؟ - 16258 مشاهده ]
· Catalog CA 01 (10/2009) / International version[ 0 نظر شما چيه؟ - 20046 مشاهده ]

[ موارد بیشتر در بخش اخبار و تازه ها ]


زبان
انتخاب زبان نمایش :



مطالب جديد
· 1: THE NORTH SEA SUPER GRID-A TECHNICAL PERSPECTIVE
· 2: دانلود کتاب مهندسی کنترل (اوگاتا) + حل المسائل (بخش اول)
· 3: Robust Control System Design
· 4: VOLTAGIC CONTROL IN REAL TIME OPERATION
· 5: An Introduction to Digital Image Processing with Matlab
· 6: Effect of Connectivity and Mobility on the Performance of Stability-Based Clustering Algorithm
· 7: IEEE Std 301-1988
· 8: sing Machine Learning to Support Debugging with Tarantula
· 9: بازشناسي حروف دستنويس به وسيله سيستم فازي به كمك روش قاب بندي در استخراج ويژگي
· 10: Etch Rates for Micromachining Processing—Part II
· 11: Biometric Authentication System on Mobile Personal Devices
· 12: Implementation of Para-CORDIC Algorithm and It’s Applications in Satellite Communication
· 13: بررسي عملكرد يك محدودسازجريان تريستوري جديد دركاهش سطح اتصال كوتاه
· 14: Development of a Servo System for Linear X-Y Table Based on DSP Controller
· 15: Finger-Shaped GelForce: Sensor for Measuring Surface Traction Fields for Robotic Hand
· 16: روش های بهبود بهره برداری شبکه های توزیع و اثر بخشی مکانیزاسیون در آن
· 17: رمز نگاري Cryptography
· 18: بررسی شزایط آب و هوایی بر رو ی عمر و عملکرد ترانسفورماتورهای توزیع
· 19: MICROPROCESSEUR
· 20: چرخش منافع شرك تهاي توزيع از ظرفيت سازي به بهينه سازي و كاهش تلفات؛ پس از ورود به بازاربرق

[ آخرين مقالات ]


ارسال مقاله به سايت

 



...::: Ir-Micro.Com :::... :: View topic - برقراری 3 ارتباط سریال با ATmega16 !!!


برقراری 3 ارتباط سریال با ATmega16 !!!

 
Post new topic   Reply to topic    ...::: Ir-Micro.Com :::... Forum Index -> برنامه نویسی و مباحث مربوط به AVR Printable Version
View previous topic :: View next topic  
Author Message
maedehabibi
کاربر تازه وارد
کاربر تازه وارد

Joined: Nov 14, 2008
Posts: 5





257.70 امتیاز

Items

Status: Offline

PostPosted: چهارشنبه، 31 تير ماه ، 1388 23:43:44 Reply with quote Scroll Down to Next postGo to last Post of Page

سلام؛
من برای انجام یه پروژه نیاز دارم تا با استفاده از ATmega16 سه تا ارتباط سریال برقرار کنم به این ترتیب که:
1-اطلاعات رو به صورت سریال از کامپیوتر در یافت و طبق فیلتر تعریف شده اطلاعات رو اصلاح کنه.
2-اطلاعات فیلتر شده رو، به صورت سریال ،روی یک فرستنده RF قرار بده .
3-اطلاعاتی رو که روی آنتن قرار داده به صورت سریال به کاپیوتر برگرداند تا بتوانیم بررسی کنیم که آیا اطلاعاتی که روی آنتن قرار گرفته به صورت صحیح فیلتر شده است یا خیر..
برای یکی از اینها میتوانیم از RX و TX میکرو استفاده کنیم اما برای دوتای دیگه باید به صورت نرم افزاری پایه های میکرو را به عنوان RX و TX تعریف کنیم ، اما من این کار رو بلد نیستم یعنی نمیدونم چه طوری برنامه ای بنویسم که سایر پایه های میکرو بتونن مثل RX و TX عمل کنند!!!راستی من برنامه رو با C و کامپایلر codevision نوشتم. کسی میتونه کمکم کنه... Question Question Question

Back to top
View user's profile Send private message
maedehabibi
کاربر تازه وارد
کاربر تازه وارد

Joined: Nov 14, 2008
Posts: 5





257.70 امتیاز

Items

Status: Offline

PostPosted: پنجشنبه، 1 مرداد ماه ، 1388 23:07:40 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

سلام؛
دوستان عزیز، یعنی حتی در حد یک راهنمائی کوچیک هم کسی نمیتونه به من کمک کنه؟؟؟؟؟؟؟؟
یا سوال من خیلی ساده و سطح پائینه یا خیلی سخت ،که حتی راه انجامش هم به ذهن کسی نمیاد!!!!!!!!!!!! حداقل کاش یه نفر اینو بگه ، که کدوش درسته سخت یا آسون؟؟؟؟؟؟؟؟

Back to top
View user's profile Send private message
mohjon
کاربر تازه وارد
کاربر تازه وارد

Joined: Jan 03, 2008
Posts: 1





48.70 امتیاز

Items

Status: Offline

PostPosted: جمعه، 2 مرداد ماه ، 1388 12:43:52 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

من یک بار همچین کاری کردم یعنی بدون استفاده از rx , tx بین دو میکرو اطلاعات جابجا کردم به این صورت
از ذو سیم استفاده کردم یکی کلاک و یکی داده ها
کلاک به یک وقفه وصل کردم و تو زیربرنامه وقفه صفر و یک بودن داده که به یک پایه دلخواه وصل شده بوذ را بررسی می کردم و هر وقت 8 تا داده چک شد به زیر برنامه ای دیگر می رفت و بایت اخیر را بدست می آورد به این صورت اگ وقفهه میکرو گیرنده حساس به لبه بالا و پایین رونده باشه با سرعت کلاک فرستنده اطلاعات جابجا میشه
توفرستنده هم باید بایتی که قراره فرستاده بشه به 8تا صفر و یک تبدیل بشه و یکی یکی بعد از این که لبه کلاک عوض شد روی پایه قرار گیرند برای اطمینان میتونید چند میکرو ثانیه بعد از togle شدن کلاک اطلاعات توسط گیرنده خوانده شود

Back to top
View user's profile Send private message
rezadevelop
کاربر عادی
کاربر عادی

Joined: Mar 30, 2008
Posts: 39





1395.40 امتیاز

Items

Status: Offline

PostPosted: شنبه، 3 مرداد ماه ، 1388 00:31:10 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

سلام
استید تو سایت بهتر میدونن
ولی من در حد اطلاعاتم فکر کنم بشه
با استفاده از دستور
()i2c
و یه دستور
#asm
.equ __i2c_port=0x12 ;PORTD
.equ __sda_bit=6
.equ __scl_bit=5
#endasm
تو اول برنامه پورت های مورد نظرتو برای ارتباط دو سیمه مشخص کنی.
من این کارو برا ارتباط با eeprom انجام دادم از rxوtx مخصوص میکرو هم استفاده نکردم.
یه چیزی ،برا فرستنده گیرنده از چه ماژولی استفاده کردی.
با این روش دو سیمه قاعدتاً باید از دو تا آنتن استفاده کرده باشی چون داده است صوت نیست که بتونی سوییچ کنی رو یه خط از دست رفتن بعضی هاش مهم نباشه

Back to top
View user's profile Send private message
arash_silver
کاربر تازه وارد
کاربر تازه وارد

Joined: Jul 08, 2009
Posts: 18





650.16 امتیاز

Items

Status: Offline

PostPosted: شنبه، 3 مرداد ماه ، 1388 10:09:08 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

سلام .

من خودم می خوام کار کنم.

چند جا در مورد این ارتباطات خوندم.

1 . UART (همونی که استفاده کردی ، برای کامپیوتره)
2. ISP مثل Uart هست که با 3 سیمه

3. I2C که بردش کمه چند cm می تونی اونو بکشی.
4. 1-wire که با یک سیم ارتباط می ده و تا 30 متر می تونی بکشیش.

خودم هنوز هیچ کدومو امتحان نکردم.



Last edited by arash_silver on شنبه، 3 مرداد ماه ، 1388 15:44:16; edited 1 time in total
Back to top
View user's profile Send private message
maedehabibi
کاربر تازه وارد
کاربر تازه وارد

Joined: Nov 14, 2008
Posts: 5





257.70 امتیاز

Items

Status: Offline

PostPosted: شنبه، 3 مرداد ماه ، 1388 12:19:41 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

سلام؛
تو تعریف پروژه از من اینطور خواستن که ازCSR Bluetooth Modules وآی سی MB-C041-SPP استفاده کنم....Data sheet این آیسی رو میتونید از سایت

قسمتBluetooth Product بخش Bluetooth Modules دریافت کنید.
از راهنماییهاتون ممنون ولی من نمیتونم ازI2C استفاده کنم Sad چون تو تعریف پروزه اینطور به من گفتن که باید 4تا از پایه های میکرو طوری برنامه ریزی بشن که مثل RX وTX عمل کنند...یعنی 2تا RX و TX دیگه تعریف کنم...باید رجیستری مثل UDR تعریف بشه که اطلاعات رو بیت به بیت بگیره بیت Stop رو تشخیص بده بعد اون بایت رو تو بافر ذخیره کنه تا در یافت اطلاعات تموم شه!!!!!!!
این یه برنامه خیلی بزرگ میشه!!!!!!!!!!!!!
یعنی این مسیری که من دارم بش فکر میکنم درسته؟؟؟؟؟؟؟؟؟؟؟؟
اگر از دوستان کسی هست که راه ساده تری میشناسه، خواهش میکنم راهنماییم کنید .... Confused Confused Confused

Back to top
View user's profile Send private message
1nafar
کاربر ماهر
کاربر ماهر

Joined: Mar 18, 2008
Posts: 1053




Location: www.1nafar.com
55594.32 امتیاز

Items

Status: Offline

PostPosted: يكشنبه، 4 مرداد ماه ، 1388 07:12:14 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

سلام
ظاهرا
ارتباط بین میکرو و کامپیوتر دو طرفه است ، میکرو اطلاعات از کامپیوتار میگیرد و سپس اطلاعات انتن را به ان میفرستد .
برای مورد بالا باید از rs232 استفاده کنید .
برای ارتباط با ماژول نیز میتونید از پروتکل spi و ماژول rfm02 یا پروتکل rs232 استفاده کنید ( ماژول rfm12 )
در rs232 نرم افزرای شما فقط میتوانید جای پایه های اولیه را عوض کنید ، ( میکرو فقط یک پروت سریال دارد و میتواند ان را به هر پایه دلخواه منتقل کنید .
----میکرو های مانند 8515 دارای دو پروت سریال هستند ، میتونید از اونا استفاده کنید .

Back to top
View user's profile Send private message Visit poster's website
rezadevelop
کاربر عادی
کاربر عادی

Joined: Mar 30, 2008
Posts: 39





1395.40 امتیاز

Items

Status: Offline

PostPosted: سه شنبه، 6 مرداد ماه ، 1388 11:40:27 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

نکته جالبیه
نمیشه چند اتصال سریال داشت تو یه micro
مگه اینکه یه برنامه برا خوندن از اون پایه بنویسی!!!! Shocked
در این صورت فکر کنم لازمه هم برای خوندن پایه ها یه محاسبه زمانی هم بکنی
و عمل BAUT RATE
رو دستی با سرعت خوندن پایه ها تنظیم کنی !!!!! Shocked
تا داده ها معتبر باشه Shocked

من زیاد به usart وارد نیستم ولی مگه نه rxوtx هم زمان داده انتقال میدن
درنتیجه اینطوری نمیشه دو برنامه برای دو پورت همزمان اجرا کرد!!!! ac) ac)

فکر من درسته یا دارم تخیلی فکر می کنم!!!!!! Shocked
اگه راهش فهمیدی به ما هم یاد بده.

atmega64 هم دو تا rx , tx داره ولی بنظرم بری سراغ همون 8515 ای که دوستمون گفت بهتره.

Back to top
View user's profile Send private message
maedehabibi
کاربر تازه وارد
کاربر تازه وارد

Joined: Nov 14, 2008
Posts: 5





257.70 امتیاز

Items

Status: Offline

PostPosted: سه شنبه، 6 مرداد ماه ، 1388 21:38:45 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

سلام ؛
کاملاً حق با شماست و برای استفاده از دیگر پایه ها برای ارسال داده به صورت سریال باید برنامه نرم افزاری دقیقی برای اون نوشته بشه.
البته این کار شدنیه و من به محض اینکه موفق به انجامش شدم کد مورد نظر رو تو این تاپیک قرار میدم.
اما یه مشکل دیگه هست اونم اینه که من برای فیلتر کردن اطلاعاتی که به صورت سریال دریافت شده کدی که نوشتم کار نمیکنه میتونید اشکالش رو پیدا کنید؟
این کد باید اطلاعات ی که سریال دریافت شده رو فیلترکنه و بخشی از اطلاعات رو حذف کنه و نتیجه رو به صورت سریال به کامپیوتر برگردونه.
اما اطلاعات رو بر نمیگردونه!!!!!!!!!
کد:
void main(void)
{
// Declare your local variables here
char k;
int i,j;
char m[16];
.
.
.
.
while (1)
{
// Place your code here

for(i=1;i==15;i++)
{ k=getchar();
m[i]=k;
}

for(j=1;j==i;j++)
{ if(m[j]=='a'& m[j+1]=='v'& m[j+2]=='r'& m[j+3]=='c'& m[j+4]=='o')

m[j]=' ';
m[j+1]=' ';
m[j+2]=' ';
m[j+3]=' ';
m[j+4]=' ';

}
for(i=1;i==15;i++)
// {r=m[i];
putchar(m[i]);
// }

delay_ms(200);
};
}

Back to top
View user's profile Send private message
Hamed
مدیر سایت - Site Admin
مدیر سایت - Site Admin

Joined: Mar 10, 2006
Posts: 1351




Location: تهران
702870.36 امتیاز

Items

Status: Offline

PostPosted: پنجشنبه، 8 مرداد ماه ، 1388 22:54:20 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

سلام
ارتباط سریال آسنکرون یا UART یا همون پروتکل RS232 تو میکروها به صورت سخت افزاری (ماژول usart) یا نرم افزاری ایجاد میشه که تا جایی که خاطرم هست avr یک ماژول ارتباط سریال داره . پس یک قسمت از پروه با این ماژول راه اندازی میشه و حسنش اینه که اطلاعات رو حاضر آماده میده و نیاز به سرکشی مداوم نداره .
کانال بعدی هم که باید به صورت نرم افزاری انجام بشه به چند چیز نیاز داره . اولین مورد تشخیص بیت شروع هست که برای اطمینان بیشتر و عدم مشغولیت کامل میکرو می تونید از وقفه خارجی استفاده کنید که فقط وقتی که بیت شروع آشکار شد میکرو وارد بخش دریافت بشه .
برای ارسال هم چون زمان دست خودتون هست که کی ارسال کنید از این نظر مشکلی ندارید .
مورد بعدی یک شمارنده هست که تعداد بیت های دریافتی رو بشماره تا پس از کامل شدن داده پایه وقفه مجدد آماده دریافت بیت شروع بعدی بشه و اطلاعات هم پردازش بشه .
و یک رجیستر با تعداد بیت 8 یا 16 (بسته به نوع ارسال یا دریافت) که نقش شیفت رجیستر ورودی رو بازی کنه که اطلاعات بیت به بیت وارد اون بشه یا بیت بهبیت ازش خونده و به خروجی ارسال بشه .
و مهمترین مورد لازم هم ایجاد تاخیر لازم برای تشخیص زمان نمونه برداری از پایه ورودی یا ارسال بیت بعدی به پایه خروجی هست که باید خیلی دقیق باشه تا خطایی رخ نده .

سوای تمام این موراد وقتی با کامپیوتر یا ... کار می کنید علاوه بر یکسان بودن سرعت ، مورادی مثل پلاریته ارسال (مثبت یا منفی بودن) و انتقال 8 یا 9 بیتی هم باید با هم منطبق باشه و گرنه اطلاعاتی که دریافت یا ارسال می کنید معتبر نخواهند بود .


__________________

Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger
rezadevelop
کاربر عادی
کاربر عادی

Joined: Mar 30, 2008
Posts: 39





1395.40 امتیاز

Items

Status: Offline

PostPosted: شنبه، 17 مرداد ماه ، 1388 03:12:28 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

بنظرم این دستور غلط باشه
m[i]=k
چون این یعنی بریز تو بایت iام
فکر کنم اینجوری درست شه

m[]=k

فکر کنم شما به آرایه دو بعدی نیاز دارید

Back to top
View user's profile Send private message
saleh_chz
مدیر انجمن
مدیر انجمن

Joined: Jan 10, 2008
Posts: 2582




Location: مشهد
3049681.20 امتیاز

Items

Status: Offline

PostPosted: شنبه، 24 مرداد ماه ، 1388 21:57:35 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

سلام دوستان
من عذر میخوام که چند وقته که توی سایت نیستم .
حتما خوب میدونید ماجرای گرفتاریه سعادتمندم رو ...

دوست خوبم
اولا شما برای انتقال داده در فضا حتما باید از پروتکلی استفاده کنید که از نظر سیگنالی آسنکرون باشه و به عبارتی فقط نیاز به یک خط انتقال داشته باشه که بهترین گزینه همین سریال 232 هست .
نکته ی بعدی ضمن تشکر از سعید جان که به خوبی نت رو داره می ترکونه ، اینه که به نظر من برای این تعریفی که اول تاپیک صورت گرفته نیاز به 2 درگاه سریال هست و نه 3 تا . چون که برای هر دو ارتباطی که قراره با کامپیوتر برقرار بشه میشه از یه درگاه استفاده کرد .

برای ایجاد درگاه های نرم افزاری پیشنهاد میکنم خودتون اقدام به این کار نکنین و از لایبرری های آماده استفاده کنین که معمولا توی زبان بیسیک به وفور پیدا میشه ولی اگه درست خاطرم مونده باشه کدویژیون هم این لایبرری رو داره . ( ببخشید زیادی از کدنویسی فاصله گرفتم ! البته کارا راست وریست بشه باز ...)

من سابقا مشکلم با نیاز به تعدد درگاه رو با سویچ مرتفع کردم .
دستگاهی بود که هم میبایست به کامپیوتر متصل میشد ، هم کی بورد می پذیرفت و هم دیتا رو به آنتن می فرستاد و این مشکل ساز بود . اون هم با مگا 8
من واسه ی این کار از بافر های 3 حالته استفاده کردم و با اون یه مولتی پلکسر دو طرفه درست کردم ( یه لاین برای رسیو و یه لاین برای ترانس ) که توسط میکرو کنترل میشد و هر بار یکی از موراد مورد نظر رو ایجاب میکرد .

ایراد این روش غیر همزمان بودنشه . ینی نمیشه همزمان انتقال داشت و باید یک مدیریت انتقال همراه با اولویت واسش نوشت .

به درد خورد ؟
می بخشی که پیغامت رو دیر خوندم .

زنده باد

Back to top
View user's profile Send private message Send e-mail Visit poster's website
saleh_chz
مدیر انجمن
مدیر انجمن

Joined: Jan 10, 2008
Posts: 2582




Location: مشهد
3049681.20 امتیاز

Items

Status: Offline

PostPosted: شنبه، 24 مرداد ماه ، 1388 22:04:09 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

ضمنا
من نمی دونم این مورد اخیر چی چی بوده جریانش ولی کمی توضیح بدم :


Quote:
بنظرم این دستور غلط باشه
m[i]=k
چون این یعنی بریز تو بایت iام
فکر کنم اینجوری درست شه

m[]=k

فکر کنم شما به آرایه دو بعدی نیاز دارید


دوست من ،

اگه می خواید یه متغیر داده رو توی یه آرایه بریزید :
m[i]=k

اگه می خواید آدرس آرایه رو توی یه اشاره گر بریزید : (k اشاره گر و m آرایه )
(m[]=k غلطه)
فقط کافیه بنویسید :
k=m

و برای آدرس خانه های بعدی آرایه فقط کافیه بنویسید :
k=m+2

و به طور کلی :
k=m+i
که در اینجا i متغییر داده هست .

به طور کلی بچه ها ذکر نام آرایه بدون کروشه به منزله ی آدرس اولین خونه ی آرایه هست .

زنده باد

Back to top
View user's profile Send private message Send e-mail Visit poster's website
abtin_st
کاربر تازه وارد
کاربر تازه وارد

Joined: Aug 18, 2008
Posts: 8




Location: کرج
326.42 امتیاز

Items

Status: Offline

PostPosted: يكشنبه، 25 مرداد ماه ، 1388 12:28:45 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

سلام، فکر کنم یه راه حل سخت افزاری هم داشته باشه، اونم اینه که پایه‌های rx , tx رو به ورودی یه دمولتی پلکسر دوبل 1 به 2 یا 1 به 4 وصل کنیم و پایه های set ش رو به پایه‌های میکرو، وقتی که کار با یه ماژول تموم میشه (تا زمانی که لازم باشه دستور بعدی به ماژول ارسال بشه) سریال میکرو رو به ماژول دیگه وصل کنیم ( با استفاده از همون پایه‌های set )
راستش خودم امتحان نکردم ولی عملی به نظر میاد
به هر حال حتما باید یه راهی باشه جون میکرو ها معمولا یکی و حداکثر 2 تا پورت سریال دارن که برای یه سری از کارا ممکنه کافی نباشه. در غیر اینصورت باید رفت سراغ پروسسور و مشکلات خاص خودش

Back to top
View user's profile Send private message
rezadevelop
کاربر عادی
کاربر عادی

Joined: Mar 30, 2008
Posts: 39





1395.40 امتیاز

Items

Status: Offline

PostPosted: سه شنبه، 27 مرداد ماه ، 1388 14:27:38 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

saleh_chz wrote:
ضمنا
دوست من ،

اگه می خواید یه متغیر داده رو توی یه آرایه بریزید :
m[i]=k

اگه می خواید آدرس آرایه رو توی یه اشاره گر بریزید : (k اشاره گر و m آرایه )
(m[]=k غلطه)
فقط کافیه بنویسید :
k=m

و برای آدرس خانه های بعدی آرایه فقط کافیه بنویسید :
k=m+2

و به طور کلی :
k=m+i
که در اینجا i متغییر داده هست .

به طور کلی بچه ها ذکر نام آرایه بدون کروشه به منزله ی آدرس اولین خونه ی آرایه هست .

زنده باد


بله دوست عزیز شما درست میگین
تو ذهن من این بود که مثلاً یک کلمه (نه حرف ) تو آرایه بریزن
حالا که حرفش شد یه سوال ! آرایه دوبعدی اینجوری تو codevision جواب میده
M[i,j]


حامد میشه یه مثال بزنی که چطوری نرخ نمونه برداری رو تنظیم کنیم
مثلاً باید یه loop بنویسیم که مثلاً 12 بار تکرار بشه (برای ورودی 12 بیتی ) بعد توش تاخیر بزاریم برا تنظیم زمان نمونه گیری یا تکنیک خاصی خود avr داره
یه چیز دیگه موقعی که میکرو گیر یه پورته ، بقیه ، داده هاشون نباید بیان وگرنه تلف میشن!؟


در مورد روش سخت افزاری ممکنه بشه از روش سوییچ کردن بین خطوط با مولتی پلکسر ( دوطرفه در صورت نیاز ) استفاده کرد

Back to top
View user's profile Send private message
saleh_chz
مدیر انجمن
مدیر انجمن

Joined: Jan 10, 2008
Posts: 2582




Location: مشهد
3049681.20 امتیاز

Items

Status: Offline

PostPosted: شنبه، 31 مرداد ماه ، 1388 12:26:47 Reply with quote Go to Top of PageScroll Up to Previous postScroll Down to Next postGo to last Post of Page

سلام

دوست خوبمون maedehabibi مشکلشون حل شد ؟

Neutral

زنده باد

Back to top
View user's profile Send private message Send e-mail Visit poster's website
maedehabibi
کاربر تازه وارد
کاربر تازه وارد

Joined: Nov 14, 2008
Posts: 5





257.70 امتیاز

Items

Status: Offline

PostPosted: يكشنبه، 1 شهريور ماه ، 1388 00:31:45 Reply with quote Go to Top of PageScroll Up to Previous post

سلام
دوستان عزیز از کمک و راهنمایی های همتون سپاسگذارم.
آقای صالح از شما هم متشکرم که پیگیر حل مشکلات بچه ها هستین.
به همه قول میدم به محض اینکه موفق شدم این کار رو تموم کنم ، تمام توضیحات و کدهاش رو تو همین تاپیک قرار بدم.
امیدوارم همتون موفق باشید.
ممنون و متشکرم.

Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    ...::: Ir-Micro.Com :::... Forum Index -> برنامه نویسی و مباحث مربوط به AVR All times are GMT + 3.5 Hours
Page 1 of 1
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum

 
 Jump to:   

Related topics
 Topics   Replies   Author   Views   Last Post 
No new posts آخرین نسخه از CodeVision AVR ؟ 4 azarmehr 5631 چهارشنبه، 19 فروردين ماه ، 1388 17:27:42
pedram2u View latest post
No new posts Codevision 1 oOlsamsamlOo 2762 شنبه، 11 خرداد ماه ، 1387 21:29:17
saleh_chz View latest post
No new posts بررسي timer در codevision 2 explode1331 4459 چهارشنبه، 22 اسفند ماه ، 1386 06:48:28
aheidarnejad View latest post
No new posts راه اندازی lcd گرافیکی در codevision برای نمایش حروف چگونه ا 6 kolina 8723 سه شنبه، 14 اسفند ماه ، 1386 23:30:33
yashar666 View latest post
No new posts شناختن پروگرمر با bascom و نشناختنش با codevision 16 alonenic 8490 جمعه، 14 دي ماه ، 1386 14:29:11
ghaheri View latest post
 


Powered by phpBB © 2001, 2008 phpBB Group

Ported to Platinum 7.6.b.4 V2 by sadeghkhafan

فروشگاه تخصصی برق و الکترونیک ایران میکرو
www.iran-micro.com
PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL.
Powered by Platinum 7.6.b.4 v2
Powered by Platinum 7.6.b.4 v2 Persian

مدت زمان ایجاد صفحه : 0.31 ثانیه