البنية العامة لبرمجة pic


(eabueida) #1

بسم الله اللرحمن الرحيم

احسن الطرق للتعلم ضرب الأمثلة

PROCESSOR 16F84A
include “p16f84a.inc”
__CONFIG _XT_OSC & _WDT_OFF & _PWRTE_OFF & _CP_OFF

CBLOCK 0X0C
Number
DELAY_Y
DELAY_X
ENDC

ORG 0X00
GOTO MAIN
ORG 0X04
GOTO MAIN

MAIN
banksel TRISA
clrf TRISA
banksel PORTA
movlw .10
movwf PORTA
END

وندرس هذا البرنامج جزءا جزءا

1- هذا الجزء لتعريف نوع المايكروكونترولر
PROCESSOR 16F84A
2- هذا الجزء لتعريف المكتبة الملحقة بذلك المايكروكونترولر ( اسماء السجلات ونحوها)
include “p16f84a.inc”

3- هذا الجزء لتعريف بعض الفيوزات مثل نوع المذبذب وغيرها
__CONFIG _XT_OSC & _WDT_OFF & _PWRTE_OFF & _CP_OFF

4-هذا الجزء لتعريف المتغيرات
بالنسبة لpic16f84 موقع المتغيرات بالرام هو 0C

CBLOCK 0X0C
Number
DELAY_Y
DELAY_X
ENDC

5-هذا الجزء لتعريف مكان البرنامج الرئيسي

ORG 0X00
GOTO MAIN

6-هذا الجزء لتعريف مكان البرنامج المقاطعة(interrupt)
ORG 0X04
GOTO MAIN

7- هذا جرء البرنامج العام

MAIN

ثم يتبعه الأوامر

8- نهاية البرامج

END

ولا تنسونا من دعائكم الصالح


#2

جزاكم الله خيرا
مشاركة مفيدة جدا


(eng.Eiad) #3

مجهود طيب أخي eabueida
لكن اريد ان اوضح انه اذا كتبنا

6
ORG 0X04
GOTO MAIN

فكأننا الغينا برنامج المقاطعة
و اذا كتبنا Goto interr مثلاً يمكننا عندها وضع برنامج المقاطعة تحت العنوان interr اذا صح التعبير