Lpt პორტი მუშაობს. LPT პორტის პროგრამირება Visual Basic- ში

დ. ზახაროვი, პროკოპიევსკი, კემეროვოს რეგიონი

მას შემდეგ, რაც კომპიუტერის ინტერფეისის პორტების კონტროლი დაეუფლა, რადიომოყვარულს შეუძლია დაუკავშირდეს მათ სხვადასხვა სასიგნალო და აღმასრულებელ მოწყობილობებსა და სენსორებს, გადააქციოს კომპიუტერი სამომხმარებლო ელექტრონიკის, ბინის უსაფრთხოების სისტემის ან საზომი მოწყობილობის მართვის ცენტრად. დამწყებთათვის ყველაზე მიმზიდველია პარალელური LPT პორტი, რომელიც თავდაპირველად განკუთვნილი იყო პრინტერის კომპიუტერთან დასაკავშირებლად. აქედან მოდის აბრევიატურა LPT - Line Printer Terminal (პირველი პრინტერები ბეჭდავენ ინფორმაციას "სტრიქონიდან სტრიქონზე" - სტრიქონზე სტრიქონზე). მოგვიანებით, ამ პორტის მასშტაბები მნიშვნელოვნად გაფართოვდა, მასთან დაიწყო პერიფერიული მოწყობილობების მრავალფეროვნება. სამწუხაროდ, დღეს იგი (როგორც სხვა კომპიუტერის პორტებს) თანდათან იცვლება ჩქაროსნული უნივერსალური სერიული ავტობუსით USB.

LPT პორტის კონექტორი კომპიუტერული სისტემის განყოფილებაში არის 25-pin DB-25F ქალი. TTL მიკროსქემებისათვის დამახასიათებელი დონის ლოგიკური სიგნალები შეიძლება გამოყენებულ იქნას მის კონტაქტებზე და ამოღებულ იქნეს მათგან. ლოგიკურად დაბალი ძაბვა ითვლება 0 ... 0.8 V, მაღალი - 2.4 ... 5 V. დააკავშირეთ კონექტორის გამომავალი კონტაქტები საერთო მავთულით ან ძაბვის წყლით, რომელიც არ აღემატება +5 ვ, რეკომენდებულია მხოლოდ რეზისტორების საშუალებით მინიმუმ 300 ომის წინააღმდეგობა. დაუშვებელია 5 ვ-ზე მეტი უარყოფითი ძაბვის ან პოზიტიური ძაბვის გამოყენება პორტის შესასვლელებსა და გამოსასვლელებზე. პორტისგან ნებისმიერი კავშირი და გათიშვა შეგიძლიათ მხოლოდ მაშინ, როდესაც კომპიუტერი მთლიანად გათიშულია 220 ვ ქსელიდან (დენის შტეფსელი ამოღებულია ბუდედან). თუ დაკავშირებულ მოწყობილობას აქვს ქსელის ენერგია, ის ფიზიკურად უნდა გათიშული იყოს ქსელიდან.

ამ მოთხოვნების შეუსრულებლობამ შეიძლება გამოიწვიოს მძიმე შედეგები. თუ კომპიუტერში ვერ ხერხდება პარალელური პორტის კონტროლერის ჩიპი, საჭიროა შეკეთება ან შეცვლა. დედა დაფა.

როდესაც კომპიუტერი ჩართულია, მისი პარალელური პორტი მუშაობს Centronics რეჟიმში - ყველაზე მარტივი და ტრადიციული ამ პორტისთვის კომპიუტერებში გამოჩენის შემდეგ. ამ რეჟიმს ზოგჯერ უწოდებენ Simple Parallel Port (SPP). როგორც წესი, უფრო რთული EPP და ECP რეჟიმები გამოიყენება ლაზერულ პრინტერებთან და სკანერებთან სწრაფი ინფორმაციის გაცვლისთვის. ჩვენ მათ არ გავითვალისწინებთ, რადგან პორტში მუშაობის პროგრამირება ასეთ რეჟიმებში მხოლოდ გამოცდილი პროგრამისტებისთვისაა ხელმისაწვდომი.

პროგრამის თვალსაზრისით, LPT პორტი Centronics რეჟიმში არის სამი რვა ბიტიანი რეგისტრი მიკროპროცესორულ I / O სივრცეში: DR მონაცემთა რეესტრი & H378, SR პრინტერის სტატუსის რეგისტრი & H379 და CR პრინტერი კონტროლის რეესტრი & H37A– ზე მითითებული მისამართები ეხება LPT1 პორტს, რომელიც, როგორც წესი, მხოლოდ კომპიუტერია. თუ მას სხვა პარალელური პორტები აქვს, მათ ასევე ენიჭებათ სამი თანმიმდევრული მისამართის რეგისტრი. მაგალითად, LPT2 პორტის რეგისტრებს, როგორც წესი, აქვთ მისამართები & H278- & H27A.

პორტის რეგისტრების შესასვლელი და გასასვლელი (თუმცა არა ყველა) უკავშირდება ინტერფეისის კონექტორის ქინძისთავებს, როგორც ნაჩვენებია ნახატზე. ერთი

ამიტომ, ამ რეგისტრების გარკვეული კოდების დაწერის საშუალებით, შესაძლებელია შესაბამისი ლოგიკური ძაბვის დონის დაყენება კონექტორის გამოსასვლელ კონტაქტებზე, ხოლო რეგისტრების კოდების წაკითხვით, შესასვლელებზე გამოყენებული გარე სიგნალების დონის განსაზღვრა.

LPT პორტთან მუშაობა შეგიძლიათ პროგრამირების თითქმის ნებისმიერ გარემოსა და ოპერაციულ სისტემაში. ყველაზე ხელმისაწვდომი გარემო ითვლება Visual Basic და Delphi და ყველაფერში, რაც პორტის პროგრამირებისთვის არის საჭირო, ისინი ძალიან ჰგავს ერთმანეთს. უნდა ითქვას, რომ თანამედროვე მრავალმიზნებიანი ოპერაციული სისტემები (მათ შორის ვინდოუსის ოჯახი) არ იძლევა პირდაპირ ზარს პროგრამის პროგრამებიდან კომპიუტერული პორტებისკენ. ეს კეთდება იმისათვის, რომ თავიდან იქნას აცილებული კონფლიქტები ერთდროულად შემსრულებელ პროგრამებს შორის, თუ ისინი ერთსა და იმავე პორტში შემთხვევით შედიან ერთდროულად. პორტებთან კომუნიკაცია შესაძლებელია მხოლოდ სპეციალური დრაივერების პროგრამების საშუალებით, რომლებიც ავტომატურად აკეთებენ ყველაფერს, რაც აუცილებელია კონფლიქტების მოსაგვარებლად. პროგრამისტს მხოლოდ რამდენიმე კონტროლის ბრძანების დაწერა სჭირდება.

ჩვენ გამოვიყენებთ ასეთი პროგრამების ერთ-ერთ ყველაზე პოპულარულ ბიბლიოთეკას - Inpout32.dll ვერსია 2, რომლის პოვნაც ინტერნეტში მარტივია. იგი გამოიყენება სხვადასხვა პროგრამირების გარემოსა და ოპერაციულ სისტემებში. Windows 98 – ში დააკოპირეთ lnpout32.dll ფაილი C: \ Windows \ system \ საქაღალდეში, ხოლო Windows XP– ში C: \ Windows \ system32 \ საქაღალდეში. ხშირ შემთხვევაში, საკმარისია ამ ფაილის უბრალოდ განთავსება შესრულებადი პროგრამის საქაღალდეში. DOS პროგრამირებისთვის დამატებითი მძღოლებიარ არის საჭირო, ჩვეულებრივი I / O ბრძანებები ნავსადგურში მითითებულ პროგრამულ ენაზე საკმარისია.

დისკუსიის დანარჩენი ნაწილი ეხება Windows XP- ის ქვეშ Visual Basic 6.0 პროგრამირების სისტემაში პარალელურ პორტთან მუშაობას. შემუშავებულია მარტივი პროგრამა მის ათვისებისთვის. სტატიას თან ერთვის მისი პროექტი, მათ შორის, შესრულებადი ფაილი test.exe და ფაილი ძირითადი (და მხოლოდ) ფორმის Form1.frm. ამ პროგრამის ამოქმედებისას, მე –2 ნახაზზე ნაჩვენები ფანჯარა გამოჩნდება მონიტორის ეკრანზე. 2


მასში ეკრანულ ღილაკებზე დაჭერით და შესაბამის ველებში ციფრების შეყვანით, შეგიძლიათ დააყენოთ ძაბვის დონე პორტის გასასვლელებზე და წაიკითხოთ მისი შეყვანის მდგომარეობა (იგი შესაბამის ველში გამოჩნდება როგორც რიცხვი). LPT პორტთან მუშაობის ბიბლიოთეკა პროგრამას "უკავშირდება" ცხრილში ნაჩვენები Form1.frm ფაილის ფრაგმენტით.


უპირველეს ყოვლისა, გადავხედოთ CR კონტროლის რეესტრთან მუშაობას (გავიხსენოთ, რომ მისი მისამართია & H37A). ამ შემთხვევაში, იგი შესრულებულია ქვეპროგრამით

Private Sub Command4_click ()
out & H37A, Text2. ტექსტი
დასრულება ქვე

Command4 bezel ღილაკის დაჭერისას, იგი რეგისტრს & H37A- ზე წერს ორობითი კოდს, რომელიც შეესაბამება ამ ღილაკის ზემოთ მოცემულ ველში ათობითი რიცხვს.

სიცხადისთვის, ჩვენ შევადგენთ და დააკავშირებთ LED კვანძს LPT კონექტორთან, ნახაზზე ნაჩვენები სქემის მიხედვით. 3


შეიყვანეთ საჭირო ველში ნომერი 4 (ორობითი 00000100) და დააჭირეთ ღილაკს "გაგზავნა". ამის შემდეგ, ოთხივე LED იქნება ჩართული. ფაქტია, რომ CR, CR და CR განმუხტვები უკავშირდება კონექტორის ქინძისთავებს ინვერტორების საშუალებით, ამიტომ, როდესაც ამ განმუხტვებზე 0 წერია, მათი შესაბამისი ქინძისთავები მაღალი ხდება. მხოლოდ HL3 LED- ის ჩასართავად, უნდა მიუთითოთ ნომერი 15 (ორობითი 00001111), ხოლო როდესაც შეიყვანოთ ნომერი 11 (ორობითი 0001011), ყველა LED გამორთული იქნება. საკონტროლო რეესტრის ყველაზე მნიშვნელოვანი ბიტი (CR-CR) არ არის დაკავშირებული შემაერთებელი ქინძისთავებით, ამიტომ მათ მდგომარეობას ამ შემთხვევაში მნიშვნელობა არ აქვს.

სამუშაოს შესასწავლად სტატუსის რეესტრთან SR, ჩვენ ვუკავშირდებით კვანძს პორტის კონექტორს, რომლის დიაგრამა ნაჩვენებია ნახატზე. ოთხი.


როდესაც SA1-SA5 კონცენტრატორები ღიაა, მაღალი ლოგიკური დონის ძაბვა მიეწოდება კონექტორის კონტაქტებს R1-R5 რეზისტორების მეშვეობით. მისი წყარო შეიძლება იყოს ნებისმიერი ქსელის ადაპტერი, 5 ვ გამოსასვლელი ძაბვით, სამი გალვანური უჯრედის ბატარეა და LPT პორტის ერთ-ერთი გამოსასვლელიც კი, რომელზეც მითითებულია ძაბვის საჭირო დონე ადრე აღწერილი მეთოდით. ბევრ კომპიუტერში R1-R5– ის მსგავსი რეზისტორები უკვე ხელმისაწვდომია; ასეთ შემთხვევებში საჭირო არ არის გარე რეზისტორების დაყენება.

როდესაც დააჭერთ ღილაკს "მიღება", ქვეპროექტი შესრულდება

Private Sub Command5_c1ick ()
Text3.Text = Inp (& H379)
დასრულება ქვე

ეს ღილაკს ზემოთ მოცემულ ველში აჩვენებს SR რეესტრის შინაარსის აღმნიშვნელ რიცხვს. თუ ყველა კონცენტრატორი (სურათი 4) ღიაა, ეს იქნება 126 (ორობითი 01111110), ხოლო თუ ისინი დახურულია, ეს იქნება 134 (10000110). SR-SR ბიტების მნიშვნელობები შეესაბამება დამაკავშირებლის შესაბამის პინებზე გამოყენებულ დონებს, ხოლო SR ბიტების მნიშვნელობა უკუპროპია 11-ე დონეზე. ვინაიდან SR-SR– ის ყველაზე ნაკლებად მნიშვნელოვანი ბიტია არ გამოდის კონექტორზე, მათი მნიშვნელობები არ არის დამოკიდებული მის ქინძისთავებზე გამოყენებულ სიგნალებზე.

პორტის მთავარი რეგისტრია DR მონაცემთა რეგისტრი მისამართზე & H378. მისი საშუალებით ხდება ბეჭდური ინფორმაციის ბაიტ-ბაიტი გადაცემა პრინტერზე. რეგისტრატორის რვავე ბიტი უკავშირდება შემაერთებელ ქინძისთავებს და ინვერტორების გარეშე. ამ რვა ქსელს ხშირად უწოდებენ მონაცემთა ავტობუსს. თავდაპირველ მდგომარეობაში ის მუშაობს მხოლოდ გამომავალზე. თუმცა, თითქმის ყველა თანამედროვე კომპიუტერებიშესაძლებელია მისი გადართვა რვა ბიტიანი ორობითი კოდების პარალელურ შეყვანაზე. ამისათვის საკმარისია დაწეროთ ის საკონტროლო რეესტრის CR ბიტზე.

სამწუხაროდ, Centronics რეჟიმში, არანაირი სიგნალი არ მიდის LPT პორტის მონაცემთა ავტობუსის მიმართულების მიმართულებით. ამიტომ განსაკუთრებული ყურადღება უნდა მიექცეს გარე სიგნალების გამოყენებას ამ ავტობუსში მხოლოდ მას შემდეგ, რაც დარწმუნდება, რომ იგი დაპროგრამებულია მიღებაში. წინააღმდეგ შემთხვევაში, შეიძლება დაზიანდეს როგორც თავად კომპიუტერის ინტერფეისი, ასევე პორტთან დაკავშირებული სიგნალის წყარო. ეს მინუსი აღმოიფხვრება EPP და ECP რეჟიმებში, სადაც მოცემულია სიგნალების სრული კომპლექტი, პარალელური პორტის მონაცემთა ავტობუსზე ინფორმაციის გადაცემის მიმართულების კონტროლის მიზნით.

განსახილველ სატესტო პროგრამაში ქვეპროგრამი მუშაობს მონაცემთა რეესტრთან

Private Sub Command3_Click ()
Out & H378, ტექსტი 1. ტექსტი
Text1.Text = Inp (& H378)
დასრულება ქვე

ღილაკზე "OK" რომ დააჭიროთ, იგი მონაცემების რეესტრს აწერს ღილაკს ზემოთ მოცემული ველიდან და შემდეგ კითხულობს რეგისტრის შინაარსს და აჩვენებს მას იმავე ველში. ბუნებრივია, თუ რეესტრი მუშაობს როგორც გამავალი რეესტრი (ეკრანზე აღინიშნება "გადაცემის" ელემენტი), ველში ნომერი იგივე რჩება. იმისათვის, რომ დარწმუნდეთ, რომ ამ შემთხვევაში პორტის კონექტორის 2-9 ქინძისთავების ლოგიკური დონე შეესაბამება ველში ხელით შეყვანილ მონაცემებს და ჩაწერილია მონაცემთა რეესტრში, მიერთეთ კავშირთან კვანძის მსგავსი, რომელიც ნაჩვენებია ნახაზზე. 3, მაგრამ LED– ებისა და რეზისტორების რაოდენობის გაზრდა რვაზე.

მონაცემთა ავტობუსის შეყვანაზე გადასვლის ოპერაცია ხორციელდება ქვეპროგრამით

პირადი ქვე ვარიანტი 1_Click ()
Out & H37A, 32
დასრულება ქვე

მას უწოდებენ რადიოს ღილაკს "მიღება". "გადაცემის" ღილაკს ეძახიან მსგავს ქვეპროგრამას, რომელიც განსხვავდება მხოლოდ იმით, რომ იგი წერს საკონტროლო რეესტრს არა 32 (ორობითი 00100000), არამედ ნულით, ამრიგად, მონაცემების ავტობუსი გამოდის რეჟიმში.

როდესაც მონაცემთა ავტობუსი შეყვანის რეჟიმშია, ადრე განხილული OK ქვეპროგრამაში Out პროცედურა რეალურად არ მუშაობს. ამასთან, Inp ფუნქცია აბრუნებს მნიშვნელობას, რომელიც შეესაბამება დონეს 2-9 ქინძისთავებზე, რომლებიც მითითებულია მათთან დაკავშირებული გარე წრეების მიერ. ის OK რიცხვის ზემოთ მოცემულ ველში ჩანს, როგორც ათობითი რიცხვი. თქვენ შეგიძლიათ დააყენოთ ლოგიკური დონე მონაცემთა ავტობუსის ხაზებზე, ისეთი კვანძის გამოყენებით, რომელიც გამოიყენება სტატუსის რეესტრთან მუშაობისთვის (ნახ .4).

იმისათვის, რომ პროგრამა არ გართულდეს, არ არის მითითებული "გაგზავნის" ღილაკზე ზემოთ განთავსებული ღილაკი "გაგზავნა" ღილაკზე "მიღება" და "გადაცემა" ღილაკების გამოყენებით.

სტატიაში მოცემული მაგალითების ათვისებისას, ჩვენ ვისწავლეთ, თუ როგორ უნდა გამოვიყენოთ კომპიუტერის პორტიდან 12 და გამოვა მასში 5 ლოგიკური სიგნალი, ან (სხვა რეჟიმში) გამოვა 4 და შევა 13 ასეთი სიგნალი. ახლა შესაძლებელია ბევრად უფრო რთული პროგრამებისა და მოწყობილობების შემუშავება, რომლებიც დაკავშირებულია LPT პორტით კომპიუტერთან.

რედაქტორისგან. სტატიაში ნახსენები ფაილები და სატესტო პროგრამასთან მუშაობისთვის საჭირო სხვა ფაილები განლაგებულია ჩვენს FTP სერვერზე ftp://ftp.radio.ru/pub/2007/09/testlpt.zip

რადიო 2007 No 9

პარალელური ინტერფეისის პორტი შემოვიდა PC- ში, პრინტერის დასაკავშირებლად - აქედან მოდის მისი სახელი LPT- პორტი (Line PrinTer - ხაზოვანი პრინტერი). ტრადიციული, ასევე სტანდარტული, LPT პორტი (ე.წ. SPP პორტი) ფოკუსირებულია მონაცემთა გამომუშავებაზე, თუმცა მონაცემთა შეყვანის საშუალებას იძლევა გარკვეული შეზღუდვებით. არსებობს LPT პორტის სხვადასხვა მოდიფიკაცია - ორმხრივი, EPP, ECP და სხვა, რომლებიც განაპირობებს მის ფუნქციურობას, ზრდის მუშაობას და ამცირებს პროცესორის დატვირთვას. თავდაპირველად ეს ინდივიდუალური მწარმოებლების საკუთრების გადაწყვეტილებები იყო, მოგვიანებით კი IEEE 1284 სტანდარტი მიიღეს.

გარედან, პორტს აქვს 8 ბიტიანი მონაცემთა ავტობუსი, 5 ბიტიანი სტატუსის სიგნალის ავტობუსი და 4 ბიტიანი საკონტროლო სიგნალის ავტობუსი, რომელიც გადაადგილებულია DB-25S ქალის კონექტორზე. LPT პორტი იყენებს TTL ლოგიკურ დონეს, რაც ზღუდავს საკაბელო დასაშვებ სიგრძეს TTL ინტერფეისის დაბალი ხმაურის იმუნიტეტის გამო. არ არსებობს გალვანური იზოლაცია - დაკავშირებული მოწყობილობის მიკროსქემის ქსელი უკავშირდება კომპიუტერის წრიულ მიწას. ამის გამო, პორტი წარმოადგენს კომპიუტერის დაუცველობას, განიცდის მოწყობილობების შეერთებისა და დამიწების წესების დარღვევას. მას შემდეგ, რაც პორტი ჩვეულებრივ დედაპლატაზეა განთავსებული, თუ იგი „დაიწვა“, მისი უშუალო გარემო ხშირად ვერ ხერხდება, იქამდე, სანამ მთელი დედაპლატა იწვის.

პროგრამული უზრუნველყოფის მხრივ, LPT პორტი არის რეგისტრების ერთობლიობა, რომელიც მდებარეობს I / O სივრცეში. პორტის რეგისტრები მიმართულია პორტის ბაზის მისამართთან შედარებით, რომლის ნაგულისხმევი მნიშვნელობებია 3BCh, 378h და 278h. პორტს შეუძლია გამოიყენოს აპარატური წყვეტის მოთხოვნის ხაზი, ჩვეულებრივ IRQ7 ან IRQ5. გაფართოებულ რეჟიმებში ასევე შეიძლება გამოყენებულ იქნას DMA არხი.

პორტს აქვს მხარდაჭერა BIOS დონეზე - დაინსტალირებული პორტების ძიება POST ტესტისა და Int 17h ბეჭდვის სერვისების დროს (იხ. ნაწილი 8.3.3) უზრუნველყოფს სიმბოლოს გამოცემას (გამოკითხვის გზით, აპარატური წყვეტების გარეშე), ინტერფეისისა და პრინტერის ინიცირება ასევე გამოკითხვის პრინტერის სტატუსი. თითქმის ყველა თანამედროვე დედაპლატს (დაწყებული PCI ბარათებით 486 პროცესორისთვის) აქვს ჩაშენებული LPT პორტის ადაპტერი. არსებობს ISA ბარათები LPT პორტით, სადაც იგი ყველაზე ხშირად ესაზღვრება წყვილი COM პორტების, ასევე დისკის ინტერფეისის კონტროლერების (FDC + IDE) მიმდებარედ. LPT პორტი ჩვეულებრივ არის ჩვენების ადაპტერის დაფაზე MDA (მონოქრომული ტექსტი) და HGC (მონოქრომული გრაფიკა "Hercules"). ასევე არსებობს PCI ბარათები დამატებითი LPT პორტით.

პრინტერები, პლოტერები, სკანერები, საკომუნიკაციო და შენახვის მოწყობილობები, აგრეთვე ელექტრონული გასაღებები, პროგრამისტები და სხვა მოწყობილობები უკავშირდება LPT პორტებს. ზოგჯერ პარალელური ინტერფეისი გამოიყენება ორ კომპიუტერს შორის კომუნიკაციისთვის, რის შედეგადაც ხდება LapLink ქსელი.

1.1. ტრადიციული LPT პორტი

ტრადიციულ, ასევე სტანდარტულ LPT პორტს ეწოდება სტანდარტული პარალელური პორტი (SPP), ან SPP პორტი და წარმოადგენს ერთმხრივ პორტს, რომლის მეშვეობითაც ხდება პროგრამული უზრუნველყოფის დანერგვა Centronics გაცვლის პროტოკოლით (იხ. ნაწილი 8.3.1). პორტის შემაერთებელი სიგნალების სახელი და დანიშნულება (ცხრილი 1.1) შეესაბამება Centronics- ის ინტერფეისს.

ცხრილი 1.1. სტანდარტული LPT პორტის კონექტორი

დაუკავშირდით DB-25S- ს კაბელის მავთულის რაოდენობა I / O დავალება ცოტა სიგნალი
1 1 ო / მე CR.0 \ Strobe #
2 3 ო (მე) DR.0 მონაცემები 0
3 5 ო (მე) DR.1 მონაცემები 1
4 7 ო (მე) DR.2 მონაცემები 2
5 9 ო (მე) DR.3 მონაცემები 3
6 11 ო (მე) DR.4 მონაცემები 4
7 13 ო (მე) DR.5 მონაცემები 5
8 15 ო (მე) DR.6 მონაცემები 6
9 17 ო (მე) DR.7 მონაცემები 7
10 19 მე SR.6 Ack #
11 21 მე SR.7 \ Დაკავებული
12 23 მე SR.5 PaperEnd (PE)
13 25 მე სრ .4 აირჩიეთ
14 2 ო / მე CR.1 \ Auto LF # (AutoFeed #)
15 4 მე SR.3 შეცდომა #
16 6 ო / მე CR.2 Მასში #
17 8 ო / მე CR.3 \ აირჩიეთ #
18-25 10, 12, 14, 16, 18, 20, 22, 24, 26 - - -

¹ I / O ადგენს პორტის სიგნალის გადაცემის მიმართულებას (შეყვანა-გამომავალი). O / I აღნიშნავს გამომავალ ხაზებს, რომელთა მდგომარეობა იკითხება გამომავალი პორტებიდან კითხვისას; O (I) - გამომავალი ხაზები, რომელთა მდგომარეობის წაკითხვა შესაძლებელია მხოლოდ სპეციალურ პირობებში (იხ. ქვემოთ).

