المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : برمجة 7-segment LED display عن طريق منفد الطابعة


البقالي التطواني
09-09-2009, 05:45 AM
السلام عليكم و رحمة الله و براكاته.
لقد قمت بصنع segment LED display يدويا باستعانة بسبع مصابيح حمراء من نوع الليد و علبة ورقية إضافة الى كابل منفد الطابعة دو 25 مسار و قمت ببرمجته باستعمال دلفي 6
اليكم فيديو يبين هدا العمل
فيديو النظري
http://www.youtube.com/watch?v=n1pxh6QO-u8

فيديو التطبيقي
http://www.youtube.com/watch?v=NKfzQ6GqpM8

S.FATEH
09-09-2009, 02:35 PM
السلام عليكم
رغم اني لم افهم الكثير حول التجربة الا اني اعتقد انه شيئ جميل و رائع..
واصل ابداعك
سلامي
الى الامام

البقالي التطواني
09-09-2009, 06:18 PM
شكران يا اخي دزايري على تشجيعك لي.
العمل هو عبارة عن afficheur 7 segment يقوم بعرض الارقام تصاعديا من 0 الى 9 فمثلا ل اظهار رقم ثمانية يتم اشعال كل المصابيح السبعة.
ان نظام الحماية windows xp يمنع التحكم المباشر في المنفد الطابعة لهدا يجب اضافة مكتبة الدوال inpout32.dll

البقالي التطواني
05-10-2009, 02:59 PM
كاشف الارقام مصنوع يدويا مبرمج بالحاسوب

Parallel port مشروع الاول:برمجة منفذ المتوازي أو منفذ الطابعة

تطبيق:ربط كاشف الارقام مصنوع يدويا بالحاسوب
تمهيد
Serial port والمنفذ المتوالي Parallel port في الماضي كان يتم ربط الاتصال بين الحواسيب عن طريق المنفذ المتوازي

.USB أو ما يعرف ب IEEE1394 حاليا إلى جانب تلك المنافذ التي أصبحت من منافذ الاساسية للحواسيب ,ظهر ما يسمى منفذ

المنفذ المتوالي يستخدم أساسا من طرف الاجهزة التي تعمل بنظام ثنائي الاتجاه مع الحاسب,أمثلة:

جهاز موديم,جهاز السكانر,فأرة الحاسوب,نوع خاص من الطابعة.في المقابل يستعمل منفذ المتوازي خصيصا للطابعة هذا المنفذ الذي كان سابقا يعمل على

نظام أحادي الاتجاهStandard Parallel Port SPP

EPP-Enhanced Parallel Port وECP- ExtendedCapability port حاليا يعمل على نظام ثنائي الاتجاه

يوجد عدة برامج مثل Laplink و windows comanderتمكن من نقل المعطيات على التوالي و التوازي بين الحواسب .

في هذا الدرس سنتطرق الى البرمجة باستعمال منفذ الطابعة الذي لا يتطلب لبروتوكول للنقل البيانات كالمنفذ المتوالي و بخصوص المستوى الكهربائي فانه يأخد قيم متراوحة

يتكون منفذ الطابعة من 25 مساراَ ,إليكم ترقيم المسارات ومجال إستعمالها:ـ

الاتجاه
التسجيل
الاشارة
pin مسار

الادخال
التحكم
Strobe
1

الادخال-الاخراج
البيانات
D0
2

الادخال-الاخراج
البيانات
D1
3

الادخال-الاخراج
البيانات
D2
4

الادخال-الاخراج
البيانات
D3
5

الادخال-الاخراج
البيانات
D4
6

الادخال-الاخراج
البيانات
D5
7

الادخال-الاخراج
البيانات
D6
8

الادخال-الاخراج
البيانات
D7
9

الادخال
الحالة
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.

القيم التي يمكن ان يأخدها عنوان منفذ الطابعة :

Hexadecimal الترميز السداسي عشر
Decimalالترميز العشري

378
888

278
632

3BC
956

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

LPT1,LPT2,LPT3.... أسم مستعار يبدأ ب


تطبيق : كاشف الارقام مصنوع يدويا

إليكم شرح هذا التطبيق بالفديو
http://www.youtube.com/watch?v=NKfzQ6GqpM8

كيف يعمل الجهاز؟

لكي يتم إظهار جميع الارقام المحصورة بين صفر و تسعة نحتاج إلى سبع قطع كل قطعة تتكون من مصباح ليد واحد فقط.فمثلا لاظهار العدد واحد نستعمل قطعتين أي مصباحين,في الرسم

التوضيحي أسفله لقطع السبع ورقم مسار البينات المسندة لكل قطعة,نعلم أن هناك ثمانية مساراً للبينات لكننا سنترك مسار البيان رقم خمسة و نستعمل السبع المتبقين.

في الجدول أسفله الارقام مراد كشفها و مقايلها بالترميز الثنائي و العشاري وشكلها

الشكل البيانات الترميز العشري الترميز الثنائي الرقم
..1..

1...1

..0..

1...1

..1..
d6,d4,d3,d2,d1,d0 95 0 1 0 1 1 1 1 1 0
..0..

1...0

..0..

1...0

..0..
d6,d4 80 0 1 0 1 0 0 0 0 1
..1..

0...1

..1..

1...0

..1..
d7,d4,d3,d1,d0 155 1 0 0 1 1 0 1 1 2
..1..

0...1

..1..

0...1

..1..
d7,d3,d2,d1,d0 143 1 0 0 0 1 1 1 1 3
..0..

1...1

..1..

0...1

..0..
d7,d6,d2,d1 198 1 1 0 0 0 1 1 0 4
..1..

1...0

..1..

0...1

..1..
d7,d6,d3,d2,d0 205 1 1 0 0 1 1 0 1 5
..1..

1...0

..1..

1...1

..1..
d7,d6,d4,d3,d2,d0 221 1 1 0 1 1 1 0 1 6
..1..

0...1

..0..

0...1

..0..
d2,d1,d0 7 0 0 0 0 0 1 1 1 7
..1..

1...1

..1..

1...1

..1..
d7,d6,d4,d3,d2,d1,d0 223 1 1 0 1 1 1 1 1 8
..1..

1...1

..1..

0...1

..1..
d7,d6,d3,d2,d1,d0 207 1 1 0 0 1 1 1 1 9

ماهو البرنامج الذي يتحكم في الجهاز؟

للتذكر أصبح مستحيلا برمجة منافذ الطابعة بشكل مباشر نظرا للنظام الحماية الذي أصبح يدعم م وندوز إكسبي,فمثلا في وندوز 98 لبرمجة منفذ الطابعة باستعمال دلفي

port[registre_adress]:=value

عنوان منفذالطابعة registre_adress

القيمة مراد ارسالها التي تتراوح بين 0 و255 value

التي ستحتوي على الدوال الازمة للبرمجة منفذ الطابعة,والتي سنقوم ببرمجتها بدلفي لكن الكود الاصلي سنبرمجه بالاسمبلرDLLإذن فالحل هو ‘نشاء مكتبة الدوال

لكتابة بشفرة اسمبلر داخل دلفي نكتب الكلمة asm

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

gigi
21-10-2009, 03:19 PM
مجهود طيب رغم ان التصوير يبدو ضعيف قليلا وساحاول فهم البرنامج ومزيد من التقدم لك