لوحة المفاتيح

M

mtkee2003

Guest
مرحبا

أريد لتنفيذ لوحة المفاتيح باستخدام PicBasic للمحترفين ، وأريد أن استخدم المقاطعة على تغيير PORTB.أنا باستخدام 16F877 وأنا لا يمكن استخدام "الاقتراع روتينية" في هذا المشروع مع ، كما أنني لا يمكن استخدام أي جيم لوحة المفاتيح (مثل 74C922).

كتبت في برنامج وأرفق به بروتيوس الملف والتخطيطي.
رمز :'************************************************* ***************

'* الاسم : * PORTB_CHANGE.BAS

'* المؤلف : مصطفى تغافي كاني *

'* ملاحظة : حقوق الطبع والنشر (ج) 2006 جزءا لا يتجزأ من التكنولوجيا *

'* : جميع الحقوق محفوظة *

'* التاريخ : 2006/12/14 *

'* الإصدار : 1.0 *

'* ملاحظات : *

'************************************************* ***************'تشمل" modedefs.bas "تعريف مكتب المنسق الخاص 4تعريف LCD_DREG بورتا

تعريف LCD_DBIT 0

تعريف LCD_RSREG بورتا

تعريف LCD_RSBIT 4

تعريف LCD_EREG ابورت

تعريف LCD_EBIT 0

تعريف LCD_BITS 4

تعريف LCD_LINES 2منطقة غزة الصناعية فار INTCON.7

PEIE فار INTCON.6

T0IE فار INTCON.5

الأسواق العالمية ضغطها فار INTCON.4

RBIE فار INTCON.3

T0IF فار INTCON.2

INTF فار INTCON.1

RBIF فار INTCON.0RBPU فار OPTION_REG.7

INTEDG فار OPTION_REG.6

T0CS فار OPTION_REG.5

T0SE فار OPTION_REG.7

بسا فار OPTION_REG.3

PS2 فار OPTION_REG.2

PS1 فار OPTION_REG.1

PS0 فار OPTION_REG.0ط فار بايت

'PORTB فار بايت [3]

خ فار بايت

زوبعة فار بايت

العقيد فار بايت

ياء فار بايت

آر فار الثنائية

جيم فار الثنائيةTRISB = ٪ 11110000 : 'PORTB = ٪ 11111111

TRISD = ٪ 00000000

ط = 0'OPTION_REG = ٪ 01010111' فقط لCAMPACTING جنة البرنامج

INTCON = ٪ 10001000

RBPU = 0على المقاطعة غوتو اختبارالرئيسية :

'PORTD = $ فرنك فرنسي

'بوقفة 200

'PORTD = 00 $

'بوقفة 500

إذا كنت بعد ذلك == 0

LCDOUT $ الحديد ، 1 ، "اضغط على أي مفتاح"!

أيضا

LCDOUT $ الحديد ، 1 ، "(صف ، عمود)="،"("،# صاد ،"،"،# جيم ،") "

ENDIFPORTB = (PORTB & ٪ 11110010)

'بوقفة 20

PORTB = (PORTB & ٪ 11110100)

'بوقفة 20

PORTB = (PORTB & ٪ 11111000)

'بوقفة 20

'للياء = 1 إلى 3

'PORTB = ٪ 00000001

'PORTB = PORTB <<1

'القادم ياء

'في حين أن (ياء)



غوتو الرئيسيةتعطيل

اختبار :

@ MOVF PORTB ، دبليو 'هام : يقرأ PORTB والتحركات القيمة إلى دبليو سجل!

'@ الخطوة؟ بكالوريوس PORTB' المناوب لآخر سطر أعلاه!

زوبعة = (PORTB & ٪ 11110000)

العقيد = (PORTB & ٪ 00001110)

قضية تحديد صف

٪ كيس 00010000

س = 1

٪ كيس 00100000

س = 2

٪ كيس 01000000

س = 3

٪ كيس 10000000

س = 4

انتهى اختر'ل [ك = 1 إلى 3

'اذا COL.K = 1

'ك المقبلحدد حالة كولومبيا

٪ كيس 00000010

ج = 1

٪ كيس 00000100

ج = 2

٪ كيس 00001000

ج = 3

انتهى اختر

ط ط 1 =

'LCDOUT $ الحديد ، 1 ،" PORTB التغيرات = "# أنا

RBIF = 0

'PORTD = 00 $

استئناف

نمكنانتهى

 
آسف ، ولكن تحتاج إلى تسجيل الدخول لمشاهدة هذه الضميمة

 

Welcome to EDABoard.com

Sponsor

Back
Top