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

   

شعاع الحرية
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2009
الدولة: فلسطين المحتلة
المشاركات: 64
نشاط [ شعاع الحرية ]
قوة السمعة:
قديم 01-03-2009, 04:49 PM المشاركة 17   
افتراضي



اخي زكي :

الرابط يحتوي ملف فيه الدائرة التى أحاول عليها ..
دائرة بسيطة (ولكنها ليست التى اريدها) ،، فقط انا حاولت ان اشتغل على الربط بين ال 2pic ..

لكن الظاهر انه يوجد خلل ..

حيث اننى حاولت ان اعمل عداد تنازلى في البيك المرسل ..
وعداد تصاعدي في البيك المستقبل ،، طبعا في المقاطعة ..

http://www.l5s.net/dld7nl59607.rar.html


التعديل الأخير تم بواسطة : شعاع الحرية بتاريخ 02-03-2009 الساعة 05:08 AM
اعلانات

زكي شاكر
:: عضو ماسي ::
تاريخ التسجيل: May 2006
الدولة: المغرب
المشاركات: 2,945
نشاط [ زكي شاكر ]
قوة السمعة:
قديم 02-03-2009, 01:18 PM المشاركة 18   
افتراضي


اخي زكي :

الرابط يحتوي ملف فيه الدائرة التى أحاول عليها ..
دائرة بسيطة (ولكنها ليست التى اريدها) ،، فقط انا حاولت ان اشتغل على الربط بين ال 2pic ..
لكن الظاهر انه يوجد خلل ..
حيث اننى حاولت ان اعمل عداد تنازلى في البيك المرسل ..
وعداد تصاعدي في البيك المستقبل ،، طبعا في المقاطعة ..
http://www.l5s.net/dld7nl59607.rar.html
اخي الكريم
الملف اسمبلي الذي ارسلت ناقص تعليمات ، كما ان كل بيك يحتاج ملفه الخاص به :
ملف اسمبلي (ليتمكن الجميع من معاينة وفهم المطلوب) و ملف هيكس وملف بروتوس للمحاكاة..
من ناحية ثانية عندي اقتراح . لماذا لا تبدأ بالمرسل فقط وتضع هنا الملف الخاصة به: ملف المحاكاة + ملف هيكس + ملف اسمبلي ..
ثم وبعد ان يشتغل تمر في مرحلة ثانية الى المستقبل وأخيرا تختم بهما معا في دائرة واحدة..
ربما هكذا طريقة تساعد على تخطي العقبات تباعا..

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

شعاع الحرية
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2009
الدولة: فلسطين المحتلة
المشاركات: 64
نشاط [ شعاع الحرية ]
قوة السمعة:
قديم 02-03-2009, 05:50 PM المشاركة 19   
افتراضي


لكن اخي الكريم
الملف المرفق ،، به ملف البروتس والاسيمبلي والهيكسا ..

الثلاثة مرفقة ..


زكي شاكر
:: عضو ماسي ::
تاريخ التسجيل: May 2006
الدولة: المغرب
المشاركات: 2,945
نشاط [ زكي شاكر ]
قوة السمعة:
قديم 02-03-2009, 06:00 PM المشاركة 20   
افتراضي


معك حق اخي ..في البداية لم الحظها كلها


زكي شاكر
:: عضو ماسي ::
تاريخ التسجيل: May 2006
الدولة: المغرب
المشاركات: 2,945
نشاط [ زكي شاكر ]
قوة السمعة:
قديم 02-03-2009, 09:27 PM المشاركة 21   
افتراضي كتابة رقم ب Keypad وعرضه على PORTA


السلام عليكم
ارفق لك الملف الخاص بالمرسل بعد مراجعة التعليمات الخاصة بالكيباد وتصحيح بعض الاخطاء واتمام ما كان ناقصا:
تجد في الملف :
بناء المشروع على MPLAB 8.1x
ملف الاسمبلي
ملف هيكس
ملف بروتوس ..
ملف تجربة ادخال رقم من كيباد وإظهاره على المنفذ أ:

