Mavzu: Tashqi qurilmalarni dasturlash Kompyuter interfeysi portlarini boshqarishni o'zlashtirib olgach, radiotelefon havaskorlari har xil signalizatsiya va ishlaydigan qurilmalar va sensorlarga ulab, kompyuterni iste'molchi elektroniği uchun nazorat markaziga, xonadon xavfsizligi tizimiga yoki o'lchash vositasiga aylantirishi mumkin. Yangi boshlanuvchilar uchun eng jozibali parallel port Dastlab printer kompyuteriga ulanish uchun mo'ljallangan LPT. Bu yerda LPT - Layn Printer terminalining qisqartmasi keltirilgan (birinchi printerlar ma'lumotni "chiziq bo'yicha liniya" deb yozishdi). Keyinchalik, ushbu portning hajmi sezilarli darajada kengaytirildi, unga turli tuman qurilmalarni ulash boshlandi. Afsuski, bugungi kunda (aslida, kompyuterning boshqa portlari) asta-sekin yuqori tezkor universal o'rnini egallaydi ketma-ket avtobus Usb
LPT porti yoqilgan tizim bloki kompyuter - 25 dyuymli DB-25F soket. Ularning kontaktlaridan siz TTL tuzilmasi chipslariga xos darajadagi mantiqiy signallarni yuborishingiz va o'chirishingiz mumkin. 0 ... 0,8 V kuchlanish mantiqiy past, yuqori - 2.4 ... 5 V deb hisoblanadi. Konnektorning chiqish kontaklarini umumiy simli yoki +5 V dan oshmaydigan kuchlanish manbai bilan kamida 300 Ohm Portning kirishlari va chiqishi uchun 5 V dan kam yoki salbiy ta'sir ko'rsatishi mumkin emas. Siz portni ulashingiz va kompyuterdan 220 Vtagacha (elektr vilkasi elektr tarmog'idan uzilgan holda) butunlay uzilib qolgan hollarda uni o'chirib qo'yishingiz mumkin. Bog'langan qurilma elektr quvvatiga ega bo'lsa, u tarmoqdan jismonan uzilib qolishi kerak.
Ushbu talablarga rioya qilmaslik og'ir oqibatlarga olib kelishi mumkin. Agar kompyuterdagi parallel port tekshiruvi chipi bajarilmasa, anakartni ta'mirlash yoki almashtirish talab etiladi.
Agar kompyuterni yoqsangiz, uning parallel porti Centronics rejimida ishlaydi - bu port kompyuter uchun paydo bo'lganidan buyon eng oddiy va an'anaviy. Ba'zan ushbu rejim oddiy parallel port (SPP) deb ataladi. EPP va ECP murakkab rejimlari, qoida tariqasida, lazer printerlari va skanerlar bilan yuqori tezlikda ma'lumotlarni almashish uchun ishlatiladi. Biz ularni ko'rib chiqmaymiz, chunki bunday portlar bilan ishlashni dasturlash tajribali dasturchilar uchungina mavjud.
Dastur nuqtai nazaridan, Centronics rejimida LPT porti mikroprosessorli I / O maydonida uchta sakkiz-bitli registrlar: H378 da DR ma'lumotlari va H379 da SR printer holati registri va H37A da CR-printerni boshqarish registri. Ushbu manzillar LPT1 portiga, odatda kompyuterda faqat bittasi hisoblanadi. Agar boshqalar bo'lsa parallel portlarularga ketma-ket manzillar bilan birga uchta registr beriladi. Masalan, LPT2 port registrlari odatda & H278- va H27A manzillariga ega.
Port registrlarining kirish va chiqishi (barchasi barchasi bo'lmasa), shakl 1da ko'rsatilgandek interfeys konnektörünün pimlariga ulangan. 1.
Shuning uchun, ba'zi bir kodlarni ushbu yozuvlarga yozib, siz mos keladigan ma'lumotlarni o'rnatishingiz mumkin mantiqiy darajalar ulagichning chiqish pinidagi voltaj va registrlardagi kodlarni o'qish tashqi signallarning kirishiga berilgan darajalarni aniqlaydi.
LPT porti bilan deyarli har qanday dasturiy muhiti va operatsion tizimida ishlashingiz mumkin. Visual BASIC va Delphi-muhitni eng qulay deb hisoblashadi va port dasturlash uchun zarur bo'lgan barcha narsalar juda o'xshash. Aytish kerakki, zamonaviy multi-tasking operatsion tizimlari (jumladan Windows oilasi) kompyuter dasturlaridan kompyuter portlariga to'g'ridan-to'g'ri kirishga ruxsat bermaydi. Bu, bir vaqtning o'zida bir xil portga tasodifan kirsa, bir vaqtning o'zida amalga oshirilgan dasturlar o'rtasidagi mojarolarni bartaraf qilish uchun amalga oshiriladi. Portlar bilan aloqa faqat ziddiyatlarni bartaraf etish uchun zarur bo'lgan barcha narsani avtomatik ravishda bajaradigan maxsus haydovchi dasturlari yordamida amalga oshirilishi mumkin. Dasturchi faqat bir nechta buyruqlarni yozishi mumkin.
Ushbu dasturlarning eng ommabop kutubxonalaridan birini qo'llaymiz - Internetda topish oson bo'lgan ikkinchi versiyaning Inpout32.dll. Dastur turli xil dasturiy tizimlarida va operatsion tizimlarda qo'llanilishi mumkin. Windows 98 da ishlashda lnpout32.dll faylini C: \\ Windows \\ system \\ papkasiga va Windows XP da C: \\ Windows \\ system32 \\ papkasiga nusxalash kerak. Ko'p hollarda faylni faqat executable dastur papkasida joylashtiring. DOS dasturlash uchun, qo'shimcha drayvlar kerak emas, faqat ishlatiladigan dasturiy tilida taqdim etilgan oddiy port I / U buyruqlar.
Quyidagi munozarasi Windows XP bilan ishlayotgan Visual Basic 6.0 dasturiy tizimida parallel port bilan ishlashga tegishli. Uni rivojlantirish uchun sodda dastur ishlab chiqildi. Uning loyihasi, jumladan, executable faylini test.exe va asosiy (va faqat) Form1.frm fayli maqolaga biriktirilgan. Ushbu dasturni ishga tushirganingizda, 2-rasmda ko'rsatilgan oyna monitor ekranida paydo bo'ladi. 2
Ekrandagi tugmachalarni bosib va tegishli maydonlarga raqamlarni kiritish orqali siz port chiqishidagi kuchlanish darajasini belgilashingiz va kirishlar holatini o'qishingiz mumkin (u tegishli maydonda raqam sifatida ko'rsatiladi). LPT port bilan ishlaydigan kutubxona dasturga "jadval" da ko'rsatilgan Form1.frm faylining bir qismini "birlashtiradi".
Avvalo, CR tekshiruv registri bilan ishlashni tahlil qilaylik (esga olish, uning manzili va H37A). Bunday holda, u subroutin tomonidan bajariladi