بسم الله الرحمن الرحيم
السلام عليكم اخواني الكرام
عندي سؤال وهو:
كيف اقوم بتعريف كل السجلات المطلوبة لبرمجة
UART
في 8051
في الـ
mode1
عند
1200bps
انتظر ارأئكم واجاباتكم يا خبراء المنتدى
بسم الله الرحمن الرحيم
السلام عليكم اخواني الكرام
عندي سؤال وهو:
كيف اقوم بتعريف كل السجلات المطلوبة لبرمجة
UART
في 8051
في الـ
mode1
عند
1200bps
انتظر ارأئكم واجاباتكم يا خبراء المنتدى
لا احد!!!
السلام عليكــم ورحمـة الله وبركاتــة
ارجو الرد على الموضوع للاهمية
شكرا لك على الرد
أنا وجدت هذا الموضوع عندي بحثي في المنتدى ولكن لم أجد اجابة للسؤال فأحببت أن ارفعه بدلا من كتابة موضوع جديد.
أردت أن اعرف الحل بالتفصيل وبلغة الاسيمبلي.
جزاك الله خيرا,,
UP
mov TMOD,#20H MOV TH1,#-24; 1200 MOV SCONG,#50H SETB TR1; Start Timer1 MOV A,#"Y" MOV SBUF,A HERE: JNB TI,HERE; wait for transfer CLR TI; clear TI,send next byte
BEng , Electronics and communications.
Embedded systems engineer.
Graphics Programmer
عالم الكومبيوتر هو من لديه المعرفة في علوم الكومبيوتر ، الرياضيات ، هندسة الالكترونيات -احمد صالح
احمد صالح كتب:mov TMOD,#20H MOV TH1,#-24; 1200 MOV SCONG,#50H SETB TR1; Start Timer1 MOV A,#"Y" MOV SBUF,A HERE: JNB TI,HERE; wait for transfer CLR TI; clear TI,send next byte
يعطيك العافية أخي أحمد صالح
ممكن أخي الكريم توضح كيف تم الحصول على قيمة TH1 اذا كان baud rate =1200
و freq= 16 MHz
UP
اذا كان التردد 16MHz
(الدورة الواحده من الclock) تأتي عن طريق :
بتقسم تردد الكريستال و هو 16 علي 12 و هو عدد الدورات = 1,33 كيلو هرتز بتقسم الرقم علي 32 باستخدام الUART الناتج هو الرقم الذي سيتغذي به الtimer 1 لتحديد الBaud Rate .
نسيت شىء ، هو ان الكود المكتوب فوق هو كود لكريستاله 11.0592 MhZ و ليس 16 ميجا هرتز .
لا داع لاستخدام اكثر من معرف ;)
BEng , Electronics and communications.
Embedded systems engineer.
Graphics Programmer
عالم الكومبيوتر هو من لديه المعرفة في علوم الكومبيوتر ، الرياضيات ، هندسة الالكترونيات -احمد صالح