http://filaty.com/f/903/92139/em_01.rar.html
ملف الاسمبلي:
كود:
;*****************************************************************************
LIST p=16f84; Définition de processeur
#include <p16f84.inc>; Définitions de constantes
__CONFIG _CP_OFF & _PWRTE_ON & _WDT_OFF & _HS_OSC
;*********************************************************************
ORG 0X00
GOTO START

ORG 0X04
GOTO START
;MAIN CODE
START
BSF STATUS,RP0 ;BANK 1
MOVLW B'00001111'
MOVWF TRISB ;RB0,RB1,RB2,RB3 IS INPUT =====RB4,RB5,RB6,RB7 IS OUTPUT
CLRF TRISA ;ALL PORT A IS OUTPUT
BCF STATUS,RP0 ;BANK 0
CLRF PORTA
CLRF PORTB
LOOP
BSF PORTB,4
BCF PORTB,5
BCF PORTB,6
BTFSC PORTB,0
GOTO ONE ;1
BTFSC PORTB,1
GOTO FOUR ;4
BTFSC PORTB,2
GOTO SEVEN ;7
BTFSC PORTB,3
GOTO AA ;10
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
BCF PORTB,4
BSF PORTB,5
BCF PORTB,6
BTFSC PORTB,0
GOTO TWO ;2
BTFSC PORTB,1
GOTO FIVE ;5
BTFSC PORTB,2
GOTO EIGHT ;8
BTFSC PORTB,3
GOTO ZERO ;0
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
BCF PORTB,4
BCF PORTB,5
BSF PORTB,6
BTFSC PORTB,0
GOTO THREE ;3
BTFSC PORTB,1
GOTO SIX ;6
BTFSC PORTB,2
GOTO NINE ;9
BTFSC PORTB,3
GOTO BB ;11
GOTO LOOP
ZERO
MOVLW 0
MOVWF PORTA
GOTO LOOP
ONE
MOVLW .1
MOVWF PORTA
GOTO LOOP
TWO
MOVLW .2
MOVWF PORTA
GOTO LOOP
THREE
MOVLW .3
MOVWF PORTA
GOTO LOOP
FOUR
MOVLW .4
MOVWF PORTA
GOTO LOOP
FIVE
MOVLW .5
MOVWF PORTA
GOTO LOOP
SIX
MOVLW .6
MOVWF PORTA
GOTO LOOP
SEVEN
MOVLW .7
MOVWF PORTA
GOTO LOOP
EIGHT
MOVLW .8
MOVWF PORTA
GOTO LOOP
NINE
MOVLW .9
MOVWF PORTA
GOTO LOOP
AA
MOVLW .10
MOVWF PORTA
GOTO LOOP
BB
MOVLW .11
MOVWF PORTA
GOTO LOOP
END

الخطوة التالية : في الملف السابق (الحالة العادية) كنت تأمر البيك بأن يضع الرقم المضغوط على مفتاحه على المنفذ أ PORTA مباشرة ..
المطلوب الان ان تأمر البيك بأن يضع الرقم (المضغوط عليه في الكيباد) في مسجل (او متغير ) اولا قبل وضعه في PORTA
قارن بين ملف اسمبلي السابق والمعدل لملاحظة الفرق:

