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

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

walid el masry
:: مهندس ::
تاريخ التسجيل: Nov 2006
المشاركات: 42
نشاط [ walid el masry ]
قوة السمعة:0
قديم 06-12-2009, 12:08 PM المشاركة 1   
افتراضي مشكله في برمجه ال USART في ال PIC علي ال RS-232 Twitter FaceBook Google+



بعد التحيه

حاليا انا بتعلم برمجه السيريال للميكروكنترولر البيك و اتبعت الشرح اللي منزلاه الشركه لبرمجه ميديول ال USART للاستخدام في ال وضع Asynchronous Mode و الشرح موجودعلي اللنك ده

http://www1.microchip.com/downloads/...eDoc/usart.pdf


المشكله اني عمل البدع لكن مفيش حاجه راضيه تشتغل مع اني راعيت اللي مكتوب في الشرح و كمان اللي مكتوب في الداتاشيت للمتحكم PIC16f876A اللي استخدمته في الدايره و اللي مكتوب في صفحه 109 كالاتي

"Bit SPEN (RCSTA<7>) and bits TRISC<7:6> have to be set in order to configure pins RC6/TX/CK and RC7/RX/DT as the Universal Synchronous Asynchronous Receiver Transmitter."

و ده فعلا اللي عملته و مزودتش ابدا علي كده لكن للاسف مفيش حاجه شغاله

انا كتبت الكود للمرسل بحيث انه يرسل قيمه 0xFF دائما الي المستقبل و المستقبل بدوره هيعرضها عليالليدات اللي علي PORTB

عامه دا الكود للمرسل

كود:
LIST P=16F876A #INCLUDE<P16F876A.INC> __CONFIG _CP_OFF&_LVP_OFF&_BODEN_OFF&_PWRTE_ON&_WDT_OFF&_XT_OSC TXDataByte EQU 0X20 ORG 0X00 INITIATE ;---------------------; BANKSEL SPBRG ;| MOVLW D'25' ;| initiate SPBRG baud rate generator register - 9600 MOVWF SPBRG ;| ;---------------------; BANKSEL TRISC ;| MOVLW B'11000000' ;| initiate TRISC behavior of PORTC MOVWF TRISC ;| ;---------------------; BANKSEL TXSTA ;| MOVLW B'00100100' ;| initiate TXSTA TRANSMIT STATUS AND CONTROL REGISTER MOVWF TXSTA ;| ;---------------------; BANKSEL RCSTA ;| MOVLW B'10010000' ;| initiate RCSTA RECEIVE STATUS AND CONTROL REGISTER MOVWF RCSTA ;| ;---------------------; BANKSEL TXDataByte ;| MOVLW 0XFF ;| initiate TXDataByte byte to be sent MOVWF TXDataByte ;| ;---------------------; MAIN BANKSEL PIR1 BTFSS PIR1,TXIF GOTO MAIN;NO BANKSEL TXDataByte;YES MOVF TXDataByte BANKSEL TXREG MOVWF TXREG GOTO MAIN END


و ده الكود للمستقبل


كود:
 

LIST P=16F876A
#INCLUDE<P16F876A.INC>
__CONFIG _CP_OFF&_LVP_OFF&_BODEN_OFF&_PWRTE_ON&_WDT_OFF&_XT_OSC
RXDataByte EQU 0X20
ORG 0X00
INITIATE
;---------------------;
BANKSEL SPBRG ;|
MOVLW D'25' ;| initiate SPBRG baud rate generator register - 9600
MOVWF SPBRG ;|
;---------------------;
BANKSEL TRISC ;|
MOVLW B'11000000' ;| initiate TRISC behavior of PORTC
MOVWF TRISC ;|
;---------------------;
BANKSEL TXSTA ;|
MOVLW B'00100100' ;| initiate TXSTA TRANSMIT STATUS AND CONTROL REGISTER
MOVWF TXSTA ;|
;---------------------;
BANKSEL RCSTA ;|
MOVLW B'10010000' ;| initiate RCSTA RECEIVE STATUS AND CONTROL REGISTER
MOVWF RCSTA ;|
;---------------------;
BANKSEL TRISB ;|
MOVLW B'00000000' ;| initiate TRISB behavior of PORTC
MOVWF TRISB ;|
;---------------------;
BANKSEL PORTB ;|
MOVLW B'00000000' ;| initiate PORTB value of PORTB
MOVWF PORTB ;|
;---------------------;
MAIN
BANKSEL PIR1
BTFSS PIR1,RCIF
GOTO MAIN;NO
BANKSEL RCREG;YES
MOVF RCREG
BANKSEL PORTB
MOVWF PORTB
GOTO MAIN
END


و دي الدايره اللي بنتها علي البروتس للمحاكاه










و دي ملفات المشروع كلها





















ارجو اني اكون وضحت المشكله بشكل جيد و ان شاء الله تكونوا خير معين لي كما كنتم دائما و شكرا

اعلانات

الصورة الرمزية sheimy
sheimy
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: Egypt
المشاركات: 789
نشاط [ sheimy ]
قوة السمعة:99
قديم 06-12-2009, 05:09 PM المشاركة 2   
افتراضي


