قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

أدوات الموضوع

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:135
قديم 01-01-2014, 06:58 AM المشاركة 1   
ha مشكله مع البك 16f1936 Twitter FaceBook Google+



السلام عليكم
اخواني محتاج مساعدتكم في ايجاد سبب مشكله الارسال والاستقبال عبر uart
يعني اعاني من مشكله ضبط التردد الكرستاله عندما استخدم كرستاله الداخليه
انا كتبت كود بسيط جدا
هذا الكود لمايكرو 16f1936
كود:
void main()
{
  ansela=0;
  anselb=0;
  OSCCON=0b01111000;
  INTCON=0xC0;
  RCIE_bit=1;
  UART1_Init(9600);
  delay_ms(200);
  UART1_Write_Text("hasan");

  while(1)
         {
           UART1_Write('A');
           UART1_Write(13);
           uart1_write(10);
           delay_ms(1000);
           
          }
 }
مجرد الارسال حرف A
الاحظ انه يرسل لي تخاريف لااعرف اي معنى لها ولايستقبل اي حرف الا اذا وضعت تردد كرستاله=16ميكا عندها يعمل ولكن اذا أختاريت 4 او 8 فلا يعمل بشكل صحيح
اين مشكله في ذلك

كرستاله 8 ميكا
http://img03.arabsh.com/uploads/imag...434262f200.png

كرستاله 16 ميكا
http://img03.arabsh.com/uploads/imag...434262f203.png

كرستاله 20 ميكا
http://img03.arabsh.com/uploads/imag...434262f202.png


التعديل الأخير تم بواسطة : حسن هادي محمود بتاريخ 01-01-2014 الساعة 07:04 AM
اعلانات

الصورة الرمزية #MAAM#
#MAAM#
:: عضو ذهبي ::
تاريخ التسجيل: Jun 2008
الدولة: EGYPT
المشاركات: 567
نشاط [ #MAAM# ]
قوة السمعة:91
قديم 01-01-2014, 09:00 AM المشاركة 2   
افتراضي


السلام عليكم
اخواني محتاج مساعدتكم في ايجاد سبب مشكله الارسال والاستقبال عبر uart
يعني اعاني من مشكله ضبط التردد الكرستاله عندما استخدم كرستاله الداخليه
انا كتبت كود بسيط جدا
هذا الكود لمايكرو 16f1936
كود:
void main()
{
  ansela=0;
  anselb=0;
  OSCCON=0b01111000;
  INTCON=0xC0;
  RCIE_bit=1;
  UART1_Init(9600);
  delay_ms(200);
  UART1_Write_Text("hasan");

  while(1)
         {
           UART1_Write('A');
           UART1_Write(13);
           uart1_write(10);
           delay_ms(1000);
           
          }
 }
مجرد الارسال حرف A
الاحظ انه يرسل لي تخاريف لااعرف اي معنى لها ولايستقبل اي حرف الا اذا وضعت تردد كرستاله=16ميكا عندها يعمل ولكن اذا أختاريت 4 او 8 فلا يعمل بشكل صحيح
اين مشكله في ذلك

كرستاله 8 ميكا
http://img03.arabsh.com/uploads/imag...434262f200.png

كرستاله 16 ميكا
http://img03.arabsh.com/uploads/imag...434262f203.png

كرستاله 20 ميكا
http://img03.arabsh.com/uploads/imag...434262f202.png
كلامك صحيح لازم تغير OSCCON ريجيستر لو هتستخدم 8 ميجا هيبقى

كود:
OSCCON = 0b01110000
وهكذا هتلاقي التفاصيل في الداتا شيت صفحة 81























-------------------------------------------------------------------------------------------------------
*مهندس متخصص عمل مشاريع الطلبة وكورسات في الالكترونيات*
للتواصل (يوجد واتس اب) 0543340129
م.محمد عباس – الرياض
-------------------------------------------------------------------------------------------------------




اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:135
قديم 01-01-2014, 09:46 AM المشاركة 3   
افتراضي


السلام عليكم
اولا شكرا جزيلا على الرد
اخي كريم لاحظت شغله مهمه وهي تردد الكرستاله مع الحزمه baud rate فلما اختاريت حزمه 9600 لم يعمل الارسال والاستقبال الا على تردد 16 ميكا فقمت بتنزيل الحزمه الى 4800 فشتغل على تردد كرستاله 8 ميكاهيرتز
هل يمكنك اخي التوضيح علاقه الحزمه بتردد الكرستاله

مع الشكر والتقدير


hamzazayyad
:: مهندس متميز ::
تاريخ التسجيل: Aug 2005
الدولة: موزنبيق
المشاركات: 701
نشاط [ hamzazayyad ]
قوة السمعة:0
قديم 04-01-2014, 07:32 PM المشاركة 4   
افتراضي


السلام عليكم
اولا شكرا جزيلا على الرد
اخي كريم لاحظت شغله مهمه وهي تردد الكرستاله مع الحزمه baud rate فلما اختاريت حزمه 9600 لم يعمل الارسال والاستقبال الا على تردد 16 ميكا فقمت بتنزيل الحزمه الى 4800 فشتغل على تردد كرستاله 8 ميكاهيرتز
هل يمكنك اخي التوضيح علاقه الحزمه بتردد الكرستاله

مع الشكر والتقدير
اخي حسن يجب ان تتساوى قيمه buad rate في برنامج الميكروسيinit uart
والقيمه في برنامج بروتوس لل كوم

وايضا ان تتساوى قيمه التردد في الكرستاله في الميكروسي مع التردد للكرستاله في البروتوس للبيك
وسيعمل ابرنامج بدون مشاكل .


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:135
قديم 05-01-2014, 07:09 AM المشاركة 5   
افتراضي


اخي حسن يجب ان تتساوى قيمه buad rate في برنامج الميكروسيinit uart
والقيمه في برنامج بروتوس لل كوم

وايضا ان تتساوى قيمه التردد في الكرستاله في الميكروسي مع التردد للكرستاله في البروتوس للبيك
وسيعمل ابرنامج بدون مشاكل .
السلام عليكم
نعم اخي اعرف ذلك وضبط الحزمه في بروتيس وفي البرنامج وكذلك اثناء محاكاه
ولكن المشكله لايحصل توافق بين الحزمه buad rate وتردد الكرستاله
يعني كنت وضعت الحزمه 9600 في برنامج وكذلك البروتيس وتردد كرستاله كان 8 ميكا يظهر error في منفذ الكود الموجود في بروتيس (( اقصد يوجد ليد ضمن كوم في حاله error يضيئ )) فقمت ورفعت تردد 16 ميكاهيرتز (( كما مذكور في منول)) فعمل بشكل طبيعي انا الان اصبحت كلما اغير تردد لازم اضبط حزمه وكنت اريد اعرف كيف ضبط ذلك يعني اختار الحزمه بدون ان تسبب لي مشاكل
اطلع على الصفحه 227 من منول 16f1936

إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 09:02 AM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025