ملف الاسمبلي المعدل:
كود:
;***************************************************************************** LIST p=16f84; Définition de processeur #include <p16f84.inc>; Définitions de constantes __CONFIG _CP_OFF & _PWRTE_ON & _WDT_OFF & _HS_OSC ;***************************************************************************** ; VARIABLES CBLOCK 0x0C VE_01 : 1 ENDC ;********************************************************************* ORG 0X00 GOTO START
ORG 0X04 GOTO START ;MAIN CODE START BSF STATUS,RP0 ;BANK 1 MOVLW B'00001111' MOVWF TRISB ;RB0,RB1,RB2,RB3 IS INPUT =====RB4,RB5,RB6,RB7 IS OUTPUT CLRF TRISA ;ALL PORT A IS OUTPUT BCF STATUS,RP0 ;BANK 0 CLRF PORTA CLRF PORTB LOOP MOVF VE_01,w MOVWF PORTA BSF PORTB,4 BCF PORTB,5 BCF PORTB,6 BTFSC PORTB,0 GOTO ONE ;1 BTFSC PORTB,1 GOTO FOUR ;4 BTFSC PORTB,2 GOTO SEVEN ;7 BTFSC PORTB,3 GOTO AA ;10 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BCF PORTB,4 BSF PORTB,5 BCF PORTB,6 BTFSC PORTB,0 GOTO TWO ;2 BTFSC PORTB,1 GOTO FIVE ;5 BTFSC PORTB,2 GOTO EIGHT ;8 BTFSC PORTB,3 GOTO ZERO ;0 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BCF PORTB,4 BCF PORTB,5 BSF PORTB,6 BTFSC PORTB,0 GOTO THREE ;3 BTFSC PORTB,1 GOTO SIX ;6 BTFSC PORTB,2 GOTO NINE ;9 BTFSC PORTB,3 GOTO BB ;11 GOTO LOOP ;;;;;;;;;;;;;;;أجزاء برنامج استدعاء كل رقم ;;;;;;;;;;;;; ZERO MOVLW 0 MOVWF VE_01 GOTO LOOP ONE MOVLW .1 MOVWF VE_01 GOTO LOOP TWO MOVLW .2 MOVWF VE_01 GOTO LOOP THREE MOVLW .3 MOVWF VE_01 GOTO LOOP FOUR MOVLW .4 MOVWF VE_01 GOTO LOOP FIVE MOVLW .5 MOVWF VE_01 GOTO LOOP SIX MOVLW .6 MOVWF VE_01 GOTO LOOP SEVEN MOVLW .7 MOVWF VE_01 GOTO LOOP EIGHT MOVLW .8 MOVWF VE_01 GOTO LOOP NINE MOVLW .9 MOVWF VE_01 GOTO LOOP AA MOVLW .10 MOVWF VE_01 GOTO LOOP BB MOVLW .11 MOVWF VE_01 GOTO LOOP END


التعديل الأخير تم بواسطة : زكي شاكر بتاريخ 02-03-2009 الساعة 10:00 PM السبب: اضافة

شعاع الحرية
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2009
الدولة: فلسطين المحتلة
المشاركات: 64
نشاط [ شعاع الحرية ]
قوة السمعة:
قديم 03-03-2009, 06:27 AM المشاركة 22   
افتراضي


CBLOCK 0x0C
VE_01 : 1
ENDC

تمام هيك أخي

لكن الكود في الاقتباس ،، لم يمر علي من قبل ،، ماهو ؟؟؟


شعاع الحرية
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2009
الدولة: فلسطين المحتلة
المشاركات: 64
نشاط [ شعاع الحرية ]
قوة السمعة:
قديم 03-03-2009, 06:32 AM المشاركة 23   
افتراضي


والآن أخي ننتقل الى عمل عداد تنازلى ،، لاعطاء pulses على المخرج portb,7


زكي شاكر
:: عضو ماسي ::
تاريخ التسجيل: May 2006
الدولة: المغرب
المشاركات: 2,945
نشاط [ زكي شاكر ]
قوة السمعة:
قديم 03-03-2009, 12:44 PM المشاركة 24   
افتراضي


تمام هيك أخي

لكن الكود في الاقتباس ،، لم يمر علي من قبل ،، ماهو ؟؟؟
تلك طريقة أخرى لحجز متغير (مسجل) في ذاكرة Ram..
يمكن استعمال الطريقة المعروفة :

كود:
;*****************************************************************************
كود:
 
LIST p=16f84; Définition de processeur
#include <p16f84.inc>; Définitions de constantes
__CONFIG _CP_OFF & _PWRTE_ON & _WDT_OFF & _HS_OSC ;*****************************************************************************
; VARIABLES
VE_01 EQU 0x0C
;********************************************************************* ORG 0X00
GOTO START
;.....


التعديل الأخير تم بواسطة : زكي شاكر بتاريخ 05-03-2009 الساعة 11:17 AM


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