² სიმბოლო "\" აღნიშნავს შებრუნებულ სიგნალებს (რეესტრში 1 შეესაბამება ხაზის დაბალ დონეს).

³ შეყვანის Ack # უკავშირდება რეზისტორს (10 kOhm) + 5 V– ით.

SPP პორტის ადაპტერი შეიცავს სამ 8-ბიტიან რეგისტრს, რომლებიც განთავსებულია მიმდებარე მისამართებზე I / O სივრცეში, დაწყებული BASE პორტის საბაზისო მისამართიდან (3BCh, 378h ან 278h).

მონაცემთა რეესტრი (DR) - მონაცემთა რეგისტრი, მისამართი = BASE. ამ რეესტრში დაწერილი მონაცემები გამოდის მონაცემთა გამომუშავების ხაზებში. ამ რეესტრიდან წაკითხული მონაცემები, ადაპტერის სქემებიდან გამომდინარე, შეესაბამება ან ადრე ჩაწერილ მონაცემებს, ან სიგნალებს იმავე ხაზებზე, რომლებიც ყოველთვის არ არის ერთი და იგივე.

სტატუსის რეგისტრაცია (SR) - სტატუსის რეესტრი (მხოლოდ წაკითხვა), მისამართი = BASE + 1. რეგისტრი აჩვენებს 5-ბიტიანი პრინტერის სტატუსის შეყვანის პორტს (ბიტი SR.4-SR.7) და წყვეტის დროშა. SR.7 ბიტი ინვერსიულია - რეგისტრის ერთი ბიტის მნიშვნელობა შეესაბამება სიგნალის დაბალ დონეს და პირიქით.

ქვემოთ მოცემულია სტატუსის რეესტრის ბიტების დანიშნულება (პორტის შემაერთებლის პინის ნომრები მოცემულია ფრჩხილებში).

R SR.7 - Busy - Busy ხაზის მდგომარეობის შებრუნებული ჩვენება (11): როდესაც დონე დაბალია, ხაზზე მითითებულია ერთი ბიტიანი მნიშვნელობა - შემდეგი ბაიტის გამოშვების ნებართვა.

R SR.6 - Ack (აღიარება) - Ack # ხაზის სტატუსის ჩვენება (10).

R SR.5 - PE (Paper End) - აჩვენებს Paper End ხაზის მდგომარეობას (12). ერთი მნიშვნელობა შეესაბამება ხაზის მაღალ დონეს - სიგნალი პრინტერში ქაღალდის დასრულების შესახებ.

♦ SR.4 - აირჩიეთ - აჩვენებს აირჩიეთ ხაზის სტატუსს (13). ერთი მნიშვნელობა შეესაბამება ხაზის მაღალ დონეს - სიგნალი პრინტერის ჩართვისთვის.

R SR.3 - შეცდომა - აჩვენებს შეცდომის # ხაზის სტატუსს (15). ნულოვანი მნიშვნელობა შეესაბამება ხაზის დაბალ დონეს - ნებისმიერი პრინტერის შეცდომის სიგნალი.

R SR.2 - PIRQ - Ack # წყვეტილი დროშა (მხოლოდ PS / 2 პორტისთვის). ბიტი იწმინდება, თუ Ack # სიგნალმა გამოიწვია ტექნიკის შეწყვეტა. ერთ მნიშვნელობას ადგენს აპარატურის გადატვირთვა და სტატუსის რეესტრის წაკითხვის შემდეგ.

♦ SR - დაცულია.

საკონტროლო რეგისტრი (CR) - საკონტროლო რეესტრი, მისამართი = BASE + 2, შეგიძლიათ დაწეროთ და წაიკითხოთ. რეგისტრი ასოცირდება კონტროლის სიგნალების 4 ბიტიანი გამომავალი პორტით (0–3 ბიტი), რომელთა წაკითხვაც შესაძლებელია; გამომავალი ბუფერი ჩვეულებრივ "ღია კოლექტორის" ტიპისაა. ეს საშუალებას გაძლევთ სწორად გამოიყენოთ ამ რეესტრის სტრიქონები შეყვანისას, მაღალ დონეზე პროგრამირებისას. 0, 1, 3 ბიტი შებრუნებულია.

ქვემოთ მოცემულია საკონტროლო რეესტრის ბიტების დანიშნულება.

♦ CR - დაცულია.

.5 CR.5 - მიმართულება - გადაცემის მიმართულების მართვის ბიტი (მხოლოდ PS / 2 პორტისთვის, იხილეთ ქვემოთ). ამის დაწერა მონაცემთა პორტს აყენებს შეყვანის რეჟიმში. კითხვის დროს, ბიტის მდგომარეობა განუსაზღვრელია.

♦ CR.4 - AckINTEN (Ack Interrupt Enable) - ერთი მნიშვნელობა იძლევა Ack # ხაზის სიგნალის ჩამოშლის შეწყვეტას - შემდეგი ბაიტის მოთხოვნის სიგნალს.

♦ CR.3 - აირჩიეთ In - ერთი ბიტიანი მნიშვნელობა შეესაბამება დაბალ დონეს Select In # გამომავალი (17) სიგნალი, რომელიც საშუალებას აძლევს პრინტერს მუშაობას Centronics ინტერფეისის საშუალებით.

.2 CR.2 - საწყისი - ნულოვანი ბიტის მნიშვნელობა შეესაბამება დაბალ დონეს Init გამოსასვლელი # (16) - პრინტერის აპარატურის გადატვირთვის სიგნალზე.

♦ CR.1 - ავტო LF - ერთი ბიტიანი მნიშვნელობა შეესაბამება დაბალ დონეს Auto LF # გამომავალი (14) - სიგნალი ავტომატური ხაზის კვებისათვის (LF - Line Feed) ვაგონის დაბრუნების (CR) ბაიტის მიღებისთანავე. სიგნალს და ბიტს ზოგჯერ მოიხსენიებენ როგორც AutoFD ან AutoFDXT.

♦ CR.0 - Strobe - ერთი ბიტიანი მნიშვნელობა შეესაბამება დაბალ დონეს Strobe # (1) - გამომავალი მონაცემების strobe სიგნალი.