try use mikroc
it is very easy

and search for

how to do this here

i put more than one project to do this

thanks

Eng Ahmed Sheimy

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

walid el masry
:: مهندس ::
تاريخ التسجيل: Nov 2006
المشاركات: 42
نشاط [ walid el masry ]
قوة السمعة:0
قديم 06-12-2009, 05:35 PM المشاركة 3   
افتراضي


اولا اشكرك لسرعه الرد
ثانيا انا بصراحه مش بحب اكتب سي مع ان العالم كله اتجه ليها دلوقتي عشان بحس اني مش فاهم ايه اللي بيحصل بالزبط خصوصا لو هعمل انترفيس مع مديول مش نازل مع اللغه زي الجي بي اس مثلا ملهوش دوال جاهزه
ثالثا انا ظبطت البرنامج و اشتغل اخيرا معايا و ده الكود

كود المرسل

كود:
    LIST P=16F876A
    #INCLUDE<P16F876A.INC>
    __CONFIG _CP_OFF&_LVP_OFF&_BODEN_OFF&_PWRTE_ON&_WDT_OFF&_XT_OSC
TXDataByte EQU 0X20
    ORG 0X00
INITIATE
;---------------------;
    BSF STATUS,RP0
    MOVLW D'25'            ;| initiate SPBRG baud rate generator register - 9600    
    MOVWF SPBRG            ;|    
;---------------------;
    MOVLW B'11000000'    ;| initiate TRISC behavior of PORTC
    MOVWF TRISC            ;|
;---------------------;
    MOVLW B'00100100'    ;| initiate TXSTA TRANSMIT STATUS AND CONTROL REGISTER
    MOVWF TXSTA            ;|
    BSF STATUS,RP0
;---------------------;
    BCF STATUS,RP0
    MOVLW B'10010000'    ;| initiate RCSTA RECEIVE STATUS AND CONTROL REGISTER
    MOVWF RCSTA            ;|
;---------------------;
    MOVLW 0XFF            ;| initiate TXDataByte byte to be sent
    MOVWF TXDataByte    ;|
;---------------------;
MAIN
    BTFSS PIR1,TXIF
    GOTO MAIN;NO
    MOVF TXDataByte;YES
    MOVWF TXREG
    GOTO MAIN
    END
كود المستقبل

كود:
    LIST P=16F876A
    #INCLUDE<P16F876A.INC>
    __CONFIG _CP_OFF&_LVP_OFF&_BODEN_OFF&_PWRTE_ON&_WDT_OFF&_XT_OSC
RXDataByte EQU 0X20
    ORG 0X00
INITIATE
;---------------------;
    BSF STATUS,RP0
    MOVLW D'25'            ;| initiate SPBRG baud rate generator register - 9600    
    MOVWF SPBRG            ;|    
;---------------------;
    MOVLW B'11000000'    ;| initiate TRISC behavior of PORTC
    MOVWF TRISC            ;|
;---------------------;
    MOVLW B'00000000'    ;| initiate TRISB behavior of PORTC
    MOVWF TRISB            ;|
;---------------------;
    MOVLW B'00100100'    ;| initiate TXSTA TRANSMIT STATUS AND CONTROL REGISTER
    MOVWF TXSTA            ;|
;---------------------;
    BCF STATUS,RP0
    MOVLW B'10010000'    ;| initiate RCSTA RECEIVE STATUS AND CONTROL REGISTER
    MOVWF RCSTA            ;|
;---------------------;
    MOVLW B'00000000'    ;| initiate PORTB value of PORTB
    MOVWF PORTB            ;|
;---------------------;
MAIN
    BTFSS PIR1,RCIF
    GOTO MAIN;NO
    MOVF RCREG,W;YES
    MOVWF PORTB
    GOTO MAIN
    END
الدايره بعد التعديل




الصورة الرمزية ناصراحمد2
ناصراحمد2
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: EGYPT
المشاركات: 1,334
نشاط [ ناصراحمد2 ]
قوة السمعة:98
قديم 06-12-2009, 06:51 PM المشاركة 4   
افتراضي


اخى وليد المصرى



انا حبيت انى اشكرك على مشاركتك الاخيرة

التى قمت بوضع الحل الذى توصلت الية لحل مشكلتك

فاحببت ان احييك على هذا


______________________


فكثير جدا من الاعضاء يسالون عن حلول لمشكلتهم

وعندما يصلو الى الحل

يكتفون فقط بذكر كلمتين تم حل المشكلة

ولا يفكرون ان يضعو الحلول لكى يستفيد منها الاخريين


_______________________
لك منى كل الاحترام والتقدير
ونتمنى من كل الاخوة ان يحزو حزوك

__________________________

بالتوفيق ان شاء الله


walid el masry
:: مهندس ::
تاريخ التسجيل: Nov 2006
المشاركات: 42
نشاط [ walid el masry ]
قوة السمعة:0
قديم 06-12-2009, 06:58 PM المشاركة 5   
افتراضي


u r welcome :P

إضافة رد

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

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

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


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

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