با سلام
من ميخام يه سري اطلاعات از كامپيوتر بفرستم به ميكرو
براي اين كار اول يه مدار ساختم كه usb رو تبديل ميكنه به سريال
يه ماژول HMtr 915 گذاشتم كه اطلاعات رو ارسال ميكنه
از اونطرف هم ماژولم رو وصل كردم به ميكرو ATmega 32
يه LCD هم وصل كردم كه اطلاعات دريافتي رو نشون ميده .
براي ميكرو از زبان C در محيط Code Vision استفاده كردم و با USART اطلاعاتم رو دريافت كردم.
براي دريافت اطلاعات از تابع getchar استفاده كردم
توي كامپيوتر هم با C# برنامه نوشتم
تا اينجاشو مشكلي نداشتم يعني حله
مشكل اينجاس كه وقتي اطلاعات ميفرستم روي LCD درست چاپ نميشه !
يعني مثلا كاراكتر s رو كه ميفرستم روي LCD كاراكتر F نمايش داده ميشه...
هرجورم كه برنامه م رو تغيير ميدم فايده نداره ...
دوستان اگه كشي كار كرده ممنون ميشم راهنمايي كنين
_________________________
خيلي توي انجمن سرچ زدم ولي نتونستم مشكلمو حل كنم. بهمين خاطر پست زدم .
نرخ ارسال دیتا چقدره؟ معمولا توی نرخ های پایین و بالا همینجوری میشه.من با استفاده از USART با سیم با کامپیوتر میخواستم یه جرثقیل اسباب بازی رو کنترل کنم.افتضاح بود.اصلا اونوری که من میزدم نمیرفت.چون نرخ دیتا پایین بود.
فکر کنم بهترین نرخ 9000 و خورده ای باشه.هر دفعه که s رو میزنی f مینویسه یا اتفاقی یه چیزی مینویسه؟
اگه اولیه که توی برنامه نویسیت یه جایی مشکل داری.
اگه دومیه یا نرخ دیتا با کریستال میکرو متناسب نیست یا نویز زیاده(آخه این ماژول ها نویز زیاد میگیرن)
نرخم 9600.
نه هر سري كه s رو ميزنم همون f رو مينوبسه...
كمك...
شما اول بدون ماژول فرستنده و گيرنده امتحان كنيد. با سيم اتصال داشته باشه.
ببينيد نتيجه چي هست...
اگر با ارسال F ، S رو گرفتيد كه مشكل از برنامه هست و اگر همون S رو گرفتيد ، مشكل سر ماژول هست ...
موفق باشيد.
شما باید دیتا هاتون رو کد کنید 1
باید سرعت کریستال و انتخاب باود ریت رو توش دقت کنید 2
باید از اینتراپت سریال استفاده کنید 3
abbasalifix ميشه يه مقدار دقيق تر توضيح بدين كه بايد چكار كنم؟ :(
سلام عباس جان.تا جایی که من میدونم نمیتونه به کریستال و ریت ربطی داشته باشه! چون در اون صورت دیگه هردفعه با زدن s کاراکتر f رو نمیگیره.هر دفعه یه چیزی میگیره.
به نظر من توی تبدیل دیتا مشکل داره.
میدونی نظر من چیه؟
یه وقت یه ماشین حساب مینویسی. میبینی که اشتباهی جمع همه اعداد رو یکی بیشتر مینویسه.دو راه داری:
1.مشکل برنامه رو پیدا کنی.
2.اگه مشکلو پیدا نکردی یه تیکه کد اضافه کنی که از حاصل یکی کم کنه و نشون بده
متوجه شدی؟
میتونی یه کد اضافه کنی که از اسکی کاراکتر یه مقداری رو کم یا زیاد کنه که به نتیجه دلخواه برسی.
خوشبختانه اعداد مربوط به حروف هم تقریبا وسطای جدولن
abbas :
ممنون رفيق
از كريستال 110592 استفده كردم كلا داده هاي وروديم به هم ريخت ! نميدونم شايد بخاطر فيوز بيت ها بود
اينجوري set كردم
Cksel0==1
Cksel1==1
Cksel2==1
Cksel3==1
Ckobel==1 فك كنم املاشو غلط نوشتم
درسته اينجوري ؟؟
بعد اومدم با برنامه HMtr utility ماژولم رو كانفيگ كردم . وقتي read زدم فركانسش رو 433 بود در صورتي كه ماژولم 915 هست
روي 915 كانفيگ كردم.
ولي فقط تونستم اوني كه TTL هست رو كانفيگ كنم . 232 كانفيگ نميشد يعني feild ميداد
دوباره كانفيگ TTL رو گذاشتم رو 433 ولي همون ارسال هم ديگه قطع شد
از طرف فرستنده ارسال ميشه ولي گيرنده اصلا نميگيره ه ه ه ه
apcog :
تشكـــــــــــــــــــر
مشكل اينجاس كه هيچ رابطه منطقي بين ورودي ها نيست يعني
a رو كه م
يفرستم H ميگيره
b رو كه ميفرستم K ميگيره
c ميفرستم N ميگيره
هيچ رابطه خاصي نداره
البته الان كلا دريافتم از كار افتاده
يه سوال : ماژول HMtr 232 رو نميشه كانفيگ كرد ؟؟؟؟؟؟
نقل قول: abbas :
ممنون رفيق
از كريستال 110592 استفده كردم كلا داده هاي وروديم به هم ريخت ! نميدونم شايد بخاطر فيوز بيت ها بود
اينجوري set كردم
Cksel0==1
Cksel1==1
Cksel2==1
Cksel3==1
Ckobel==1 فك كنم املاشو غلط نوشتم
درسته اينجوري ؟؟
بله درسته
نقل قول: بعد اومدم با برنامه HMtr utility ماژولم رو كانفيگ كردم . وقتي read زدم فركانسش رو 433 بود در صورتي كه ماژولم 915 هست
روي 915 كانفيگ كردم.
ولي فقط تونستم اوني كه TTL هست رو كانفيگ كنم . 232 كانفيگ نميشد يعني feild ميداد
دوباره كانفيگ TTL رو گذاشتم رو 433 ولي همون ارسال هم ديگه قطع شد
از طرف فرستنده ارسال ميشه ولي گيرنده اصلا نميگيره ه ه ه ه
این که خوندینش کار خوبی بوده اما چرا فرکانسش رو تغییر دادین ؟
دوباره دوتایی رو روی همون 433 کانفیگ کنید .
مدار فرستنده رو به گیرنده بایه ای سی max232 وصل کنید دیتا هارو تو کامپیوتر نگاه کنید مهندس apcog که گفتن ممکنه مشکل از تبدیل دیتا باشه
كانفيگ TTL رو به 443 تغيير دادم ولي همونجور كه گفتم RS232 رو نميتونم كانفيگ كنم !
ولي الان طرف گيرنده دريافت نميكنه (چراغ سبز چشمك نميزنه)
مطمئنم مشكل از كانفيگ هست چون يجا خوندم برنامه دقيق كانفيگ نميكنه
برنامه اي برا كانفيگ نداري ؟؟؟