intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng môn điện tử viễn thông - Tìm hiểu về cổng LPT

Chia sẻ: Thân Văn Khương | Ngày: | Loại File: DOC | Số trang:0

295
lượt xem
52
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

- Trong thời đại công nghiệp hóa hiện đại hóa hiện nay, máy tính đã thiết bị phổ biến được sử dụng với rất nhiều những lĩnh vực với những mục đích khác nhau (soạn thảo văn bản, tính toán, thiết kế, giả lập hoạt động của một số vấn đề thực tế, đo đạc, điều khiển các thiết bị…). Máy tính có ứng dụng nhiều như vậy do nó có thể ghép nối với các thiết bị ngoại vi (máy in, modem, một số mạch điều khiển…)....

Chủ đề:
Lưu

Nội dung Text: Bài giảng môn điện tử viễn thông - Tìm hiểu về cổng LPT

  1. KHOA CÔNG NGHỆ THÔNG TIN Bộ Môn Điện Tử Viễn Thông ễ Báo Cáo Kết Quả Nghiên Cứu LỚP : Lập trình chuyên dụng trong ĐTVT-2-10 (N04) Giảng viên: NGÔ THỊ VINH Thái nguyên 2-2011 1
  2. Môn : lẬP TRÌNH CHUYÊN DỤNG TRONG ĐTVT Chủ đề: Tìm hiểu về cổng LPT-Line Printer Terminal Các thành viên trong nhóm 1. Nguyễn Chung Lực ĐTVT-K8B (nhóm trưởng) 2. Thân Văn Khương ĐTVT-K8B 3. Lê Văn Tiến ĐTVT-K8B 4. Nguyễn Thị Hường ĐTVT-K8A 5. Mạc Văn Dũng ĐTVT-K8B 2
  3. 1. Mục Đích chung - Trong thời đại công nghiệp hóa hiện đại hóa hiện nay, máy tính đã thiết bị phổ biến được sử dụng với rất nhiều những lĩnh vực với những mục đích khác nhau (soạn thảo văn bản, tính toán, thiết kế, giả lập hoạt động của một số vấn đề thực tế, đo đạc, điều khiển các thiết bị…). Máy tính có ứng dụng nhiều như vậy do nó có thể ghép nối với các thiết bị ngoại vi (máy in, modem, một số mạch điều khiển…). Các thiết bị ngoại có thể kết nối với máy tính thông qua cổng nối tiếp (Serial port), cổng song song (Paralell port), cổng RS-232, cổng COM, cổng USB. Trong chủ đề này, ta chỉ nghiên cứu quá trình xuất nhập,và ứng dụng điều khiển thiết bị ngoại vi qua cổng song song (cổng LPT). 3
  4. Phần I:Tổng Quan Về LPT: • MỨC ĐIỆN ÁP CỔNG - Đều sử dụng mức điện áp tương thích TTL(Transiztor - Transiztor - Logic) 0v → +5v trong đó: +> 0v là mức logic LOW. +> 2v → +5v là mức logic HIGH. - Vì vậy khi ghép nối với cổng này ta chỉ ghép nối những thiết bị ngoại vi có mức điện áp tương thích TTL. Nếu thiết bị ngoại vi không có mức điện áp tương thích TTL thì ta áp dụng biện pháp ghép mức hoặc ghép phải cách ly qua bộ ghép nối quang. • KHOẢNG CÁCH GHÉP NỐI - Khoảng cách cực đại giữa thiết bị ngoại vi và máy tính ghép qua cổng song song thường bị hạn chế - Lý do là hiện tượng cảm ứng giữa các đường dẫn và điện dung kí sinh hình thành giữa các đường dẫn có thể làm biến dạng tín hiệu. Khoảng cách giới hạn cực đại là 8m .Thôngthường chỉ 1,5 đến 2m vì lí do an toàn dữ liệu. • TỐC ĐỘ TRUYỀN DỮ LIỆU - Tốc độ truyền dữ liệu qua cổng song song phụ thuộc vào phần cứng được sử dụng. Trên lý thuyết tốc độ có thể đạt đến 1Mb/s nhưng với khoảng cách truyền hạn chế trong phạm vi 1m. - Với nhiều mục đích sử dụng thì khoảng cách này hoàn toàn thỏa đáng, tuy vậy cũng có những ứng dụng đòi hỏi phải truyền trên khoảng cách xa hơn. Trong trường hợp đó ta phải nghĩ ngay đến khả năng ghép nối khác (như ghép nối qua cổng RS232). 4
  5. 1.1. C¸c ph ương ph¸p giao tiÕp: a) Định nghĩa cổng song song: - Cổng song song( Parallel Port) là tập hợp các đường tín hiệu mà vi xử lí hoặc là CPU dùng để trao đổi dữ liệu với các thiết bị, thành phần khác. Điển hình nhất của loại giao diện này là dùng để giao tiếp với máy in, modems, keyboards và màn hình,.. Cổng song song truyền nhiều bít một lần, trong khi cổng nối tiếp chỉ truyền một bít một ở một thời điểm(có thể truyển 2 chiều ở cùng một thời điểm). - Cổng song song của PC ban đầu có 8 đường ra, 5 đường vào và 4 đường vào ra. Những đường này là đủ để giao tiếp với nhiều dạng của các thiết bị ngoại vi. Ở nhiều máy tính mới hơn, 8 đường ra có thể thực hiện chức năng như là đường Input để đạt giao tiếp với tốc độ cao với máy scaner,thiết bị và các thiết bị khác gửi dữ liệu tới PC. B) Giao tiếp qua cổng Print ( Cổng máy in): ­ IBM PC cho phÐp sö dông ®Õn 3 cæng song song cã tªn lµ   LP1, LP2,LPT3 vµ LP4. KiÓu giao tiÕp song song ®îc dïng  ®Ó truyÒn d÷ liÖu gi÷a m¸y tÝnh vµ m¸y in. Kh¸c víi c¸ch  giao tiÕp qua Port Com, ë c¸ch giao tiÕp nµy d÷ liÖu ®îc  truyÒn song song cïng mét lóc 8 bit. V×  thÕ  nã  cã  thÓ  ®¹t tèc ®é cao. Connector cña Port nµy  cã  25  ch©n bao   gåm  8  ch©n  d÷  liÖu vµ   c¸c   ®ường  tÝn  hiÖu  b¾t  tay   (Handshaking).   TÊt   c¶   c¸c     ®êng   Data   vµ   tÝn   hiÖu  ®iÒu   khiÓn  ®Òu  ë  møc logic hoµn toµn tư¬ng thÝch v¬i  møc TTL. H¬n n÷a, người lËp tr×nh cã thÓ ®iÒu khiÓn cho  phÐp hoÆc kh«ng cho phÐp c¸c tÝn hiÖu t¹o Interrupt tõ  ngâ   vµo   nªn   viÖc   giao   tiÕp   ®¬n   gi¶n   vµ   dÔ   dµng.   Tuy  nhiªn,   giao     tiÕp   víi   møc   logic   TTL   nªn   kho¶ng   c¸ch  5
  6. truyÒn bÞ h¹n chÕ so víi c¸ch truyÒn qua Port  Com, ®ång  thêi c¸p truyÒn còng phøc t¹p h¬n. §ã lµ nhược  ®iÓm cña  c¸ch giao tiÕp nµy. Cæng m¸y in LPT ­ Line Printer Terminal 1.2. Sơ đồ giao tiếp qua cổng máy in + Khái niệm: Cổng song song, cổng cái, cổng máy in - LPT viết tắt từ Line Printer Terminal. -Cổng song song( Parallel Port) là tập hợp các đường tín hiệu mà vi xử lí hoặc là CPU dùng để trao đổi dữ liệu với các thiết bị, thành phần khác. Điển hình nhất của loại giao diện này là dùng để giao tiếp với máy in, modems, keyboards và màn hình,.. Cổng song song truyền nhiều bít một lần, trong khi cổng nối tiếp chỉ truyền một bít một ở một thời điểm (nhưng có thể truyền 2 chiều ở cùng một thời điểm). - Cổng song song của PC ban đầu có 8 đường ra, 5 đường vào và 4 đường vào ra. Những đường này là đủ để giao tiếp với nhiều dạng của các thiết bị ngoại vi. Ở nhiều máy tính mới hơn, 8 đường ra có thể thực hiện chức năng như là đường Input để đạt giao tiếp với tốc độ cao với máy scaner, thiết bị và các thiết bị khác gửi dữ liệu tới PC. - Cổng song song đã được thiết kế như là một cổng máy in. - Cổng song song dùng nhiều tài nguyên của hệ thống. Tất cả các cổng dùng một dãy địa chỉ, cho dù số lượng và vị trí của các địa chỉ thay đổi. Nhiều cổng có một mức IRQ (Interrupt request) xác định, và các cổng ECP có thể có một kênh DMA xác 6
  7. định. Các tài nguyên dành cho một cổng không thể dùng cho các thành phần khác của hệ thống, các cổng song song khác. + Địa chỉ (Addressing) Cổng song song chuẩn dùng ba địa chỉ liền nhau, thường là một trong 3 dãy sau: 3BCh, 3BDh, 3EEh 378h, 379h, 37Ah 278h, 279h, 27Ah - Địa chỉ đầu tiên trong dãy là địa chỉ gốc (base address) của Port thương được gọi là địa chỉ thanh ghi Dữ liệu (Data register) hoặc là địa chỉ của cổng. Địa chỉ thứ 2 là địa chỉ của thanh ghi trạng thái (Status register). Địa chỉ thứ 3 là địa chỉ của thanh ghi Điều khiển (Control register). Các cổng EPP và cổng ECP dành một số địa chỉ bổ sung cho mỗi cổng. EPP thêm 5 thanh ghi tại địa chỉ Base address + 3 tới Base address + 7, còn ECP thêm 3 thanh ghi tại địa chỉ base address + 400h tới base address + 402h. +Các ngắt (Interrupts) -Phần lớn các cổng song song có khả năng phát hiện tín hiệu ngắt từ thiết bị ngoại vi. Thiết bị ngoại vi có thể dùng ngắt để thông báo rằng đã sẵn sàng để nhận byte hoặc có một byte để truyền. - Để dùng ngắt, cổng song song phải có một mức yêu cầu ngắt (Interrupt request - IRQ) xác định -Theo qui ước LPT1 dùng IRQ7 và LPT2 dùng IRQ5. Thế nhưng IRQ5 được dùng bởi nhiều card âm thanh, và bởi vì các mức IRQ không được dùng bởi các thành phần hệ thống nào rất là hiếm trong hệ thống, thậm chí IRQ7 có thể được dành cho các thiết bị khác. Một vài cổng cho phép chọn các mức IRQ khác 2 mức trên. -Rất nhiều driver máy in hoặc nhiều ứng dụng và thiết bị khác truy nhập cổng song song không yêu cầu ngắt cổng song song. Nếu không chọn mức báo ngắt cho cổng 7
  8. song song thì cổng này vẫn hoạt động trong hầu hết các trường hợp rất là hiệu quả và bạn có thể dành mức báo ngắt IRQ cho công việc khác. Công dụng: Thường dành riêng cho cắm máy in. Tuy nhiên đối với những máy in thế hệ mới hầu hết cắm vào cổng USB thay vì cổng COM hay LPT. Nhận dạng: Là cổng dài nhất trên mainboard. II. Cấu tạo và nguyên lý cổng LPT 2.1. Sơ đồ,chức năng của các chân: -Cổng LPT là loại cổng rất dễ sử dụng.Thông thường loại cổng này chỉ dùng để ghép nối với máy in. Sơ đồ ghép nối song song như hình sau: 8
  9. - Cổng LPT là loại cổng song song gồm có 4 đường điều khiển, 5 đường trạng thái và 8 đường dữ liệu. Các chân trong cổng như sau: 9
  10. + Ch©n sè 1(STROBE): Ch©n ra, khi m¸y tÝnh ® tÝn hiÖu nµy a r a th× nã b¸o cho m¸y in ®äc d÷ l iÖu vµo ®Ó in . Xung t¸c ®éng ë møc thÊp. + Ch©n 2 - 9 (DATA): C¸c ch©n ra d÷ l iÖu cña m¸y tÝnh. + Ch©n 10 ( ACK): Ch©n vµo ®Ó b¸o cho m¸y tÝnh biÕt lµ d÷ l iÖu ®· nhËn ®îc vµ yªu cÇu m¸y tÝnh gëi d÷ l iÖu t iÕp t heo. + Ch©n 11 (BUSY): Ch©n vµo ®Ó b¸o cho m¸y tÝnh biÕt lµ m¸y in ®ang bËn kh«ng thÓ nhËn t iÕp d÷ l iÖu tõ m¸y tÝnh gëi r a. Ch©n nµy t¸c ®éng ë møc cao. + Ch©n 12 (PE) : Ch©n vµo ®Ó b¸o cho m¸y tÝnh biÕt lµ m¸y i n hÕt giÊy. Ch©n nµy t¸c ®éng ë møc cao. + Ch©n 13 (SLCT): Ch©n vµo ®Ó b¸o m¸y tÝnh ®ang ë t r ¹ng th¸ i lùa chän. Ch©n nµy t¸c ®éng ¬ møc cao. + Ch©n 14 (AUTOFEED): Ch©n ra t¸c ®éng ë møc thÊp. Khi t¸c ®éng th× m¸y tù ®éng dÞch thªm mét dßng sau khi in . + Ch©n 15 (ERROR): Ch©n vµo t¸c ®éng møc thÊp ®Ó b¸o m¸y i n ®ang bÞ lç i . + Ch©n 16 ( IN IT ) : Ch©n ra t¸c ®éng møc thÊp ®Ó ® l ¹ i Æt m¸y in . + Ch©n 17 (SLCTIN) : Ch©n ra t¸c ®éng møc thÊp ®Ó b¸o m¸y i n ® d÷ l iÖu vµo. a + Ch©n 18 - 25 (GND): Lµ ch©n nèi mass - Với s ố l ượng đường dẫn nhi ều, m t s ố phép th ử t r ở nên đặc ộ b i ệt đơn gi ản. Điểm đáng chú ý là khi tiến hành ghép nối cổng song song cần 10
  11. hết sức thận trọng. Do các đường dẫn tương thích TTL không được bảo vệ chống quá tải, nên khi tiến hành ghép nối ta cần chứ ý tới những quy tắc an toàn sau đây: - Thiết bị chỉ được phép đấu nối với cổng song song khi máy tính ở trạng thái ngắt điện. -Các lối ra không được phép ngắn mạch hoặc đấu nối với các lối ra khác và các lối ra không được phép nối với các nguồn tín hiệu điện áp không biết rõ thông số. - Các lối vào chỉ được phép tiếp nhận điện áp giữa 0V và 5V. 2.2. Địa chỉ các thanh ghi. Cổng LPT có ba thanh ghi có thể truyền dữ liệu và điều khiển máy in. Địa chỉ cơ sở của các thanh ghi cho tất cả cổng LPT (line printer) từ LPT1 đến LPT4 được lưu trữ trong vùng dữ liệu của BIOS. - Thanh ghi dữ liệu được định vị ở offset 00h. - Thanh ghi trạng thái ở 01h. - Thanh ghi điều khiển ở 02h. Thông thường, địa chỉ cơ sở của LPT1 là 378h. Do đó, địa chỉ của các thanh nghi lần lượt như sau: Thanh ghi dữ liệu 378h Thanh ghi trạng thái 379h Thanh ghi điều khiển 37Ah 11
  12. Địa chỉ cơ sở của cổng LPT2: Thanh ghi dữ liệu 278h Thanh ghi trạng thái 279h Thanh ghi điều khiển 27Ah Với các địa chỉ LPT3, LPT4 đều tương tự. Tuy nhiên trong một số trường hợp, địa chỉ của cổng LPT có thể khác do quá trình khởi động của BIOS. BIOS sẽ lưu trữ các địa chỉ này như sau: Địa chỉ Chức năng Địa chỉ cơ sở của LPT1 0000h:0408h Địa chỉ cơ sở của LPT2 0000h:040Ah Địa chỉ cơ sở của LPT3 0000h:040Ch Định dạng các thanh ghi như sau: 12
  13. Thứ tự bít 7 6 5 4 3 2 1 0 Tín hiệu máy in D7 D6 D5 D4 D3 D2 D1 D0 Chân số 9 8 7 6 5 4 3 2 Thanh ghi trạng thái máy in (chỉ đọc): 13
  14. Thứ tự bít 4 3 2 10 7 6 5 Tín hiệu máy BU PAPER SELE XX ERROR IRQ ACK in SY EMPTY CT Chân số 13 15 - -- 11 10 12 Thanh ghi điều khiển máy in: Thứ tự bít 765 4 3 2 1 0 DI IR Tín hiệu XX Q máy in R Ena 14 Chân số -- - - 17 16 14 1
  15. SELECTIN INIT AUTOFEED STROBE x: không sử dụng IRQ Enable: yêu cầu ngắt cứng; 1 = cho phép; 0 = không cho phép Chú ý rằng chân BUSY được nối với cổng đảo trước khi đưa vào thanh ghi trạng thái, các bit , SELECTIN , AUTUFEED và STROBE được đưa qua cổng đảo trước khi đưa ra các chân của cổng máy in. - Thông thường tốc độ xử lý dữ liệu của các thiết bị ngoại vi như máy in chậm hơn PC nhiều nên các đường ACK, BUSY STR được sử dụng cho kỹ thuật bắt tay. Khởi đầu, PC đặt dữ liệu lên bus sau đó kích hoạt đường STR xuống mức thấp để thông tin cho máy in biết rằng dữ liệu đã ổn định trên bus. Khi máy in xử lý xong dữ liệu, nó sẽ trả lại tín hiệu ACK xuống mức thấp để ghi nhận. PC đợi cho đến khi đường BUSY từ máy in xuống thấp (máy in không bận) thì sẽ đưa tiếp dữ liệu lên bus. 2.3.Thiết lập cổng LPT trên BIOS Như chúng ta đã biết,các máy tính được nhà sản xuất đưa vào 4 công LPT là :LPT1,LPT2,LPT3,LPT4. Nhưng do yêu cầu cần phải thiết kế thật nhỏ gọn nên người thiết kế chỉ đưa ra 1 cổng ra ngoài để sử dụng còn 3 cổng còn lại được thiết kế trong Mainboard, vì vậy việc thiết lập địa chỉ cổng LPT trong BIOS cũng đã được các nhà sản suất cài đặt sẵn(mặc định là đưa cổng LPT1 có địa chỉ là 378h ra sử dụng).Vậy nếu chúng ta thiết lập sai thì việc truy xuất dữ liệu sẽ không chính xác và những lập trình ứng dụng sẽ không thực hiện được.Sau đây là cách thiết lập địa chỉ cổng LPT trên BIOS: Bước 1: Chúng ta khởi động máy tính Bạn sẽ thấy trên màn hình sẽ có câu thông báo gợiý cho bạn bấm phím nào để vàođược CMOS như: 15
  16. Press to enter BIOS setup Đối với một số máy cũ hay máy bộ, có thể phải nhấn tổ hợp phím khác như: CTRL + ALT + ESC • CTRL + ALT + INS • CTRL + ALT + ENTER • CTRL + ALT + S • PAGE UP KEY • PAGE DOWN KEY • Đối với máy tính thông thường thì khi vừa bật máy bạn sẽ vào CMOS bằng cách bấm vào một trong những phím sau: F1 • F2 • ESC • DEL hay Delete • F10 • BIOS c • • Hình1.10 16
  17. Bước 2: Chúng ta trỏ đến Onboard Parallel Port(Cổng song song), để thiết lập địa chỉ cổng LPT cho máy. Như đã nhìn thấy trên hình địa chỉ cổng LPT trên máy tính đã được thiết lập sẵn là 378/IRQ7-thường là cổng LPT1(tùy vào từng loại máy). Hình 1.11 Bước 3: Trên hình là các địa chỉ của các cổng LPT trên máy tính, chúng ta sẽ phải chọn địa chỉ cổng mà máy tính đã thiết lập sẵn từ ban đầu. Ở loại máy tính mà chúng ta đang nghiên cứu trên hình thì dòng máy này chỉ có 3 cổng LPT nhưng thường các máy tính là có 4 cổng( 1 cổng được đưa ra ngoài để sử dụng còn 3 cổng còn lại được cấu tạo trong Mainboard). 2.4.Kỹ thuật lập trình ghép nối qua cổng LPT: - Đây là nhiệm vụ mà bất kỳ khi nào muốn viết mới hoặc sửa đổi một phần mềm dùng cho mạch ghép nối với cổng song song đều phải nghĩ cách giải quyết. Câu hỏi đặt ra là làm thế nào để đọc được các tín hiệu điện trên các đường dẫn tín hiệu của cổng song song hoặc để xuất dữ liệu ra các đường dẫn này. - Việc truy nhập trực tiếp lên các giao diện của máy tính PC, cụ thể là lên các đường dẫn riêng lẻ được tiến hành thuận lợi nhất là bằng hợp ngữ, Các ngôn ngữ 17
  18. bậc cao như C cũng có những lệnh đơn giản để thực hiện việc truy nhập lên các cổng tuy rằng tốc độ truy nhập có thấp hơn đôi chút. Trao đổi dữ liệu qua cổng LPT Trước hết ta cần biết địa chỉ của các cổng mà qua đó các giao diện song  song có thể được trao đổi. Sau đó sẽ quyết định đọc dữ liệu trong thanh ghi nào hoặc xuất dữ liệu ra thanh ghi nào ?       Turbo C++ cung cÊp 2 hµm cã thÓ dïng  ®Ó trao ®æi  d÷ liÖu qua cæng song song:         Hµm nhËp d÷ liÖu theo byte     unsigned char inportb(int portadd)     int inp(unsigned portadd)     Hµm xuÊt d÷ liÖu theo byte     void outportb(int portadd, unsigned char giatri)     int outp(unsigned portadd, int giatri)     C¸c hµm inportb vµ outportb n»m trong th viÖn .  C¸c hµm inp vµ outp n»m trong th viÖn . • §Ó xuÊt d÷ liÖu ra qua 8 ®êng dÉn d÷ liÖu:      outportb(0x378,d÷  liÖu); //d÷ liÖu xuÊt ra lµ c¸c sè   nguyªn tõ 0 tíi 255. • §Ó xuÊt d÷ liÖu ra qua 4 ®êng dÉn ®iÒu khiÓn:        outportb(0x37A, dl ^ 11); //d÷  liÖu lµ  c¸c sè  nguyªn   tõ 0 ®Õn 15 • §Ó nhËp d÷ liÖu vµo qua 4 ®êng dÉn ®iÒu khiÓn:     outportb(0x37A, 15 ^ 11); 18
  19.      delay(1);      dl = inportb(0x37A) &15^ 11; • §Ó  nhËp d÷ li u  vµo qua 5 ®êng dÉn tr¹ng  th¸i: Ö     dl = inportb(0x379) & 248 ^ 128; 2.4.1 Ứng dụng giao tiếp với máy tính qua LPT - Quá trình giao tiếp với cổng song song dùng 2 chế độ: chế độ chuẩn SPP và chế độ mở rộng. Việc giao tiếp ở chế độ chuẩn mô tả như sau.Sơ đồ chân kết nối mô tả như sau: 19
  20. - Ngoài ra, việc kết nối giữa 2 máy tính sử dụng cổng song song có thể dùng chế độ mở rộng, chế độ này cho phép giao tiếp với tốc độ cao hơn.Sơ đồ chân kết nối mô tả như sau: 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
12=>0