ტექნიკის შეწყვეტის მოთხოვნა (ჩვეულებრივ IRQ7 ან IRQ5) წარმოიქმნება უარყოფითი სიგნალის პირით ინტერფეისის კონექტორის მე –10 პინზე (Ack #), როდესაც CR.4 მითითებულია 1 – ზე. ყალბი შეფერხებების თავიდან ასაცილებლად, pin 10 არის რეზისტორი, რომელიც უკავშირდება +5 V. სარკინიგზო ხაზს. შეფერხება წარმოიქმნება, როდესაც პრინტერი აღიარებს წინა ბაიტის მიღებას. როგორც უკვე აღვნიშნეთ, BIOS არ იყენებს ამ წყვეტს და არ ემსახურება მას.

მოდით ჩამოვთვალოთ ბაიტის გამომავალი პროცედურის ნაბიჯები Centronics– ის ინტერფეისის საშუალებით, რაც მიუთითებს პროცესორის ავტობუსის ოპერაციების საჭირო რაოდენობას.

1. ბაიტის გამოტანა მონაცემთა რეესტრში (1 ციკლი IOWR #).

2. შედით სტატუსის რეესტრიდან და შეამოწმეთ არის თუ არა მოწყობილობა მზად (ბიტი SR.7 - დაკავებული სიგნალი). ეს ნაბიჯი შეჩერდება მზაობისთვის ან სანამ პროგრამული უზრუნველყოფის დრო ამოიწურება (მინიმუმ 1 IORD # ციკლი).

3. მზადყოფნის მიღებისთანავე, მონაცემთა სტრობას ადგენს კონტროლის რეესტრის გამომუშავება, ხოლო მომდევნო გამომავალიდან ამოღებულია სტრობი. ჩვეულებრივ, მხოლოდ ერთი ბიტის (strobe) გადართვისთვის, კონტროლის რეესტრი წინასწარ იკითხება, რაც IOWR # ორ ციკლს უმატებს სხვა IORD # ციკლს.

ჩანს, რომ პორტის რეგისტრატორებთან 4-5 I / O ოპერაცია საჭიროა ერთი ბაიტის გამოსასვლელად (საუკეთესო შემთხვევაში, როდესაც მზაობა გამოვლინდება სტატუსის რეესტრის პირველი წაკითხვით). აქედან გამომდინარეობს შემდეგი მთავარი ნაკლიგამომავალი სტანდარტული პორტის საშუალებით - დაბალი გაცვლითი კურსი, პროცესორის მნიშვნელოვანი დატვირთვით. პორტის გადატვირთვა შესაძლებელია 100-150 კბ / წმ სიჩქარით, პროცესორის სრული დატვირთვით, რაც არ არის საკმარისი დაბეჭდვისთვის ლაზერული პრინტერი... კიდევ ერთი ფუნქციური ნაკლი არის შეყვანის პორტად გამოყენების სირთულე.

სტანდარტული პორტი ასიმეტრიულია - თუ 12 სტრიქონი (და ბიტი) მუშაობს ჩვეულებრივ გამომავალზე, მხოლოდ 5 სტატუსის ხაზი მუშაობს შეყვანაზე. თუ საჭიროა სიმეტრიული ორმხრივი კომუნიკაცია, Nibble რეჟიმი მუშაობს ყველა სტანდარტულ პორტში. ამ რეჟიმში, რომელსაც ასევე მოუწოდა Hewlett Packard Bi-tronics, ერთდროულად მიიღება 4 მონაცემთა ბიტი, მეხუთე ხაზი გამოიყენება ხელის ჩამორთმევისთვის. ამრიგად, თითოეული ბაიტი გადადის ორ ციკლში და თითოეული ციკლი მოითხოვს მინიმუმ 5 I / O ოპერაციას.

LPT პორტის გამომავალი მონაცემთა ბუფერების სქემები ძალიან მრავალფეროვანია. მრავალ ძველ ადაპტერზე, SPP მონაცემთა პორტი შეიძლება გამოყენებულ იქნას შეყვანისთვისაც. თუ მონაცემთა პორტში დაწერეთ ბაიტი ყველა ციფრით და გაგზავნით ნებისმიერი კოდი ინტერფეისის გამომავალ ხაზებზე მიკროცირკეტების საშუალებით "ღია კოლექტორის" ტიპის გამომავალი (ან დააკავშირეთ რამდენიმე ხაზი გასაღებით მიწასთან), მაშინ ამ კოდის წაკითხვა შესაძლებელია მონაცემთა იმავე რეგისტრიდან. ამასთან, ინფორმაციის გადამცემის გამომავალ წრეებს მოუწევს "ბრძოლა" ადაპტერის გამომავალი ბუფერების ლოგიკური ერთეულის გამოსასვლელ დენთან. TTL სქემა არ კრძალავს ასეთ გადაწყვეტილებებს, მაგრამ თუ გარე მოწყობილობა დამზადებულია CMOS მიკროსქემებზე, მათი სიმძლავრე შეიძლება არ იყოს საკმარისი ამ ავტობუსის კონფლიქტის მოსაგებად. ამასთან, თანამედროვე ადაპტერებს ხშირად აქვთ დამამთავრებელი რეზისტორი, გამავალი წრეში 50 ომ-მდე წინააღმდეგობით. გამომავალი მიმდინარეობა მოკლე ჩართვაგამომავალი მიწაზე ჩვეულებრივ არ აღემატება 30 mA- ს. მარტივი გაანგარიშებით ჩანს, რომ შემაერთებლის მიწასთან მოკლედ შერთვის შემთხვევაშიც კი, როდესაც "ერთი" გამოდის, 1.5 ვ ძაბვა ეცემა ამ რეზისტორს, რაც მიმღების მიერ აღიქმება როგორც "ერთი". შეყვანის სქემა. ამიტომ, არ შეიძლება ვივარაუდოთ, რომ შეყვანის ეს მეთოდი იმუშავებს ყველა კომპიუტერზე. ზოგიერთ ძველ პორტის გადამყვანზე გამომავალი ბუფერი გამორთულია დაფაზე ჯამპრით. შემდეგ პორტი იქცევა ჩვეულებრივ შეყვანის პორტად.

1.2. პარალელური პორტის გაფართოებები

სტანდარტული პორტის ხარვეზებს ნაწილობრივ აღმოფხვრა ახალი ტიპის პორტები PS / 2 კომპიუტერებში.

ორმხრივი პორტი 1 (ტიპი 1 პარალელური პორტი) არის ინტერფეისი, რომელიც შემოდის PS / 2 – ში. ასეთ პორტს, სტანდარტული რეჟიმის გარდა, შეუძლია შეყვანა ან ბი-მიმართულების რეჟიმში. გაცვლის პროტოკოლი იქმნება პროგრამული უზრუნველყოფით, ხოლო გადაცემის მიმართულების მითითებით, სპეციალური ბიტი CR.5 შემოდის პორტის კონტროლის რეესტრში: 0 - მონაცემთა ბუფერი მუშაობს გამომავალზე, 1 - შეყვანისთვის. ნუ ერევით ამ პორტს, რომელსაც ასევე ეწოდება გაუმჯობესებული ორმხრივი, EPP– სთან. ამ ტიპისპორტი "შეეჩვია" და ჩვეულებრივ კომპიუტერებში, CMOS Setup– ში მას PS / 2 ან Bi-Di შეიძლება ეწოდოს.

პორტი პირდაპირი მეხსიერების წვდომით (Type 3 DMA პარალელური პორტი) გამოიყენებოდა PS / 2 მოდელებში 57, 90, 95. იგი შემოვიდა პრინტერზე გასვლისას გამტარუნარიანობის გაზრდისა და პროცესორის ჩამოტვირთვის მიზნით. პორტთან მომუშავე პროგრამას მხოლოდ მონაცემთა ბლოკის დაყენება სჭირდებოდა მეხსიერებაში გამოსასვლელად, შემდეგ კი გამოსვლა Centronics პროტოკოლის გამოყენებით შესრულდა პროცესორის მონაწილეობის გარეშე.

მოგვიანებით, LPT პორტების სხვა გადამყვანები გამოჩნდნენ, რომლებიც ახორციელებენ Centronics გაცვლის პროტოკოლს ტექნიკაში - Fast Centronics. ზოგიერთმა მათგანმა გამოიყენა FIFO მონაცემთა ბუფერი - პარალელური პორტის FIFO რეჟიმი. არ არის სტანდარტიზებული, ასეთი პორტები სხვადასხვა მწარმოებლებიმოითხოვდნენ თავიანთ სპეციალურ დრაივერებს. პროგრამებს, რომლებიც იყენებენ სტანდარტული პორტის რეგისტრების პირდაპირ კონტროლს, მათი გამოყენება შეუძლებელია დამატებითი ფუნქციები... ეს პორტები ხშირად VLB მულტიკარდის ნაწილი იყო. არსებობს მათი ვარიანტები ISA ავტობუსით, ისევე როგორც სისტემის დაფაზე.

1.3. IEEE 1284 სტანდარტი

IEEE 1284 პარალელური ინტერფეისის სტანდარტი, რომელიც მიღებულია 1994 წელს, აღწერს SPP, EPP და ECP პორტებს. სტანდარტი განსაზღვრავს კომუნიკაციის 5 რეჟიმს, რეჟიმში მოლაპარაკების მეთოდს, ფიზიკურ და ელექტრულ ინტერფეისებს. IEEE 1284-ის თანახმად, პარალელური პორტის საშუალებით შესაძლებელია კომუნიკაციის შემდეგი რეჟიმები:

♦ თავსებადობის რეჟიმი - ცალმხრივი (გამომავალი) Centronics პროტოკოლის საშუალებით. ეს რეჟიმი შეესაბამება SPP პორტს.

♦ Nibble რეჟიმი - შეიტანეთ ბაიტი ორ ციკლში (თითო 4 ბიტი) სტატუსის ხაზის მისაღებად. გაცვლის ეს რეჟიმი შესაფერისია ნებისმიერი გადამყვანებისთვის, რადგან ის იყენებს მხოლოდ სტანდარტული პორტის შესაძლებლობებს.

♦ ბაიტის რეჟიმი - მთელი ბაიტის შეყვანა მონაცემთა ხაზების გამოყენებით. ეს რეჟიმი მუშაობს მხოლოდ პორტებზე, რომლებსაც შეუძლიათ გამომავალი მონაცემების წაკითხვა (Bi-Directional ან PS / 2 Type 1, იხილეთ ზემოთ).

♦ EPP რეჟიმი (EPP რეჟიმი) - მონაცემთა ორმხრივი გაცვლა (EPP ნიშნავს Enhanced Parallel Port). ინტერფეისის მართვის სიგნალები წარმოიქმნება აპარატში პორტის დაშვების ციკლის განმავლობაში. ეფექტურია მოწყობილობებთან მუშაობისას გარე მეხსიერებადა LAN ადაპტერები.

♦ ECP რეჟიმი (ECP რეჟიმი) - მონაცემთა ორმხრივი გაცვლა, აპარატურის მონაცემთა შეკუმშვის შესაძლებლობით, RLE (ხანგრძლივობის კოდირების) მეთოდით და FIFO- ბუფერებისა და DMA- ს გამოყენებით (ECP ნიშნავს გაფართოებული შესაძლებლობის პორტი). ინტერფეისის მართვის სიგნალები წარმოიქმნება აპარატურით. ეფექტურია პრინტერებისა და სკანერებისათვის (შეკუმშვის გამოყენება შეგიძლიათ აქ) და ბლოკირების სხვადასხვა მოწყობილობებისთვის.

სტანდარტი განსაზღვრავს გზას, რომლითაც პროგრამულ უზრუნველყოფას შეუძლია განსაზღვროს რეჟიმი, რომელიც ხელმისაწვდომია როგორც მასპინძლისთვის (PC), ასევე პერიფერიული მოწყობილობისთვის (ან თანდართული მეორე კომპიუტერი). არასტანდარტული პორტების რეჟიმები, რომლებიც ახორციელებენ Centronics გაცვლის პროტოკოლს აპარატში (Fast Centronics, Parallel Port FIFO Mode) შეიძლება არ იყოს IEEE 1284 რეჟიმი, მიუხედავად EPP და ECP მახასიათებლებისა.

კომპიუტერებში, რომლებსაც დედაპლატაზე აქვთ LPT პორტი, რეჟიმი - SPP, EPP, ECP ან მათი კომბინაცია - დაყენებულია BIOS Setup- ში. თავსებადობის რეჟიმი სრულად შეესაბამება SPP პორტს. დანარჩენ რეჟიმებს დეტალურად განვიხილავთ ქვემოთ.

გაცვლის რეჟიმების აღწერისას, შემდეგი ცნებები ჩანს:

მასპინძელი - კომპიუტერი პარალელური პორტით;

♦ PU - ამ პორტთან დაკავშირებული პერიფერიული მოწყობილობა;

T Ptr - მიუთითებს გადამცემი CP სიგნალის სახელებში;

♦ პირდაპირი არხი - არხი მონაცემების მასპინძელიდან CP- ზე გასასვლელად;

♦ დაბრუნების არხი - არხი მონაცემთა შეყვანისთვის მასპინძელში CP- დან.

1.3.1. Nibble რეჟიმი

კბენის რეჟიმი არის ორმხრივი კომუნიკაციისთვის და შეუძლია იმუშაოს ყველა სტანდარტულ პორტზე. პორტებს აქვთ 5 სტატუსის შეყვანის ხაზი, რომელთა საშუალებით PU- ს შეუძლია მასპინძელს გაუგზავნოს ბაიტი ტეტრადებით (nibble - nibble, 4 ბიტი) ორ ეტაპად. Ack # სიგნალი, რომელიც იწვევს წყვეტს, რომლის გამოყენებაც ამ რეჟიმში შეიძლება, შეესაბამება სტატუსის რეესტრის ბიტ 6-ს, რაც ართულებს ბიტის ბიტუმის აწყობისას ბიტებზე პროგრამული მანიპულირებას. პორტის სიგნალები ნაჩვენებია ცხრილში. 1.2, დროის დიაგრამები - ნახ. 1.1.

ცხრილი 1.2. LPT პორტის სიგნალები კბილების შეყვანის რეჟიმში

კონტაქტი SPP სიგნალი I / O ბიტი აღწერა
14 ავტომომარაგება # CR.1 \ HostBusy - ხელის ჩამორთმევის სიგნალი. დაბალი დონე ნიშნავს ტეტრადის მიღების მზადყოფნას, მაღალი დონე ადასტურებს ტეტრადის მიღებას
17 აირჩიეთ # CR.3 \
10 Ack # მე SR.6 PtrClk. დაბალი დონე ნიშნავს, რომ ნოუთბუქი მზად არის, მაღალი დონე ნიშნავს პასუხს HostBusy სიგნალზე
11 Დაკავებული მე SR.7 მიიღეთ მონაცემთა ბიტი 3, შემდეგ კი ბიტი 7
12 PE მე SR.5 მიიღეთ მონაცემთა ბიტი 2, შემდეგ კი ბიტი 6
13 აირჩიეთ მე სრ .4 მიიღეთ მონაცემთა ბიტი 1, შემდეგ კი ბიტი 5
15 შეცდომა # მე SR.3 მიიღეთ მონაცემთა ბიტი 0, შემდეგ კი ბიტი 4

ნახ. 1.1. მონაცემების მიღება კბენის რეჟიმში

მონაცემთა ბაიტის მიღება nibble რეჟიმში შედგება შემდეგი ფაზებისგან:

2. PU რეაგირებს შტატის შეყვანის ხაზებზე ტეტრადის განთავსებით.

3. PU აჩვენებს ტეტრადის მზაობას PtrClk ხაზზე დაბალი დონის დაყენებით.

4. მასპინძელი ადგენს HostBusy სტრიქონს მაღლა და მიუთითებს, რომ ის დაკავებულია ტეტრადის მიღებით და დამუშავებით.

6. მეორე ტეტრადისთვის მეორდება 1-5 ნაბიჯი.

კბენის რეჟიმი მძიმედ ტვირთავს პროცესორს და შეუძლებელია გაცვლითი კურსის 50 კბ / წმ-ზე ზემოთ აწევა. მისი უეჭველი უპირატესობა ის არის, რომ ის მუშაობს ყველა პორტზე. იგი გამოიყენება იმ შემთხვევებში, როდესაც მონაცემთა ნაკადის რაოდენობა მცირეა (მაგალითად, პრინტერებთან კომუნიკაციისთვის). ამასთან, LAN ადაპტერებთან, გარე დისკებთან და CD-ROM- ებთან კომუნიკაციისას, დიდი რაოდენობით მონაცემების მიღება მოითხოვს მოთმინების დიდ რაოდენობას მომხმარებლის მხრიდან.

1.3.2. ორმხრივი ბაიტის რეჟიმი - ბაიტის რეჟიმი

ამ რეჟიმში მონაცემები მიიღება ორმხრივი პორტის გამოყენებით, რისთვისაც გამომავალი მონაცემების ბუფერის გამორთვა შესაძლებელია CR.5 ბიტის = 1 დაყენებით. ისევე როგორც წინა, რეჟიმი კონტროლდება პროგრამული უზრუნველყოფით - ყველა აღიარების სიგნალს აანალიზებს და ადგენს მძღოლი. პორტის სიგნალები აღწერილია ცხრილში. 1.3, დროის დიაგრამები - ნახ. 1.2.

ცხრილი 1.3. LPT პორტის სიგნალები ბაიტის I / O რეჟიმში

კონტაქტი SPP სიგნალი სახელი ბაიტის რეჟიმში I / O ბიტი აღწერა
1 Strobe # HostClk CR.0 \ პულსი (დაბალი დონე) ადასტურებს ბაიტის მიღებას თითოეული ციკლის ბოლოს
14 ავტომომარაგება # მასპინძელი ბიზნესი მის შესახებ CR.1 \ მადლობის სიგნალი. დაბალი დონე ნიშნავს, რომ მასპინძელი მზად არის ბაიტის მისაღებად; მაღალ დონეზე დგინდება ბაიტი
17 აირჩიეთ # 1284 აქტიური მის შესახებ CR.3 \ მაღალი დონე მიუთითებს გაცვლაზე IEEE 1284 რეჟიმში (SPP რეჟიმში, დონე დაბალია)
16 Მასში # Მასში # CR.2 Არ გამოიყენება; მაღლა დააყენა
10 Ack # PtrClk მე SR.6 იგი დგინდება დაბალი მონაცემების მონაცემებზე სწორი ხაზის დასადგენად. დაყენებულია დაბალ დონეზე HostBusy სიგნალის საპასუხოდ
11 Დაკავებული PtrBusy მე SR.7 \ Forward Channel Busy State
12 PE AckDataReq¹ მე SR.5
13 აირჩიეთ Xflag¹ მე სრ .4 გაფართოების დროშა
15 შეცდომა # DataAvail # მე SR.3 PU დამონტაჟებულია საპირისპირო გადაცემის არხის არსებობის ნიშნად
2-9 მონაცემები მონაცემები I / O დოქტორი ორმხრივი (წინ და უკანა) მონაცემთა არხი

ნახ. 1.2. მონაცემების მიღება ბაიტის რეჟიმში

ქვემოთ მოცემულია მონაცემთა ბაიტის მიღების ფაზები.

1. მასპინძელი აჩვენებს მონაცემების მიღების მზადყოფნას HostBusy ხაზის დაბალი დონის დაყენებით.

2. PU რეაგირებს მონაცემთა ხაზში მონაცემთა ბაიტის განთავსებით.

3. PU ახდენს ბაიტის ნამდვილობის სიგნალს PtrClk ხაზზე დაბალი დონის დაყენებით.

4. მასპინძელი ადგენს HostBusy სტრიქონს მაღლა და მიუთითებს რომ ის დაკავებულია ბაიტის მიღებით და დამუშავებით.

5. PU რეაგირებს PtrClk ხაზის მაღალი დონის დაყენებით.

6. მასპინძელი აცნობებს ბაიტის მიღებას HostClk პულსით.

1-6 ნაბიჯები მეორდება ყოველი შემდეგი ბაიტისთვის. დადასტურებას ასრულებს წყვილი HostBusy და PtrClk სიგნალები; CP- მ შეიძლება არ გამოიყენოს HostClk სიგნალი (ეს არის მოწვევა შემდეგი ბაიტის გასაცემად, მსგავსი Ack # სიგნალისა Centronics ინტერფეისში). ბაიტის რეჟიმი საშუალებას გაძლევთ გაზარდოთ უკუკავშირის სიჩქარე გადამისამართებული ბმულის სიჩქარეზე სტანდარტულ რეჟიმში. ამასთან, მას შეუძლია იმუშაოს მხოლოდ ორმხრივ პორტებზე, რომლებიც ადრე ძირითადად იშვიათ PS / 2 აპარატებზე გამოიყენებოდა, მაგრამ თითქმის ყველა თანამედროვე პორტის კონფიგურაცია შესაძლებელია ორმხრივი რეჟიმისთვის (BIOS Setup– ში - Bi-Di ან PS / 2)

1.3.3. EPP რეჟიმი

EPP (Enhanced Parallel Port) პროტოკოლი შეიმუშავა Intel, Xircom და Zenith Data Systems– მა IEEE 1284 სტანდარტის მიღებამდე დიდი ხნით ადრე. ეს პროტოკოლი შექმნილია პარალელური პორტის კომუნიკაციის მუშაობის გასაუმჯობესებლად, პირველად განხორციელდა Intel 386SL ჩიპსეტში (82360 ჩიპი) და შემდგომში მიღებული იქნა მრავალი კომპანიის მიერ, როგორც დამატებითი პარალელური პორტის პროტოკოლი. IEEE 1284- ის მიღებამდე განხორციელებული პროტოკოლის ვერსიები განსხვავდება არსებული სტანდარტისგან (იხ. ქვემოთ).

EPP გთავაზობთ გაცვლითი ციკლის ოთხ ტიპს:

♦ მონაცემთა ჩაწერა;

Data მონაცემების კითხვა;

The მისამართის შეყვანა;

♦ მისამართის კითხვა.

მონაცემთა წერის და წაკითხვის ციკლის მიზანი აშკარაა. მისამართის ციკლი გამოიყენება მისამართის, არხისა და ინფორმაციის მართვის გადასაცემად. საკომუნიკაციო ციკლები განსხვავდება მისამართების ციკლებისაგან გამოყენებული strobe სიგნალებით. EPP პორტის სიგნალების მიზანი და მათი კავშირი SPP სიგნალებთან განმარტებულია ცხრილში. 1.4.

ცხრილი 1.4. LPT პორტის სიგნალები EPP I / O რეჟიმში

კონტაქტი SPP სიგნალი სახელი EPP- ში I / O აღწერა
1 Strobe # დაწერე # დაბალი დონე - წერის ციკლი, მაღალი კითხვის ციკლი
14 AutoLF # DataStb # მონაცემთა strobe. დაბალი დონე დგინდება მონაცემთა გადაცემის ციკლებში
17 აირჩიეთ # AddrStb # მისამართის სტრობი. დაბალი დონე დაყენებულია მისამართების ციკლებში
16 Მასში # გადაყენება # PU- ს გადაყენება (დაბალი დონე)
10 Ack # INTR # მე წყვეტს PU– სგან
11 Დაკავებული დაელოდეთ # მე მადლობის სიგნალი. დაბალი დონე იძლევა ციკლის დასაწყისს (strobe- ს დაბალ დონეზე დაყენებას), მაღალზე გადასვლას - ციკლის დასრულების საშუალებას (strobe- ს მოხსნას)
2-9 მონაცემები ახ.წ. I / O ორმხრივი მისამართი / მონაცემთა ავტობუსი
12 ქაღალდის დაბოლოება AckDataReq¹ მე
13 აირჩიეთ Xflag¹ მე გამოიყენება პერიფერიული დეველოპერის შეხედულებისამებრ
15 შეცდომა # DataAvail # მე გამოიყენება პერიფერიული დეველოპერის შეხედულებისამებრ

¹ სიგნალები ემთხვევა თანმიმდევრობით (იხ. ქვემოთ).

EPP პორტს აქვს რეგისტრების გაფართოებული ნაკრები (ცხრილი 1.5), რომელსაც იკავებს 5-8 მომიჯნავე ბაიტი I / O სივრცეში.

ცხრილი 1.5. EPP პორტის რეესტრები

რეგისტრაციის სახელი მიკერძოება რეჟიმი რ / ვ აღწერა
SPP მონაცემთა პორტი +0 SPP / EPP SPP მონაცემთა რეესტრი
SPP სტატუსის პორტი +1 SPP / EPP SPP სტატუსის რეესტრი
SPP კონტროლის პორტი +2 SPP / EPP SPP კონტროლის რეესტრი
EPP მისამართის პორტი +3 EPP რ / ვ EPP მისამართების რეესტრი. მისი წაკითხვა ან წერა წარმოქმნის EPP მისამართის ასოცირებულ წაკითხვის ან ჩაწერის ციკლს
EPP მონაცემთა პორტი +4 EPP რ / ვ EPP მონაცემთა რეესტრი. წაკითხვა (ჩაწერა) წარმოქმნის EPP მონაცემების ასოცირებულ წაკითხვის (ჩაწერის) ციკლს
Არ არის განსაზღვრული +5…+7 EPP N / A ზოგიერთი კონტროლერის გამოყენება შესაძლებელია 16-32 ბიტიანი I / O ოპერაციებისათვის

ზემოთ აღწერილი პროგრამული უზრუნველყოფით კონტროლირებული რეჟიმებისგან განსხვავებით, თითოეული გაცვლითი ციკლისთვის EPP პორტის გარე სიგნალები წარმოიქმნება აპარატში, პორტის რეესტრის ერთი ჩაწერის ან წაკითხვის ოპერაციით. ნახ. 1.3 არის მონაცემთა ჩაწერის ციკლის დიაგრამა, რომელიც ასახავს პროცესორის სისტემის ავტობუსის წერის ციკლში ჩასმული გარე გაცვლის ციკლს (ზოგჯერ ამ ციკლებს უკავშირებენ). ჩაწერის მისამართის ციკლი განსხვავდება მონაცემთა ციკლისგან მხოლოდ გარე ინტერფეისის სტერობით.

ნახ. 1.3. EPP მონაცემთა ჩაწერის ციკლი

მონაცემთა ჩაწერის ციკლი შედგება შემდეგი ფაზებისგან.

1. პროგრამა ასრულებს გამომავალ ციკლს (IOWR #) მე -4 პორტამდე (EPP მონაცემთა პორტი).

2. ადაპტერი ამტკიცებს დაწერეთ # სიგნალი (დაბალი) და მონაცემები იწერება LPT პორტის გამომავალ ავტობუსში.

3. როდესაც ლოდინი # დაბალია, მონაცემთა სტრობოტი დაყენებულია.

4. პორტი ელოდება დადასტურებას PU– დან (Wait # გადაყვანა მაღალ დონეზე).

5. მონაცემთა strobe ამოღებულია - გარე EPP ციკლი მთავრდება.

6. პროცესორის გამომავალი ციკლი მთავრდება.

7. PU ადგენს Wait # დაბალ მაჩვენებელს, რაც მიუთითებს შემდეგი ციკლის დაწყების შესაძლებლობაზე.

მისამართის კითხვის ციკლის მაგალითი ნაჩვენებია ნახატზე. 1.4. მონაცემთა წაკითხვის ციკლი განსხვავდება მხოლოდ სხვა სტრობის სიგნალის გამოყენებით.

ნახ. 1.4. მიმართული EPP კითხვის ციკლი

Მთავარი ნიშანი EPP არის გარე გადაცემის შესრულება ერთი I / O პროცესორის ციკლის განმავლობაში. ეს საშუალებას გვაძლევს მიაღწიოთ მაღალ გაცვლით კურსებს (0,5–2 მბ / წმ). CP- ს, რომელიც პარალელურ EPP პორტთან არის დაკავშირებული, შეუძლია იმუშაოს ISA სლოტის საშუალებით მოწყობილ მოწყობილობაში.

ბუნებრივია, CP- მ არ უნდა "შეაჩეროს" პროცესორი ავტობუსების გაცვლის ციკლზე. ეს გარანტირებულია PC– ს შეყოვნების მექანიზმით, რომელიც იძულებით წყვეტს კომუნიკაციის ნებისმიერ ციკლს, რომელიც აღემატება 15 მკმ – ს. მთელ რიგ EPP დანერგვაში, ადაპტერი თავად აკონტროლებს ინტერფეისის ვადებს - თუ PU არ რეაგირებს გარკვეულ დროში (5 მკმ), ციკლი წყდება და შეცდომა ფიქსირდება დამატებით (არასტანდარტიზებულ) ადაპტერის სტატუსის რეესტრში.

IEEE 1284- ის მიღებამდე შემუშავებული EPP მოწყობილობები განსხვავდება ციკლის დასაწყისში: DataStb # ან AddrStb # სტრობო მითითებულია WAIT # მდგომარეობის მიუხედავად. ეს ნიშნავს, რომ PU არ შეუძლია გადადოს შემდეგი ციკლის დაწყება (თუმცა მას შეუძლია გაჭიმოს იგი საჭირო დროით). ამ სპეციფიკაციას ეწოდება EPP 1.7 (შემოთავაზებულია Xircom- ის მიერ). ეს არის ის, რაც გამოიყენებოდა 82360 კონტროლერში. IEEE 1284 EPP თავსებადი პერიფერია კარგად იმუშავებს EPP 1.7 კონტროლერთან, მაგრამ EPP 1.7 CP- ს შეუძლია უარი თქვას EPP 1284 კონტროლერზე მუშაობაზე.

პროგრამული უზრუნველყოფის თვალსაზრისით, EPP პორტის კონტროლერი მარტივად გამოიყურება (იხ. ცხრილი 1.5). სტანდარტული რეგისტრის სამ რეგისტრს დაემატება ორი რეგისტრი (EPP მისამართის პორტი და EPP მონაცემთა პორტი), რომლებსაც აქვთ 0, 1 და 2 კომპენსაცია პორტის ბაზის მისამართთან შედარებით, წაკითხვა და ჩაწერა, რაც იწვევს ასოცირებული გარეების წარმოქმნას. ციკლები.

სტანდარტული პორტის რეგისტრების მიზანი შენარჩუნებულია EPP პორტის CP- სა და პროგრამულ უზრუნველყოფასთან, რომლებიც შექმნილია პროგრამული უზრუნველყოფით კონტროლირებადი გაცვლისთვის. ვინაიდან ადაპტერის ხელჩასაჭიდი სიგნალები წარმოიქმნება აპარატურაში, CR კონტროლის რეესტრში წერისას, 0, 1 და 3 ბიტებს, რომლებიც შეესაბამება Strobe #, AutoFeed # და SelectIn # სიგნალებს უნდა ჰქონდეს ნულოვანი მნიშვნელობა. პროგრამულმა ჩარევამ შეიძლება დაარღვიოს დადასტურების მიმდევრობა. ზოგიერთ ადაპტერს აქვს სპეციალური დაცვის საშუალებები (EPP Protect), ჩართვის შემთხვევაში, ამ ბიტების პროგრამული უზრუნველყოფის მოდიფიკაცია იბლოკება.

EPP მონაცემთა რეესტრის გამოყენებით მონაცემთა ბლოკის გადაცემა საშუალებას იძლევა ერთი REP INSB ან REP OUTSB ინსტრუქციით. ზოგიერთი გადამყვანი საშუალებას იძლევა 16/32-ბიტიან წვდომას EPP მონაცემთა რეესტრზე. ამ შემთხვევაში, ადაპტერი უბრალოდ იშიფრებს მისამართს ოფსეტებით 4-7 დიაპაზონში, როგორც EPP მონაცემთა რეესტრის მისამართი, მაგრამ პროცესორი აჩვენებს 8 ბიტს. შემდეგ 16 ან 32-ბიტიანი წვდომა EPP მონაცემთა რეესტრის მისამართზე ავტომატურად წარმოქმნის ორ ან ოთხ ავტობუსულ ციკლს მისამართების გაზრდაში, დაწყებული ოფსეტური მე -4 ნიშნით. უფრო "მოწინავე" ადაპტერები EPP მონაცემთა რეესტრის მისამართის შესახებ აცნობებენ 32 ბიტიან სიგანეს და მათთვის 4 ბაიტამდე გადაცემა ხდება პროცესორის ციკლზე. ეს უზრუნველყოფს მუშაობას 2 მბ / წმ-მდე, საკმარისია LAN ადაპტერებისთვის, გარე დრაივებისთვის, სტრიმერებისათვის და CD-ROM- ებისთვის. EPP მისამართის ციკლი ყოველთვის ხორციელდება მხოლოდ ერთ ბაიტ რეჟიმში.

EPP– ის მნიშვნელოვანი მახასიათებელია ის, რომ პროცესორი რეალურ დროში მიუწვდება CP– ს - არ არსებობს ბუფერირება. მძღოლს შეუძლია სტატუსის მონიტორინგი და ბრძანებების გაცემა ზუსტად ცნობილ დროს. წაკითხვისა და წერის ციკლის შერწყმა შესაძლებელია ნებისმიერი წესრიგით ან ბლოკირებით. ამ ტიპის გაცვლა მოსახერხებელია რეგისტრზე ორიენტირებული PU ან PU, რომელიც მუშაობს რეალურ დროში, მაგალითად, ინფორმაციის შეგროვებისა და კონტროლის მოწყობილობებისთვის. ეს რეჟიმი ასევე შესაფერისია შენახვის მოწყობილობებისთვის, ქსელის ადაპტერებისთვის, პრინტერებისთვის, სკანერებისთვის და ა.შ.

სამწუხაროდ, EPP რეჟიმი არ არის მხარდაჭერილი ყველა პორტის მიერ - ის არ არსებობს, მაგალითად, ზოგიერთ ნოუთბუქ კომპიუტერში. ამრიგად, საკუთარი მოწყობილობების შემუშავებისას, კომპიუტერებთან მეტი თავსებადობის მიზნით, ყურადღება უნდა მიაქციოთ ECP რეჟიმს.

1.3.4. ECP რეჟიმი

გაფართოებული შესაძლებლობების პორტის (ECP) პროტოკოლი შემოთავაზებულია Hewlett Packard- ისა და Microsoft- ის მიერ CP- ებთან კომუნიკაციისთვის, როგორიცაა პრინტერები ან სკანერები. EPP- ს მსგავსად, ეს ოქმიუზრუნველყოფს მაღალი ეფექტურობის ორმხრივი მასპინძელი მონაცემთა გაცვლას CP- ით.

ორივე მიმართულებით ECP გთავაზობთ ორი ტიპის მარყუჟს:

Data მონაცემების წერისა და კითხვის ციკლები;

Writing წერისა და კითხვის ბრძანების ციკლები.

ინსტრუქციის ციკლი კლასიფიცირებულია ორ ტიპად: არხის მისამართების გადაცემა და RLC (Run-Length Count) მრიცხველის გადაცემა.

EPP- სგან განსხვავებით, დაუყოვნებლივ გამოჩნდა მისი ადაპტერის პროგრამული უზრუნველყოფის (რეგისტრის) მოდელის სტანდარტი, რომელიც აღწერილია Microsoft- ის დოკუმენტში "IEEE 1284 გაფართოებული შესაძლებლობების პორტის პროტოკოლი და ISA ინტერფეისის სტანდარტი". ეს დოკუმენტი განსაზღვრავს პროტოკოლის თვისებებს, რომლებიც არ არის განსაზღვრული IEEE 1284 სტანდარტით:

♦ მონაცემთა შეკუმშვა მასპინძელი ადაპტერის მიერ RLE მეთოდის გამოყენებით;

♦ FIFO ბუფერული ნაბიჯია წინ და უკან არხებისთვის;

D DMA და პროგრამული უზრუნველყოფის შეყვანის-გამოყვანის გამოყენება.

რეალურ დროში RLE (Run-Length Encoding) შეკუმშვა აღწევს 64: 1 შეკუმშვის კოეფიციენტს გადაცემაში ბიტმპებირომლებსაც აქვთ განმეორებითი ბაიტის გრძელი სტრიქონები. კომპრესიის გამოყენება შესაძლებელია მხოლოდ იმ შემთხვევაში, თუ მას მასპინძელი და PU მხარს უჭერენ მას.

ECP არხის მისამართით გამოიყენება მრავალი ლოგიკური მოწყობილობა, რომლებიც ერთი ფიზიკური მოწყობილობის ნაწილია. მაგალითად, ფაქსის / პრინტერის / მოდემის კომბინირებულ მოწყობილობას, რომელიც აკავშირებს მხოლოდ ერთ პარალელურ პორტს, შეუძლია ერთდროულად მიიღოს ფაქსი და ბეჭდოს პრინტერზე. SPP რეჟიმში, თუ პრინტერი ამტკიცებს დაკავებულ სიგნალს, არხი დაკავებული იქნება მონაცემებით, სანამ პრინტერი არ მიიღებს მას. ECP რეჟიმში, მძღოლის პროგრამა უბრალოდ მიმართავს სხვა პორტიკურ ლოგიკურ არხს იმავე პორტში.

ECP გადალახავს SPP სიგნალებს (ცხრილი 1.6).

ცხრილი 1.6. LPT პორტის სიგნალები ECP I / O რეჟიმში

კონტაქტი SPP სიგნალი სახელი ECP- ში I / O აღწერა
1 Strobe # HostClk მის შესახებ მონაცემთა strobe, რომელიც გამოიყენება PeriphAck- თან ერთად, გადაცემის გადაცემისთვის (გამომავალი)
14 AutoLF # მასპინძელი მის შესახებ მიუთითებს ციკლის ტიპზე (ბრძანება / მონაცემები) წინ გადასაცემად. გამოიყენება როგორც დადასტურების სიგნალი, რომელიც დაწყვილებულია PeriphClk- ით უკანა გადასაცემად
17 აირჩიეთ # 1284 აქტიური მაღალი დონე მიუთითებს გაცვლაზე IEEE 1284 რეჟიმში (SPP რეჟიმში, დონე დაბალია)
16 Მასში # უკუ მოთხოვნა # უკუ მოთხოვნა. დაბალი დონის სიგნალები არხის საპირისპირო მიმართულებით გადაცემის შესახებ.
10 Ack # PeriphClk მე მონაცემთა strobe, რომელიც გამოიყენება HostAck- თან ერთად უკანა გადაცემისთვის
11 Დაკავებული პერიფაკი მე აღიარების სიგნალად გამოიყენება, როდესაც HostClk- თან დაწყვილებულია გადასაცემად გადასაცემად. ფიგურული მიმართულებით გადაცემისას მიუთითებს ბრძანების / მონაცემების ტიპზე
12 ქაღალდის დაბოლოება AckReverse # მე უკუ დადასტურება. დაბალი თარგმნა ReverseRequest- ის პასუხად
13 აირჩიეთ Xflag¹ მე გაფართოების დროშა
15 შეცდომა # პერიფერი მოთხოვნა # მე CP არის მითითებული, რომ მიუთითოს საპირისპირო გადაცემის არხის ხელმისაწვდომობა (არსებობა)
2-9 მონაცემები მონაცემები I / O ორმხრივი მონაცემების ბმული

¹ სიგნალები მოქმედებს თანმიმდევრული თანმიმდევრობით (იხ. ქვემოთ)

ECP ასევე აწარმოებს გარე პროტოკოლის ხელსაყრელ მოწყობილობებს, მაგრამ მისი მოქმედება მნიშვნელოვნად განსხვავდება EPP რეჟიმისგან.

ნახ. 1.5, a არის ორი გადაცემის ციკლის დიაგრამა: მონაცემთა ციკლს მოსდევს ბრძანების ციკლი. ციკლის ტიპი დგინდება დონის მიხედვით HostAck ხაზში: მონაცემთა ციკლში - მაღალი, ბრძანების ციკლში - დაბალი. ბრძანების ციკლში, ბაიტი შეიძლება შეიცავდეს არხის მისამართს ან RLE მრიცხველს. გამორჩეული თვისებაა ბიტი 7 (ყველაზე მნიშვნელოვანი): თუ იგი ნულოვანია, 0-6 ბიტი შეიცავს RLE მრიცხველს (0-127), თუ ის არის ერთი, მაშინ არხის მისამართი. ნახ. 1.5, ბ გვიჩვენებს საპირისპირო გადაცემის ციკლებს.

ნახ. 1.5. გადაცემა ECP რეჟიმში: a - წინ, b - უკანა

EPP გაცვლითი დიაგრამებისგან განსხვავებით, ნახ. 1.5 არ აჩვენებს პროცესორის სისტემის ავტობუსის ციკლის სიგნალებს. ამ რეჟიმში პროგრამის გაცვლა საკონტროლო დანაყოფთან იყოფა ორ შედარებით დამოუკიდებელ პროცესად, რომლებიც დაკავშირებულია FIFO ბუფერის საშუალებით. მძღოლის გაცვლა შესაძლებელია FIFO ბუფერთან, როგორც DMA– ს, ასევე პროგრამული უზრუნველყოფის I / O– ს გამოყენებით. PU– ს ბუფერთან გაცვლა ხორციელდება ტექნიკაში ECP ადაპტერის მიერ. მძღოლს ECP რეჟიმში არ აქვს ინფორმაცია გაცვლითი პროცესის ზუსტი მდგომარეობის შესახებ, მაგრამ, როგორც წესი, ერთადერთი, რაც მნიშვნელოვანია, არის თუ არა იგი დასრულებული.

გარე ინტერფეისზე მონაცემთა პირდაპირი გადაცემა შედგება შემდეგი ნაბიჯებისაგან:

1. მასპინძელი აყენებს მონაცემებს არხის ავტობუსზე და ადგენს მონაცემთა ციკლს (მაღალი) ან ბრძანებას (დაბალი) HostAck ხაზში.

2. მასპინძელი აყენებს HostClk ხაზს დაბლა, რომ მიუთითოს სწორი მონაცემები.

3. PU პასუხობს PeriphAck ხაზის მაღალი დონის დაყენებით.

4. მასპინძელი აყენებს HostClk ხაზს მაღლა, და ეს ზღვარი შეიძლება გამოყენებულ იქნას მონაცემთა CP- ის დასაჭერად.

5. PU ადგენს დაბალ დონეს PeriphAck სტრიქონზე იმის აღსადგენად, რომ მზად არის შემდეგი ბაიტის მისაღებად.

მას შემდეგ, რაც ECP– ზე გადაცემა ხდება FIFO ბუფერების საშუალებით, რომლებიც შეიძლება იყოს ინტერფეისის ორივე მხარეს, მნიშვნელოვანია იმის გაგება, თუ რა ეტაპზე შეიძლება ჩაითვალოს მონაცემები გადაცემულად. მონაცემები განიხილება მე -4 ეტაპზე გადაცემული, როდესაც HostClk მაღალია. ამ მომენტში გადამუშავებული და მიღებული ბაიტების მრიცხველები იცვლება. ECP პროტოკოლში არის პირობები, რომლებიც იწვევს გაცვლის შეწყვეტას მე -3 და მე -4 ნაბიჯებს შორის. შემდეგ ეს მონაცემები არ უნდა ჩაითვალოს გადაცემულად.

ნახ. 1.5 გვიჩვენებს სხვა განსხვავებას ECP- სა და EPP- ს შორის. EPP საშუალებას აძლევს მძღოლს მონაცვლეობით შეცვალოს წინ და უკან ციკლი, მოთხოვნის გარეშე შეცვლის მიმართულებას. ECP– ში, მიმართულების შეცვლა უნდა შეთანხმდეს: მასპინძელი მოითხოვს უკუქცევას ReverseRequest # –ის დაყენებით, რის შემდეგაც იგი უნდა დაელოდოს დადასტურებას AckReverse # სიგნალით. მას შემდეგ, რაც წინა ციკლი შეიძლება შესრულდეს უშუალო წვდომაზე, მძღოლმა უნდა დაველოდოთ პირდაპირი წვდომის დასრულებას ან შეაჩეროს იგი, გადმოტვირთოს FIFO ბუფერი, განსაზღვროს გადაცემული ბაიტების მრიცხველის ზუსტი მნიშვნელობა და მხოლოდ ამის შემდეგ მოითხოვდეს უკუქცევას.

მონაცემთა გაგზავნა მოიცავს შემდეგ ნაბიჯებს:

1. მასპინძელი არხის შეცვლას ითხოვს ReverseRequest # ხაზის დაბლა დაყენებით.

2. პანელი საშუალებას იძლევა შეცვალოთ მიმართულება AckReverse # ხაზზე დაბალი დონის დაყენებით.

3. PU ათავსებს მონაცემებს არხის ავტობუსზე და ადგენს მონაცემთა ციკლის ნიშანს (მაღალი დონის) ან ბრძანებებს (დაბალ დონეს) PeriphAck ხაზში.

4. CP ადგენს PeriphClk ხაზს დაბალი მონაცემების დასაზუსტებლად.

5. მასპინძელი რეაგირებს HostAck ხაზის მაღალი მნიშვნელობით.

6. PU ადგენს PeriphClk ხაზის მაღალ დონეს; ეს ზღვარი შეიძლება გამოყენებულ იქნას მასპინძლის მიერ მონაცემთა ჩასატარებლად.

7. მასპინძელი აყენებს HostAck სტრიქონს დაბლა, რომ მიუთითოს, რომ ის მზად არის შემდეგი ბაიტის მისაღებად.

1.3.5. ECP- პორტის რეჟიმები და რეგისტრები

პროგრამირების ინტერფეისი და ECP რეგისტრები IEEE 1284 გადამყვანებისთვის განისაზღვრება Microsoft– ის სპეციფიკაციებით. ECP პორტს შეუძლია იმუშაოს სხვადასხვა რეჟიმში, ნაჩვენებია ცხრილში. 1.7, სადაც კოდი შეესაბამება ECR (ბიტების) რეჟიმის ველს.

ცხრილი 1.7. ECP პორტის რეჟიმები

Კოდი რეჟიმი
000 SPP რეჟიმი, სტანდარტული (ტრადიციული) რეჟიმი
001 ორმხრივი რეჟიმი, ორმხრივი პორტი (ტიპი 1 PS / 2 – სთვის)
010 სწრაფი Centronics, ცალმხრივი FIFO და DMA– ს გამოყენებით
011 ECP პარალელური პორტის რეჟიმი, რეალური ECP რეჟიმი
100 EPP პარალელური პორტის რეჟიმი, EPP რეჟიმი
101 დაცულია
110 ტესტი რეჟიმი, ტესტირება FIFO და წყვეტები
111 კონფიგურაციის რეჟიმი, წვდომა კონფიგურაციის რეგისტრებზე

Mode ეს რეჟიმი არ არის შეტანილი Microsoft– ის სპეციფიკაციაში, მაგრამ მრავალი პორტის ადაპტერის მიერ განიხილება როგორც EPP, თუ ECP + EPP რეჟიმი დაყენებულია CMOS Setup– ში.

ECP ადაპტერის სარეგისტრაციო მოდელი (ცხრილი 1.8) იყენებს სტანდარტული ავტობუსის და ISA ადაპტერების არქიტექტურის მახასიათებლებს, სადაც მხოლოდ 10 დაბალი რიგის მისამართია გამოყენებული მისამართის ავტობუსით, I / O პორტების მისამართების დეკოდირებისთვის. ამიტომ, მაგალითად, ზარები მისამართებზე პორტი, პორტი + 400 სთ, პორტი + 800 სთ ... აღიქმება, როგორც ზარები მისამართის პორტზე, რომელიც მდებარეობს 0-3FFh დიაპაზონში. თანამედროვე კომპიუტერები და ადაპტერები იშიფრებიან დიდი რაოდენობითმისამართების ბიტი, ასე რომ, მისამართები 0378h და 0778H გადაეგზავნება ორ განსხვავებულ რეგისტრს. დამატებითი ECP რეგისტრების განთავსება სტანდარტული პორტის რეგისტრების უკან (ოფსეტური 400-402H) ორი მიზნისთვის ემსახურება. პირველ რიგში, ეს მისამართები არასოდეს ყოფილა გამოყენებული ტრადიციული ადაპტერებისა და მათი დრაივერების მიერ და მათი გამოყენება ECP– ში არ შეამცირებს არსებულ I / O მისამართების ადგილს. მეორეც, ეს უზრუნველყოფს ძველ ადაპტერებთან 000–001 რეჟიმში დონის შესაბამისობას და მისი გაფართოებული რეგისტრების მითითებით ECP ადაპტერის არსებობის დადგენის შესაძლებლობას.

ცხრილი 1.8. ECP რეგისტრები

მიკერძოება სახელი რ / ვ ECP რეჟიმები სახელი
000 დოქტორი რ / ვ 000-001 მონაცემთა რეესტრი
000 ECPAFIFO რ / ვ 011 ECP მისამართი FIFO
001 SR რ / ვ ყველაფერი სტატუსის რეგისტრაცია
002 CR რ / ვ ყველაფერი საკონტროლო რეესტრი
400 SDFIFO რ / ვ 010 პარალელური პორტის მონაცემები FIFO
400 ECPDFIFO რ / ვ 011 ECP მონაცემები FIFO
400 TFIFO რ / ვ 110 ტესტი FIFO
400 ECPCFGA 111 კონფიგურაციის რეგისტრაცია A
401 ECPCFGB რ / ვ 111 კონფიგურაციის რეგისტრაცია B
402 ECR რ / ვ ყველაფერი გაფართოებული კონტროლის რეესტრი

¹ რეგისტრატორები ხელმისაწვდომია მხოლოდ ამ რეჟიმებში (მითითებულია ECR რეგისტრის 7-5 ბიტის მნიშვნელობები)

ECP– ის თითოეული რეჟიმი შეესაბამება (და ხელმისაწვდომია) საკუთარ ფუნქციურ რეესტრებს. რეჟიმები გადადის ECR რეესტრზე წერილობით. ნაგულისხმევი "ლოდინის" რეჟიმებია 000 ან 001. ორივე რეჟიმში, nibble input რეჟიმი მუშაობს. ამ რეჟიმებიდან ყოველთვის შეგიძლიათ გადახვიდეთ ნებისმიერ სხვაზე, მაგრამ ძველი რეჟიმებიდან (010-111) გადართვა შესაძლებელია მხოლოდ 000 ან 001 რეჟიმში. სწორი სამუშაოინტერფეისი, უფრო მაღალი რეჟიმების გასვლამდე უნდა დაველოდოთ პირდაპირი წვდომის გაცვლის დასრულებას და FIFO ბუფერის გასუფთავებას.

000 (SPP) რეჟიმში პორტი მოქმედებს როგორც ერთჯერადი პროგრამული უზრუნველყოფით კონტროლირებადი SPP პორტი.

001 რეჟიმში (Bi-Di PS / 2), პორტი მოქმედებს, როგორც ორმხრივი PS / 2 ტიპის პორტი. იგი განსხვავდება 000 რეჟიმისგან მონაცემთა არხის შეცვლის შესაძლებლობით CR.5 ბიტის გამოყენებით.

რეჟიმი 010 (სწრაფი Centronics) განკუთვნილია მხოლოდ მაღალი ხარისხის FIFO გამოსასვლელად DMA– ს გამოყენებით. Centronics- ის ხელის მოკიდების სიგნალები გამომუშავებულია აპარატურით. შეწყვეტის მოთხოვნის სიგნალი წარმოიქმნება FIFO- ბუფერის მდგომარეობით, მაგრამ არა Ack # სიგნალით (მოთხოვნა ერთ ბაიტზე არ არის სწრაფი ბლოკის გამომავალი დრაივერის ინტერესი).

011 რეჟიმი არის ზემოთ აღწერილი ECP ფაქტობრივი რეჟიმი. მონაცემთა გადაცემის და ბრძანებების ნაკადი მოთავსებულია FIFO ბუფერში ECPDFIFO და ECPAFIFO რეგისტრების შესაბამისად. ისინი გამოდიან FIFO– დან შესაბამისი ციკლის მითითებით (HostAck ხაზის მდგომარეობა). PU– დან მიღებული მონაცემების ნაკადის მიღება ხდება FIFO ბუფერიდან ECPDFIFO რეესტრის მეშვეობით. ბრძანების ციკლში მისამართის მიღება CP- დან არ არის გათვალისწინებული. გაცვლა ECPDFIFO რეგისტრთან ასევე შეიძლება განხორციელდეს DMA არხით.

გადაცემის დროს RLE შეკუმშვა ხორციელდება პროგრამულ უზრუნველყოფაში. ზედიზედ ორზე მეტი იდენტური მონაცემების ბაიტის გადასაცემად, ECPAFIFO რეგისტრში იწერება ბაიტი, რომელშიც ყველაზე ნაკლებად მნიშვნელოვანი 7 ბიტი შეიცავს RLC მრიცხველს (RLC მნიშვნელობა = 127 შეესაბამება 128 გამეორებას), ხოლო ყველაზე მნიშვნელოვანი ბიტი ნულოვანია. . ამის შემდეგ, ბაიტი იწერება ECPDFIFO- სთვის. ამ ბაიტის წყვილის მიღება (ბრძანების ბაიტი და მონაცემთა ბაიტი), CP ახდენს დეკომპრესიას. მართვის პანელიდან ნაკადის მიღებისას, ECP ადაპტერი ახორციელებს აპარატურის დეკომპრესიას და დეკომპრესიის მონაცემებს ათავსებს FIFO ბუფერში. აქედან გამომდინარე, აშკარაა, რომ მონაცემთა გამომავალი მონაცემები ერთდროული გამოყენებაშეკუმშვა და DMA შეუძლებელია.

რეჟიმი 100 (EPP) არის EPP რეჟიმის ჩართვის ერთ-ერთი გზა (თუ იგი მხარს უჭერს ადაპტერს და ჩართულია CMOS Setup– ში).

რეჟიმი 110 (ტესტი რეჟიმი) არის FIFO- ს ტესტირებისა და კომუნიკაციის შეწყვეტისთვის. მონაცემთა გადაცემა შესაძლებელია TFIFO– ს რეესტრში და მისგან DMA ან პროგრამულად... გაცვლა გავლენას არ ახდენს გარე ინტერფეისზე. ადაპტერი მუშაობს ინტერფეისის მაქსიმალური სიჩქარით (თითქოს ხელის ჩამორთმევის სიგნალები შეფერხების გარეშე მოდის). ადაპტერი აკონტროლებს ბუფერის სტატუსს და წარმოქმნის შეწყვეტის მოთხოვნის სიგნალებს, როგორც საჭიროა. ამრიგად, პროგრამას შეუძლია განსაზღვროს არხის მაქსიმალური გამტარობა.

რეჟიმი 111 (კონფიგურაციის რეჟიმი) გამოიყენება კონფიგურაციის რეგისტრების წვდომისთვის. რეჟიმის მონიშვნა იცავს ადაპტერს და პროტოკოლს გაცვლის დროს არასწორი კონფიგურაციის შეცვლისგან.

როგორც უკვე აღვნიშნეთ, თითოეულ ECP რეჟიმს აქვს საკუთარი ფუნქციური რეგისტრები (ცხრილი 1.8).

მონაცემთა DR მონაცემთა რეგისტრი გამოიყენება მონაცემთა გადასაცემად მხოლოდ პროგრამული უზრუნველყოფის კონტროლირებად რეჟიმში (000 და 001).

SR სტატუსის რეგისტრი ატარებს სიგნალების მნიშვნელობას შესაბამის სტრიქონებზე (როგორც SPP– ში).

საკონტროლო რეგისტრის CR- ს აქვს იგივე ბიტის დავალება, რაც SPP- ს. 010, 011 რეჟიმებში 0, 1 ბიტზე (სიგნალები AutoLF # და Strobe #) მიწერა იგნორირებულია.

ECPAFIFO რეგისტრი გამოიყენება ბრძანების ციკლების ინფორმაციის განთავსებისთვის (არხის მისამართი ან RLE მრიცხველი, დამოკიდებულია bit 7-ზე) FIFO ბუფერში. ინფორმაცია ბუფერიდან გაიცემა ბრძანების გამოსვლის ციკლში.

SDFIFO რეგისტრი გამოიყენება მონაცემების 010 რეჟიმში გადასაცემად. რეესტრში დაწერილი მონაცემები (ან გაგზავნილია DMA არხით) გადაიტანება FIFO ბუფერის საშუალებით Centronics ტექნიკის პროტოკოლის გამოყენებით. ამ შემთხვევაში, მითითებულია გადაცემის წინსვლის მიმართულება (ბიტი CR.5 = 0).

DFIFO რეგისტრი გამოიყენება მონაცემთა გაცვლისთვის 011 (ECP) რეჟიმში. რეესტრში დაწერილი ან წაკითხული მონაცემები (ან გადაცემულია DMA არხით) გადადის FIFO– ს საშუალებით ECP პროტოკოლის გამოყენებით.

TFIFO რეესტრი უზრუნველყოფს FIFO- ს 110 რეჟიმში ტესტირების მექანიზმს.

ECPCFGA რეგისტრი საშუალებას გაძლევთ გაეცნოთ ადაპტერის ინფორმაციას (საიდენტიფიკაციო კოდი ბიტებში).

ECPCFGB რეგისტრი საშუალებას მოგცემთ შეინახოთ ნებისმიერი ინფორმაცია, რაც მძღოლს სჭირდება. რეესტრში წერა არ ახდენს გავლენას პორტის მუშაობაზე.

ECR რეგისტრი არის ECP– ის მთავარი მენეჯმენტი. მის ბიტებს აქვთ შემდეგი მიზანი:

♦ ECR - ECP MODE - დააყენეთ ECP რეჟიმი;

R ECR.4 - ERRINTREN # - (Error Interrupt Disable) გამორთავს შეცდომების შეცდომას # სიგნალზე (თუ ბიტის მნიშვნელობა ნულოვანია ნეგატიურ ზღვარზე, ამ ხაზზე წარმოიქმნება შეწყვეტის მოთხოვნა);

♦ ECR.3 - DMAEN - (DMA ჩართვა) საშუალებას იძლევა გაცვლა DMA არხზე;

♦ ECR.2 - SERVICEINTR - (სერვისის შეწყვეტა) გამორთავს მომსახურების შეწყვეტას, რომელიც წარმოიქმნება DMA ციკლის ბოლოს (თუ ჩართულია), FIFO ბუფერის შევსების / დაცლის ბარიერით (თუ არ არის გამოყენებული DMA) და შეცდომით ბუფერის გადახურება ზემოდან ან ქვემოდან;

♦ ECR.1 - FIFOFS - (FIFO სრული სტატუსი) ნიშნავს სრულ ბუფერულს; FIFOFS = 1 – ით, ბუფერში არ არის ერთი თავისუფალი ბაიტი;

♦ ECR.0 - FIFOES - (FIFO ცარიელი სტატუსი) მიუთითებს ბუფერის სრულყოფილად შემცირებაზე; კომბინაცია FIFOFS = FIFOES = 1 ნიშნავს შეცდომას FIFO– სთან მუშაობისას (გადავსება ზემოთ ან ქვემოთ).

როდესაც პორტი სტანდარტულ ან ორმხრივ რეჟიმშია (000 ან 001), პირველი სამი რეგისტრი ზუსტად იგივეა, რაც სტანდარტული პორტის. ეს უზრუნველყოფს მძღოლის შესაბამისობას ძველ ადაპტერებთან და ძველ დრაივერებთან ახალ გადამყვანებთან.

პროგრამასთან ინტერფეისის თვალსაზრისით, ECP პორტი ჰგავს EPP- ს: რეჟიმის დაყენების შემდეგ (კოდის დაწერა ECR რეესტრში), მოწყობილობასთან მონაცემთა გაცვლა შემცირდება შესაბამის რეესტრების კითხვა ან ჩაწერა. FIFO– ს მდგომარეობას აკონტროლებს ECR რეესტრი ან ნავსადგურის შეწყვეტის მომსახურებით. ხელების მთლიანი პროტოკოლის გამომუშავება ხდება ადაპტერის მიერ აპარატურაში. მონაცემთა გაცვლა ECP პორტთან (გარდა გამოკვეთილი პროგრამულებისა) ასევე შესაძლებელია მეხსიერების პირდაპირი წვდომის საშუალებით (DMA არხი), რაც ეფექტურია მონაცემთა დიდი ბლოკის გადაცემისას.

1.3.6. IEEE 1284 რეჟიმში მოლაპარაკება

IEEE 1284 სტანდარტის CP– ები ჩვეულებრივ არ საჭიროებს კონტროლერს ამ სტანდარტით გათვალისწინებული ყველა რეჟიმის განხორციელებას. კონტროლის რეჟიმებისა და მეთოდების დასადგენად კონკრეტული მოწყობილობასტანდარტი ითვალისწინებს მოლაპარაკებების თანმიმდევრობას. თანმიმდევრობა შექმნილია ისე, რომ ძველი მოწყობილობები, რომლებიც მხარს არ უჭერენ IEEE 1284-ს, არ რეაგირებენ და კონტროლერი დარჩება სტანდარტულ რეჟიმში. IEEE 1284 პერიფერიას შეუძლია დაუკავშირდეს თავის შესაძლებლობებს, ხოლო კონტროლერი შექმნის რეჟიმს, რომელიც დააკმაყოფილებს როგორც მასპინძელს, ასევე CP- ს.

მოლაპარაკებების ფაზაში, კონტროლერი ადგენს გაფართოების ბაიტს მონაცემთა ხაზში და მოითხოვს დადასტურებას ინტერფეისის საჭირო რეჟიმში გადასაყვანად ან CP იდენტიფიკატორის მისაღებად (ცხრილი 1.9) იდენტიფიკატორი კონტროლერს გადაეცემა მოთხოვნილი რეჟიმში (ნებისმიერი არხის დაბრუნების რეჟიმი, გარდა EPP). UE იყენებს Xflag (აირჩიეთ SPP თვალსაზრისით) სიგნალს მოთხოვნილი საპირისპირო ბმულის რეჟიმის დასადასტურებლად, გარდა კბენისა, რომელსაც მხარს უჭერს ყველა IEEE 1284 მოწყობილობა. Extensibility Link მოთხოვნის ბიტი ემსახურება დამატებითი რეჟიმების განსაზღვრას მომავალში სტანდარტული

ცხრილი 1.9. ბიტი გაფართოების ბაიტზე

ბიტი აღწერა მისაღები ბიტის კომბინაციები
7 მოითხოვეთ გაფართოების ბმული - დაცულია 1000 0000
6 EPP რეჟიმის მოთხოვნა 0100 0000
5 მოთხოვნა ECP რეჟიმისთვის RLE 0011 0000
4 მოითხოვეთ ECP რეჟიმი RLE გარეშე 0001 0000
3 დაცულია 0000 1000
2 რეჟიმში მოთხოვნადი მოწყობილობის იდენტიფიკატორის მოთხოვნა:
კბენა 0000 0100
ბაიტი 0000 0101
ECP გარეშე RLE 0001 0100
ECP RLE– ით 0011 0100
1 დაცულია 0000 0010
0 Nibble რეჟიმის მოთხოვნა 0000 0001
არცერთი ბაიტის რეჟიმის მოთხოვნა 0000 0000

კოორდინაციის თანმიმდევრობა (სურათი 1.6) შედგება შემდეგი ნაბიჯებისაგან.

1. მასპინძელი მონაცემების ხაზზე გამოყოფს გაფართოების ბაიტს.

2. მასპინძელი ადგენს SelectIn # სიგნალს მაღალს და AutoFeed # დაბალს, რაც ნიშნავს მოლაპარაკებების თანმიმდევრობის დაწყებას.

3. PU რეაგირებს დაბალი სიგნალის დონის დაყენებით Ack # და მაღალი - შეცდომა #, PaperEnd და Select. მოწყობილობა, რომელსაც "არ ესმის" 1284 სტანდარტი, პასუხს არ გასცემს და შემდგომი ნაბიჯები არ შესრულდება.

4. მასპინძელი დაბლა აყენებს Strobe # სიგნალს CP- ზე გაფართოების ბაიტის დასაწერად.

5. მასპინძელი მაღლა აყენებს Strobe # და AutoLF # სიგნალებს.

6. CP რეაგირებს PaperEnd და Error # სიგნალების დაბალ დონეზე დაყენებით, თუ CP– ს აქვს მონაცემთა გადაცემის საპირისპირო არხი. თუ მოთხოვნილ რეჟიმს მხარს უჭერს მოწყობილობა, აირჩიეთ ხაზი მაღალი, თუ არ არის მხარდაჭერილი - დაბალი.

7. CP ადგენს მაღალ დონეს Ack # სტრიქონზე მოლაპარაკების თანმიმდევრობის დასრულების აღსადგენად, რის შემდეგაც კონტროლერი ადგენს მუშაობის საჭირო რეჟიმს.

ნახ. 1.6 IEEE 1284 რეჟიმი მოლაპარაკების მიმდევრობა

1.3.7. ფიზიკური და ელექტრული ინტერფეისი

IEEE 1284 სტანდარტი განსაზღვრავს სიგნალის მიმღებებისა და გადამცემების ფიზიკურ მახასიათებლებს, რომლებიც დონეზე შეესაბამება TTL- ს. სტანდარტული პორტის სპეციფიკაციებში არ იყო მითითებული გამომავალი წრეების ტიპები, დატვირთვის რეზისტორების მნიშვნელობების ლიმიტები და წრეებისა და გამტარების მიერ შემოტანილი სიმძლავრე. შედარებით დაბალი გაცვლითი კურსით, ამ პარამეტრების გავრცელებამ არ შეუქმნა თავსებადობის პრობლემები. ამასთან, მოწინავე (ფუნქციონალური და Baud სიჩქარე) რეჟიმები მოითხოვს მკაფიო სპეციფიკაციებს. IEEE 1284 განსაზღვრავს ინტერფეისის თავსებადობის ორ დონეს. პირველი დონე (I დონე) განისაზღვრება მოწყობილობებისთვის, რომლებიც ნელია, მაგრამ იყენებენ მონაცემთა გადაცემის მიმართულების შეცვლას. მეორე დონე (დონე II) განისაზღვრება მოწყობილობებისთვის, რომლებიც მუშაობენ გაფართოებულ რეჟიმში მაღალი სიჩქარით და გრძელი კაბელებით. გადამცემის მიმართ მოთხოვნები შემდეგია.

Load დატვირთვის გარეშე სიგნალის დონე არ უნდა გასცდეს -0,5 ... + 5,5 ვ.

♦ სიგნალის დონე 14 mA დატვირთვით უნდა იყოს მინიმუმ +2,4 V მაღალი (VOH) და არაუმეტეს +0,4 V დაბალი (VOL) dc- ზე.

♦ გამომავალი წინაღობა RO, რომელიც იზომება კონექტორზე, უნდა იყოს 50 ± 5 ომი VOH-VOL დონეზე. მოცემული წინაღობის უზრუნველსაყოფად, გადამცემის გამოსასვლელ წრეებში გამოიყენება სერიული რეზისტორები. გადამცემისა და კაბელის წინაღობის შესაბამისობა ამცირებს იმპულსის ხმაურს.

Of პულსის აწევის (ვარდნის) სიჩქარე უნდა იყოს 0,05-0,4 ვ / ნს შორის.

ქვემოთ მოყვანილია მოთხოვნები მიმღებთან დაკავშირებით.

Peak დასაშვები პიკური სიგნალის მნიშვნელობები -2.0 ... + 7.0 ვ.

♦ მაღალი დონის ბარიერები არ უნდა აღემატებოდეს 2.0 V (VIH) და დაბალი დონისთვის არანაკლებ 0.8 V (VIL).

♦ მიმღებს უნდა ჰქონდეს ჰისტერეზი 0,2-1,2 V დიაპაზონში (ჰისტერეზს გააჩნია სპეციალური მიკროსქემები - შმიტის ტრიგერები).

The მიკროცირკის შეყვანის დენი (შემომავალი და გამავალი) არ უნდა აღემატებოდეს 20 მკ ა-ს, შეყვანის ხაზები უკავშირდება +5 V დენის ავტობუსს 1,2 კვΩ რეზისტორით.

Input შეყვანის მოცულობა არ უნდა აღემატებოდეს 50 pF- ს.

როდესაც ECP სპეციფიკაცია გამოჩნდა, Microsoft- მა გირჩია დინამიური ტერმინატორების გამოყენება ინტერფეისის თითოეული ხაზისთვის. ამასთან, ამჟამად მიჰყვება IEEE 1284 სპეციფიკაციას, რომელიც არ იყენებს დინამიკურ ტერმინატორებს. შეყვანილი, გამომავალი და ორმხრივი სქემებისთვის რეკომენდებული სქემები ნაჩვენებია ნახაზზე. 1.7.

ნახ. 1.7. IEEE 1284 ინტერფეისის ხაზების ტერმინალური სქემები: a - ცალმხრივი ხაზები, b - ორმხრივი

IEEE 1284 სტანდარტი განსაზღვრავს გამოყენებულ კონექტორთა სამ ტიპს. A (DB-25) და B ტიპები (Centronics-36) დამახასიათებელია ტრადიციული პრინტერის კაბელებისათვის, C ტიპი არის ახალი მცირე ზომის 36-პინ კონექტორი.

ტრადიციული ინტერფეისის კაბელებს აქვთ 18-დან 25 მავთული, რაც დამოკიდებულია GND ქსელში მავთულის რაოდენობის მიხედვით. ეს კონდუქტორები შეიძლება გადახლართული იყოს ან არ იყოს. არ იყო მკაცრი მოთხოვნები საკაბელო დამცავად. სავარაუდოდ, ეს კაბელები საიმედოდ არ იმუშავებს 2 მბ / წმ სიჩქარის გადაცემის სიჩქარით და 2 მ-ზე მეტი ხანგრძლივობით.

IEEE 1284 სტანდარტი არეგულირებს კაბელების თვისებებს.

Signal ყველა სიგნალის ხაზი უნდა გადაუგრიხოს ცალკე დასაბრუნებელი (საერთო) ხაზებით.

♦ თითოეულ წყვილს უნდა ჰქონდეს წინაღობა 62 ± 6 ომი 4-16 მეგაჰერციანი სიხშირის დიაპაზონში.

Pairs წყვილებს შორის კროსკეტკის დონე არ უნდა აღემატებოდეს 10% -ს.

♦ კაბელს უნდა ჰქონდეს ეკრანი (კილიტა), რომელიც მოიცავს გარე ზედაპირის მინიმუმ 85% -ს. საკაბელო ბოლოებში, ფარი უნდა იყოს ringed და უკავშირდება შემაერთებელი pin.

ამ მოთხოვნების შესაბამისი კაბელები შეაფასა "IEEE Std 1284–1994 შესაბამისი". მათი სიგრძე შეიძლება იყოს 10 მეტრამდე, ტიპის აღნიშვნები მოცემულია ცხრილში. 1.10.

ცხრილი 1.10. IEEE 1284 კაბელის ტიპები

Ტიპი დეკოდირება კონექტორი 1 კონექტორი 2
ამამი ტიპი კაცი - ტიპი კაცი A (დანამატი) A (დანამატი)
AMAF ტიპი კაცი - ტიპი ქალი A (დანამატი) A (სოკეტი)
AB ტიპი A კაცი - Type B Plug - სტანდარტული კაბელი პრინტერზე A (დანამატი) IN
როგორც ტიპი A კაცი - Ture C Plug - ახალი კაბელი პრინტერზე A (დანამატი) ფრომიდან
ძვ.წ. Type B Plug - Type C Plug IN ფრომიდან
CC Type C Plug - Type C Plug ფრომიდან ფრომიდან

1.3.8. IEEE 1284 სტანდარტის ევოლუცია

IEEE 1284 ძირითადი სტანდარტის ზოგიერთი დამატებები ჩამოთვლილია ქვემოთ.

♦ IEEE P1284.1 "ტრანსპორტირების დამოუკიდებელი პრინტერის / სკანერის ინტერფეისის ინფორმაციული ტექნოლოგიის სტანდარტი" (TIP / SI). ეს სტანდარტი შემუშავებულია ქსელის ბეჭდვის ალიანსის პროტოკოლის (NPAP) საფუძველზე, სკანერების და პრინტერების მართვისა და ტექნიკური მომსახურებისთვის.

IEEE P1284.2 ”სტანდარტის ტესტი, გაზომვა და შესაბამისობა IEEE Std. 1284 "არის პორტების, კაბელების და მოწყობილობების ტესტირების სტანდარტი IEEE 1284- თან თავსებადობისთვის.

♦ IEEE P1284.3 ”სტანდარტი ინტერფეისისა და პროტოკოლის გაფართოებისთვის IEEE Std. 1284 Compliant Peripheral and Host Adapter Ports ”- სტანდარტი დრაივერებისთვის და მოწყობილობების გამოყენება პროგრამული უზრუნველყოფის (პროგრამული უზრუნველყოფის) მიერ. მიღებული BIOS სპეციფიკაციები EPP- ს მიერ DOS დრაივერების მიერ გამოსაყენებლად. შემუშავებულია სტანდარტი ერთი პორტის საზიარო გამოყენებისათვის, მოწყობილობების ჯაჭვის ან მულტიპლექსერის საშუალებით დაკავშირებული მოწყობილობების ჯგუფის მიერ.

♦ IEEE P1284.4 „მონაცემთა მიწოდების სტანდარტი და ლოგიკური არხები IEEE Std. 1284 ინტერფეისი ”მიზნად ისახავს პაკეტზე დაფუძნებული პროტოკოლის განხორციელებას მონაცემთა საიმედო გადაცემისთვის პარალელური პორტის საშუალებით. იგი ეფუძნება Hewlett-Packard– ის MLC (მრავალჯერადი ლოგიკური არხები) პროტოკოლს, მაგრამ სტანდარტის საბოლოო ვერსიაში თავსებადობა არ არის გარანტირებული.

1.4. სისტემის მხარდაჭერა LPT პორტისთვის

LPT პორტის სისტემის მხარდაჭერა მოიცავს დაინსტალირებული პორტებისა და ბეჭდვითი სერვისების ძიებას (Int 17h, იხილეთ ნაწილი 8.3.3). თავდაპირველი POST ტესტირების დროს, BIOS ამოწმებს პარალელური პორტების არსებობას 3BCh, 378h და 278h მისამართებზე და გამოვლენილი პორტების ბაზისურ მისამართებს ათავსებს BIOS მონაცემთა არეალში 0: 0408h, 040Ah, 040Ch, 040Eh უჯრედებში. ეს უჯრედები ინახავს LPT1-LPT4 პორტების მისამართებს, მისამართის ნულოვანი მნიშვნელობა მიუთითებს იმაზე, რომ ამ რიცხვით პორტი არ არის. უჯრედებში 0: 0478, 0479, 047A, 047B შეიტანება მუდმივები, რომლებიც ადგენენ ამ პორტების დროის ამოწურვას.

პორტების ძიება, როგორც წესი, ხორციელდება საკმაოდ პრიმიტიულად - ტესტის ბაიტი (AAh ან 55h) გამოდის ბაზის მისამართში (დანიშნულების პორტის მონაცემთა რეესტრში), შემდეგ შეტანა ხდება იმავე მისამართზე. თუ წაკითხული ბაიტი ემთხვევა დაწერილს, ვივარაუდოთ, რომ LPT პორტი ნაპოვნია; მისი მისამართი მოთავსებულია BIOS მონაცემთა ზონის უჯრედში. ბაზის პორტის მისამართების შეცვლა შეიძლება პროგრამული უზრუნველყოფით. BIOS– ს არ შეუძლია დაადგინოს LPT4 პორტის მისამართი თავისთავად, რადგან სტანდარტული სამიზნე მისამართების ჩამონათვალში ჩამოთვლილთაგან მხოლოდ სამია.

გამოვლენილი პორტების ინიციალიზაცია ხდება - საკონტროლო რეესტრში წერილობით იქმნება და იხსნება საწყისი # სიგნალი, რის შემდეგაც იწერება 0Ch მნიშვნელობა, საწყისი მდგომარეობაინტერფეისის სიგნალები. ზოგიერთ შემთხვევაში, Init # სიგნალი აქტიურია აპარატურის გადატვირთვის მომენტიდან, სანამ პორტი ინიცირდება, როდესაც ოპერაციული სისტემა იტვირთება. ეს ჩანს კომპიუტერის გადატვირთვისას ჩართული პრინტერის ქცევიდან - პრინტერის On-Line ინდიკატორი დიდი ხნის განმავლობაში ითიშება. ამ ფენომენის შედეგია ეკრანების დაბეჭდვის შეუძლებლობა (მაგალითად, BIOS Setup პარამეტრები) დაჭერით ბეჭდვის ღილაკებიეკრანი ოპერაციული სისტემის ჩატვირთვამდე.

1.5. პარალელური პორტი და PnP

LPT პორტთან დაკავშირებული თანამედროვე პერიფერიული მოწყობილობების უმეტესობა მხარს უჭერს 1284 სტანდარტის და PnP ფუნქციებს. ამ ფუნქციების მხარდასაჭერად, კომპიუტერის ტექნიკური თვალსაზრისით, საკმარისია ჰქონდეს ინტერფეისის კონტროლერი, რომელიც შეესაბამება 1284 სტანდარტს. თუ დაკავშირებული მოწყობილობა მხარს უჭერს PnP- ს, მას შეუძლია "მოლაპარაკება" პორტთან, რომელიც წარმოადგენს "ინტერესებს" "კომპიუტერის შესაძლო გაცვლის რეჟიმების შესახებ 1284 რეჟიმში მოლაპარაკების პროტოკოლის გამოყენებით. გარდა ამისა, PnP- ის მუშაობისთვის, დაკავშირებულმა მოწყობილობამ ოპერაციულ სისტემას უნდა უთხრას ყველა საჭირო ინფორმაცია თავის შესახებ. მინიმუმ, ეს არის მწარმოებლის პირადობის მოწმობები, მოდელები და მხარდაჭერილი ბრძანებების ნაკრები. მოწყობილობის შესახებ უფრო დეტალური ინფორმაცია შეიძლება შეიცავდეს კლასის იდენტიფიკატორს, დეტალური აღწერადა მოწყობილობის ID უნდა იყოს თავსებადი. მიღებული ინფორმაციის თანახმად ეს მოწყობილობაოპერაციულ სისტემას შეუძლია მიიღოს ზომები საჭირო პროგრამული უზრუნველყოფის ინსტალაციისთვის.

მოწყობილობები PnP მხარდაჭერით აღიარებულია ოპერაციული სისტემის მიერ მისი ჩატვირთვის ეტაპზე, თუ, რა თქმა უნდა, ისინი დაკავშირებულია პორტთან ინტერფეისის კაბელით და მათ აქვთ ჩართული. თუ Windows გამოავლენს დაკავშირებულ PnP მოწყობილობას, რომელიც განსხვავდება ამ პორტის (ან უბრალოდ ახალი მოწყობილობის) რეესტრში ჩაწერილი მოწყობილობისგან, იგი ცდილობს დააინსტალიროს მოწყობილობისთვის საჭირო დრაივერები OS განაწილების ნაკრებიდან ან ახალი მოწყობილობის პაკეტიდან. . თუ ვინდოუსს არ სურს შეამჩნია ახლად დაკავშირებული PnP მოწყობილობა, ეს შეიძლება მიუთითოს პორტის ან კაბელის პრობლემა. PnP სისტემა არ მუშაობს, თუ მოწყობილობა დაკავშირებულია იაფ "არასამთავრობო ორ მიმართულების" კაბელთან, რომელსაც არა აქვს SelectIn # ხაზოვანი კავშირი (LPT პორტის პინი 17 და Centronics კონექტორის 36 პინი).

1.6 LPT პორტის პროგრამა

როგორც წესი, LPT პორტი გამოიყენება პრინტერის დასაკავშირებლად (იხ. გვ. 8.3.1), მაგრამ ეს არ შემოიფარგლება მხოლოდ მისი გამოყენებით.

ორ კომპიუტერს შორის კომუნიკაციისთვის პარალელური ინტერფეისიგამოიყენება სხვადასხვა კაბელები, რომლებიც დამოკიდებულია პორტების რეჟიმებზე. ყველაზე მარტივი და ნელი არის კბენის რეჟიმი, რომელიც მუშაობს ყველა პორტზე. ამ რეჟიმისთვის საკმარისია 10 სიგნალის მავთულის და ერთი საერთო მავთულის კაბელში. საკაბელო კონექტორების pinout ნაჩვენებია ცხრილში. 1.11. ამ საკაბელოთი ორი კომპიუტერის კომუნიკაცია მხარს უჭერს სტანდარტულ პროგრამულ უზრუნველყოფას, როგორიცაა Interlnk MS-DOS ან Norton Commander. გაითვალისწინეთ, რომ აქ გამოყენებულია საკუთარი პროტოკოლი, რომელიც განსხვავდება 1.3.1-ში აღწერილისგან.

ცხრილი 1.11. PC-PC საკომუნიკაციო კაბელი (4 ბიტიანი)

X1, PC კონექტორი # 1 X2, PC კონექტორი # 2
ბიტი კონტაქტი კონტაქტი ბიტი
DR.0 2 15 SR.3
DR.1 3 13 სრ .4
DR.2 4 12 SR.5
DR.3 5 10 SR.6
DR.4 6 11 SR.7
SR.6 10 5 DR.3
SR.7 11 6 DR.4
SR.5 12 4 DR.2
სრ .4 13 3 DR.1
SR.3 15 2 DR.0
GND 18-25 18-25 GND

კონექტორები X1 და X2 არის DB25-P (მამაკაცი).

ორ კომპიუტერს შორის ჩქაროსნული კომუნიკაცია ასევე შეიძლება განხორციელდეს ECP რეჟიმში (EPP რეჟიმი არასასიამოვნოა, რადგან ის მოითხოვს ორი კომპიუტერის ავტობუსის I / O ციკლის სინქრონიზაციას).

მაგიდა 1.12 გვიჩვენებს კაბელის გაყვანილობას, ავტორის წინა წიგნების ანალოგიურ ცხრილში (იხილეთ და) მოხდა შეცდომა (13 და 15 ქინძისთავები აირია). საკაბელო ყველა სიგნალიდან მხოლოდ PeriphRequest # (pin 15) არ გამოიყენება. მიზანშეწონილია, რომ მონაცემთა ხაზის წრეში ჩასმული იყოს სერიული რეზისტორები (0,5–1 კვΩ), რათა თავიდან იქნას აცილებული ზედმეტი დენებისაგან, როდესაც ორივე კომპიუტერის მონაცემთა პორტები გამომავალ რეჟიმში არიან. ეს ვითარება მაშინ ხდება, როდესაც კომპიუტერების საკომუნიკაციო პროგრამა ჯერ არ დაწყებულა. კომუნიკაცია ECP რეჟიმში მხარდაჭერილია Windows 9x- ით, ამ ოპერაციული სისტემის მიწოდების კომპლექტში შედის PARALINK.VxD დრაივერი, მაგრამ შიდა შეცდომის გამო ის არ მუშაობს. ამ დრაივერის პატჩი, ასევე საცდელი პროგრამა და საჭირო აღწერილობები შეგიძლიათ იხილოთ ქსელში (www.lpt.com, www.lvr.com/parport.htm).

ცხრილი 1.12. PC-PC საკომუნიკაციო კაბელი ECP რეჟიმში და ბაიტის რეჟიმში

კონექტორი X1 შემაერთებელი X2
კონტაქტი სახელი ECP- ში სახელი ECP- ში კონტაქტი
1 HostClk PeriphClk 10
14 მასპინძელი პერიფაკი 11
17 1284 აქტიური Xflag 13
16 უკუ მოთხოვნა # AskReverse # 12
10 PeriphClk HostClk 1
11 პერიფაკი მასპინძელი 14
12 AckReverse # უკუ მოთხოვნა # 16
13 Xflag 1284 აქტიური 17
2, 3…9 მონაცემები მონაცემები 2, 3…9

სკანერის LPT პორტთან დაკავშირება ეფექტურია მხოლოდ იმ შემთხვევაში, თუ პორტი უზრუნველყოფს მინიმუმ ორმხრივ რეჟიმს (Bi-Di), რადგან ძირითადი ნაკადი შედის. უმჯობესია გამოიყენოთ ECP პორტი, თუ ამ რეჟიმს მხარს უჭერს სკანერი (ან EPP, რაც ნაკლებად სავარაუდოა).

კავშირი დამატებითი სათავსო(Iomega Zip Drive, CD-ROM და ა.შ.), LAN ადაპტერებს და სხვა დაბალანსებულ I / O მოწყობილობებს აქვთ საკუთარი სპეციფიკა. SPP რეჟიმში, მოწყობილობის შენელებასთან ერთად, ამ რეჟიმის ფუნდამენტური ასიმეტრია შეიმჩნევა: მონაცემების კითხვა ორჯერ ნელია ვიდრე (საკმაოდ ნელი) წერა. ორმხრივი რეჟიმის (Bi-Di ან PS / 2 ტიპი 1) გამოყენება ამ ასიმეტრიას აღმოფხვრის - სიჩქარე თანაბარი იქნება. მხოლოდ EPP- ზე ან ECP- ზე გადასვლით შეგიძლიათ მიიღოთ მუშაობის ნორმალური სიჩქარე. EPP ან ECP რეჟიმში, LPT პორტთან კავშირი თითქმის ისეთივე სწრაფია, როგორც ISA კონტროლერის საშუალებით. ეს ასევე ასეა, როდესაც სტანდარტული ავტობუსის ინტერფეისით მოწყობილობები LPT პორტებთან ინტერფეისის გადამყვანების (მაგალითად, LPT-IDE, LPT-SCSI, LPT-PCMCIA) საშუალებით შეერთებისას. გაითვალისწინეთ, რომ IDE მყარი დისკი, რომელიც ადაპტერის საშუალებით LPT პორტთან არის დაკავშირებული, შეიძლება წარმოდგენილი იყოს სისტემისთვის SCSI მოწყობილობა (ეს პროგრამული უზრუნველყოფის თვალსაზრისით უფრო ლოგიკურია).

მაგიდა 1.13 აღწერს LPT- პორტის შემაერთებელი ქინძისთავების დანიშნულებას სხვადასხვა რეჟიმში და მათი შესაბამისობა სტანდარტული პორტის რეესტრის ბიტებთან.

ცხრილი 1.13. LPT- პორტის შემაერთებელი ქინძისთავების და რეგისტრის ბიტების დანიშნულება SPP, ECP და EPP რეჟიმებში

კონტაქტი I / O ცოტა SPP ECP EPP
1 ო / მე CR.0 \ Strobe # HostClk დაწერე #
2 ო / მე DR.0 მონაცემები 0 მონაცემები 0 მონაცემები 0
3 ო / მე DR.1 მონაცემები 1 მონაცემები 1 მონაცემები 1
4 ო / მე DR.2 მონაცემები 2 მონაცემები 2 მონაცემები 2
5 ო / მე DR.3 მონაცემები 3 მონაცემები 3 მონაცემები 3
6 ო / მე DR.4 მონაცემები 4 მონაცემები 4 მონაცემები 4
7 ო / მე DR.5 მონაცემები 5 მონაცემები 5 მონაცემები 5
8 ო / მე DR.6 მონაცემები 6 მონაცემები 6 მონაცემები 6
9 ო / მე DR.7 მონაცემები 7 მონაცემები 7 მონაცემები 7
10 მე SR.6 Ack # PeriphClk INTR #
11 მე SR.7 \ Დაკავებული პერიფაკი დაელოდეთ #
12 მე SR.5 ქაღალდის დაბოლოება AckReverse #
13 მე სრ .4 აირჩიეთ Xflag
14 ო / მე CR.1 \ ავტო LF # მასპინძელი DataStb #
15 მე SR.3 შეცდომა # პერიფერი მოთხოვნა #
16 ო / მე CR.2 Მასში # უკუ მოთხოვნა # გადაყენება #
17 ო / მე CR.3 \ აირჩიეთ # 1284 აქტიური AddrStb #

¹ სიმბოლო "\" აღნიშნავს შებრუნებულ სიგნალებს (რეესტრში 1 შეესაბამება ხაზის დაბალ დონეს).

² მომხმარებლის განმარტება.

1.7. LPT პორტების კონფიგურაცია

პორტის პარალელური კონტროლი იყოფა ორ ეტაპად - პორტის აპარატურის წინასწარი კონფიგურაცია (დაყენება) და მოქმედი რეჟიმების მიმდინარე (ოპერაციული) გადართვა აპლიკაციის ან სისტემის პროგრამული უზრუნველყოფით. ონლაინ ჩართვა შესაძლებელია მხოლოდ კონფიგურაციის დროს ნებადართულ რეჟიმში. ამის საშუალებით შესაძლებელია აპარატურის კოორდინაცია პროგრამულ უზრუნველყოფასთან და პროგრამის არასწორი მოქმედებით გამოწვეული ყალბი კონცენტრატორების დაბლოკვა.

LPT პორტის კონფიგურაცია დამოკიდებულია მის ვერსიაზე. პორტი, რომელიც მდებარეობს გამაფართოებელ დაფაზე (მრავალ კარტი), დაინსტალირებულია ISA ან ISA + VLB ჭრილში, კონფიგურირებულია მხტუნავით თვითონ დაფაზე. დედაპლატის პორტი კონფიგურირებულია BIOS Setup– ით.

კონფიგურაციის პარამეტრები ჩამოთვლილია ქვემოთ.

Base ძირითადი მისამართია 3BCh, 378h ან 278h. ინიციალიზაციის დროს, BIOS ამოწმებს ამ პორტის მისამართების მიხედვით პორტების არსებობას და შესაბამისად, გამოვლენილ პორტებს ანიჭებს ლოგიკურ სახელებს LPT1, LPT2, LPT3. 3BCh მისამართს აქვს პორტის ადაპტერი, რომელიც მდებარეობს MDA ან HGC დაფაზე. პორტების უმეტესობა კონფიგურირებულია, რომ ნაგულისხმევად მიმართავს 378h- ს და მათი გადართვა შესაძლებელია 278h- ზე.

♦ გამოყენებული წყვეტის მოთხოვნის ხაზი: LPT - IRQ7, LPT2 - IRQ5– ისთვის. ტრადიციულად, პრინტერის წყვეტები არ არის ჩართული და ამ მწირი რესურსის დაზოგვა შეიძლება. ამასთან, ECP (ან Fast Centronics) მაღალსიჩქარიანი რეჟიმების გამოყენებისას, მუშაობის შეწყვეტამ შეიძლება მნიშვნელოვნად გააუმჯობესოს მუშაობა და შეამციროს პროცესორის დატვირთვა.

♦ DMA არხის გამოყენება ECP და Fast Centronics რეჟიმებისთვის - DMA არხის რეზოლუცია და ნომერი.

Port პორტის მუშაობის რეჟიმები:

SPP - პორტი მუშაობს მხოლოდ სტანდარტული ერთჯერადი პროგრამული უზრუნველყოფით კონტროლირებად რეჟიმში;

PS / 2, aka Bi-Directional - განსხვავდება SPP– სგან არხის უკუქცევის შესაძლებლობით (პარამეტრი CR.5 = 1);

სწრაფი Centronics - Centronics პროტოკოლის აპარატული ფორმირება FIFO ბუფერის და შესაძლოა DMA– ს გამოყენებით;

EPP - რეგისტრების გამოყენების მიხედვით, პორტი მუშაობს SPP ან EPP რეჟიმში;

ECP - სტანდარტულად ის ჩართულია SPP ან PS / 2 რეჟიმში, ECR– სთვის წერილობით მისი გადატანა შესაძლებელია ნებისმიერ ECP რეჟიმში, მაგრამ თარგმანი EPP– ზე ECR კოდზე 100 წერილით არ არის გარანტირებული;

ECP + EPP - იგივეა, რაც ECP, მაგრამ 100-ზე ECR ჩაწერის რეჟიმი პორტს თარგმნის EPP.

EPP, ECP ან Fast Centronics რეჟიმის არჩევანი თავისთავად არ ზრდის გაცვლის სიჩქარეს დაკავშირებულ კონტროლერებთან, მაგრამ მხოლოდ საშუალებას აძლევს მძღოლს და კონტროლერებს შექმნან ოპტიმალური რეჟიმი მათი "გაგებით". თანამედროვე დრაივერებისა და პროგრამების უმეტესობა ცდილობს გამოიყენოს ეფექტური რეჟიმები, ასე რომ თქვენ არ უნდა „დააჭიროთ მათ ფრთები“ მარტივი რეჟიმების დაყენებით, უსაფუძვლოდ.

პრინტერებსა და სკანერებს შეიძლება ჰქონდეთ ECP რეჟიმი. Windows (3.x, 9x და NT) ამ რეჟიმისთვის აქვს სისტემის დრაივერები. DOS გარემოში, ECP ბეჭდვას მხარს უჭერს მხოლოდ სპეციალური გადმოსაწერადი დრაივერი.

Ქსელის ადაპტერები, გარე დისკებიდა CD-ROM– ებს, რომლებიც დაკავშირებულია პარალელურ პორტთან, შეუძლიათ გამოიყენონ EPP რეჟიმი. ამ რეჟიმისთვის სპეციალური დრაივერი ჯერ არ არის გამოყენებული; EPP მხარდაჭერა შედის დანამატის მოწყობილობის მძღოლში.

1.8. პარალელური პორტის შეცდომები და ტესტირება

კარგი იდეაა, რომ დაიწყოთ პარალელური პორტების შემოწმება, თუ შეამოწმებთ სისტემაში. დაინსტალირებული პორტების მისამართების სია გამოჩნდება BIOS- ის მიერ ეკრანზე ნაჩვენებ ცხრილში OS- ის ჩატვირთვამდე. სიის ნახვა შესაძლებელია სატესტო პროგრამების გამოყენებით ან უშუალოდ BIOS მონაცემთა არეალში, გამართვის სისტემის გამოყენებით.

თუ BIOS ნაკლებ პორტს აღმოაჩენს, ვიდრე ეს ფიზიკურად არის დაინსტალირებული, სავარაუდოდ, ორ პორტს ენიჭება ერთი და იგივე მისამართი. ამავდროულად, არ არის გარანტირებული რომელიმე კონფლიქტური პორტის მოქმედება: ისინი ერთდროულად გამოყოფენ სიგნალებს, მაგრამ სტატუსის რეესტრის წაკითხვისას, ავტობუსში კონფლიქტმა მონაცემების დაზიანებას გამოიწვევს. პროგრამული უზრუნველყოფის ტესტირებაპორტები დიაგნოზირებული დანამატის გარეშე (Loop Back) არ აჩვენებს შეცდომებს, ვინაიდან გამოკითხული რეესტრების მონაცემები იკითხება და ისინი ერთმანეთს დაემთხვევა ყველა კონფლიქტისთვის (ინდივიდუალურად გამართული პორტებისთვის). ეს არის ზუსტად ის, რასაც BIOS აკეთებს პორტების შემოწმებისას. თქვენ უნდა გაუმკლავდეთ ამ სიტუაციას პორტების თანმიმდევრული დაყენებით და იმ მისამართების დაკვირვებით, რომლებიც ამ სიაში ჩანს.

თუ მხოლოდ ერთი პორტი არის ფიზიკურად დაინსტალირებული, და BIOS არ აღმოაჩენს მას, მაშინ ან პორტი გამორთულია კონფიგურაციის დროს, ან ის მწყობრიდან გამოდის (სავარაუდოდ, კავშირის წესების დარღვევის გამო). თუ გაგიმართლათ, გაუმართაობა აღმოფხვრილია ჭრილში დაფის "ჟონგლირება" - ზოგჯერ კონტაქტებთან დაკავშირებული პრობლემები არსებობს.

ასეთი "სასწაულები" შეინიშნება - Windows 95-ის შემდეგ "თბილი" DOS- ის გადატვირთვისას, პორტი არ ჩანს (და პროგრამებს არ შეუძლიათ ბეჭდვა MS-DOS- დან). ამასთან, DOS- ის გადატვირთვის შემდეგ, პორტი უკვე მოქმედებს. ამ ფენომენის შეგუება უფრო ადვილია, ვიდრე ბრძოლა.

პორტების ტესტირება დიაგნოსტიკური პროგრამების საშუალებით საშუალებას გაძლევთ შეამოწმოთ გამომავალი რეგისტრები და გამოიყენოთ სპეციალური დანამატები, შეყვანის ხაზები. ვინაიდან პორტის (12) და შეყვანის (5) გამომავალი ხაზების რაოდენობა განსხვავებულია, მაშინ სრული შემოწმებაპორტი პასიური დანამატის გამოყენებით პრინციპში შეუძლებელია. სხვადასხვა საცდელი პროგრამისთვის საჭიროა სხვადასხვა ძალისხმევა (სურათი 1.8).

ნახ. 1.8. ნაკადის წრე LPT პორტის შესამოწმებლად: a - for CheckIt, b - Norton Diagnostics

LPT პორტებთან მუშაობისას უმეტესი პრობლემები გამოწვეულია კონექტორებით და კაბელებით. პორტის, საკაბელო და პრინტერის შესამოწმებლად შეგიძლიათ გამოიყენოთ სპეციალური ტესტები პოპულარული დიაგნოსტიკური პროგრამებიდან (CheckIt, PCCheck და ა.შ.). შეგიძლიათ სცადოთ მარტივად დაბეჭდოთ პერსონაჟის ფაილი პრინტერზე.

♦ თუ DOS- ის თვალსაზრისით ფაილის გამომავალი გადის (ფაილის კოპირება LPTn ან PRN მოწყობილობაზე სწრაფად და წარმატებით ხდება), და პრინტერს (სამუშაო) არ აქვს ერთი პერსონაჟი დაბეჭდილი - სავარაუდოდ, ეს არის Strobe # მიკროსქემის ღია წრე (არ არის კონტაქტი კონექტორში) ...

♦ თუ პრინტერი ჩართულია და გამოჩნდება მიუწვდომელი შეტყობინება, მოძებნეთ მიზეზი Busy ხაზში.

♦ თუ პორტთან დაკავშირებული პრინტერი იბეჭდება ჩვეულებრივ სტანდარტულ რეჟიმში (SPP), მაგრამ ვერ გამოდის ECP რეჟიმში შესვლისას, შეამოწმეთ კაბელი, აკმაყოფილებს თუ არა IEEE 1284 მოთხოვნებს (იხილეთ ზემოთ). იაფი კაბელები გადაუგრიხებელი ხაზებით ჩვეულებრივ მუშაობს 50-100 კბ / წმ სიჩქარით, მაგრამ ECP– ით გათვალისწინებული 1-2 მბ / წმ სიჩქარით, მათ აქვთ სრული უფლება არ იმუშაონ, განსაკუთრებით 2 მ – ზე მეტი სიგრძით .

♦ თუ PnP პრინტერის დრაივერის ინსტალაციისას გამოჩნდება ”ორმხრივი საკაბელო” შეტყობინება, შეამოწმეთ კავშირი DB-25 კონექტორის ტრეკი 17-სა და Centronics კავშირის 36 სიმღერას შორის. მიუხედავად იმისა, რომ ეს კავშირი თავდაპირველად იყო გათვალისწინებული, ის ზოგიერთ კაბელში არ არის ხელმისაწვდომი.

♦ თუ პრინტერი ბეჭდვის დროს ამახინჯებს ინფორმაციას, მონაცემთა ხაზები შეიძლება გატეხილი იყოს (ან შემცირდეს). ამ შემთხვევაში, მოსახერხებელია გამოიყენოთ ფაილი, რომელიც შეიცავს კოდების თანმიმდევრობას ყველა დასაბეჭდი სიმბოლოსთვის. თუ ფაილი იბეჭდება ზოგიერთი სიმბოლოს ან მათი ჯგუფის გამეორებით, ინტერფეისის წყვეტილი მონაცემთა მავთული ადვილად გამოითვლება გამეორების სიჩქარით. იგივე ფაილი გამოსაყენებელია მოსახერხებელი პრინტერის აპარატური რუსიფიკაციის შესამოწმებლად.

LPT პორტიდან აპარატული შეფერხებები ყოველთვის არ გამოიყენება. მაშინაც კი, DOS ფონზე ბეჭდვის პროგრამა PRINT მუშაობს პორტთან სტატუსის გამოკითხვით და მისი უკანა მხარე იწყება ტაიმერის შეწყვეტით. ამიტომ, პორტის წყვეტის მიკროსქემის ხარვეზები იშვიათია. ამასთან, ჭეშმარიტად მრავალამომხმარებლო ოპერაციული სისტემები (მაგალითად, NetWare) ცდილობენ პორტთან იმუშაონ შეწყვეტებზე. შეწყვეტის ხაზის შემოწმება შეგიძლიათ მხოლოდ CP პორტთან ან ბუდე სადენთან მიერთებით. თუ LAN ადაპტერი უკავშირდება პორტს გაუმართავი წყვეტის არხით, მაშინ ის იმუშავებს, მაგრამ ძალიან დაბალი სიჩქარით: ნებისმიერი მოთხოვნა მიიღებს პასუხს ათეული წამის დაგვიანებით - ადაპტერიდან მიღებული პაკეტი არ მიიღებს მიიღება შეწყვეტით (ჩამოსვლისთანავე) და გარე შეყოვნებით.

LPT პორტი, რომელსაც ხშირად პარალელურ პორტს უწოდებენ, ერთ-ერთი უძველესი პორტია PC- ზე. მიუხედავად იმისა, რომ ამ დღეებში, ასეთი პორტი არ არის ხელმისაწვდომი დედაპლატებში, მას გარკვეული განაწილება აქვს და ამიტომ კომპიუტერებისა და საოფისე ტექნიკის ბევრ მომხმარებელს, კერძოდ, პრინტერებს, ძალიან აინტერესებთ, რა არის ეს.

პირველ რიგში უნდა გესმოდეთ რას ნიშნავს lpt პორტი. ასე რომ, LPT ნიშნავს რამდენიმე ინგლისური სიტყვის კომბინაციის აბრევიატურას, კერძოდ: Line Print Terminal. რუსულად, LPT ნიშნავს სტრიქონების მიხედვით პრინტერების ტერმინალს. სახელიდან გამომდინარე, ცხადი ხდება, რომ იგი ძირითადად განკუთვნილია პრინტერისთვის. თეორიული თვალსაზრისით, ზოგიერთ სხვა მოწყობილობას ასევე შეუძლია დაუკავშირდეს LPT. ამ მიზნით, გამოიყენება სპეციალური ადაპტერი - lpt ადაპტერი. უნდა დაემატოს, რომ მას აქვს სხვა სახელი, მიღებული მომხმარებლის წრეებში - პრინტერის პორტი.

ზოგადად, lpt პორტს განვითარების საკმაოდ დიდი ისტორია აქვს. იგი შეიმუშავეს კომპანია Centronics- ის თანამშრომლებმა, რომელიც გასული საუკუნის 70-იანი წლების დასაწყისში სპეციალიზირებული იყო წერტილოვანი მატრიქსული პრინტერების წარმოებაში. 1980-იანი წლების დასაწყისში ამ პრინტერის პორტმა ფართოდ გამოიყენა IBM, რომელმაც ის გამოიყენა მათ კომპიუტერებზე. ამ ათწლეულში, lpt პორტმა კი შეძლო გამხდარიყო სტანდარტული ვარიანტი, რომელიც საჭიროა იმ წლებში ხელმისაწვდომი მაღალი სიჩქარით მოწყობილობების დასაკავშირებლად.

თავდაპირველად, LPT ინტერფეისი წარმოდგენილი იყო რამდენიმე სხვადასხვა გამოცემაში. უფრო მეტიც, თავდაპირველ ვერსიაში, ეს იყო ცალმხრივი, ე.ი. მისი დახმარებით შესაძლებელი იყო ინფორმაციის გადაცემა მხოლოდ პერიფერიულ მოწყობილობაზე. რა თქმა უნდა, ამგვარი სიტუაცია ბევრ მომხმარებელს არ შეეფერება, tk. უკვე იმ წლებში იწარმოებოდა ბეჭდვითი მოწყობილობები, რომლებიც მონაცემთა გადაცემის განხორციელებას მოითხოვდა ორი მიმართულებით. ამიტომ რამდენიმე ხნის შემდეგ, დეველოპერებმა რამდენჯერმე უნდა გააუმჯობესონ LPTl ინტერფეისი. ეს პროცესი გაგრძელდა მისი სტანდარტის წარმოდგენამდე, რომელსაც IEEE 1284 ეწოდა. ამრიგად, დეველოპერებმა წარმოადგინეს პორტის საბოლოო სქემა. ახალ სტანდარტს გააჩნდა ოპერაციის რამდენიმე სხვადასხვა რეჟიმის მხარდაჭერა. გარდა ამისა, ის თავსებადი იყო უფრო ძველ სტანდარტებთან. საბოლოო ვერსიით, პრინტერის ინტერფეისს შეეძლო იმ დროისთვის ინფორმაციის გადაცემის საკმაოდ მაღალი სიჩქარის მხარდაჭერა, რაც 5 მბ / წმ-ს აღწევდა!

როგორ მუშაობს პარალელური პორტი?

პარალელური LPT სახელწოდება გამოწვეულია იმით, რომ მასთან დაკავშირებულ კაბელში მონაცემთა გადაცემა ხორციელდება პარალელურად, რისთვისაც ერთდროულად გამოიყენება რამდენიმე გამტარი. ამის გამო ის მნიშვნელოვნად განსხვავდება კატისგან, რაც თანმიმდევრულია. დირიჟორების რაოდენობა საკაბელოში, რომელიც LPT- ს უკავშირდება, ჩვეულებრივ, რვაა. გარდა ამისა, იგი შეიძლება შეიცავდეს რამდენიმე ხაზს საკონტროლო სიგნალების გადასაცემად. ამრიგად, კომპორტის გამოყენებას LPT– სთან შედარებით აქვს მრავალი ძლიერი შეზღუდვა და უარყოფითი მხარე.

მიუხედავად იმისა, რომ Centronics პორტი უფრო მეტად გამოიყენებოდა პრინტერსა და კომპიუტერს შორის კავშირის ორგანიზებისთვის, ამის მიუხედავად, იგი სხვა მიზნებისთვისაც გამოიყენეს. მაგალითად, LPT- ის გამოყენებით შეგიძლიათ პირდაპირ დააკავშიროთ ორი პერსონალური კომპიუტერი ერთმანეთთან - ჩვეულებრივ ამისთვის გამოიყენება ინტერლინკის კაბელი. სანამ ქსელი Ethernet ბარათებიარ გავრცელებულა, ამ ტიპის კავშირი ძალიან პოპულარული იყო. რა თქმა უნდა, მას არ შეეძლო მომხმარებლისთვის მონაცემთა გადაცემის ძალიან მაღალი სიჩქარის უზრუნველყოფა, მაგრამ ამის მიუხედავად, ამ წლებში ორი კომპიუტერის ერთმანეთთან დაკავშირების ეს გზა თითქმის ერთადერთი იყო. ამას უნდა დაემატოს, რომ ელექტრონული ტიპის სპეციალური გასაღებებიც კი არსებობს, რომლებიც სპეციალურად შექმნილია პარალელურ პორტთან დასაკავშირებლად.

LPT მუშაობის თავისებურებების შესახებ

როგორც ზემოთ აღვნიშნეთ, com– სგან განსხვავებით, LPT– ს აქვს მონაცემთა პარალელური გადაცემის მხარდაჭერა. პერსონალური კომპიუტერების პირველ მოდელებში, ეს იყო ერთ-ერთი ყველაზე სწრაფი. მისი ინტერფეისი, ინფორმაციის რამდენიმე ხაზზე გადაცემის შესაძლებლობის გამო, მრავალმხრივ ჰგავს PC- ში გამოყენებულ ავტობუსებს. მაგრამ ზუსტად ამგვარი გარემოება ზღუდავს კაბელის სიგრძეს, რომელიც არ უნდა აღემატებოდეს 5 მეტრს. წინააღმდეგ შემთხვევაში, მუდმივი ჩარევა მოხდება კომპიუტერსა და პრინტერს შორის კავშირში.

ჩვეულებრივ, 10 სიგნალის ხაზია საჭირო მონაცემთა ნორმალური გადაცემის ორგანიზებისთვის. რაც შეეხება დანარჩენ ხაზებს, ისინი გამოიყენება Centronics კაბელის სტანდარტთან თავსებადობისთვის. მაქსიმალური ძაბვის პარამეტრი, რომელიც ვრცელდება LTP სიგნალის ხაზებზე, ჩვეულებრივ +5 ვ.

პორტის კონექტორი და Centronics კაბელი

თუ ჩვენ ვსაუბრობთ პარალელური პორტის კონექტორზე, მაშინ იგი მდებარეობს დედაპლატაზე, თუმცა გასული საუკუნის 90-იანი წლების შუა ხანებამდე ეს ელემენტი ჩვეულებრივ მდებარეობდა ე.წ. მულტიკარდი, რომელიც ჩასმული იყო გაფართოების ჭრილში. LPT გამომავალი არის 25 პინიანი DB25 კონექტორი.

პერსონალური კომპიუტერისა და საოფისე ტექნიკის პერსონალური პორტის გამოყენებით კავშირის დასამყარებლად, თქვენ უნდა გამოიყენოთ Centronics კაბელი. ამ შემთხვევაში, საოფისე ტექნიკის კონექტორი 36 პინიანია. ამრიგად, ამ კაბელის მთავარი მახასიათებელია ის, რომ მას ორი მხრიდან აქვს ორი განსხვავებული კონექტორი.
გაითვალისწინეთ ისიც, რომ საკმაოდ ხშირად Centronics კონექტორი გულისხმობს საკაბელო კონექტორს, რომელიც განკუთვნილია პერსონალური კომპიუტერის დედაპლატისთვის, სინამდვილეში კი ეს არის პრინტერის კონექტორი - ე.ი. ერთი, რომელიც მოიცავს 36 კონტაქტს. რაც შეეხება უშუალოდ LPT- სთვის მიერთებულ კონექტორს, მას Amphenolstacker ეწოდება. სახელების ამგვარი განსხვავებები უნდა იყოს ცნობილი, რომ ყველა მათგანს საკუთარი სახელი დაარქვას.

შედეგი

დასასრულს, შეგვიძლია ვთქვათ, რომ Line Print Terminal- ის პარალელური პორტი წარმოადგენს PC ინტერფეისს, რომელიც ახლა უკვე საკმაოდ მოძველებულია. გასული საუკუნის ბოლო ათწლეულების განმავლობაში გავრცელების მიუხედავად, ამ პორტს დიდი მხარდაჭერა არ აქვს მრავალი კომპანიისგან, რომლებიც აწარმოებენ კომპიუტერულ აღჭურვილობას, საოფისე ტექნიკას და პროგრამული უზრუნველყოფა... ამის მიუხედავად, LPT კვლავ წარმატებით გამოიყენება PC– ების და პოლიგრაფიული მოწყობილობების მრავალ მოდელში, რომლებიც მოძველებულია ჩვენი დროისთვის. მაგრამ საკმაოდ ხშირად საჭიროა კომპიუტერის ადაპტერი კომპიუტერსა და ძველ პრინტერს შორის კავშირის ორგანიზების მიზნით. დღეს, პრინციპში, მათი პოვნა შესაძლებელია გაყიდვაში, მაგრამ თუ თქვენ გაქვთ ცოდნა და ცოდნა, აბსოლუტურად დამოუკიდებლად შეგიძლიათ დაიძინოთ ასეთი ადაპტერი.

დიმიტრი ივანოვი, 2009 წლის 21 სექტემბერი სტატია დასრულდა და განახლდა 2012 წლის 23 იანვარს

ამ საიტის არსებობის განმავლობაში ხშირად მეკითხებიან ერთი და იგივე კითხვა, რომლის აღწერაც დაახლოებით შემდეგნაირად შეიძლება:



შედეგად, გადავწყვიტე უფრო დეტალურად აღვწერო ეს საკითხი და დამეწერა სტატია. დიახ, მართლაც, ახლა თქვენ უნდა მოძებნოთ სტაციონარული კომპიუტერი LPT პორტით (ანუ ახლა ყველა "დედას" არ აქვს LPT პორტი). ლაპტოპებზე საუბარი საერთოდ არ არის საჭირო. თანამედროვე მოდელები საერთოდ არ იყენებენ LPT პორტს. მხოლოდ ძალიან ძვირადღირებულ და სპეციალიზებულ მანქანებს, როგორიცაა DELL, შეიძლება დაიკვეხნოს ამ პორტის არსებობით.

ასევე, ახლა გაყიდვაში შეგიძლიათ თავისუფლად შეიძინოთ ისეთი მოწყობილობები, რომლებსაც LPT-USB გადამყვანები ეწოდება.

ინსტრუქციებში ნათქვამია, რომ ეს მოწყობილობა სრულად არის თავსებადი სხვადასხვა პრინტერებთან, სკანერებთან და ა.შ. ჩვენ ვუკავშირდებით ადაპტერს USB პორტს, ვაყენებთ დრაივერებს. ჩვენ ვუყურებთ მოწყობილობის მენეჯერს. სავარაუდოდ ფილიალში "LPT / COM პორტები"არაფერი გამოჩენილა (თუმცა გამონაკლისებიც არსებობს). სავარაუდოდ, ან ახალი ფილიალი გამოჩნდება უცნაური მოწყობილობით, სახელად, მაგალითად, LPT1USBან USB მოწყობილობების განყოფილებაში, უცნაური ჩანაწერია "USB მოწყობილობის LPT პრინტერების მხარდაჭერა"... ზემოთ მოყვანილი სტატიების მაგალითის წარმოებას ვცდილობ. არც აქ იყო - არცერთი მუშაობს. LPT1 პორტის მისამართის მოსინჯვა - არაფერი მუშაობს. ვცდილობთ LPT2 პორტის მისამართს. სამწუხაროდ, მოთხოვნებში მისამართის ამგვარი განახლება ასევე არაფერს იწვევს - LED- ები არ ანათებენ და არ ანათებენ.

იმის გასარკვევად, თუ რაშია საქმე, მოდით, ცოტა ხნით დავუბრუნდეთ ჩვეულებრივ "მშობლიურ რკინის" LPT პორტს - LPT1, რომელიც "გამოდის" დედა დაფიდან. მოდით გადავდგათ მოწყობილობის მენეჯერთან, გადავხედოთ ჩვენი პორტის თვისებებს. იქ ვნახავთ ამ სურათს. თქვენ ნათლად ხედავთ, რომ სისტემაში დარეგისტრირებულია ბაზის I / O მისამართი 0x378 და შეწყვეტის მოთხოვნის ნომერი 7. ყველაფერი სწორია.

ახლა გადავეშვათ პროგრამირების დონეზე. ზემოთ მოყვანილი სტატიების მაგალითებში, ჩვენ გვერდის ავლით ავტომატიზირებული სისტემის დაცვას ლეგალური და უკანონო საშუალებებით, უშუალოდ კომუნიკაცირებულ რეალურ რეესტრთან, რომელსაც ენიჭება 0x378 მისამართი. აქ ყველაფერი გასაგებია. დავივიწყოთ ისიც, რომ Windows გირჩევთ მუშაობთ LPT პორტთან API ფუნქციის ზარების გამოყენებით - OpenFile (), WritFile (), ReadFile ()... პროგრამები, რომლებიც იყენებენ LPT პორტს ინფორმაციის გაცვლისთვის პარალელური ინტერფეისით გარე მოწყობილობები(მაგალითად, პრინტერი) სწორედ ამას აკეთებს. მას არ აქვს დაყენების არცერთი რეგისტრის ბიტი მონაცემებილიგიური ერთეული. მან (აპლიკაციამ) უბრალოდ უნდა გაგზავნოს მონაცემთა პაკეტი და ვინ იქნება ვინ რომელი სტრიქონით და ამავე დროს "გაიყვანს" და წაიკითხავს, ​​ეს ძალიან არ ინტერესდება. ამ ოპერაციებს ახორციელებს სისტემის LPT პორტის მძღოლი. ის იტვირთება მეხსიერებაში, როდესაც OS იტვირთება. როდესაც ჩვენ ფუნქციას ვუწოდებთ OpenFile ("LPT1", ....)ჩვენ არსებითად ვგულისხმობთ პორტის დრაივერს, რომელსაც აქვს სიმბოლური სახელი LPT1. მძღოლი დიდ სამუშაოს ასრულებს - კრძალავს პორტის შესვლას სხვა პროცესებისთვის, ადგენს მონაცემთა გადაცემის პროტოკოლის პარამეტრებს, რეალურად ახორციელებს ამ გადაცემას, მაგრამ საბოლოოდ ყველაფერი მიდის LPT პორტის ინდივიდუალური ბიტების პირდაპირ კონტროლზე OS ბირთვის დონე.

ახლა შევეცადოთ ვიმუშაოთ ჩვენს USB-LPT ადაპტერთან. დავიწყოთ, რაც არ უნდა უცნაურად ჩანდეს, API ზარებით. გაშვება OpenFile ("LPT1USB", ...)(დამოკიდებულია იმაზე, თუ როგორ იწოდება ამ ადაპტერს მოწყობილობის მენეჯერში, თუ მას საერთოდ უწოდებენ). რა ხდება შემდეგ? ფაქტია, რომ ახლა ჩვენ არ ვიმუშავებთ OS LPT პორტის დრაივერთან, არამედ ამ ადაპტერის დრაივერთან! აი ეს ხრიკი! იგი იღებს მონაცემთა პაკეტს ჩვენი პერსონალური პროგრამიდან და ა.შ. სასურველი ფორმატისისტემის მეშვეობით USB დრაივერიაგზავნის ამ პაკეტს USB კონტროლერი, რომლის "ფეხები" მავთულის გარე LPT ბუდედან გამოდის (კარგად, ესე იგი, "უხეში ახსნა"). ხედავთ, რეგისტრაციებზე წვდომის არანაირი მითითება არ არის 0x378 (0x278) მისამართებზე, ვინაიდან ისინი უბრალოდ არ არსებობენ!

ამიტომ, როდესაც თქვენ ცდილობთ აწარმოოთ მაგალითები ამ სექციისდა პირდაპირ მივმართოთ 0x378 მისამართებს (თუ ამ "ფსევდო პორტს" LPT1USB ან მსგავსი რამ ერქვა), 0x278 (LPT2 _...) და ა.შ. არაფერი ხდება. ისინი უბრალოდ არ არსებობენ! მაგრამ პროგრამა, რომელიც მუშაობს API ზარების საშუალებით, ვერაფერს შეამჩნევს - ყველა დაბალი დონის სამუშაოს ასრულებს მძღოლი და რომელი მძღოლი და სად წავა მონაცემთა პაკეტები (რეალურ I / O პორტთან ან USB ჰოსტის კონტროლერთან) - განაცხადს არ აქვს მნიშვნელობა! სცადეთ მოწყობილობის მენეჯერში გახსნათ "ფსევდო პორტის" თვისებები. არ გაქვთ რესურსის ჩანართი? დიახ, მაგრამ არსებობს არაადეკვატური მნიშვნელობები ან ჩანართი გამორთულია? ფაქტობრივად.



რატომ 99%? შემდეგ არსებობს თვითნაკეთი USB-LPT ადაპტერები, რომლებსაც Windows განსაზღვრავს როგორც სრულფასოვან LPT1 პორტს და მას ენიჭება 0x378 სრულიად ჩვეულებრივი მისამართი. პორტის პინებთან პირდაპირი ზარები წარმატებულია! ამასთან, ეს არის ძალიან არასტანდარტული დიზაინი (პირველ რიგში, დრაივერი, რომელიც იძახებს ზარებს LPT1 პორტის საბაზო მისამართზე). ეს ყველაფერი არ არის ძალიან საიმედო (ოპერაციული სისტემის განახლება - და დიზაინი კარგავს მუშაობას) და მხოლოდ მისი გამოყენებაა რეკომენდებული მონაკვეთისთვის.



რაოდენ უცნაურიც არ უნდა იყოს, გამოსავალი არსებობს. თქვენ ყოველთვის შეგიძლიათ დაამატოთ რეალური LPT პორტი თქვენს სამუშაო მაგიდაზე ან ლეპტოპში. პირველი, დაუყოვნებლივ დაივიწყეთ USB გადამყვანები. ამ პრობლემის მოსაგვარებლად საჭიროა შეძენა PCI-LPTადაპტერი დესკტოპის კომპიუტერისთვის (საჭიროა უფასო PCI სლოტი) ან PCMCIA-LPTლეპტოპის ადაპტერი (იხილეთ ფოტო ქვემოთ).


ამ მოწყობილობების გამოყენების შემთხვევაში, პრობლემები არ არსებობს. ისინი განისაზღვრება როგორც ნამდვილი "მშობლიური" LPT პორტი. შესაბამისი ჩანაწერი დაემატება მოწყობილობის მენეჯერს vkldak "LPT / COM პორტები". პირდაპირი გასაჩივრებაპორტის ქინძისთავებზე იმუშავებს.

პარალელური პორტი და RnR

LPT-nop-tu- სთან დაკავშირებული თანამედროვე პერიფერიული მოწყობილობების უმეტესობა მხარს უჭერს 1284 სტანდარტის და PnP ფუნქციებს. ამ ფუნქციების მხარდასაჭერად, კომპიუტერის ტექნიკური თვალსაზრისით, საკმარისია ჰქონდეს ინტერფეისის კონტროლერი, რომელიც შეესაბამება 1284 სტანდარტს. თუ დაკავშირებული მოწყობილობა მხარს უჭერს PnP- ს, მას შეუძლია "მოლაპარაკება" პორტთან, რომელიც წარმოადგენს "ინტერესებს" "კომპიუტერის შესაძლო გაცვლის რეჟიმების შესახებ 1284 რეჟიმში მოლაპარაკების პროტოკოლის გამოყენებით. გარდა ამისა, PPP- ის მუშაობისთვის, დაკავშირებულმა მოწყობილობამ უნდა აცნობოს ოპერაციულ სისტემას ყველა საჭირო ინფორმაცია თავის შესახებ. მინიმუმ, ეს არის მწარმოებლის პირადობის მოწმობები, მოდელები და მხარდაჭერილი ბრძანებების ნაკრები. უფრო დეტალური ინფორმაცია მოწყობილობის შესახებ შეიძლება შეიცავდეს კლასის იდენტიფიკატორს, დეტალურ აღწერას და მოწყობილობის იდენტიფიკატორს, რომელთანაც უზრუნველყოფილია თავსებადობა. ამ მოწყობილობის მხარდასაჭერად მიღებული ინფორმაციის საფუძველზე, ოპერაციულ სისტემას შეუძლია ნაბიჯები გადადგას საჭირო პროგრამული უზრუნველყოფის ინსტალაციისთვის.

РпР– ს მხარდაჭერით მოწყობილობები აღიარებულია OS– ს მიერ მისი დატვირთვის ეტაპზე, თუ, რა თქმა უნდა, ისინი დაკავშირებულია პორტთან ინტერფეისის კაბელით და მათ აქვთ ჩართული. თუ Windows გამოავლენს დაკავშირებულ PnP მოწყობილობას, რომელიც განსხვავდება ამ პორტის (ან უბრალოდ ახალი მოწყობილობის) რეესტრში დაწერილისგან, იგი ცდილობს დააინსტალიროს დრაივერები მოწყობილობისთვის OS განაწილების ნაკრებიდან ან ახალი მოწყობილობის პაკეტიდან. . თუ ვინდოუსს არ სურს შეამჩნიოს ახლად დაკავშირებული PnP მოწყობილობა, ეს შეიძლება მიუთითოს პორტის ან კაბელის პრობლემა. PpP სისტემა არ მუშაობს, თუ მოწყობილობა დაკავშირებულია იაფ "არასამთავრობო ორ მიმართულების" კაბელთან, რომელსაც არ აქვს Selectln # ხაზის კავშირი (LPT პორტის პინი 17 და Centronics კონექტორის 36 პინი).

როგორც წესი, LPT პორტი გამოიყენება პრინტერის დასაკავშირებლად (იხ. გვ. 8.3.1), მაგრამ ეს არ შემოიფარგლება მხოლოდ მისი გამოყენებით.

ორი კომპიუტერის დასაკავშირებლადპარალელური ინტერფეისი იყენებს სხვადასხვა კაბელს, რაც დამოკიდებულია პორტების რეჟიმებზე. ყველაზე მარტივი და ნელი არის კბენის რეჟიმი, მუშაობს ყველაპორტები. ამ რეჟიმისთვის საკმარისია 10 სიგნალის მავთულის და ერთი საერთო მავთულის კაბელში. საკაბელო კონექტორების pinout ნაჩვენებია ცხრილში. 1.11. ამ საკაბელოთი ორი კომპიუტერის კომუნიკაცია მხარს უჭერს სტანდარტულ პროგრამულ უზრუნველყოფას, როგორიცაა Interlnk MS-DOS ან Norton Commander.

ორ კომპიუტერს შორის ჩქაროსნული კომუნიკაცია ასევე შეიძლება შესრულდეს ECP რეჟიმში (EPP რეჟიმი არასასიამოვნოა, რადგან ის მოითხოვს ორი კომპიუტერის ავტობუსის I / O ციკლის სინქრონიზაციას).

კავშირი სკანერი LPT პორტამდე ეფექტურია მხოლოდ იმ შემთხვევაში, თუ პორტი უზრუნველყოფს მინიმუმ ორმხრივ რეჟიმს (ბი-დი),მას შემდეგ, რაც მთავარი თემა არის შეყვანა. უმჯობესია გამოიყენოთ ECP პორტი, თუ ამ რეჟიმს მხარს უჭერს სკანერი (ან EPP, რაც ნაკლებად სავარაუდოა).


კავშირი დამატებითი სათავსო(Iomega Zip Drive, CD-ROM და ა.შ.), LAN ადაპტერებიდა სხვა სიმეტრიულ შეყვანის-გამომავალ მოწყობილობებს აქვს საკუთარი სპეციფიკა. SPP რეჟიმში, მოწყობილობის შენელებასთან ერთად, ამ რეჟიმის ფუნდამენტური ასიმეტრია შეინიშნება: მონაცემების კითხვახდება ორჯერ ნელა(ძალიან ნელი) ჩაწერა.განცხადება ორმხრივირეჟიმი (ბი-დიან PS / 2 ტური 1)აღმოფხვრის ამ ასიმეტრიას - სიჩქარე ტოლი იქნება.მხოლოდ EPP- ზე ან ECP- ზე გადასვლით შეგიძლიათ მიიღოთ ნორმალურიმუშაობის სიჩქარე. EPP ან ECP რეჟიმში, LPT პორტთან კავშირი თითქმის ისეთივე სწრაფია, როგორც ISA კონტროლერის საშუალებით. ეს ასევე ასეა, როდესაც სტანდარტული ავტობუსის ინტერფეისით მოწყობილობები LPT პორტებთან ინტერფეისის გადამყვანი საშუალებების მიერთებისას (მაგალითად, LPT - IDE, LPT - SCSI, LPT - PCMCIA). გაითვალისწინეთ, რომ IDE მყარი დისკი, რომელიც ადაპტერის საშუალებით LPT პორტთან არის დაკავშირებული, შეიძლება წარმოდგენილი იყოს სისტემისთვის SCSI მოწყობილობა (ეს პროგრამული უზრუნველყოფის თვალსაზრისით უფრო ლოგიკურია).

2. სერიული ინტერფეისი

მონაცემთა გადაცემის სერიული ინტერფეისი იყენებს ერთ სიგნალის ხაზს, რომლის საშუალებითაც ინფორმაციის ბიტი გადადის ერთმანეთის მიყოლებით. აქედან მოდის ინტერფეისისა და პორტის სახელი. ინგლისური ტერმინები - სერიული ინტერფეისიდა სერიული ნაწილი(ზოგჯერ ისინი არასწორად ითარგმნება როგორც "სერიული"). სერიულმა გადაცემამ შეიძლება შეამციროს სიგნალის ხაზების რაოდენობა და გაზარდოს საკომუნიკაციო დიაპაზონი. დამახასიათებელი მახასიათებელია არა TTL სიგნალების გამოყენება. რიგი სერიული ინტერფეისი იყენებს გარე (ჩვეულებრივ შეყვანის) სიგნალების გალვანურ იზოლაციას მოწყობილობის წრიული მიწიდან, რაც შესაძლებელს ხდის მოწყობილობების დაკავშირებას სხვადასხვა პოტენციალში. ქვემოთ განვიხილავთ ინტერფეისებს RS-232C, RS-422A, RS-423A, RS-485, მიმდინარე ციკლი, MIDI, ასევე COM პორტი.

2.1. სერიული კომუნიკაციის მეთოდები

სერიული მონაცემების გადაცემა შეიძლება იყოს ასინქრონული ან სინქრონული. Როდესაც ასინქრონულითითოეული ბაიტის გადაცემას წინ უსწრებს დაწყება bit,მიმღებისთვის სასიგნალო გაგზავნა წერილის დასაწყისის შესახებ, რასაც მოჰყვება მონაცემთა ბიტიდა, ალბათ, პარიტეტული ბიტი(პარიტეტი,). ამთავრებს ამანათს გაჩერება bit,შეტყობინებებს შორის პაუზის გარანტია (ნახ. 2.1). შემდეგი ბაიტის საწყისი ბიტი იგზავნება გაჩერების ბიტის შემდეგ ნებისმიერ მომენტში, ანუ შესაძლებელია თვითნებური სიგრძის პაუზები გადაცემებს შორის. საწყისი ბიტი, რომელსაც ყოველთვის აქვს მკაცრად განსაზღვრული მნიშვნელობა (ლოგიკური 0), უზრუნველყოფს მიმღების სინქრონიზაციის მარტივ მექანიზმს გადამცემის სიგნალთან. ივარაუდება, რომ მიმღები და გადამცემი იმავე Baud სიჩქარით მუშაობენ. მიმღების შიდა საათი იყენებს მითითების სიხშირის გამყოფი მრიცხველს, რომელიც გადატვირთულია საწყისი ბიტის მიღებისას. ეს მრიცხველი წარმოქმნის შინაგან სტრობას, რომლის მიხედვითაც მიმღები აფიქსირებს მიღებულ მიღებას

ბიტი იდეალურ შემთხვევაში, strobes განლაგებულია ბიტის შუალედების შუა რიცხვებში, რაც მონაცემთა მიღებას საშუალებას აძლევს მიმღებსა და გადამცემის სიჩქარეებს შორის მცირედი შეუსაბამობითაც კი. ცხადია, 8 მონაცემთა ბიტის, ერთი საკონტროლო ბიტის და ერთი გაჩერების ბიტის გადაცემისას, მაქსიმალური დასაშვები სიჩქარის შეუსაბამობა, რომლის დროსაც მონაცემები სწორად იქნება აღიარებული, არ უნდა აღემატებოდეს 5% -ს. ფაზის დამახინჯებისა და შიდა სინქრონიზაციის მრიცხველის დისკრეციის გათვალისწინებით, უფრო მცირე სიხშირის გადახრა დასაშვებია. რაც უფრო მცირეა შიდა ოსილატორის საცნობარო სიხშირის დაყოფის კოეფიციენტი (მით უფრო მაღალია გადაცემის სიხშირე), მით მეტია შეცდომა სტროგების გასწორებას ბიტის ინტერვალის შუაში და სიხშირის კონსისტენციის მოთხოვნები მკაცრდება. რაც უფრო მაღალია გადაცემის სიხშირე, მით უფრო დიდია ზღვარზე დამახინჯებული ზემოქმედება მიღებული სიგნალის ფაზაზე. ამ ფაქტორების ურთიერთქმედება იწვევს მიმღებისა და გადამცემის სიხშირეების თანმიმდევრულობის მოთხოვნების ზრდას გაცვლის სიხშირის ზრდით.

ასინქრონული გაგზავნის ფორმატი საშუალებას გაძლევთ ამოიცნოთ შესაძლო გადაცემის შეცდომები:

» თუ წვეთი მიიღება, გაგზავნის დაწყების სიგნალით და ლოგიკურად ერთ დონეს აფიქსირებს საწყისი ბიტის სტეროვი, საწყისი ბიტი ითვლება ყალბი და მიმღები კვლავ გადადის ლოდინის მდგომარეობაში. მიმღებმა შეიძლება არ განაცხადოს ამ შეცდომის შესახებ.

”თუ გაჩერების ბიტისთვის გამოყოფილი დროის განმავლობაში აღმოჩენილია ლოგიკური ნულოვანი დონე, გაჩერდება გაჩერების ბიტის შეცდომა.

თუ პარიტეტი გამოიყენება, მონაცემთა გაგზავნის შემდეგ ბიტი გადაეცემა საკონტროლო ბიტი.ეს ბიტი ავსებს ერთიანი მონაცემთა ბიტების რაოდენობას კენტი ან ლუწი, რაც დამოკიდებულია მიღებული კონვენციის მიხედვით. ბაიტის მიღება არასწორი გამშვები ბიტის მნიშვნელობით იწვევს შეცდომის დაფიქსირებას.

ფორმატის კონტროლი აფიქსირებს ხაზის წყვეტებს:

ამ შემთხვევაში მიიღება ლოგიკური ნულოვანი, რომელიც პირველად განიმარტება, როგორც საწყისი ბიტი, და ნულოვანი მონაცემების ბიტი, შემდეგ გაჩერდება ბიტის კონტროლი.

ასინქრონული რეჟიმისთვის მიღებულია შემდეგი სერიები სტანდარტული გაცვლითი კურსი: 50, 75, 110, 150,300,600,1200,2400,4800,9600, 19,200, 38,400, 57,600 და 115,200 წთ. ზოგჯერ bit / s- ის ნაცვლად გამოიყენება baud, მაგრამ ეს არ არის სწორი ორობითი გადაცემული სიგნალების განხილვისას. Baud– ში ჩვეულებრივია ხაზის მდგომარეობის შეცვლის სიხშირის გაზომვა, ხოლო არა ბინარული კოდირების მეთოდით (რომელიც ფართოდ გამოიყენება თანამედროვე მოდემებში) საკომუნიკაციო არხში, ბიტის სიჩქარე (bit / s) და სიგნალის ცვლილება (baud) შეიძლება რამდენჯერმე განსხვავდებოდეს (დაწვრილებითი ინფორმაციისთვის იხილეთ დანართი A).

ნომერი მონაცემთა ბიტიშეიძლება იყოს 5, 6, 7 ან 8 (5- და 6-ბიტიანი ფორმატები არც ისე ხშირია). Რაოდენობა გაჩერება ცოტაშეიძლება იყოს 1, 1.5 ან 2 ("ერთი და ნახევარი ბიტი" ნიშნავს მხოლოდ გაჩერების ინტერვალის სიგრძეს).

ასინქრონული გაცვლაკომპიუტერში ხორციელდება გამოყენებით COM პორტიპროტოკოლის გამოყენებით RS-232C.

სინქრონულიგადაცემის რეჟიმი გულისხმობს საკომუნიკაციო არხის მუდმივ აქტივობას. გადაცემა იწყება სინქრობიტით, რასაც დაუყოვნებლივ მოსდევს ინფორმაციის ბიტების ნაკადს. თუ გადამცემს მონაცემები არ აქვს გადასაცემად, ის ავსებს სიცარიელეს სინქრონული ბაიტების განუწყვეტლივ გაგზავნით. ცხადია, დიდი რაოდენობით მონაცემთა გადაცემისას, სინქრონიზაციისთვის ზედნადები ამ რეჟიმში დაბალი იქნება, ვიდრე ასინქრონულ რეჟიმში. ამასთან, სინქრონულ რეჟიმში აუცილებელია მიმღების გარე სინქრონიზაცია გადამცემთან, ვინაიდან მცირე სიხშირის გადახრაც კი გამოიწვევს მიღებული მონაცემების დამახინჯებას. გარე სინქრონიზაცია შესაძლებელია სინქრონიზაციის სიგნალის გადასაცემად ცალკეული ხაზის გამოყენებით, ან მონაცემების თვითსინქრონიზირებელი კოდირების გამოყენებით, რომელშიც შესაძლებელია სინქრონიზაციის იმპულსების მიღება სიგნალიდან მიმღების მხარეს. ნებისმიერ შემთხვევაში, სინქრონული ოპერაცია მოითხოვს ძვირადღირებულ საკომუნიკაციო ხაზებს ან ტერმინალურ აღჭურვილობას. პერსონალური კომპიუტერებისთვის არსებობს სპეციალური ბარათები - SDLC გადამყვანები (ძვირი), რომლებიც მხარს უჭერენ სინქრონული გაცვლის რეჟიმს. ისინი ძირითადად გამოიყენება მსხვილ IBM აპარატებთან (მთავარ ჩარჩოებთან) კომუნიკაციისთვის და ფართოდ არ გამოიყენება. სინქრონული გადამყვანებიდან ამჟამად გამოიყენება V.35 ინტერფეისის ადაპტერები.

Ზე ფიზიკური დონესერიულ ინტერფეისს აქვს სხვადასხვა განხორციელება, რომელიც განსხვავდება ელექტრული სიგნალების გადაცემის გზით. არსებობს მთელი რიგი დაკავშირებული საერთაშორისო სტანდარტები: RS-232C, RS-423A, RS-422Aდა RS-485.ნახ. 2.2 გვიჩვენებს მიმღებთა და გადამცემთა კავშირის დიაგრამებს და ასევე აჩვენებს ხაზის სიგრძის (L) და მაქსიმალური სიჩქარემონაცემთა გადაცემა (V).

დაუბალანსებელი ხაზის ინტერფეისი RS-232Cდა RS-423Aაქვთ ყველაზე დაბალი იმუნიტეტი საერთო რეჟიმის ხმაურის მიმართ, თუმცა მიმღების დიფერენციალური შეყვანა RS-423Aგარკვეულწილად არბილებს სიტუაციას. საუკეთესო პარამეტრებს აქვს წერტილიდან წერტილის ინტერფეისი RS-422Aდა მისი მაგისტრალური (ავტობუსის) ანალოგი RS-485,სიმეტრიულ საკომუნიკაციო ხაზებზე მოქმედი. ისინი თითოეული სიგნალის გადასაცემად იყენებენ დიფერენციალურ სიგნალებს ცალკეული (გადაუგრიხული) მავთულის წყლით.

IN ჩამოთვლილი სტანდარტებიწარმოდგენილია სიგნალი პოტენციური.არსებობს სერიული ინტერფეისი, სადაც მიმდინარე გადამცემი-მიმღების წრეში გაედინება ინფორმაცია - "მიმდინარე ციკლი" და MIDI. უკაბელო ინფრაწითელი საკომუნიკაციო სტანდარტები მიღებულია კომუნიკაციისთვის მოკლე მანძილზე. ყველაზე გავრცელებული კომპიუტერიდან იყო ყველაზე მარტივი ჩამოთვლილი - სტანდარტული RS-232C,ახორციელებს COM პორტებს. სამრეწველო ავტომატიზაციის დროს, იგი ფართოდ გამოიყენება RS-485,ისევე, როგორც RS-422A,ზოგიერთ პრინტერში გვხვდება. სიგნალის გადამყვანი არსებობს ამ დაკავშირებული ინტერფეისების მოსათავსებლად.

2.2. RS-232C ინტერფეისი

ინტერფეისი შექმნილია მონაცემთა გადამცემი ან მიმღები აღჭურვილობის დასაკავშირებლად (OOD -მონაცემთა ტერმინალური მოწყობილობა ან ADF -მონაცემთა გადაცემის მოწყობილობა; DTE - მონაცემთა ტერმინალური მოწყობილობა),მონაცემთა არხების ტერმინალურ მოწყობილობამდე (DCE; DCE - მონაცემთა საკომუნიკაციო მოწყობილობა). ADF შეიძლება იყოს კომპიუტერი, პრინტერი, პლოტერი და სხვა პერიფერიული მოწყობილობა. DCE ჩვეულებრივ მოდემია. კავშირის საბოლოო მიზანი არის ორი ADF მოწყობილობის დაკავშირება. კავშირის სრული სქემა ნაჩვენებია ნახატზე. 2.3. ინტერფეისი საშუალებას გაძლევთ გამორიცხოთ დისტანციური საკომუნიკაციო არხი და წყვილი ბანკომატი მოწყობილობებთან, უშუალოდ null-modem კაბელის გამოყენებით მოწყობილობების შეერთებით (ნახ. 2.4).

სტანდარტი აღწერს ინტერფეისის მართვის სიგნალებს, მონაცემთა გადაცემას, ელექტრულ ინტერფეისს და შემაერთებლის ტიპებს. სტანდარტი ითვალისწინებს ასინქრონული და სინქრონული გაცვლის რეჟიმებს, მაგრამ COM პორტებს მხოლოდ მხარდაჭერა აქვთ ასინქრონული რეჟიმი.ფუნქციურად RS-232Cექვივალენტია CCITT V.24 / V.28 სტანდარტისა და C2 ინტერფეისის, მაგრამ მათ აქვთ სხვადასხვა სიგნალის სახელები.

2.2.1. ელექტრო ინტერფეისი

სტანდარტული RS-232Cიყენებს ერთჯერადი გადამცემებსა და მიმღებებს - სიგნალი გადაეცემა საერთო წრის მიმართ (დაბალანსებული დიფერენციალური სიგნალები გამოიყენება სხვა ინტერფეისებში - მაგალითად, RS-422).ინტერფეისი არ გთავაზობთ გალვანური იზოლირებასმოწყობილობები ლოგიკური ერთეული შეესაბამება ძაბვის გადაკვეთას მიმღების შეყვანადიაპაზონში -12 ...- 3 V. საკონტროლო სიგნალის ხაზებისთვის ამ მდგომარეობას ეწოდება ჩართულია("ჩართული"), სერიული მონაცემების ხაზებისთვის - მარკალოგიკური ნულოვანი შეესაბამება დიაპაზონს +3 ... + 12 V. საკონტროლო სიგნალის ხაზებისთვის, სახელმწიფო ეწოდება გამორთულია("გამორთული"), და სერიული მონაცემების ხაზებისთვის - სივრცედიაპაზონი არის -3 ... + 3 V - მკვდარი ზონა, რომელიც განსაზღვრავს მიმღების ჰისტერეზს: ხაზის მდგომარეობა შეიცვლება მხოლოდ ბარიერის გადაკვეთის შემდეგ (ნახ. 2.5). გადამცემის გამოსასვლელში სიგნალის დონე უნდა იყოს -12 ...- 5 V და +5 ... + 12 V დიაპაზონში, შესაბამისად რომ იყოს ერთი და ნული. პოტენციური განსხვავება შესაერთებელი მოწყობილობების წრიულ ნიადაგს (SG) შორის უნდა იყოს 2 V- ზე ნაკლები, უფრო მაღალი პოტენციური სხვაობით, შესაძლებელია სიგნალების არასწორი აღქმა. ინტერფეისი ითვალისწინებს არსებობას დამცავი მიწამოწყობილობების დასაკავშირებლად, თუ ისინი ორივე ქსელით მუშაობენ ალტერნატიული მიმდინარეობადა აქვს დამცავი საშუალებები.

ინტერფეისის კაბელების დაკავშირება და გათიშვათვითმართვადი მოწყობილობები უნდა იყოს გამორთვით.წინააღმდეგ შემთხვევაში, მოწყობილობების გაუწონასწორებელ პოტენციალში სხვაობა გადართვის მომენტში შეიძლება გამოყენებულ იქნას გამომავალი ან შეყვანის (რაც უფრო საშიშია) ინტერფეისის სქემებზე და დააზიანოს მიკროსქემა.

ინტერფეისისთვის RS-232Cსპეციალურად წარმოებულია მიმღების ბუფერული მიკროსქემები (ჰისტერეზითა და ბიპოლარული სიგნალის გადამცემით). თუ არ დაიცვან დამიწების და გადართვის წესები, ისინი, როგორც წესი, "პიროტექნიკური" ეფექტის პირველი მსხვერპლები არიან. ზოგჯერ ისინი დამონტაჟებულია "საბავშვო საწოლებში" ჩანაცვლების ხელშესაწყობად. სიგნალის კონდიციონერების მიკროცირკულაციის Pinout RS-232Cნაჩვენებია ნახატზე. 2.6. ხშირად, ბუფერული სქემები შედის უშუალოდ LSI ინტერფეისში. ეს ამცირებს პროდუქტის ღირებულებას, ზოგავს ადგილს დაფაზე, მაგრამ ავარიის შემთხვევაში დიდ ფინანსურ ზარალს იწვევს. ნაკლებად სავარაუდოა, რომ დაზიანდეს ინტერფეისის მიკროსქემები სიგნალის წრეების დახურვით: გადამცემების მოკლედ შერთვის მიმდინარეობა ჩვეულებრივ არ აღემატება 20 mA- ს.

სტანდარტული RS-232Cარეგულირებს გამოყენებული კონექტორების ტიპები.

ტექნიკაზე ADF(COM პორტების ჩათვლით) ინსტალაცია ჩვეულებრივია ჩანგლები(კაცი - "მამა") DB-25Pან უფრო კომპაქტური ვარიანტი - DB-9P.ცხრა პინ კონექტორებს არ გააჩნიათ დამატებითი სიგნალის პინები, რომლებიც საჭიროა სინქრონული მუშაობისთვის (უმეტესობა 25-პინიანი კონექტორები არ იყენებენ ამ პინებს).

ტექნიკაზე AKD(მოდემის) ინსტალაცია სოკეტების(ქალი - "დედა") DB-25Swm DB-9S.

ეს წესი ითვალისწინებს კონექტორებს AKDშეუძლია დაკავშირება კონექტორებთან ADFუშუალოდ ან ადაპტერის "სწორი" კაბელების საშუალებით სოკეტით და შტეფსელით, რომლებშიც კონტაქტები დაკავშირებულია "ერთიდან ერთში". ადაპტერის კაბელები შეიძლება იყოს ადაპტერები 9-დან 25-პინამდე კონექტორებიდან (ნახ. 2.7).

თუ ტექნიკა ADFაკავშირებს მოდემის გარეშე, შემდეგ მოწყობილობის კონექტორები (შტეფსელები) უკავშირდება ერთმანეთს null მოდემის კაბელი(ნულოვანი მოდემი ან Z მოდემი), რომელსაც გააჩნია სოკეტების ორივე ბოლო, რომელთა კონტაქტები ჯვარედინადაა დაკავშირებული ნახაზზე ნაჩვენები ერთ-ერთი დიაგრამის შესაბამისად. 2.8.

თუ რომელიმე მოწყობილობაზეა ADFდამონტაჟებულია განყოფილება - ეს არის თითქმის ასი პროცენტიანი ნიშანი იმისა, რომ იგი უნდა იყოს დაკავშირებული სხვა მოწყობილობასთან სწორი კაბელით, მოდემის კავშირის კაბელის მსგავსი. ბუდე ჩვეულებრივ დამონტაჟებულია იმ მოწყობილობებზე, რომელთათვის მოდემის საშუალებით დისტანციური კავშირი არ არის გათვალისწინებული.

მაგიდა 2.1 გვიჩვენებს COM პორტების (და ნებისმიერი სხვა აღჭურვილობის) კონექტორების კონტაქტების მიზანს ADF). DB-25S კონექტორის ქინძისთავები განისაზღვრება EIA / TIA-232-E სტანდარტით, DB-9S კონექტორი აღწერილია EIA / TIA-574 სტანდარტით. მოდემისთვის სქემებისა და კონტაქტების სახელები ერთნაირია, მაგრამ შეცვლილია სიგნალების როლები (შეყვანა-გამომავალი).

სიგნალების ქვეჯგუფი RS-232C,ასინქრონულ რეჟიმთან დაკავშირებით, ჩვენ განვიხილავთ PC COM პორტის თვალსაზრისით. უნდა გვახსოვდეს, რომ სიგნალის აქტიური მდგომარეობა ("ჩართვა") და ლოგიკური ერთეულიგადაცემული მონაცემები შეესაბამება უარყოფითი პოტენციალი(ქვემოთ -3 V) ინტერფეისის სიგნალი, და მდგომარეობა "გამორთული" და ლოგიკური ნულოვანი - პოზიტიური(ზემოთ +3 V). ინტერფეისის სიგნალების მიზანი მოცემულია ცხრილში. 2.2.

1 * - 8-ბიტიანი მულტიკარდის მარყუჟი.

2 * - ლენტიანი კაბელი 16-ბიტიანი მულტიკარდისთვის და დედა დაფებზე პორტებისთვის. 3 * - დედაპლატებზე პორტის მარყუჟის ვარიანტი. 4 * - ფართო ლენტიანი კაბელი 25-პინიანი კონექტორით.

2.2.2. მონაცემთა ნაკადის კონტროლი

მონაცემთა ნაკადის გასაკონტროლებლად (Flow Control) შეიძლება გამოყენებულ იქნას ორი პროტოკოლის ვარიანტი - აპარატურა და პროგრამული უზრუნველყოფა. ზოგჯერ ნაკადის კონტროლი ერევა ხელყუმბარობაში, მაგრამ ეს ერთი და იგივე მიზნის მისაღწევად განსხვავებული მეთოდია - ტრანსმისიისა და მიღების სიჩქარის შესაბამისი. მადლობა(ხელის ჩამორთმევა) ნიშნავს ნივთის ქვითრის შეტყობინების გაგზავნას, ხოლო ნაკადის კონტროლიგულისხმობს შეტყობინების გაგზავნას მონაცემთა შემდგომი მიღების შეუძლებლობის შესახებ.

აპარატურის ნაკადის კონტროლის პროტოკოლი RTS / CTS (Hardware Flow Control) იყენებს CTS სიგნალს, რომელიც საშუალებას გაძლევთ შეწყვიტოთ მონაცემთა გადაცემა, თუ მიმღები არ არის მზად მის მისაღებად (ნახ. 2.9). გადამცემი "ათავისუფლებს" შემდეგ ბაიტს მხოლოდ მაშინ, როდესაც CTS ხაზი ჩართულია. ბაიტი, რომელიც უკვე დაიწყო გადაცემა, ვერ გადადება CTS სიგნალით (ეს უზრუნველყოფს წერილის მთლიანობას). ტექნიკის პროტოკოლი უზრუნველყოფს უსწრაფესი გადამცემის რეაგირებას მიმღების სტატუსზე. ასინქრონული გადამცემი მიკროსქემების მიმღებ ნაწილში მინიმუმ ორი რეგისტრია -

გადასვლა, შემდეგი შეტყობინების მიღება და შენახვა, საიდანაც მიიღება მიღებული ბაიტი. ეს საშუალებას იძლევა გაცვლის განხორციელება ტექნიკის პროტოკოლის გამოყენებით მონაცემთა დაკარგვის გარეშე.

ტექნიკის პროტოკოლის გამოყენება მოსახერხებელია პრინტერებისა და პლოტერების შეერთებისას, თუ ისინი მხარს უჭერენ მას (სურათი 2.10). ორი კომპიუტერის უშუალოდ (მოდემის გარეშე) შეერთებისას, ტექნიკის პროტოკოლი მოითხოვს RTS– ს CTS კროსოვერზე.

თუ არ არის გამოყენებული აპარატული პროტოკოლი, გადამცემ ტერმინალს უნდა ჰქონდეს "ჩართული" მდგომარეობა CTS ხაზზე RTS - CTS jumper- ით. წინააღმდეგ შემთხვევაში, გადამცემი "გაჩუმდება".

XON / XOFF პროგრამული უზრუნველყოფის ნაკადის კონტროლის პროტოკოლიითვალისწინებს ორმხრივი მონაცემების გადაცემის არხის არსებობას. პროტოკოლი შემდეგნაირად მუშაობს: თუ მონაცემების მიმღები მოწყობილობა გამოავლენს მიზეზებს, რის გამოც აღარ შეუძლია მათი მიღება, იგი აგზავნის ბაიტის სიმბოლოს საპირისპირო სერიულ არხზე XOFF(13 სთ) საპირისპირო მოწყობილობამ, რომელმაც მიიღო ეს სიმბოლო, აჩერებს გადაცემას. როდესაც მიმღები მოწყობილობა მზად იქნება მონაცემების კვლავ მისაღებად, ის აგზავნის სიმბოლოს.

XON(llh), რომლის მიღებისთანავე საპირისპირო მოწყობილობა განაახლებს გადაცემას. გადამცემის რეაგირების დრო მიმღების მდგომარეობის შეცვლაზე ტექნიკურ პროტოკოლთან შედარებით იზრდება მინიმუმ სიმბოლოს გადაცემის დროით (XONან XOFF)პლუს გადამცემის პროგრამის რეაგირების დრო სიმბოლოს მისაღებად (ნახ. 2.11). აქედან გამომდინარეობს, რომ უდანაკარგო მონაცემების მიღება შეუძლია მხოლოდ მიმღებს, რომელსაც აქვს მიღებული მონაცემების დამატებითი ბუფერი და წინასწარ აწვდის სიგნალებს მიუწვდომლობას (ბუფერში თავისუფალი ადგილის მქონე).

პროგრამული პროტოკოლის უპირატესობა არის ის, რომ არ არის საჭირო ინტერფეისის კონტროლის სიგნალების გადაცემა - მინიმალური კაბელი ორმხრივი გაცვლისთვის შეიძლება ჰქონდეს მხოლოდ 3 მავთული (იხ. ნახ. 2.8 ა). მინუსი, გარდა ამისა, ბუფერის მოთხოვნა და უფრო დიდი რეაგირების დრო (არხის საერთო მუშაობის შემცირება სიგნალის მოლოდინის გამო XON),არის სრული დუპლექსის გაცვლის რეჟიმის განხორციელების სირთულე. ამ შემთხვევაში, ნაკადის კონტროლის სიმბოლოები უნდა იქნას მოპოვებული (და დამუშავებული) მიღებული მონაცემთა ნაკადისგან, რაც ზღუდავს გადაცემული სიმბოლოების სიმრავლეს. მინიმალური საკაბელო ვარიანტი პრინტერის (პლოტერის) პროტოკოლთან დასაკავშირებლად XON / XOFFნაჩვენებია ნახატზე. 2.12.

ამ ორი საერთო სტანდარტული პროტოკოლის გარდა, რომელსაც მხარს უჭერს CP და OS, არსებობს სხვებიც. ზოგი სერიული პლოტერი იყენებს პროგრამის კონტროლიმაგრამ იგზავნება არასტანდარტული სიმბოლოები XON / XOFF,მაგრამ სიტყვები(ASCII სტრიქონები). ასეთი გაცვლა დონეზე სისტემის მხარდაჭერაპროტოკოლი პრაქტიკულად არ არის მხარდაჭერილი (ეს შემგროვებლები პირდაპირ "ესაუბრებიან" პროგრამის პროგრამას). რა თქმა უნდა, შეგიძლიათ დაწეროთ COM პორტის დრაივერი (interceptor) INT 14 სთ),მაგრამ მისი გამომავალი მოწყობილობიდან ტექსტური შეტყობინებების დამუშავების საჭიროება, როგორც წესი, არ ახარებს სისტემის პროგრამისტს. კავშირის კაბელი იგივეა, რაც ნაჩვენებია ნახატზე. 2.12.

2.3. მიმდინარე მარყუჟის ინტერფეისი

საერთო სერიული ინტერფეისი არის მიმდინარე მარყუჟი. მასში ელექტრო სიგნალი არ არის ძაბვის დონე საერთო მავთულის მიმართ, არამედ მიმდინარემიმღები და გადამცემი დამაკავშირებელი ორ მავთულის ხაზში. ლოგიკური ერთეული (”ჩართულ” მდგომარეობაში) შეესაბამება 20 მლ-ს მიმდინარე დინებას, ხოლო ლოგიკური ნულოვანი შეესაბამება დენის ნაკლებობას. სიგნალების ეს პრეზენტაცია აღწერილი ასინქრონული გაგზავნის ფორმატისთვის საშუალებას იძლევა ხაზის წყვეტის დადგენისას - მიმღები შეამჩნევს გაჩერების ბიტის არარსებობას (ხაზის წყვეტა მოქმედებს როგორც მუდმივი ლოგიკური ნულოვანი)

ამჟამინდელი მარყუჟი ჩვეულებრივ ითვალისწინებს გალვანური იზოლაციამიმღების შეყვანის სქემები მოწყობილობის სქემიდან. ამ შემთხვევაში, მარყუჟში დენის წყაროა გადამცემი (ამ ვარიანტს აქტიური გადამცემი ეწოდება). ასევე შესაძლებელია ელექტროენერგიის მიწოდება მიმღებიდან (აქტიური მიმღები), ხოლო გადამცემის გამოსასვლელი ჩამრთველი ასევე შეიძლება გალვანურად იყოს იზოლირებული გადამცემის დანარჩენი წრისგან. არსებობს გამარტივებული ვერსიები გალვანური იზოლაციის გარეშე, მაგრამ ეს უკვე არის ინტერფეისის გადაგვარებული შემთხვევა. მიმდინარე მარყუჟი გალვანური იზოლაციაიძლევა სიგნალების გადაცემას რამდენიმე კილომეტრის მანძილზე. მანძილი განისაზღვრება წყვილი მავთულის წინააღმდეგობით და ჩარევის დონით. ვინაიდან ინტერფეისი თითოეული სიგნალისთვის საჭიროებს წყვილ სადენებს, ჩვეულებრივ გამოიყენება მხოლოდ ორი ინტერფეისის სიგნალი. ორმხრივი გაცვლის შემთხვევაში გამოიყენება მხოლოდ გადაცემული და მიღებული მონაცემების სიგნალები, ხოლო პროგრამული უზრუნველყოფის მეთოდი გამოიყენება ნაკადის კონტროლისთვის. XON / XOFF.თუ ორმხრივი კომუნიკაცია არ არის საჭირო, გამოიყენება მონაცემთა ერთი ხაზი, ხოლო ნაკადის კონტროლისთვის, დაბრუნების ხაზი გამოიყენება CTS სიგნალისთვის (აპარატული პროტოკოლი) ან საპირისპირო მონაცემთა ხაზისთვის (პროგრამული პროტოკოლი).

გადაიყვანეთ სიგნალები RS-232Cმიმდინარე წრეში მარტივი წრის გამოყენებით (ნახ. 2.13). აქ პრინტერი უკავშირდება მიმდინარე ციკლის საშუალებით COM პორტს, აპარატურის ნაკადის კონტროლით. ინტერფეისიდან ენერგია გამოიყენება ბიპოლარული სიგნალის მისაღებად, რომელიც საჭიროა COM პორტის შეყვანის სიგნალებს.

სათანადო პროგრამული უზრუნველყოფის საშუალებით, ერთ მიმდინარე ციკლს შეუძლია უზრუნველყოს ორმხრივი ნახევრად დუპლექსის კომუნიკაცია ორ მოწყობილობას შორის. ამ შემთხვევაში თითოეულ მიმღებს "ესმის" როგორც გადამცემის სიგნალები არხის მოპირდაპირე მხარეს, ასევე საკუთარი გადამცემის სიგნალები. ისინი საკომუნიკაციო პაკეტებით განიხილება, როგორც ექო. შეცდომების გარეშე მიღების მიზნით, გადამცემებმა უნდა იმუშაონ თავის მხრივ.

2.4. MIDI ინტერფეისი

მუსიკალური ინსტრუმენტის ციფრული ინტერფეისი MIDI(Musical Instrument Digital Interface) არის ორმხრივი სერიული ასინქრონული ინტერფეისი, გადაცემის სიჩქარით 31,25 Kbps. 1983 წელს შემუშავებული ეს ინტერფეისი გახდა ფაქტობრივი სტანდარტი კომპიუტერების, სინთეზატორების, ჩამწერი და დასაკრავი მოწყობილობების, მიქსერების, სპეციალური ეფექტების მოწყობილობებისა და სხვა ელექტრონული მუსიკალური მოწყობილობების ინტერფეისისთვის.

ინტერფეისი გამოიყენება ასეთი მარყუჟი არის 10 mA(შესაძლებელია 5 მლ) შეყვანის სქემის გალვანური იზოლაციით. ეს გამორიცხავს დაკავშირებული მოწყობილობების "წრიული ნიადაგის" შეერთებას ინტერფეისის კაბელის საშუალებით, აღმოფხვრის ჩარევას, რომელიც ძალიან არასასურველია აუდიო აპარატურისთვის. გადაცემის სიხშირის შერჩევა, რომელიც ემთხვევა ციფრული აუდიოჩანაწერში გამოყენებული კვანტიზაციის სიხშირეების ერთ-ერთ მნიშვნელობას, ასევე ემსახურება ჩარევის ხმაურის შემცირებას.

ასინქრონული გაგზავნაშეიცავს დაწყების ბიტს, 8 ინფორმაციის ბიტს და 1 გაჩერებას, არ არის პარიტეტი. გადაცემის ყველაზე მნიშვნელოვანი ბიტი არის ბრძანება / მონაცემთა ატრიბუტი. მისი ნულის მნიშვნელობა მიუთითებს შვიდი მონაცემთა ბიტის არსებობაზე ნაკლებად მნიშვნელოვან ბიტებში. ერთზე დაყენებისას, ბიტი შეიცავს ბრძანების კოდი,და ბიტი არის არხის ნომერი.ბრძანებები შეიძლება მიმართონ კონკრეტულ არხს, ან გადაიტანონ გადაუსწორებელი. ბოლო ჯგუფში შედის ბრძანებები საწყისი, გაჩერების და დროის მარკების შესახებ, რომლებიც უზრუნველყოფენ მოწყობილობების სინქრონიზაციას (სინქრონიზაციის სისტემა MIDI სინქრონიზაციადა MTS - MIDI დროის კოდი).

ინტერფეისი განსაზღვრავს პორტების სამ ტიპს: MIDI-In, MIDI-Out nMIDI-Thru.

შეყვანის პორტი MIDI-Inარის ინტერფეისის "მიმდინარე ციკლი 10 mA", რომელიც მიმღებისგან არის გალვანურად იზოლირებული ოპტოკოპლერით, მინიმუმ 2 მკწ სიჩქარით. მოწყობილობა აკონტროლებს ამ ნაკადის ინფორმაციის ნაკადს და რეაგირებს მისთვის მითითებულ ბრძანებებსა და მონაცემებზე.

გამომავალი პორტი MIDI-Outწარმოადგენს 10 მლ მიმდინარე წყაროს გამომუშავებას, გალვანურად დაერთო მოწყობილობის წრეზე. შემზღუდველი რეზისტორები იცავს გამომავალ წრეებს დაზიანებისგან მიწის დაზიანების ან 5 ვ წყაროს შემთხვევაში. გამომავალი არის ამ მოწყობილობიდან ინფორმაციის დინება. ნაკადი შეიძლება შეიცავდეს ნათარგმნი შეყვანის ნაკადს.

MIDI Thru Pass(სურვილისამებრ) ემსახურება შეყვანის სიგნალის გადაცემას.

კონექტორები არის 5 პინიანი DIN კონექტორები, რომლებიც გავრცელებულია სამომხმარებლო აუდიო აღჭურვილობაში. სოკეტების დაყენება ხდება ყველა მოწყობილობაზე, საკაბელო კაბელებზე. ყველა MIDI დამაკავშირებელი კაბელი გაერთიანებულია (ნახ. 2.14). Pin 2 - საკაბელო ფარი - უერთდება საერთო მავთულს მხოლოდ გადამცემის მხარეს (კონექტორებზე) MIDI-Outდა MIDI-Thru).

არსებობს შეუსაბამობები შემავალ და გამომავალ ეტიკეტირებაში, რომლებიც ნაჩვენებია კონექტორების გვერდით. ზოგიერთი მწარმოებელი წერს "In" ან "Out" ამ მოწყობილობის კონექტორის ფუნქციის შესაბამისად (და ეს სწორია), შემდეგ ნებისმიერი კაბელი აკავშირებს "In" და "Out". სხვები თვლიან, რომ ხელმოწერაში უნდა იყოს მითითებული მოწყობილობის ფუნქცია. შემდეგ საკაბელო დააკავშირებს კონექტორებს, რომლებიც აღნიშნულია "In" - "In" და "Out" - "Out".

ინტერფეისი საშუალებას გაძლევთ დააკავშიროთ ჯგუფი 16-მდე მოწყობილობას ადგილობრივ ქსელში. ტოპოლოგია უნდა დაემორჩილოს წესს:

შესასვლელი MIDI- ინერთი მოწყობილობა უნდა იყოს დაკავშირებული გამომავალთან MIDI-Outან MIDI-Thruსხვა თქვენი MIDI ქსელის დაგეგმვისას, თქვენ უნდა იხელმძღვანელოთ ინფორმაციის ნაკადებით და მოწყობილობის კომუნიკაციებით. საკონტროლო მოწყობილობები - კლავიშები, თანმიმდევრული მიმდევრები (დაკვრის რეჟიმში), სინქრონიზაციის წყაროები - უნდა განთავსდეს კონტროლირებადი მოწყობილობების წინ. თუ მოწყობილობებს სჭირდებათ ორმხრივი კომუნიკაცია, ისინი დაკავშირებულია ბეჭედით. შესაძლებელია სპეციალური მულტიპლექსორების გამოყენება, რომლებიც საშუალებას მოგცემთ ლოგიკურად შეცვალოთ რამდენიმე შეყვანის ნაკადი ერთ გამომავალ ნაკადში. ბეჭდის გადაგვარებული შემთხვევა არის ორი მოწყობილობის ორმხრივი კავშირი. კავშირის რამდენიმე ვარიანტი ნაჩვენებია ნახატზე. 2.15.

კომპიუტერს უმეტეს აუდიო ადაპტერებზე აქვს MIDI პორტი, მისი სიგნალები გადადის თამაშის ადაპტერის კონექტორის გამოუყენებელ ქინძისთავებზე (12 და 15). MIDI მოწყობილობების დაკავშირება მოითხოვს ადაპტერი ადაპტერი,"მიმდინარე ციკლის" ინტერფეისის განხორციელება. ადაპტერის ადაპტერი ჩვეულებრივ აშენებულია სპეციალურ კაბელში, რომლის დიაგრამა ნაჩვენებია ნახატზე. 2.16. კომპიუტერების ზოგიერთ მოდელში არის ჩამონტაჟებული ადაპტერები და სტანდარტული 5-პინიანი MIDI კონექტორები.

კომპიუტერი იყენებს MIDI პორტებს, რომლებიც თავსებადია კონტროლერთან MPU-401(როლანდ) UART რეჟიმში. I / O სივრცეში MPU-401იკავებს ორ მიმდებარე მისამართს MPU(ჩვეულებრივ 330 სთ) და MPU + 1:

პორტი მონაცემები(მისამართი MPU + 0) - MIDI ინტერფეისით გადაცემული და მიღებული ბაიტების წერა და კითხვა. პორტი სტატუსი / ბრძანება(მისამართი MPU + 1) -წაიკითხეთ სტატუსის / წერის ბრძანებები (წერა - მხოლოდ ჭკვიანი რეჟიმისთვის). სტატუსის ბაიტი განსაზღვრავს შემდეგ ბიტებს:

ბიტი 7 - DSR(მონაცემთა ნაკრები მზად არის) - მზაობა (DSR-0)მიიღო მონაცემები კითხვისთვის. ბიტი დაყენებულია "I" - ზე, როდესაც ყველა მიღებული ბაიტი წაიკითხება მონაცემთა რეესტრიდან.

ბიტი 6 - DRR(მონაცემები მზად არის მზად) - მზაობა (DRR = 0) UART იწერება მონაცემთა ან ბრძანებების რეესტრში. წერისთვის მზა მდგომარეობა არ მოხდება, თუ მიმღებს წაუკითხავი მონაცემთა ბაიტი აქვს.

ზოგიერთ დედაპლატაზე გამოიყენება ინტერფეისის კონტროლერების LSI, რომელშიც COM პორტისთვის გამოყენებული UART შეიძლება გადაერთოთ MIDI პორტის რეჟიმში კონფიგურაციით BIOS SETUP– ის საშუალებით.

გააზიარე ეს