برمجة منفد الطابعة باستخدام للغة البرمجة دلفي مثال صنع عداد الرقام موصول بمنفد الطابعة المؤلف : أحمد جعفر البقالي 2009 تطوان -اكتوبر الصفحة indrian@hotmail.fr 1
بسم ال الرحمان الرحيم محتويات الكتيب المقدمة لمحة حول مكونات منفد الطابعة صنع عداد الرقام و ربطه بمنفد الطابعة كتابة برنامج لهدا الجهاز تحميل البرنامج الصفحة indrian@hotmail.fr 2
المقدمة في هدا الكتيب سأعمل أن شاء ال على شرح كيفية برمجة منافد الحاسوب وخاصة منفد الطابعة و كتطبيق سأعمل على انجاز عداد الرقام او ما يعرف ب Seven Segment Display موصول بمنفد الطابعة, هدا العداد سيكون مكون من سبع مصابيح من نوع ليد, حيث اضاءة هده المصابيح تمكن من اظهار مجموعة من الرقام ما بين صفر و تسعة لتحكم في إشعال المصابيح ليد السبعة يجب كتابة برنامج بللغة دلفي, ال أن نظام الحماية في الوندوز اكس بي يمنع التحكم المباشر بمنفد الطابعة ولهدا يلزمنا استعمال مكتبة الدوال تسمح بدالك و من بينها مكتبة تدعى. Inpout32.dll لمادا برمجة من خلل منفد الطابعة لن و بكل بساطة هدا المنفد ل يتطلب تعريف أو بروتوكول لنقل البيانات كالدي يتطلبه منفد com ميزة أخرى تنضاف الى منفد الطابعة هي أن مستواه الكهربائي يتراوح بين الصفر و الخمسة فولت الصفحة indrian@hotmail.fr 3
لمحة حول مكونات منفد الطابعة, إليكم ترقيم المسارات و مجال إستعمالها مسارا 25 يتكون منفد الطابعة من pin المسار الشارة التسجيل التجاه Strobe 1 التحكم الدخال D0 2 البيان الدخال-الخراج D1 3 البيان الدخال-الخراج D2 4 البيان الدخال-الخراج D3 5 البيان الدخال-الخراج D4 6 البيان الدخال-الخراج D5 7 البيان الدخال-الخراج D6 8 البيان الدخال-الخراج D7 9 البيان الدخال-الخراج الصفحة indrian@hotmail.fr 4
Acknowledge 10 الحالة الدخال Busy 11 الحالة الدخال Paper And 12 الحالة الدخال Select 13 الحالة الدخال Autofeed 14 التحكم الدخال-الخراج Error 15 الحالة الدخال Initialize 16 التحكم الخراج Select Input 17 التحكم الخراج Ground 18-25 لمعرفة عنوان منفد الطابعة Poste du Travail / Gérer /Gestionnaire Du périphérique /ports/port imprimante ECP / Ressources. القيم التي يمكن أن يأخدها منفد الطابعة الترميز العشري Decimal الترميز السداسي عشر Hexadecimal 378 888 278 632 3BC 956, عند القلع يتم فحص كافة الجهزة عندما نقوم بتشغيل الحاسوب المكونة للحاسوب و من بينها منافد الطابعة الدي يقوم بيوس بتحديد عددها و يخصص لها LPT1,LPT2,LPT3... اسماء مستعارة الصفحة indrian@hotmail.fr 5
صنع عداد الرقام و ربطه بمنفد الطابعة في الصورة أسفله عداد الرقام مكون من سبع مصابيح من نوع الليد الصفحة indrian@hotmail.fr 6
لكي يتم إظهار جميع الرقام محصورة بين الصفر و التسعة نحتاج إلى, فمثلا` لظهار الرقم واحد سبع قطع كل قطعة تحتوي على مصباح واحد نحتاج إلى قطعتين أي إلى مصباحين مضائين إليكم رسم توضيحي لقطع السبع المكونة لعداد الرقام و رقم مسار البيان, نعلم أن هناك ثمان مسار للبيانات إلى أننا سنترك المسندة لكل قطعة مسار البيان رقم سبعة و نستعمل السبعة المتبقين الصفحة indrian@hotmail.fr 7
, الرقام و مقابلها بالترميز الثنائي و العشري و كدا في الجدول أسفله شكلها الصفحة indrian@hotmail.fr 8
الرقم الترميز الثنائي الترميز العشري البيانات الشكل D0-D1-D2-D3- D4-D6 95 0-1-0-1-1-1-1-1 0 D4-D6 80 0-1-0-1-0-0-0-0 1 D0-D1-D3-D4- D7 155 1-0-0-1-1-0-1-1 2 D0-D1-D2-D3- D7 143 1-0-0-0-1-1-1-1 3 D1-D2-D6-D7 198 1-1-0-0-0-1-1-0 4 الصفحة indrian@hotmail.fr 9
D0-D3-D6-D7 205 1-1-0-0-1-1-0-1 5 D0-D2-D3-D4- D6-D7 221 1-1-0-1-1-1-0-1 6 D0-D1-D2 7 0-0-0-0-0-1-1-1 7 D0-D1-D2-D3- D4-D6-D7 223 1-1-1-1-1-0-1-1 8 D0-D1-D2-D3- D4-D7 207 1-1-1-1-1-0-0-1 9 الصفحة indrian@hotmail.fr 10
كتابة برنامج لهدا الجهاز لتدكير أصبح من المستحيل برمجة بشكل مباشر منفد الطابعة نظرا` لنظام الحماية الدي يدعم وندوز يب- إكس- يب, يكفي كتابة لبرمجة منفد الطابعة بللغة دلفي 98 فمثل` في وندوز السطر التي port[registre_adress registre_adress]:= :=value; حيث أن عنوان منفد الطابعة registre_adress القيمة المراد إرسالها التي تتراوح بين 0 و 255 value dll, يجب كتابة مكتبة الدوال لبرمجة منفد الطابعة بشكل غير مباشر سنكتب الشيفرة بأسمبلر داخل كود دلفي inpout32.dll و سنسميها الصفحة indrian@hotmail.fr 11
library inpout32; uses SysUtils; procedure Out32(PortAddress:smallint;Value:smallint);stdcall;export; var ByteValue:Byte; begin ByteValue:=Byte(Value); asm push dx mov dx,portaddress mov al, ByteValue out dx,al pop dx end; end; Exports Out32; begin end الصفحة indrian@hotmail.fr 12
إليكم صورة البرنامج الدي سيظهر الرقام على الشاشة و يرسل الشارات الى منفد الطابعة لظهار الرقام المشكلة من مجموعة من مصابيح الليد الصفحة indrian@hotmail.fr 13
الصفحة indrian@hotmail.fr 14
تحميل البرنامج لتحميل البرنامج المرجو التصال بالبريد اللكتروني indrian@hotmail.fr السلم عليكم و رحمة ال و بركاته الصفحة indrian@hotmail.fr 15