1. Trang chủ
  2. » Luận Văn - Báo Cáo

đề tài mạng thu thập dữ liệu và quang báo

172 317 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 172
Dung lượng 2,87 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Có một số tiêu chuẩn đang cạnh tranh nhau trong việc chi phối các tiêu chuẩn truyền thông mà theo đó các dữ liệu sẽ được trao đổi trong mạng 1.1 Mạng LAN Local Area NetWork Các máy tí

Trang 1

Với sự tiến bộ của khoa học kỹ thuật, việc thu thập và chia sẽ thông tin đang được quan tâm, cải tiến liên tục Giải pháp tốt nhất cho công việc

trên là sử dụng mạng Ngày nay rất có nhiều loại mạng khác nhau: mạng

truyền dữ liệu nối tiếp dùng chuẩn RS-485, mạng LAN, WAN, mạng Ethernet, mạng Internet … Hiện nay, mạng Internet là mạng tiên tiến nhất, chúng chia sẽ một lượng thông tin vô cùng lớn Trong nội dung đề tài này tôi chỉ giới thiệu mạng truyền dữ liệu nối tiếp dùng chuẩn RS-485

1 Nhiệm vụ đề tài:

Mạng thu thập và xử lý dữ liệu từ các thiết bị sau:

 Đọc mã vạch: dùng vào việc quản lý thời gian nhân viên ra vào công ty

 Thermocouple: Thu thập và điều khiển nhiệt độ của lò nhiệt,

do không có lò nhiệt, và sự đáp ứng chậm của nhiệt độ Do thời gian bảo vệ luận văn không nhiều, nên không điều khiển thực tế mà chỉ thông qua mô phỏng, chương trình mô phỏng được thực hiện trên phần mềm Visual Basic

 Quang Báo:Dùng để thông báo tin tức của công ty, chữ trên bảng thông báo thay đổi được

2 Thực Hiện:

Thiết kế 3 kit AT89C51:

 Kit thu thập và điều khiển nhiệt độ:

- Điều khiển lò nhiệt, dùng điều kiển on-off, thông qua logic mờ

- Dùng cảm biến: Thermocouple

- Hoạt động của lò nhiệt: bán tự động

 Kit đọc mã vạch:

- Do không có thiết bị đọc mã vạch, dùng phím thay thế

- Mục đích: Kiểm tra thời gian nhân viên ra, vào công ty làm việc

 Kit quang báo:

- Dùng hiển thị thông báo, thông báo tin tức Thiết kế chương trình điều khiển trên kit và PC

Trang 3

 Sơ lược về mạng:

1) Mạng (NetWork):

Hệ truyền thông và trao đổi dữ liệu được xây dựng bằng sự ghép nối vật lí hai hoặc nhiều máy tính Các mạng máy tính cá nhân khác nhau tùy theo quy mô bao quát của chúng Mạng nhỏ nhất, gọi là mạng cục bộ ( LAN), có thể chỉ nối hai hoặc ba máy tính với một thiết bị ngoại vi đắt tiền, như máy in laser chẳng hạn, lớn hơn một ít có thể nối đến 75 máy tính hoặc nhiều hơn nữa Các mạng lớn hơn, gọi là mạng diện rộng ( WAN), dùng các đường dây điện thoại hoặc các phương tiện liên lạc khác để liên kết lạc khác để liên kết các máy tính với nhau trong phạm vi từ vài chục đến vài ngàn dặm Thành phần cơ bản của mạng là máy tính cá nhân hoặc trạm công tác có lắp card giao diện và đều được nối bằng dây cáp với máy dịch vụ tệp chứa bộ lưu trữ lớn trung tâm Tất cả các thành phần đó tương tác với nhau bằng phần mềm hệ điều hành mạng ( NOS) Máy dịch vụ tệp trung tâm không được sử dụng trong các mạng bình đẳng ( peer-to-peer) Khác với các hệ thống nhiều người sử dụng, mà trong đó mỗi thành viên được trang bị một terminal câm không có khả năng xử lý, trong mạng máy tính mỗi thành viên có một trạm công tác chứa các mạch xử lý riêng của mình Các mạng máy tính cá nhân cũng được phân biệt theo cấu trúc liên kết, tức là theo dạng hình học của mạng tôpô mắc nối chúng Các cấu trúc liên kết phổ biến hiện nay gồm các tô pô hình sao, trong đó các máy được nối với một máy dịch vụ tệp trung tâm, và tô pô buýt, trong đó máy được nối với một dây cáp xương sống duy nhất Đồng thời, cũng có hai phương pháp truyền thông tin thông qua dây cáp của mạng: băng tần cơ sở, và băng tần rộng Có một số tiêu chuẩn đang cạnh tranh nhau trong việc chi phối các tiêu chuẩn truyền thông mà theo đó các dữ liệu sẽ được trao đổi trong mạng

1.1) Mạng LAN ( Local Area NetWork )

Các máy tính cá nhân và các máy tính khác trong phạm vi một khu vực hạn chế được nối với nhau bằng các dây cáp chất lượng tốt, sao cho những người sử dụng có thể trao đổi thông tin, dùng chung các thiết bị ngoại

vi, và sử dụng các chương trình cũng như các dữ liệu đã được lưu trữ trong một máy tính dành riêng gọi là máy dịch vụ tệp Khác nhau khác nhiều về

Trang 4

quy mô và mức độ phức tạp, mạng cục bộ có thể chỉ liên kết vài ba máy tính cá nhân và một thiết bị ngoại vi dùng chung đắt tiền, như máy in laser chẳng hạn Các hệ thống phức tạp hơn thì có các máy tính trung tâm (máy dịch vụ tệp) và cho phép những người dùng tiến hành thông tin với nhau thông qua thư điện tử để phân phối các chương trình nhiều người sử dụng, và để thâm nhập vào các cơ sở dữ liệu dùng chung

1.2) Ethernet:

Ethernet là công nghệ được sử dụng rộng rãi nhất trong các mạng cục bộ ( mạng LAN ) Bản thân riêng Ethernet không thể làm thành một mạng; nó cần đến vài thủ tục khác như TCP/IP, để cho các nút thực hiện việc truyền thông tin Ethernet trong dạng chuẩn của nó đã không đảm đương được việc luân chuyển một lượng thông tin lớn, nhưng vẫn có nhiều

ưu điểm, cụ thể là:

 Các mạng Ethernet dễ thiết kế và có chi phí thấp trong việc cài đặt

 Các thành phần của mạng có giá thành rẻ và được hổ trợ tốt

 Công nghệ đã được thử thách qua thực tế và tỏ ra là khá hấp dẫn cũng như đáng tin cậy

 Đơn giản trong việc bổ sung thêm hoặc bớt đi các máy tính trên mạng

 Được đa số các phần mềm và phần cứng hổ trợ

Một vấn đề chính còn tồn tại với Ethernet là: bởi vì các máy tính đều tranh đua để truy cập lên mạng nên không có gì đảm bảo là một máy tính cụ thể nào đấy sẽ truy cập được ở một thời điểm cho trước Cuộc tranh giành sẽ xảy ra các vấn đế khi 2 máy tính đều cố gắng truyền thông tin cùng một lúc; để rồi cả 2 đều phải lùi ra khỏi cuộc tranh đua và không có dữ liệu nào có thể được truyền

Phần cứng, định ước, và tiêu chuẩn ghép nối của một loại mạng cục bộ, do hãng Xerox Corporation đưa ra đầu tiên, có khả năng liên kết đến 1024 nút trong một mạng buýt Do sử dụng tốc độ cao trong kĩ thuật truyền tin dải tần cơ bản (kênh đơn) Ethernet cho phép truyền dữ liệu dạng dãy với tốc độ 10 megabit mỗi giây, với thông lượng thực tế từ 2 đến 3 megabit mỗi giây Ethernet dùng kỹ thuật thâm nhập nhiều mối bằng cảm nhận sóng mang có dò xung đột ( CSMA/CD) để đề phòng trục trặc cho mạng khi có hai thiết bị đồng thời cùng cố thâm nhập vào mạng Chú ý: Có một số hãng, như 3 Com và Novell chẳng hạn, cũng sản xuất phần cứng mạng cục bộ cùng theo định ước Ethernet, nhưng sản phẩm của hãng này thường không tương thích với sản phẩm của hãng kia

 BỘ TRUYỀN NHẬN ETHERNET:

Ethernet không đòi hỏi phức tạp ở phần cứng Các dây cáp được sử dụng để nối với nó hoặc là cáp hai sợi xoắn không bọc kim (UTP) hoặc

Trang 5

là cáp đồng trục Các dây cáp này phải được cắt đoạn để độ dài tương ứng với trở kháng phù hợp với trở kháng đặt trưng cho chúng, cụ thể là 50 đối với cáp đồng trục và 100 đối với dây cáp UTP

Mỗi nút đều có phần cứng truyền và nhận để điều khiển quá trình truy nhập tới dây cáp và đồng thời giám sát sự lưu thông của dữ liệu trên mạng Phần cứng thực hiện chức năng truyền nhận gọi là bộ truyền nhận và một bộ kiểm tra bắt đầu và kết thúc khung

Bộ truyền nhận Ethernet truyền theo một Ether (các nút giám sát bus) đơn Khi không có nút nào truyền thì áp trên đường dẫn bằng +0,7V điện áp này cung cấp một tín hiệu nhạy với sóng mang cho tất cả các nút trên mạng; điện áp này còn gọi là nhịp tim ( heartbeat) Nếu một nút phát hiện ra diện áp này thì nó biết rằng mạng đang hoạt động và không có nút nào đang truyền

Như vậy khi một nút muốn truyền một thông điệp thì nó phải chờ đến một thời điểm không bận Khi đó nếu 2 hay nhiều bộ truyền đang hoạt động ở cùng thời điểm đó thì sẽ xảy ra xung đột Khi chúng phát hiện thấy tín hiệu, một nút truyền đi một tín hiệu báo tắc nghẽn Các nút bị lâm vào tình trạng xung đột lúc đó sẽ chờ một khoảng thời gian ngẫu nhiên ( trong khoảng 10 đến 90ms) trước khi cố gắng truyền lần nữa Mỗi nút trên một mạng đều chờ một lần truyền lại Như vậy, hiện tượng xung đột làm ảnh hưởng đến hiệu quả truyền dữ liệu trên mạng Thông thường, các bộ truyền nhận phát hiện ra xung đột bằng việc giám sát điện áp một chiều (DC) hoặc điện áp trung bình trên đường truyền

Khi truyền dữ liệu, một đơn vị truyền nhận phần mở đầu bằng 1s và 0s liên tiếp Mã được sử dụng là mã Manchester, mã này diễn tả bằng số 0 khi có bước nhảy điện áp HIGH xuống LOW và 1 khi có bước nhảy điện áp từ LOW lên HIGH Điện áp thấp bằng +0,7V Như vậy khi phần mở đầu được truyền thì điệp áp sẽ thay đổi giữa –0,7V và +0,7V

Phần mở đầu

Tín hiệu digital Ethernet

Nếu sau khi truyền phầm mở đầu mà không phát hiện thấy xung đột thì phần còn lại của khung truyền sẽ được truyền tiếp

Trang 6

1.3) Internet:

Một hệ thống gồm các mạng máy tính được liên kết với nhau trên phạm vi toàn thế giới, tạo điều kiện thuận lợi cho các dịch vụ truyền thông dữ liệu, như đăng nhập từ xa, truyền các tệp tin, thư tín điện tử, và các nhóm thông tin Internet là một phương pháp ghép nối các mạng máy tính hiện hành, phát triển một cách rộng rãi tầm hoạt động của từng hệ thống thành viên Nguồn gốc đầu tiên của Internet là hệ thống máy tính cuả Bộ Quốc Phòng Mỹ, gọi là mạng ARPAnet, một mạng thí nghiệm được thiết kế từ năm 1969 để tạo điều kiện thuận lợi cho việc hợp tác khoa học trong các công trình nghiên cứu quốc phòng ARPAnet đã nêu cao triết lý truyền thông bình đẳng ( peer-to-peer), trong đó mỗi máy tính của hệ thống đều có khả năng "nói chuyện" với bất kỳ máy tính thành viên nào khác Bất kỳ mạng máy tính nào dựa trên cơ sở thiết kế của ARPAnet đều được mô tả như một tập hợp các trung tâm điện toán tự quản, mang tính địa phương và tự điều hành, chúng được liên kết dưới dạng "vô chính phủ nhưng có điều tiết" Sự phát triển thiết kế của mạng ARPAnet đơn thuần chỉ do những yêu cầu về quân sự: Mạng này phải có khả năng chống lại một cuộc tấn công có thể vô hiệu hoá một số lớn các trạm thành viên của nó Tư tưởng này đã được chứng minh là đúng khi Mỹ và các đồng minh tham gia vào cuộc chiến tranh vùng Vịnh Sự chỉ huy và mạng kiểm soát của Irak, được tổ chức mô phỏng theo công nghệ ARPAnet, đã chống lại một cách thành công đối với các nổ lực của lực lượng đồng minh nhằm tiêu diệt nó Đó là lý do tại sao công nghệ có nguồn gốc từ ARPAnet hiện nay đang được xuất cảng một cách rộng rãi Mạng Internet nguyên thủ được thiết kế nhằm mục đích phục vụ việc cung cấp thông tin cho giới khoa học, nên công nghệ của nó cho phép mọi hệ thống đều có thể liên kết với nó thông qua một cổng điện tử Theo cách đó, có hàng ngàn hệ máy tính hợp tác, cũng như nhiều hệ thống dịch vụ thư điện tử có thu phí, như MCI và Compuserve chẳng hạn, đã trở nên thành viên của Internet Với hơn hai triệu máy chủ phục vụ chừng 20 triệu người dùng, mạng Internet đang phát triển với tốc độ bùng nổ, mỗi tháng có thêm khoảng một triệu người tham gia mới Lời khuyên: Hầu hết mọi người đều có thể tham gia vào Internet Nhiều tổ chức loại lớn và vừa có các hệ thống thư điện tử đều có cổng nối vào Internet Cao hơn một mức, các dịch vụ thư điện tử có thu phí (như) Compuserve và MCI dều có các cổng nối vào Internet; một số hệ bảng bulletin địa phương cũng vậy

2) Bus

Đường dẫn điện nội bộ mà theo đó các tín hiệu được truyền từ bộ phận này đến bộ phận khác trong máy tính Máy tính cá nhân có thiết kế bus của bộ vi xử lý theo ba loại đường dẫn: - Bus dữ liệu truyền dữ liệu xuôi ngược giữa bộ nhớ và bộ vi xử lý - Bus địa chỉ xác định vị trí nhớ nào sẽ được đưa vào hoạt động - Bus điều khiển truyền các tín hiệu của các bộ

Trang 7

phận điều khiển Người ta sẽ phát triển bus dữ liệu của máy bằng cách nối bộ xử lý với một hoặc nhiều khe cắm mở rộng, và gọi là bus mở rộng ( expansion bus) bus dữ liệu, bus địa chỉ, và bus mở rộng đều được mắc nối theo những hàng dây dẫn song song, cho nên tất cả các bít cần gửi đi sẽ được truyền cùng một lúc đồng thời, giống như 16 hoặc 32 chiếc ô tô dàn hàng ngang cùng chạy về một hướng trên xa lộ cao tốc Có ba loại cấu trúc bus thường gặp phổ biến trong thị trường máy tính IBM PC và tương thích

PC - Bus ISA ( Industry Standard Architecture) Đây là bus 16 bit, đầu tiên được xây dựng để dùng cho các máy tính AT ( Advanced Technology) Bus này bao gồm những khe cắm mở rộng 8 bit để tương thích với các bộ điều hợp cũ, và khe cắm 16 bit dùng cho những bộ điều hợp kiểu AT - Bus MCA ( Micro Chanel Architecture) Loại bus 32 bit sở hữu riêng được dùng trong các máy tính IBM PS/ 2 cao cấp - Bus EISA ( Enhanced Industry Standard Architecture) Loại bus 32 bit, nhưng khác với bus MCA là có thể tương thích ngược với các bộ điều hợp ISA Tính chất rộng rãi của 32 bit chỉ được sử dụng một phần Mặc dù các đường dẫn trong bus nội bộ của bộ xử lý hoạt động ở tốc độ cao phù hợp với bộ xử lý của bạn, nhưng bus mở rộng thì hoạt động với tốc độ thấp hơn nhiều - EISA ở 8 33 MHZ và MCA

ở 10 MHZ bus Local (là một loại đường dẫn tốc độ cao liên kết bộ xử lý của máy tính với vài ba khe cắm mở rộng) đã được xây dựng để tăng tốc độ cho việc hiện hình video trong các chương trình dùng nhiều đồ hoạ như Microsoft Windows chẳng hạn

3) BaseBand ( Băng cơ sở )

Trong các mạng cục bộ, đây là một phương pháp truyền thông, trong đó tín hiệu mạng thông tin được đưa trực tiếp vào cáp trong dạng số không điều biến Các tín hiệu máy tính có thể được truyền qua cáp bằng hai cách: tín hiệu tương tự và tín hiệu số Mạng truyền thông tương tự được gọi là mạng băng rộng ( broadband network) Các mạng truyền thông số được gọi là mạng băng cơ sở Vì các tín hiệu của máy tính là tín hiệu số, cho nên số lượng mạch cần thiết cho một mạng băng cơ sở để truyền dẫn tín hiệu này

ra vào máy tính là rất ít Hơn nữa, nhiều mạng băng cơ sở có thể sử dụng dây cáp hai sợi xoắn (dây điện thoại bình (thường)), cho nên lắp đặt chúng giá rẻ hơn với mạng băng rộng đòi hỏi phải có cáp đồng trục Tuy nhiên, hệ băng cơ sở bị hạn chế về cự ly truyền dẫn và chỉ cho phép thực hiện một kênh truyền thông trong một lúc Hầu hết các mạng máy tính cục bộ đều là mạng băng cơ sở

4) BoardBand (Băng rộng)

Trong các mạng cục bộ, đây là một phương pháp truyền thông tín hiệu tương tự được đặt trưng bởi dải tần rộng Tín hiệu này thường được tách chia ra hoặc truyền dồn ( multiplex) để cung cấp cho các đường truyền thông đa kênh Vì các tín hiệu của máy tính là loại tín hiệu số, nên chúng

Trang 8

phải được chuyển đổi bằng một quá trình gọi là biến điệu ( modulation) trước khi chúng được truyền qua mạng tín hiệu tương tự Một modem sẽ thực hiện nhiệm vụ đó Hệ thống dải rộng dùng phương pháp truyền tương tự Vì máy tính là thiết bị số, nên yêu cầu phải có các thiết bị giống như modem ở cả hai đầu cáp truyền để chuyển đối tín hiệu từ số thành tương tự hoặc ngược lại Truyền thông dải rộng có thể mở rộng cự ly khá xa và hoạt động ở tốc độ rất cao Mạng dải rộng cũng giống như mạng truyền hình cáp, có thể truyền hai hoặc nhiều kênh cùng một lúc (các kênh khác nhau về tần số) Do đó mạng truyền thông dải rộng có thể thực hiện truyền cả dữ liệu lẫn tiếng

thành thấp hơn nhiều

Theo nhận định của tôi ( đối với truyền khối dữ liệu nhỏ ) thì chuẩn RS-485 rất linh động Ta có thể chọn số lượng bộ điều khiển ( Master ), bộ nhận ( Slave ), chiều dài cáp, tốc độ truyền, số node cần giao tiếp, và rất tiết kiệm năng lượng

2 Một số đặt điểm của RS-485:

Giá thành thấp:

Các bộ điều khiển ( Driver ) và bộ nhận ( Receiver ) không đắt và chỉ yêu cầu cung cấp nguồn đơn +5V để tạo ra mức điện áp vi sai tối thiểu 1.5V ở ngỏ ra vi sai

Khả năng về mạng:

RS-485 là một giao diện đa điểm ( multi-drop ), nó có thể có nhiều Driver và Receiver, số Receiver có thể lên đến 256 nếu ngõ vào của các Receiver có trở kháng vào cao

Khả năng kết nối:

RS-485 có thể truyền xa 1200m, tốc độ lên đến 10Mbps Nhưng 2 thông số này không xảy ra cùng lúc Khi tốc độ truyền tăng thì tốc độ baud giảm xuống

Ví dụ: khi tốc độ là 90Kbps thì khoảng cách là 1200m,

1Mbps thì khoảng cách là 120m, còn với tốc độ 10Mbps thì khoảng cách chỉ còn 15m

3 Giải thích một số đặc tính RS-485 :

Trang 9

Các đường truyền cân bằng và không cân bằng:

Sở dỉ RS-485 có thể truyền trên một khoảng cách lớn là do chúng sử dụng đường truyền cân bằng Mỗi một tín hiệu sẽ truyền trên một cặp dây, với mức điện áp trên một dây là âm hoặc điện áp bù trên dây kia Receiver sẽ đáp ứng phần hiệu giữa các mức điện áp, được minh hoạ ở hình dưới:

Hình 1.1: Đường truyền cân bằng

Vin

GND

Hình 1.2: Đường truyền không cân bằng

Một thuận lợi lớn của RS-485 là khả năng chống nhiễu tốt Một thuật ngữ khác của đường truyền tín hiệu dạng này là vi sai tín hiệu

TIA/EIA – 485 chỉ định hai đường vi sai là A và B Tại bộ điều khiển ( Driver ) nếu VA > VB thì mức logic ở đầu vào là cao, nguợc lại VA < VB thì mức logic ở đầu vào là thấp Tại bộ nhận ( Receiver ) nếu VA > VB thì mức logic ở đầu ra là cao và ngược lại

Đối với các Receiver đầu vào phải nằm trong tầm –7V  + 12 V Mức áp vi sai đầu vào tối đa - 6V  VA – VB  +6V

Tại sao dùng đường truyền cân bằng có lợi :

Đường truyền cân bằng có ưu điểm bởi hai đường tín hiệu mang dòng gần bằng nhau nhưng ngược dấu Điều này giúp giảm nhiễu trên đuờng truyền bởi hầu hết các điện áp nhiễu điều tăng hay giản điều nhau trên cả hai đường truyền Bất kì một điện áp nhiễu nào tác động lên một dây điều

bị triệt tiêu bởi điện áp bù trên dây kia Đường nhiễi có thể là các dây khác trong cáp hoặc ở bên ngoài Một bộ nhận cân bằng chỉ nhận tín hiệu cần truyền, loại bỏ tín hiệu nhiễu hoặc giảm đi rất nhiều tín hiệu nhiễu

Ngược lại, trong giao tiếp không cân bằng, bộ nhận phát mức điện áp giữa dây tín hiệu và đất Khi có nhiễu chúng sẽ tác động đến mạch, khi gặp mội trường có nhiễu lớn chúng sẽ gây sai lệch mức logic mạch hoạt động sai

Một ưu điểm khác của đường truyền cân bằng là nó có thể triệt tiêu được phần điện áp tiềm tàng giữa bộ phát và bộ nhận Trong kết nối ở

Trang 10

khoảng cách lớn, điện thế ở các Driver và Reciver có thể khác nhau nhiều vôn

Ơû một đường truyền không cân bằng, điện thế đất khác nhau có thể làm cho Receiver không đọc được đầu vào Còn ở đường truyền cân bằng thì chúng không quan tâm đến điện thế đất vì nó chỉ đọc phần điện thế hiệu giữa hai dây truyền tín hiệu

Trong thực tế, các thành phần RS-485 chỉ phù hợp với sự chênh lệch thế đất nhất định Một cách để triệt tiêu hoặc giảm bớt vấn đề này là cô lập mạng

4 Nguyên tắc hoạt động của RS-485 :

a) Mức áp yêu cầu:

Giao tiếp RS – 485 điển hình sử dụng nguồn cung cấp đơn +5V nhưng mức logic tại đầu phát và đầu thu không phải là mức TTL hay mức CMOS, để có mức ra thích hợp thì VA – VB  1.5V

Điện áp giữa mỗi đầu ra và đất không xác định bằng việc trừ mà mode điện áp chung phải nằm trong tầm 7V Nếu như giao tiếp cân bằng một cách hoàn hảo thì các đầu ra offset bằng một nửa với nguồn cung cấp Bất cứ sự cân bằng nào cũng làm tăng hay giảm mức offset

Hình bên dưới chỉ áp ra A và B của một bộ điều khiển RS-485 Biên độ đầu ra gần 3V thay đổi từ +1  +4V hoặc –1V  -4V so với đất Nguồn cung cấp cho bộ điều khiển là +5V

A

B

Hình 1.3: Ngỏ ra của bộ phát RS-485

Hình bên dưới chỉ mức điện áp vi sai giữa dây A và B ở đầu ra của Driver Biên độ đỉnh đỉnh của áp ra là 6V gấp hai lần biên độ đỉnh đỉnh của điện áp trên mỗi đường dây

Hình 1.4: Ngỏ ra vi phân của bộ phát RS-485

Trang 11

Nếu như một đầu ra đóng mở trước một đầu ra khác thì điện áp đầu ra

vi sai đóng mở chậm hơn và điều này giới hạn tốc độ truyền của mạng Thời gian lệch ( Skew ) là khoảng thời gian đóng mở chênh lệch giữa 2 đầu ra Các Driver của RS-485 được thiết kế sao cho tối thiểu thời gian lệch

Tại Receiver, điện áp 2 đầu vào A và B chỉ cần 200mV Nếu VA - VB

 0.2V thì đầu thu sẽ đọc là mức logic 1, ngược lại là mức logic 0 nếu như điện áp vi sainày < 0,2V thì mức logic không xác định

Sự khác nhau giữa điện áp Driver và Receiver là giới hạn nhiễu cho phép 1,3V điện áp vi sai có thể yếu đi hoặc bị nhiễu kí sinh khoảng 1,3 V thì đầu thu vẫn nhận được mức logic đúng

Trong hầu hết các mạng, điện áp đầu ra bộ phát lớn hơn 1,5V Do đó giới hạn nhiễu lớn hơn Một bộ Driver cần cấp nguồn 3V cũng có thể có áp

ra vi sai giữa 2 đầu ra là 1,5 V

TIA/EIA – 485 định nghĩa : B > A  mức 1; A > B  mức 0 Sử dụng định nghĩa này các chip giao tiếp RS-485 thì làm ngược lại

b) Dòng yêu cầu:

Dòng tổng trong RS-485 thay đổi theo trở kháng vào của thành phần trong mạng gồm: các bộ phát, các đầu thu, cáp và các thành phần đầu cuối Trở kháng ra của bộ phát thấp và trở kháng của cáp thấp cho phép việc đóng mở được nhanh hơn và bảo đảm bộ thu sẽ nhận được tín hiệu với tốc độ cao nhất có thể Nếu trở kháng của đầu thu cao thì nó sẽ làm giảm dòng trong mạng và kéo dài tuổi thọ của bộ nguồn

Việc sử dụng thành phần đầu cuối sẽ có lợi đối với dòng trong mạng Khi không có các thành phần đầu cuối thì trở kháng vào của các bộ thu sẽ ảnh hưởng lớn đối với điện trở tổng nối tiếp Tổng trở kháng vào thay đổi theo các bộ thu và trở kháng vào của chúng

Một bộ phát RS-485 có thể lái đến 32 đơn vị tải TIA/EIA – 485 xác định một đơn vị tải dưới dạng dòng yêu cầu Một bộ thu tương đương một đơn vị tải, mà tải này không kéo nhiếu hơn một lượng dòng xác địmh tại đầu vào và điện áp được xác định theo tiêu chuẩn Khi áp tại đầu thu là 12V thì một đơn vị tải – Bộ thu sẽ không kéo nhiều hơn 1mA Để đạt được yêu cầu này thì một bộ thu phải có một điện trở đầu vàu ít nhất là 12 K, mắc giữa mỗi đầu vi sai với Vcc hay GND tùy thuộc vào chiều dòng điện Nếu thêm một bộ thu thì điện trở tương là 6000  Nếu có 32 đơn vị tải thì

R tương đương là 375

5 Chuyển đổi sang TTL:

a) Song công ( Full-Duplex ):

RS-485 được thiết kế để dùng cho hệ thống nhiều node ( multi-drop) Hầu hết mạng RS-485 là bán song công sử dụng nhiều bộ phát và bộ thu,

Trang 12

cùng chia sẽ một đường truyền tín hiệu Nhưng chúng ta cũng có thể sử dụng RS-485 ở dạng song công, ở đó mỗi hướng sẽ có đường truyền tín hiệu riêng của nó Việc chuyển đổi mạng RS-232 sang RS-485 song công dễ dàng thực hiện bằng phần mềm

Với mạng loại này ta có thể sử dụng SN75179B ở hai đầu bộ phát và bộ thu Mạng này gồm 1 bộ phát dùng chuyển đổi 5V TTL sang RS-485 và một bộ thu dùng chuyển RS-485 sang 5V TTL

Đây là một giải pháp đơn giản khi ta muốn tạo một mạng song công, khoảng cách xa giữa các vi điều khiển Các chip giao tiếp RS-485 nhỏ hơn, đơn giản và rẻ hơn trong việc chuyển đổi sang RS-232

Hình 1.5: Kết nối song công nhiều node

Trong một mạng gồm có chủ và tớ, ở đó node chủ dùng để điều khiển mạng và cho phép việc thu phát của thành phần khác Một cặp dây dùng để nối bộ phát của con chủ với bộ thu của các con tớ, còn một cặp dây khác nối bộ phát của các con tớ với bộ thu của con chủ

Tất cả các con tớ phải được thông tin từ con chủ để biết con nào được cho phép Việc định địa chỉ của con tớ được xác định bằng cặp dây đối lặp Thuận lợi của phương pháp này là tiết kiệm thời gian cho các con tớ bởi vì chúng không đọc thông tin trả lời của các con tớ khác Nếu tất cả các node cùng chia sẽ một đường dữ liệu thì các con tớ phải đọc tất cả mọi thông tin lưu thông trên đường mạng để lấy thông tin từ con chủ gởi tới

b) Bán song công:

Rất nhiều mạng dùng kết nối 485 là bán song công với nhiếu bộ phát và thu cùng chia sẽ một đường tín hiệu

Khi một mạng có 3 hay nhiều node thì tại một thời điểm chỉ có một node được thu hay phát Việc sử dụng 2 đường truyền tín hiệu là thuận lợi khi chỉ có 2 thiết bị ( một chủ, một tớ ) vì mỗi node có thể thu phát bất kì lúc nào mà không sợ có sự xung đột Nhưng nếu có nhiều hơn một bộ phát trên cùng một cặp dây thì không có sự đảm bảo rằng đường truyền tín hiệu là “ rỗng”(free) khi bộ phát cần truyền

Trên các vi điều khiển cho phép xây dựng các bit port như là đầu vào

hay đầu ra, chúng ta có thể gởi hay nhận một bit đơn , tái tạo lại bit khi cần

Trang 13

thiết Chúng ta cũng có thể làm điều này để sử dụng ít nhất số bit port có thể hoặc sử dụng bán song công để tiết kiệm dây

6 7

8

RO RE DE DI

D A

B +V CC

6 7

8

RO RE DE DI

D A

B +V CC

CONT ROL OUT

6 7

8

RO RE DE DI

D A

B +V CC

Hình 1.6: Kết nối bán song công

Chip bao gồm một bộ phát dùng đổi mức logic TTL sang RS-485 và một bộ thu dùng chuyển RS-485 sang mức TTL và ở mỗi chip đều có một đầu vào cho phép Không giống như SN75179B chip này chỉ có một cặp chân RS-485 và chân cho phép vào, dùng xác định liệu bộ phát hay bộ tu là tích cực

Khi đầu vào cho phép của bộ phát ở mức thấp thì ngõ ra của bộ phát ở trạnh thái tổng trở cao Khi đầu vào cho phép của bộ thu ở mức cao thì đầu

ra của bộ thu ở trạng thái tổng trở cao

6 Kết nối mạng và phương thức truyền:

Đặc điểm của mạng dùng chuẩn RS-485 là phải chung mass, mức điện áp chung: -7  +12v

a Dạng kết nối tổng quát:

Hình bên dưới mô tả cách kết nối tổng quát, mỗi node có chip thu phát SN75176B ( tương tự Max485, LTC485, DS3695 )

Mạch có điện trở 120  nối song song với ngõ vào, ra vi sai ( chân 6-7 ), và hai diện trở 560  kéo lên

Với cách kết nối như vậy thì để truyền data từ bộ điều (Master) đến các thiết bị chấp hành ( Slave ) ta phải set chân 2-3 lên mức cao, tương tự

Trang 14

khi các Slave gởi Message về Master, chân 2-3 cũng phải lên mức cao Còn khi nhận Message thì ta phải set chân 2-3 xuống thấp

Hình 1.7: Dạng kết nối tổng quát của mạng dùng chuẩn RS-485

b Kết nối tự động :

Vấn đề: khi thiết kế mạng dùng chuẩn RS-485, do tất cả các node

cùng chia sẽ một đường data, nhưng tại một thời điểm chỉ có một bộ điều khiển hoạt động Tức là trước khi node này phát thì node khác không được phát

Hình dưới đây cho ta cách kết nối tự động không cần phải set chân 2-3 mỗi khi phát

Hình 1.8: Kết nối tự động

Trang 15

Với mạch hình trên thì khi ta viết chương trình điều khiển, ta không cần phải chốt bộ điều khiển, vì dùng 75176B kết hợp với 555, sẽ cho ta thời gian delay đủ để bộ điều này hoạt động ( Enable ) thì bộ điều khiển khác không hoạt động ( Disable ) Giải thích cụ thể nguyên lý hoạt động của mạch trên, sẽ được đề cập trong phần thiết kế mạch

7 Việc cho phép bộ điều khiển ( Driver ):

Một việc quan trọng trong sử dụng mạng bán song công là việc điều khiển cho phép các bộ điều khiển ( bộ phát ) Khi một bộ phát đang chuyển thì nó vẫn còn được cho phép cho đến khi nó thực hiện xong việc chuyển data Sau đó nó không được cho phép trước khi các node khác thực hiện việc phát

Hình 1.9: Tín hiệu cho phép của bộ phát và 1 byte data được phát

Mối quan hệ giữa một byte dữ liệu phát và tín hiệu cho phép bộ phát Có 3 cách để điều khiển chân cho phép của 485:

 Hình trên 1 bit sẽ điều khiển cả bộ thu và bộ phát trên mỗi chip, vì chân cho phép bộ phát tích cực mức cao, trong khi đó chân cho phép bộ thu tích cực mức thấp Do đó chỉ có một chân được cho phép tại một thời điểm

 Trong nhiều mạng, đầu ra bộ thu lúc nào cũng được tích cực do đó nó có thể được nối với đất Bit điều khiển chỉ nối với chân Enable của bộ phát Việc bỏ chân Enable của bộ thu cung cấp một cách đơn giản cho

1 node để phát hiện khi nào thì một chuyển đổi hoàn thành, bằng cách đọc dữ liệu truyền trở lại

 Để linh hoạt hơn ta có thể sử dụng các bit riêng rẻ để điều khiển các chân Enable của bộ phát và bộ thu

Trang 16

I Giới Thiệu:

Có hai tiêu chuẩn chính yếu áp dụng cho quá trình truyền dữ liệu nối tiếp là vòng dòng điện 20mA và RS-232 Vòng dòng điện 20mA sử dụng tín hiệu dòng điện để mang dữ liệu, còn chuẩn RS-232 sử dụng các mức điện áp

Ơû các nước phát triển khái niệm vòng dòng điện đã quen thuộc với nhiều người làm việc trong lĩnh vực đo lường, điều khiển và tự động hóa trong các cơ sở sản xuất công nghiệp Khái niệm vòng dòng điện còn mới mẻ và ít được trình bày trong các giáo trình Dưới đây tôi giới thiệu vài nét về nguồn gốc, các chuẩn vòng dòng điện và nguyên tắc hoạt động, ứng dụng của chúng:

II Vòng dòng điện:

1) NGUỒN GỐC:

Mô hình của hệ thống truyền dữ liệu bằng vòng dòng điện bắt nguồn từ phương pháp tiêu chuẩn đã sử dụng trên các máy điện báo in chữ Các máy đánh điện báo kiểu cơ điện đã được dùng khá rộng rãi vào cuối những năm 1930 với thiết bị từ các công ty như Kleinschnitt và “ The Teletype Corporation” ( Mỹ )

2) TRUYỀN DỮ LIỆU BẰNG VÒNG DÒNG ĐIỆN:

Thay cho việc dùng mức điện áp, việc truyền dữ liệu còn có thể được tiến hành nhờ sự chuyển mức dòng điện, hay nói khác đi là thay đổi giá trị dòng điện Giao diện nối tiếp cũng giới thiệu 2 khả năng, để tùy chọn một trong hai phương pháp truyền

Giao diện dòng 20mA ra đời trước RS-232 được xem như một tiêu chuẩn Giao diện này còn được gọi là giao diện TTY hoặc thường gọi là vòng dòng điện, mô tả trạng thái logic qua tác động cho hoặc không cho dòng điện 20mA đi qua Giao diện dòng 20mA được chia ra làm hai phần: chủ động ( có nguồn dòng không đổi 20mA riêng ) va øbị động ( dòng điện 20mA được tạo ra từ thiết bị ghép nối ) Như vậy, thì bao giờ cũng có một thành viên giao tiếp gọi là chủ động còn thành viên kia gọi là bị động

Ơû giao diện dòng 20mA có những tín hiệu sau:

Trang 17

 TxD ( + ) dữ liệu gửi ( đường dẫn đi )

 TxD ( - ) dữ liệu gửi ( đường dẫn về )

 RxD ( + ) dữ liệu nhận ( đường dẫn đi )

 RxD ( - ) dữ liệu nhận ( đường dẫn về ) Thông thường thì ở giao diện dòng 20mA không có tín hiệu bắt tay khi thiết lặp đường truyền Với giao diện này, việc truyền dữ liệu trên 1.000 m ét là hoàn toàn có thể thực hiện được Nhiễu sinh ra trên đường truyền ảnh hưởng cảm ứng lên cả đường dẫn tín hiệu đi và đến, do đó nhiễu bị loại trừ Muốn thế đường dẫn đi và đường dẫn về ( còn được gọi là đường đảo và không đảo ) phải đặt sát nhau, sao cho khi một tín hiệu nhiễu xuất hiện thì cùng ảnh hưởng cả lên hai đường tín hiệu, xoắn hai dây với nhau làm đường truyền Tất nhiên với giao tiếp này không thể có được tốc độ truyền cao

Có 2 chuẩn vòng điện khác nhau: 60mA và 20mA trong đó chuẩn 60mA đã lỗi thời Lý do để vòng dòng điện trở nên phổ biến đối với các máy điện báo in chữ là tính hiệu quả của phương pháp Cụ thể mỗi chữ in

ra nhờ việc sử dụng các vòng dòng điện, trong đó mỗi chữ tương ứng với một nhóm lựa chọn từ 5 đến 7 cuộn dây có lõi sắt, kích hoạt các thanh gạt bên trong máy Các cuộn dây này được nới thành các dãy với số lượng các cuộn dây khác nhau, tùy thuộc vào kí tự cần được truyền Thực tế cho thấy trong trường hợp này việc truyền điện áp không hiệu quả bằng việc truyền dòng điện

Có ít nhất là 3 kiểu thiết bị vòng dòng điện khác nhau:

 Chỉ có máy in

 Chỉ có bàn phím

 Có cả bàn phím và máy in kết hợp với nhau

Có 3 kiểu truyền thông được sử dụng với các hệ thống vòng dòng điện đó là: đơn công, bán song công và song công

Hệ thống đơn công: cho phép truyền thông tin theo một hướng Như

vậy một bộ nhận sẽ luôn nhận thông tin, còn bộ truyền sẽ luôn truyền thông tin và không bao giờ xảy ra việc thay đổi vai trò; luồng dữ liệu luôn

đi theo một hướng

Hệ thống bán song công và song công: cho phép các thông tin theo hai

chiều, nhưng chỉ theo một hướng ở từng thời điểm Các vòng dòng điện đơn công và bán song công chỉ cần một cặp đường truyền, trong khi vòng song công cần hai cặp đường truyền, mỗi cặp cho một hướng Tuy nhiên hoạt động song công vẫn có thể thực hiện trên một cặp dây xoắn đơn giản nếu như các mức dữ liệu trước hết được biến đổi thành tín hiệu âm thanh, cụ thể hơn là thành tín hiệu có tần số nằm trong vùng tai nghe được ( audio

Trang 18

tone ) Trong trường hợp ấy, hệ thống sẽ sử dụng các cặp khác nhau của tín hiệu để diễn tả mức logic 0 và 1, mỗi cặp cho một hướng

a)VÒNG DÒNG ĐIỆN 60mA:

Vòng dòng điện 60mA bây giờ đã lỗi thời và chỉ tìm thấy trong các thiết bị cũ Hệ thống 60mA được mô tả trên hình cho thấy một trong các máy điện báo in chữ có thể được nối với cổng lối ra nối tiếp tương thích TTL Trong nhiều trường hợp, một bit của một cổng song song sẽ được cấu hình như cổng nối tiếp thông qua hoặc là phần mềm hoặc là bổ sung phần cứng Trên hình 4.2, bit có ít ý nghĩa nhất (LSB) của cổng song song được chỉ định như đầu ra nối tiếp

R1

22 0

R2 2

Máy đ ie än b áo

6 0 W PM Bau d ot

Vòng dòng điện loại 60mA

Mức TTL từ cổng ra nối tiếp trên hình 4.2 điều khiển cực B của TST công suất, chịu điện áp cao Hai cực C, E của TST được đấu nối tiếp với dòng điện 60mA và như vậy nó hoạt động như một chuyển mạch (công tắc) Khi mức TTl là High, TST T1 mở và dòng điện chạy trong vòng Ngược lại, khi bit TTL là LOW, TST chuyển sang trạng thái cấm và sẽ không có còng điện đi qua mạch Do đó TST cung cấp một mức logic 1, khi bit TTL là High, và mức logic 0 khi là Low

Vòng dòng điện được nuôi từ nguồn một chiều 120 đến 140 V, có một biến trở điều chỉnh được mắc nối tiếp (R2), được sử dụng để đặt gần đúng mức dòng điện

Mức dòng điện trong vòng dòng điện 60mA được điều chỉnh bằng cách ngắt vòng và chèn vào mạch một mili ampe kế với thang đo 0 đến 100mA

Phím sẽ được nhấn trên bàn phím, hoặc trong trường hợp của hình 4.2, một mức HIGH phải được viết vào cổng lối ra nối tiếp Tác động này sẽ đóng mạch vòng và cho phép dòng đi qua Chiết áp R2, được nối với biến trở, khi đó sẽ tiến hành điều chỉnh cho dòng điện đi qua xấp xỉ 60mA

Nhược điểm: dễ làm hỏng linh kiện do dòng lớn

Cách khắc phục: dùng mạch cách ly, bộ ghép nối quang

Trang 19

D1 5.6V

Bộ ghép nối quang

R4 2.2K R1

Mạch ghép nối quang

b)VÒNG DÒNG ĐIỆN 20mA

Chuẩn vòng dòng điện lớn hơn đã sử dụng dòng điện với cường độ 20mA cho mức logic 1 và dòng điện từ 0 đến 2mA cho mức logic 0 Các máy với vòng dòng điện 60mA đã cũ, trên đó sử dụng mã điện báo Baudot

5 bit, trong khi hầu hết các máy sử dụng vòng 20mA đều sử dụng mã ASCII

Bộ ghép nối quang

Bộ biến đổi TTL sang tín hiệu dòng 20mA

hình trên chỉ ra một phương pháp đơn giản cho phép sử dụng bộ ghép nối quang để ghép nối cổng nối tiếp của máy tính với một vòng dòng điện 20mA Nguyên tắc hoạt động: khi dữ liệu vào là HIGH , thì lối ra của U1 chuyển sang mức LOW, do đó cực âm của Diod sẽ nối đất Tác động này làm TST dẫn, và cho phép dòng điện đi qua mạch Diod D1 dùng để ngăn ngừa hỏng hóc và những phiền phức khác gây ra bởi xung điện cảm ứng khi phát sinh khi các cuộn dây phóng điện

c)VÒNG DÒNG ĐIỆN 4 ĐẾN 20mA:

Trong kỹ thuật điều khiển các quá trình công nghiệp người ta thường sử dụng hệ thống vòng dòng điện để truyền các số liệu đo lường Hình 4-9 chỉ ra một hệ thống tiêu biểu trong đó 3 thiết bị khác nhau thực hiện trong cùng một vòng dòng điện

Trang 20

Bộ biến đổi

áp ra dòng

Máy ghi Analog Máy tính số Bộ điều khiển

Vòng dòng 4 - 20 mA

Vòng dòng điện 4 – 20mA dùng trong kỹ thuật đo lường

Trên các bộ chỉ thị dòng điện dưới dạng số đang lưu hành trên thị trường, ta thấy dải đo không phải là 0  20 mA mà là 4  20 mA Các bộ chỉ thị này sử dụng cho một loại vòng dòng điện khác, có phạm vi các giá trị cho phép từ 4  20mA Mục đích của việc sử dụng vòng dòng điện này là truyền các giá trị nằm trong một vùng, mô tả các thông số đang được đo Toàn bộ vùng có độ rộng là 16 mA, nhưng do việc chọn giá trị nhỏ nhất là 4mA có thể tăng dòng điện cực đại 20mA Nguyên nhân của sự lệch và cũng là ưu điểm của vòng dòng điện 4 đến 20mA so với các vòng dòng điện khác Do mức logic 0 của vòng dòng điện 20mA là 4mA nên dễ dàng phân biệt giá trị zero và trạng thái dòng điện bằng 0 ( LOW )

1) Đặt vấn đề:

Ghép nối qua cổng nối tiếp RS-232 là một trong những kỹ thuật được sử dụng rộng rãi nhất để ghép nối các thiết bị ngoại vi với máy tính Qua cổng nối tiếp có thể ghép nối chuột, modem, máy in, bộ biến đổi A/D, các thiết bị đo lường … Số lượng và chủng loại các thiết bị ngoại vi ghép nối qua cổng nối tiếp đứng hàng đầu trong số các khả năng ghép nối với máy tính Các cách ghép nối này sử dụng phương pháp truyền thông theo kiểu nối tiếp, trong đó ở mỗi thời điểm chỉ có một bit được gởi đi dọc theo một đường dẫn Đặt điểm này khác với phương pháp truyền thông theo kiểu song song, trong đó nhiều bit được gởi đi đồng thời Ưu điểm chính của kiểu truyền nối tiếp so với cách truyền song song là một đường dẫn được sử dụng để truyền còn một đường dẫn khác dùng để nhận

Chuẩn RS-232 khi mới chỉ là chuẩn không chính thức ( defacto) đã được nhiều công ty máy tính và thiết bị đo lường chấp nhận Sau đấy, Hiệp hội các nhà công nghiệp điện tử ( EIA: The Electronic Industries Association ), đã xây dựng thành một tiêu chuẩn chính thức, vào năm 1962 Đáng tiếc là tiêu chuẩn này chỉ cho phép sử dụng đường truyền ngắn, với tốc độ bit thấp, ví dụ tốc độ truyền theo bit bằng 19.600 bit/sec, với khoảng cách cực đại bằng 20m Các tiêu chuẩn truyền thông nối tiếp ra đời sau, như RS-422, RS-449, RS-485, cho phép truyền trên đường cáp rất dài, với

Trang 21

tốc độ bit rất cao Chẳng hạn RS-422 cho phép tốc độ truyền lớn hơn 10Mbps, còn khoảng cách trên 1000m, trong khi có thể sử dụng cáp hai sợi xoắn, cáp đồng trục hoặc cáp quang Các chuẩn mới cũng có thể được sử dụng để xây dựng các mạng máy tính

2) Vài nét về nguồn gốc:

Sau một thời gian lưu hành không chính thức, đế năm 1962, Hiệp hội các nhà Công Nghiệp Điện Tử (EIA) đã cho ban hành chuẩn RS-

232 áp dụng cho cổng nối tiếp Các chữ RS được viết tắt từ Recommended Standard ( Tiêu chuẩn đã giới thiệu)

Có hai phiên bản RS-232 được lưu hành trong thời gian tương đối dài là RS-232B và RS-232C Cho đến nay RS-232B là phiên bản cũ còn RS-232C thì ra đời sau và hiện vẫn còn tồn tại Vì chuẩn RS-232B đã lỗi thời từ nhiều năm, nên trong các tài liệu ít đề cập đến Tiêu cuẩn đang được áp dụng hiện nay là RS-232C, gọi ngắn gọn là RS-232 Ở các nước Tây Aâu, chuẩn ghép nối RS-232 còn gọi là chuẩn V.24

EIA đã công bố tiêu chuẩn RS-232C với nổ lực nhằm tạo ra khả năng để ghép nối các thiết bị do nhiều nhà sản xuất làm ra mà không đòi hỏi có tiêu chuẩn đặt biệt cho từng trường hợp

Ý tưởng để xây dựng tiêu chuẩn RS-232 là phải sử dụng cùng loại đầu nối dây, ví dụ đầu nối 25 chân hoặc 9 chân, được nối theo cùng một cách và phải sử dụng cùng mức điện áp khi biểu diển các số nhị phân 1 và

0 tương ứng Với ý tưởng này, nếu như mọi người điều tham gia vào tiêu chuẩn theo cùng một cách thì có thể nối các thiết bị với cổng RS-232 của các hãng khác nhau, các mẫu mã khác nhau mà không cần có thêm điều kiện nào Các modem, các modem, các máy in và nhiều thiết bị khác có thể được đấu nối vào giao diện RS-232 Ngày nay, hầu hết các máy tính đều trang bị một hoặc hai cổng nối tiếp RS-232, và tất cả đều có khả năng sử dụng RS-232, ít nhất là như một khả năng tùy chọn từ nhà sản xuất máy tính hoặc từ phía người sử dụng máy tính

Việc thiết kế cổng RS-232 cũng tương đối dễ dàng, đặc biệt nếu như chọn chế độ hoạt động là không đồng bộ ở tốc độ truyền dữ liệu thấp, chẳng hạn như trong khoảng 110 đến 1200 baud

Các mạch điện tích hợp cả bộ phát và bộ nhận RS-232C đã được các nhà sản xuất khác nhau thiết kế và chế tạo, ví dụ Motorola, National Semiconductors Các chip bộ/ bộ đệm RS-232 tiếp nhận với mức điện áp TTL ở lối vào và biến đổi chúng thành các mức dành riêng cho RS-232 để truyền Các bộ nhận RS-232 làm việc theo cách ngược lại: tiếp nhận tín hiệu lối vào theo chuẩn RS-232 và biến đổi các tín hiệu sang các mức TTL tương ứng Các bộ phận này đều nằm trên bản mạch chính hoặc trên card vào/ra, nghĩa là ở phía sau của cổng RS-232

Trang 22

3) Truyền dữ liệu nối tiếp:

Có 2 loại định dạng truyền dữ liệu nối tiếp là: định dạng đồng bộ và định dạng không đồng bộ

a) Định dạng đồng bộ:

Trong thu phát đồng bộ, tất cà các thiết bị sử dụng chung nguồn xung clock của một thiết bị hoặc một nguồn bên ngoài

Clock

1 Data

0 Bit 0 Bit 7

1 0

(41H)

Phát đồng bộ – MSB

Mỗi bit phát được xác định bằng cạnh lên hoặc cạnh xuống của xung clock Bên nhận sử dụng xung clock đấy để xáx định khi nào thì bit được đọc vào

Thu phát đồng bộ chỉ áp dụng cho khoảng cách ngắn, chiều dài cable tối đa là 50m hoặc ít hơn Với khoảng cách lớn, việc thu phát đồng bộ ít được dùng vì cần truyền xung clock, mà điều này yêu cầu một dây phụ ( extra line ), chính vì thế dễ nhiễu

b) Định dạng bất đồng bộ:

Trong thu phát bất đồng bộ ( asynchronous ) kết nối không cần dây clock Mỗi byte được phát gồm bit Start để đồng bộ clock, và có một hoặc nhiều hơn một bit Stop để báo kết thúc việc phát một từ ( word )

Port RS-232 ( cổng COM ) trên PC sử dụng định dạng không đồng bộ để thông tin với modems và các thiết bị khác

Thu phát đồng bộ có thể sử dụng cho nhiều loại định dạng, phổ biến nhất là 8-N-1 ( 8 bit data, không Parity, 1 bit Stop ) Mỗi byte data gồm 1 bit Start ( bit 0, LSB ) và 1 bit Stop

Data

Start

0 Bit

Stop 0

0

Bit 7 Bit 1

1 0

Bit 0 (41H)

Thu phát bất đồng bộ – LSB

Trang 23

4) Các đặt trưng điện:

 Các điện áp đường truyền:

Tiêu chuẩn RS-232 đầu tiên ra đời đã mang vẻ lỗi thời của các chuẩn TTL Lý do là chuẩn RS-232 vẫn sử dụng các mức điện áp tương thích TTL để mô tả các mức logic 0 và 1, giống như trường hợp cổng máy

in ( cổng song song ) Ngoài mức điện áp, tiêu chuẩn cũng cố định các giá trị trở kháng tải được đấu vào bus của bộ nhận và các trở kháng của bộ phát/bộ đệm ( drivers)

Mức điện áp của hai tiêu chuẩn 232 cải tiến ( 232B và 232C ) được miêu tả trên hình 3-1 trong phiên bản cũ hơn, RS-232B, mức lôgic ‘1’ là một điện áp bất kỳ, trong phạm vi từ –5 đến –25V, trong khi logic ‘0’ là bất cứ mức điện áp nào nằm trong khoảng +5V đến +25V Các mức điện áp trong khoảng từ –3V đến +3V là trạng thái chuyển tiếp, trong khi các phạm vi từ 3V đến 5V không được xác định và sẽ dẫn đến kết quả không thể dự tính trước nếu như được sử dụng; tình trạng này đã xuất hiện trong các hệ thống được thiết kế sơ sài

-5

-3

Không xác địnhĐiện áp(V) 0

Trong chuẩn RS-232C, để có được tốc độ truyền dữ liệu nhanh hơn, người ta sử dụng khoảng chênh lệch hẹp hơn giữa mức logic ‘0’ và ‘1’ Các giới hạn trên đối với mức logic 0 và logic 1 là 12V, chứ không dùng giới hạn 25V như trong chuẩn RS-232B Nếu không có các xung xuất hiện trên

Trang 24

đường dẫn thì mức điện áp tương đương với mức HIGH, tức là –12V Hình 3-2 chỉ ra một ví dụ về mức điện áp và dạng của tín hiệu được truyền

Bit S tart

Bit S top

LOW HIGH

+12V -12V

T = 1/fBaud

0,52ms D0 D1 D2 D3 D4 D5 D6 D7

Các mức điện áp và dòng dữ liệu với tốc độ 19.200 baud

Ngoài việc thu hẹp giới hạn điện áp, chuẩn RS-232C mà ngày nay đang áp dụng đã cố định tải trong phạm vi từ 3.000 đến 7.000, và trở kháng ra của bộ đệm thấp hơn trước đó Đồng thời, bộ đệm cần phải duy trì một tốc độ tăng điện áp ( slew rate ) bằng 30V trong một s ( 30V/s ) Các

vi mạch Motorola loại MC1488 và MC1489 đã hoàn toàn thoả mãn các thông số kỹ thuật này

Các yêu cầu về mặt điện trong chuẩn RS-232 như sau:

1 Mức logic 1(mức dấu) nằm trong khoảng: -3V đến –12V; mức logic 0(mức trống ) nằm trong khoảng: +3V đến +12V

2 Trở kháng tải về phía bộ nhận của tải phải lớn hơn 3.000 

nhưng phải nhỏ hơn 7.000

3 Tốc độ truyền nhận dữ liệu cực đại là 100kbit/sec

4 Các lối vào của bộ nhận phải có diện dung nhỏ hơn 2.500

pF

5 Độ dài của cáp nối giữa máy tính và thiết bị ghép nối qua cổng nối tiếp không thể vượt quá 15m nếu không sử dụng modem

6 Các giá trị tốc độ truyền dữ liệu chuẩn là 50,75, 110, 150,

300, 600, 1.200, 2.400, 4.800, 9.600, 19.200, 28.800, … , 56.600 baund

Hình 3-2 mô tả các mức điện áp và độ rộng xung khi truyền một ký tự với tốc độ bằng 19.200

Trang 25

5) Khuông mẫu khung truyền:

Hình sau đây thí dụ về một ký tự được truyền theo frame gồm :

1 bit bắt đầu, 8 bit dữ liệu, 1 bit chẵn lẻ, và 1 bit kết thúc

RS-232 sử dụng cách truyền thông tin theo kiểu không đồng bộ, khuôn mẫu dữ liệu với các bit bắt đầu và dừng, như chỉ ra trên hình 3-4 Ta có thể thấy rõ là tại một thời điểm chỉ có một kí tự được truyền đi và có thời gian phân cách giữa chúng Khoảng thời gian trì hoãn này thực chất là khoảng thời gian hoạt động không hiệu quả và được đặt ở mức logic cao ( -12V ) như chỉ ra trên hình 3-4 Bo truyền gởi một bit start để thông báo cho bộ nhận biết một kí tự sẽ được gởi đến trong lần gởi bit tiếp theo Bit bắt đầu này luôn ở mức 0 Tiếp theo 5, 6 hoặc 7 bit dữ liệu được gởi dưới dạng

kí tự mã ASCII 7 bit, tiếp theo là một bit chẵn lẻ và cuối cùng là 1, 1.5, 2 bit stop Hình 3-5 chỉ ra một khuôn dạng khung truyền một kí tự ‘A’ và sử

dụng tính chẵn lẻ là lẻ Khoảng thời gian phân cách của một bit đơn quy định tốc độ truyền Cả bộ đệm truyền và nhận cần phải được đặt ở củng

khoảng thời gian bit dó hay nói cách khác là bộ truyền và nhận phải có cùng tốc độ baund Việc thiết lặp đồng bộ chỉ mang tính tương đối để bộ truyền và nhận có tốc độ xấp xỉ nhau, lý do là tín hiệu mang dữ liệu chỉ xuất hiện trong thời gian tương đối ngắn

Ví dụ trên hình 3-5 mô tả giản đồ mức logic thể hiện một khung truyền dữ liệu nối tiếp RS-232 sử dụng: 1 bit start, 7 bit data, 1 bit parity, 2 bit stop Đây là một đoạn của thông báo gửi trên luồng dữ liệu sau đây:

Bit đầu tiên gửi

8 bit dữ liệu 11001001B Bit bắt đầu (mức 0)

Trạng thái đánh dấu (mức 1)

Trang 26

{idle: khoảng trống } 11111 { bit bắt đầu } 0 {‘A’} 1000001 { bit parity } 0 { các bit stop } 11 { bit bắt đầu } 0 {‘p’} 0000111 { bit parity } 1 { các bit stop } 11 {idle} 11111111 { bit bắt đầu } 0 {‘p’} 0000111 { bit parity } 1 { các bit stop } 11 {idle} 11 { bit bắt đầu } 0 {‘L’} 0011001 { bit parity } 1 { các bit stop } 11

Như vậy thông điệp đã gửi là ‘AppL’

BIT CHẴN LẺ:

Thực chất quá trình kiểm tra lỗi khi truyền dữ liệu là bổ sung thêm dữ liệu vào dòng dữ liệu được truyền để tìm ra hoặc sửa chữa lỗi trong quá trình truyền Chuẩn RS-232 sử dụng một kỹ thuật đơn giản gọi là chẵn lẻ để có khả năng phát hiện lỗi

Một bit chẵn lẻ sẽ được bổ sung vào dữ liệu được truyền để cho thấy số các số 1 ( các bit có giá trị bằng 1 ) được gởi trong một khung truyền là chẵn hay lẻ Đây là một phương pháp đơn giản để mã hoá lỗi và chỉ cần đến một cổng XOR để tạo ra bit chẵn lẻ Bit chẵn lẻ bổ sung vào dữ liệu được truyền bằng cách chèn nó vào một vị trí chính xác của bit trong thanh ghi dịch sau khi đã đếm xem có bao nhiêu số 1 đã được gởi

Một bit chẵn đơn giản chỉ có thể tìm ra một số lẻ các lỗi, chẳng hạn 1,

3, 5, … Nếu như có một số chẵn các bit lỗi thì bit chẵn lẻ sẽ trùng với bit không mắc lỗi và không phát hiện ra lỗi Kỹ thuật mã hoá lỗi theo cách này thường không được sử dụng trong trường hợp một vài bit mắc lỗi

6) Các đầu nối

Theo chuẩn RS-232-C, đầu nối phần cứng xác định với 25 chân, gọi là chân cắm D-Shell hay DB-25 Nhưng không phải tất cả cổng nối tiếp đều sử dụng đầu nối DB-25 Một số máy tính như PCjr dùng chân cắm BERG 16 chân, máy PC AT thì sử dụng chân cắm D-Shell 9 chân

7) Mô tả chân

DB-25 DB-9 BERG

Trang 27

5 8 A7 Xóa việc gửi CTS Nhập

8) MAX232 và họ IC dùng biến đổi TTLRS-232-C

Họ IC từ MAX220-MAX249 được sản xuất cho truyền thông EIA/TIA-232E và V.28/V.24, cụ thể là cho những ứng dụng mà không có sẵn điện áp 12V Họ IC này đặc biệt thích hợp cho những hệ thống dùng pin có công suất thấp,

do chúng có chế độ hạ nguồn làm giảm công suất tiêu tán xuống dưới 5W MAX225, MAX233, MAX235, MAX245-MAX247 không cần các linh kiện phụ bên ngoài, được dùng cho những nơi tiết kiệm không gian

Các đặc điểm chính :

 Nguồn cung cấp +5V (MAX231/MAX239 dùng nguồn +5V và +12V)

 Hạ nguồn công suất thấp nhưng vẫn có thể nhận (MAX223/MAX242)

 Hỗ trợ chuẫn EIA/TIA-232E và V.28

 Nhiều bộ nhận và phát

 Phát hiện đứt mạch đường truyền (MAX243)

a) Cấu tạo chân

b) Mô tả chức năng chân

Ta thấy rằng MAX232 cần có 4 tụ ngoài (mắc vào giữa C1+ và C1-, C2+ và C2-, V+ và nguồn dương, V- và đất để biến đổi điện áp từ 0V đến 5V thành -12V đến +12V phù hợp cho truyền thông theo chuẩn RS-

232 Ngoài ra có 4 bộ khuếch đại đảo nhằm chuyển từ mức TTL ra chuẩn RS-232 và ngược lại

c) Sơ đồ khối và mạch tiêu biểu

Sơ đồ sau đây cho thấy các khối bên trong MAX232 và các linh kiện mắc bên ngoài theo dạng chuẩn :

R2IN

T1IN T2IN

C1+

C1- C2+

C2V+

Trang 28

+ 10uF

R2IN R1IN

3 4 5

2 6

8

RS-232 INPUT

RS-232 OUTPUT

BIẾN ĐỔI ĐIỆN ÁP -12V đến +12V

RS-232 OUTPUT

Trang 29

1) VI ĐIỀU KHIỂN AT89C51:

Do họ MCS-51TM đã trở thành chuẩn công nghiệp nên có rất nhiều hãng sản xuất ra nó, điển hình là ATMEL Corporation Hãng này đã kết hợp rất nhiều tính năng dựa trên nền tảng kỹ thuật của mình để tạo ra các

vi điều khiển tương thích với MCS-51TM nhưng mạnh mẽ hơn

AT89C52 là một vi điều khiển 8 bit do ATMEL sản xuất, chế tạo theo công nghệ CMOS, có chất lượng cao, công suất thấp với 8 KB Flash (flash programmable and erasable read only memory) Thiết bị này được chế tạo bằng cách sử dụng kỹ thuật bộ nhớ không bốc hơi mật độ cao của ATMEL và tương thích với chuẩn công nghiệp MCS-51TM về tập lệnh và các chân ra Flash on-chip cho phép bộ nhớ lập trình được lập trình trong hệ thống bởi một lập trình viên bình thường Bằng cách nối 1 CPU 8 bit với một Flash trên một chip đơn, AT89C51 là một vi điều khiển mạnh (có công suất lớn), cung cấp một sự linh động cao và giải pháp về giá cả đối với nhiều ứng dụng vi điều khiển

 Các đặc điểm chủ yếu của AT89C51 :

 Tương thích hoàn toàn với họ MCS-51TM của Intel

 Bộ nhớ chương trình 8K Byte thuộc loại Flash Memory

 Độ bền : 1000 lần ghi/xóa

 Tần số hoạt động : 0 Hz đến 24 MHz

 3 chế độ khóa bộ nhớ

 256 x 8-Bit RAM nội

 32 đường I/O lập trình được (4 port)

 3 timer/counter 16-bit

 8 nguồn ngắt

 Chế độ hạ nguồn và chế độ lười tiêu tốn công suất thấp

Trang 30

1.1 Cấu tạo chân

Tùy theo khả năng (về kinh tế, kỹ thuật, …) mà các nhà sản xuất các sản phẩm ứng dụng có thể chọn một trong 3 kiểu chân do ATMEL đưa ra

1.2 Sơ đồ khối

Trang 31

1.3 Mô tả chức năng của các chân

Vcc : áp nguồn

GND : đất

Port 0 : là một port I/O 8-bit hai chiều, cực máng hở Khi xuất ra, mỗi

chân port có thể lái 8 đầu vào TTL Nếu ghi các mức 1 ra các chân port thì các chân này có thể dùng như các đầu vào trở kháng cao

Port 0 cũng có thể được cấu hình thành một bus multiplex giữa địa chỉ thấp và dữ liệu khi truy cập chương trình hay dữ liệu từ bên ngoài Trong chế độ này, port 0 có điện trở pullup nội

Port 0 cũng nhận các byte mã chương trình khi lập trình Flash và xuất

ra mã chương trình khi kiểm tra, khi đó cần có điện trở pullup bên ngoài

Port 1 : là một port I/O 8-bit hai chiều có pullup nội Đầu ra port 1 có

thể lái 4 đầu vào TTL Khi viết các mức 1 ra các chân port thì chúng được kéo lên do có điện trở nội và có thể dùng làm đầu vào Khi vai trò là cổng nhập, những chân của port 1 bị kéo xuống thấp sẽ đổ dòng vì có nội trở kéo lên

Hơn nữa, P1.0 và P1.1 có thể được dùng như là đầu vào bộ đếm timer/counter 2 bên ngoài (P1.0/T2) và xung kích (P1.1/T2EX)

Port 1 cũng nhận những byte địa chỉ thấp trong khi lập trình Flash và trong khi kiểm tra Flash

Port 2 : là một port I/O 8-bit hai chiều có pullup nội Đầu ra port 2 có

thể lái 4 đầu vào TTL Khi viết các mức 1 ra các chân port thì chúng được kéo lên do có điện trở nội và có thể dùng làm đầu vào Khi vai trò là cổng nhập, những chân của port 2 bị kéo xuống thấp sẽ đổ dòng vì có nội trở kéo lên

Port 2 phát byte địa chỉ cao trong khi nhận lệnh từ bộ nhớ chương trình ngoài và trong lúc truy xuất đến bộ nhớ dữ liệu ngoài mà có sử dụng địa chỉ 16 bit (MOVX A, @DPTR) Trong ứng dụng này nó dùng điện trở nội kéo lên mạnh khi xuất 1 Khi truy xuất bộ nhớ dữ liệu ngoài dùng địa chỉ

8 bit, port 2 sẽ phát nội dung của thanh ghi P2

Port 2 cũng nhận byte địa chỉ cao trong lúc lập trình Flash và trong lúc kiểm tra Flash

Port 3 : là một port I/O 8-bit hai chiều có pullup nội Đầu ra port 3 có

thể lái 4 đầu vào TTL Khi viết các mức 1 ra các chân port thì chúng được kéo lên do có điện trở nội và có thể dùng làm đầu vào Khi vai trò là cổng nhập, những chân của port 3 bị kéo xuống thấp sẽ đổ dòng vì có nội trở kéo lên

Trang 32

Port 3 cũng có những chức năng của họ MSC-51 được liệt kê ở bảng sau:

BIT TÊN ĐỊA CHỈ BIT CHỨC NĂNG THAY THẾ

P3.0 RXD B0H Nhận dừ liệu cho port nối tiếp

P3.1 TXD B1H Truyền dừ liệu cho port nối tiếp

P3.2 INT0 B2H Ngắt ngoài 0

P3.3 INT1 B3H Ngắt ngoài 1

P3.4 T0 B4H Ngõ vào từ bên ngoài cho timer/counter 0 P3.5 T1 B5H Ngõ vào từ bên ngoài cho timer/counter 1 P3.6 WR B6H Xung ghi bộ nhớ dữ liệu ngoài

P3.7 RD B7H Xung đọc bộ nhớ dữ liệu ngoài

Port 3 cũng nhận vài tín hiệu điều khiển trong lúc lập trình Flash và trong lúc kiểm tra Flash

RST : là ngõ vào Reset Khi ngõ này được đưa lên cao (trong ít nhất hai

chu kì máy), các thanh ghi bên trong AT89C51 được tải những giá trị thích hợp để khởi động hệ thống

ALE/PROG (Address Latch Enable) :ALE là xung xuất cho phép chốt byte địa chỉ thấp khi truy cập bộ nhớ ngoài Chân này còn là ngõ vào của xung lập trình (PROG) khi lập trình Flash

Trong hoạt động bình thường, ALE được phát xung với tần số 1/6 tần số dao động on-chip và có thể được dùng như xung thời gian chuẩn bên ngoài Tuy nhiên, cần chú ý là một xung ALE sẽ bị mất khi truy cập bộ nhớ ngoài

Có thể hủy bỏ chức năng của ALE bằng cách set bit 0 của thanh ghi ở vị trí 8EH Một khi bit này được set, ALE chỉ tích cực khi có lệnh MOVX hoặc MOVC Nếu không có các lệnh này thì ALE ở mức cao Việc set bit

0 của thanh ghi ở vị trí 8EH không làm ảnh hưởng đến vi điều khiển khi truy cập bộ nhớ ngoài

PSEN (Program Store Enable) : PSEN là xung strobe báo hiệu việc đọc

bộ nhớ chương trình ngoài, PSEN tích cực hai lần (mức thấp) mỗi chu kì máy, ngoại trừ hai xung PSEN bị mất khi truy xuất dữ liệu ngoài Khi thi hành chương trình trong RAM nội, PSEN sẽ ở mức thụ động (mức cao)

EA/V PP (External Access) : EA là ngõ vào để cho phép truy xuất bộ nhớ

chương trình từ bên ngoài khi được nối với GND Khi EA được treo lên nguồn VCC, chương trình sẽ được thực thi trong ROM nội Chân này cũng nhận điện áp 12v (VPP) trong khi lập trình Flash

XTAL1 : Đầu vào của bộ khuếch đại dao động đảo và cũng là đầu vào

đến mạch tạo xung clock nội

XTAL2 : Đầu ra của bộ khuếch đại dao động đảo

Trang 33

2) GIỚI THIỆU VỀ SERIAL PORT CỦA AT89C51:

2.1 GIỚI THIỆU :

AT8951 có một port nối tiếp trong chip có thể hoạt động ở nhiều chế độ trên một dãi tần số rộng Chức năng chủ yếu của port nối tiếp là

thực hiện chuyển đổi song song sang nối tiếp đối với dữ liệu xuất, và

chuyển đổi nối tiếp sang song song với dữ liệu nhập Truy xuất phần cứng đến port nối tiếp qua các chân TXD (P3.1) và RXD (P3.0)

Port nối tiếp cho hoạt động song công (full duplex: thu và phát

đồng thời), và đệm lúc thu (receiver buffering), cho phép một ký tự sẽ được thu và được giữ trong khi ký tự thứ hai được nhận Nếu CPU đọc ký tự thứ nhất trước khi ký tự thứ hai được thu được thu đầy đủ thì dữ liệu sẽ không

bị mất

Hai thanh ghi chức năng đặc biệt cho phép phần mềm truy xuất

đến port nối tiếp là: SBUF và SCON Bộ đệm port nối tiếp (SBUF) ở địa chỉ 99H thật sự là hai bộ đệm Viết vào SBUF để nạp dữ liệu sẽ phát, và đọc SBUF để truy xuất dữ liệu thu được Đây là hai thanh ghi riêng biệt:

thanh ghi chỉ ghi để phát và thanh ghi chỉ đọc để thu

Thanh ghi điều khiển port nối tiếp (SCON) ở địa chỉ 98H là thanh ghi có địa chỉ bit chứa các bit trạng thái và các bit điều khiển Các bit điều khiển đặt chế độ hoạt động cho port nối tiếp, và các bit trạng thái báo kết thúc việc phát hoặc thu ký tự Các bit trạng thái có thể được kiểm tra bằng phần mềm hoặc có thể được lập trình để tạo ngắt

Tần số làm việc của port nối tiếp, còn gọi là tốc độ baud có thể cố định (lấy từ bộ dao động trên chip) hoặc thay đổi Nếu sử dụng tốc độ baud thay đổi, Timer 1 sẽ cung cấp xung nhịp tốc độ baud và phải được lập trình

Sơ đồ khối port nối tiếp

Trang 34

2.2 THANH GHI ĐIỀU KHIỂN (SCON) VÀ CÁC CHẾ ĐỘ HOẠT ĐỘNG:

Chế độ hoạt động của port nối tiếp được đặt bằng cách ghi vào

thanh ghi chế độ port nối tiếp (SCON) ở địa chỉ 98H

SCON.7 SM0 9FH Bit 0 của chế độ port nối tiếp

SCON.6 SM1 9EH Bit 1 của chế độ port nối tiếp

SCON.5 SM2 9DH Bit 2 của chế độ port nối tiếp Cho phép

truyền thông đa xử lý trong các chế độ 2 và 3; RI sẽ không bị tác động nếu bit thứ 9 thu được là 0

SCON.4 REN 9CH Cho phép thu, phải được đặt lên 1 để thu

(nhận) các ký tự

SCON.3 TB8 9BH Bit thứ 9 được phát trong các chế độ 2 và 3;

được đặt và xóa bằng phần mềm

SCON.2 RB8 9AH Bit thứ 9 thu được

SCON.1 TI 99H Cờ ngắt phát Đặt lên 1 khi kết thúc phát ký

tự; được xóa bằng phần mềm

SCON.0 RI 98H Cờ ngắt thu Đặt lên 1 khi kết thúc thu ký tự;

được xóa bằng phần mềm

Bảng tóm tắt thanh ghi SCON

Port nối tiếp có 4 chế độ hoạt động, trong đó ba chế độ cho phép

truyền thông bất đồng bộ, với mỗi ký tự được thu hoặc phát đều bắt đầu

bằng một bit Start và kết thúc bằng 1 bit Stop Ở chế độ thứ tư, port nối tiếp hoạt động như một thanh ghi dich đơn giản

SM0 SM1 Chế độ Mô tả Tốc độ baud

0 0 0 Thanh ghi dịch Cố định (FOSC /12)

0 1 1 UART 8 bit Thay đổi (đặt bằng Timer)

1 0 2 UART 9 bit Cố định (FOSC chia cho 32 hoặc

64)

1 1 3 UART 9 bit Thay đổi (đặt bằng Timer)

Bảng các chế độ của Port nối tiếp

a) Thanh ghi dịch 8 bit (chế độ 0):

Dữ liệu nối tiếp vào và ra qua RXD, còn TXD xuất xung nhịp dịch 8 bit được phát hoặc thu với bit đầu tiên là LSB Tốc độ baud cố định ở 1/12 tần số dao động trên chip

Trang 35

Clock Thanh ghi Dữ liệu dịch

TXD (P3.1) RXD (P3.0) 8951

Tốc độ tràn

Timer 1

Chế độ 1

 16

SMOD = 0 SMOD = 1

Một ứng dụng của chế độ thanh ghi dịch là mở rộng khả năng xuất của 8951 IC thanh ghi dịch nối tiếp ra song song có thể được nối vào các đường TXD và RXD của 8951 để cung cấp thêm 8 đường ra Có thể nối

xâu chuỗi thêm các thanh ghi dịch để mở rộng thêm

b) UART 8 bit với tốc độ baud thay đổi được (chế độ 1):

Ở chế độ 1, port nối tiếp của 8951 làm việc như một UART 8 bit (8-bit Universal Asynchronous Receiver/Transmitter) với tốc độ baud thay đổi được (bằng tốc độ báo tràn của Timer 1)

Việc thu/phát tiến hành với 10 bit, gồm 1 bit Start (luôn là 0), 8 bit dữ liệu (LSB đầu tiên) và 1 bit Stop (luôn là 1)

Việc thu dữ liệu được khởi động bằng một chuyển trạng thái từ 1 xuống 0 trên RXD Bộ đếm 16 tức thời được xóa để đồng bộ số đếm với luồng bit đến Luồng bit đến được lấy mẫu giữa 16 lần đếm Giả sử phát hiện được bit Start hợp lệ, bit Start được bỏ qua và 8 bit dữ liệu được đưa vào thanh ghi dịch cổng nối tiếp theo xung nhịp Khi đã có được tất cả 8 bit, điều sau đây xảy ra:

 Bit thứ 9 (bit Stop) được chốt vào RB8 trong SCON

 SBUF được nạp với 8 bit dữ liệu

 Cờ ngắt bộ thu (RI) được đặt lên 1 (cờ RI đã xóa về 0 trước khi ký tự được thu về.)

Trang 36

 64

Xung nhịp tốc độ baud

Dao động trên

chip

Chế độ 2

 32

SMOD = 0 SMOD = 1

 32

Xung nhịp tốc độ baud

Tốc độ tràn

Timer 1

Chế độ 3

 16

SMOD = 0 SMOD = 1

c) UART 9 bit với tốc độ baud cố định (chế độ 2):

Ở chế độ 2, port nối tiếp của 8951 làm việc như một UART 9 bit có

tốc độ baud cố định (bằng 1/32 hoặc 1/64 tốc độ dao động trên chip) 11 bit sẽ được phát hoặc thu gồm: 1 bit Start, 8 bit dữ liệu, bit dữ liệu thứ 9 có thể lập trình được và 1 bit Stop Khi phát, bit thứ 9 là bit TB8 trong SCON (có

thể là bit parity) Khi thu, bit thứ 9 thu được sẽ ở trong RB8

d) UART 9 bit với tốc độ baud thay đổi được (chế độ 3) :

Chế độ này giống như chế độ 2, ngoại trừ tốc độ baud có thể lập trình được theo tốc độ tràn của Timer

Nói thêm về SMOD:

Tốc độ baud bị ảnh hưởng bởi một bit trong thanh ghi điều khiển

nguồn cung cấp (PCON, hay 87H) Bit 7 của PCON là bit SMOD Đặt bit

SMOD lên 1 làm gấp đôi tốc độ baud trong các chế độ 1, 2 và 3

Vì PCON không được định địa chỉ bit nên để đặt bit SMOD lên 1 có

thể thực hiện gián tiếp qua một thanh ghi định địa chỉ bit

1 tốc độ baud bit

Stop D0 D1 D2 D3 D4 D5 D6 D7

TXD

TI (SCON.1)

Ngắt phát, chuẩn

bị cho dữ liệu)

Trang 37

Chẳng hạn:

MOV A, 87H ; Lấy giá trị hiện thời của PCON

SETB ACC.7 ; Đặt bit 7 (SMOD) lên 1

MOV 87H, A ; Ghi giá trị ngược về PCON

Sử dụng Timer 1 làm xung nhịp tốc độ baud:

Cách thông dụng để tạo tốc độ baud là khởi động Timer 1 ở chế độ 8 bit tự động nạp lại (chế độ 2) và đặt giá trị nạp lại vào TH1 để tốc độ tràn đúng với tốc độ baud Cũng có thể đạt được các tốc độ baud thấp bằng cách sử dụng Timer chế độ 1, tuy nhiên các thanh ghi TH1 và TL1 phải được khởi động lại sau mỗi lần tràn (Việc này được thực hiện trong chương trình phục vụ ngắt) Một chọn lựa khác là cấp xung nhịp cho Timer 1 từ ngoài qua T1 (P3.5)

Công thức tổng quát để xác định tốc độ baud trong các chế độ 1 và 3 (SMOD = 0):

Tốc độ baud = Tốc độ tràn của Timer 1  32

Ví dụ, muốn làm việc với tốc độ baud là 1200 baud, thì tốc độ tràn của

Timer 1 phải là:

1200  32 = 38.4 KHz

Nếu dùng thạch anh 12 MHz, Timer 1 được cấp xung nhịp 1 MHz hay 1000 KHz Vì tốc độ tràn của Timer 1 là 38.4 KHz và Timer 1 được cấp xung nhịp 1000 KHz nên cần tràn sau 1000  38.4 = 26.04 xung nhịp (làm tròn là 26) Timer đếm lên và tràn xảy ra khi có sự thay đổi từ FFH xuống 00H ở số đếm nên giá trị cần nạp vào TH1 là –26 (với chế độ 8 bit tự động nạp lại)

baud_const = 256 - (crystal / (12 * 32 * baud))

Do làm tròn nên có sai số nhỏ trong tốc độ baud Tổng quát thì cho phép dung sai 5% trong truyền thông bất đồng bộ (Start/Stop) Có thể có được tốc độ baud chính xác nếu dùng thạch anh 11.059 MHz

Bảng tóm tắt một số chuẩn tốc độ baud thông dụng

Tốc độ

Baud (bps)

Tần số MHZ (PCON.7SMOD

)

Giá trị nạp vào TH1 Baud thực Tốc độ

(bps)

Sai số (%)

Trang 39

3) Các thanh ghi chức năng

(SFR-Special Funtion Reisters)

AT89C52 có 26 thanh ghi chức năng được

thiết kế như là một thành phần của RAM

on-chip Do đó mỗi thanh ghi có một địa

chỉ của nó, nằm trong vùng từ 80H đến FFH Tuy nhiên, vùng này cũng là vùng bộ nhớ nên việc truy cập các thanh ghi này thông qua các lệnh dùng định vị trực tiếp khác với việc truy cập vùng nhớ dùng định vị gián tiếp

Bảng vị trí các thanh ghi chức năng :

Chân Chức năng thay thế

P1.0 T2 (đầu vào đếm cho Timer/Counter 2) P1.1 T2EX (xung kích capture/reload cho

Timer/Counter 2 và điều khiển trực tiếp

Trang 40

Chú ý là không phải tất cả các địa chỉ đều có các thanh ghi, những địa chỉ không có thanh ghi này có thể không có trên chip Đọc những địa chỉ này sẽ có những giá trị ngẫu nhiên và ghi những giá triï này có những tác động không xác định trước Phần mềm của người dùng không nên ghi những giá trị 1 đến các vị trí này, bởi

vì chúng có thể được dùng trong tương lai Trong trường hợp đó, giá trị của các bit luôn là 0

Các thanh ghi ngắt tập các bit riêng lẻ cho phép ngắt chứa trong thanh ghi IE Thiết

lập hai mức ưu tiên cho 6 nguồn ngắt bằng cách set các bit thanh ghi IP

4)Bộ nhớ dữ liệu

AT89C52 có 256 byte bộ nhớ RAM on-chip Trong đó, 128 byte trên có cùng địa chỉ với vùng thanh ghi chức năng nhưng có cấu tạo vật lý riêng biệt

Khi một lệnh truy cập một vị trí nội có địa chỉ trên 7FH, chế độ địa chỉ nó sử dụng sẽ báo cho CPU biết vùng địa chỉ nào nó cần truy cập : RAM hay SFR Các lệnh dùng địa chỉ trực tiếp sẽ truy cập vùng SFR Ví dụ như lệnh sau đây sẽ truy cập SFR ở địa chỉ 0A0H (port 2)

Lệnh dùng địa chỉ gián tiếp sẽ truy cập 128

byte trên của RAM Ví dụ như cũng truy cập địa

chỉ 0A0H nhưng gián tiếp thông qua R0

Chú ý rằng các tác vụ của stack vốn đã sử

dụng địa chỉ gián tiếp nên vùng 128 byte trên

của RAM rất tiện dụng để làm vùng stack

5) Đặc tính bộ dao động

XTAL1 là đầu vào và đầu ra tương ứng của

bộ khuếch đại đảo được dùng làm bộ dao động

nội on-chip Có thể dùng thạch anh hay bộ cộng

hưởng ceramic đều được

Để lái vi điều khiển từ nguồn xung clock

bên ngoài, XTAL2 phải được để trống trong khi

XTAL1 nối đến nguồn lái Không có yêu cầu gì

về duty cycle nhưng phải chú ý đến thời gian tối đa và tối thiểu của mức điện áp cao cũng như mức điện áp thấp

Ngày đăng: 02/02/2015, 17:39

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
10. Kỹ thuật ghép nối máy tính – Ngô Diên Tập1 11. Ghép nối máy tính trong Windows – Ngô Diên Tập Sách, tạp chí
Tiêu đề: Kỹ thuật ghép nối máy tính
Tác giả: Ngô Diên
15. Digital System : Principles and Applications – Ronald J. Tocci – Prentice Hall – 1991 Sách, tạp chí
Tiêu đề: Digital System : Principles and Applications
Tác giả: Ronald J. Tocci
Nhà XB: Prentice Hall
Năm: 1991
1. Điều khiển tự động (quyển 1,2) – Nguyễn Thị Phương Hà – Nhà xuất bản khoa học và kỹ thuật – 1996 Khác
2. Giáo trình cảm biến – Phan Quốc Phô, Hoàng Đình Chiến – Nhà xuất bản khoa học và kỹ thuật – 2000 Khác
3. Lý thuyết điều khiển mờ – Phan Xuân Minh, Nguyễn Doãn Phước – Nhà xuất bản khoa học và kỹ thuật – 1999 Khác
4. Hướng dẫn thí nghiệm vi xử lý – Bộ môn kỹ thuật điện tử – 1999 Khác
5. Hướng dẫn thí nghiệm điều khiển tự động 1, 2 – Bộ môn Điều khiển tự động Khác
6. The 8051 Microcontroller – I. Schott MacKenzie – Prentice Hall – 1995 Khác
7. Fuzzy logic with engineer application – Timothy J. Ross – McGraw Hill – 1997 Khác
8. The temperature handbook – Copyright by Omega Engineering Inc., 1995 Khác
12. Sổ tay cho người lập trình PC – Julio Sanchez, Maria P. Canton – Nhà xuất bản thoáng keâ – 1997 Khác
13. Serial Port Complete – Jan Axelson Khác
14. Programmer’s Guide to Serial Communications – By Richard Grier Khác

HÌNH ẢNH LIÊN QUAN

Hình 1.5: Keát noái song coâng nhieàu node - đề tài mạng thu thập dữ liệu và quang báo
Hình 1.5 Keát noái song coâng nhieàu node (Trang 12)
Hình 1.6: Kết nối bán song công - đề tài mạng thu thập dữ liệu và quang báo
Hình 1.6 Kết nối bán song công (Trang 13)
Hình 1.7: Dạng kết nối tổng quát của mạng dùng chuẩn RS-485  b.  Kết nối tự động : - đề tài mạng thu thập dữ liệu và quang báo
Hình 1.7 Dạng kết nối tổng quát của mạng dùng chuẩn RS-485 b. Kết nối tự động : (Trang 14)
Hình dưới đây cho ta cách kết nối tự động không cần phải set chân 2-3  mỗi khi phát. - đề tài mạng thu thập dữ liệu và quang báo
Hình d ưới đây cho ta cách kết nối tự động không cần phải set chân 2-3 mỗi khi phát (Trang 14)
Hình trên chỉ ra một phương pháp đơn giản cho phép sử dụng bộ ghép nối  quang  để  ghép  nối  cổng  nối  tiếp  của  máy  tính  với  một  vòng  dòng  điện  20mA - đề tài mạng thu thập dữ liệu và quang báo
Hình tr ên chỉ ra một phương pháp đơn giản cho phép sử dụng bộ ghép nối quang để ghép nối cổng nối tiếp của máy tính với một vòng dòng điện 20mA (Trang 19)
Hình 3-2 mô tả các mức điện áp và độ rộng xung khi truyền một ký tự  với tốc độ bằng 19.200 - đề tài mạng thu thập dữ liệu và quang báo
Hình 3 2 mô tả các mức điện áp và độ rộng xung khi truyền một ký tự với tốc độ bằng 19.200 (Trang 24)
Hình sau đây thí dụ về một ký tự được truyền theo frame gồm :  1 bit bắt đầu, 8 bit dữ liệu, 1 bit chẵn lẻ, và 1 bit kết thúc - đề tài mạng thu thập dữ liệu và quang báo
Hình sau đây thí dụ về một ký tự được truyền theo frame gồm : 1 bit bắt đầu, 8 bit dữ liệu, 1 bit chẵn lẻ, và 1 bit kết thúc (Trang 25)
Sơ đồ sau đây cho thấy các khối bên trong MAX232 và các linh  kiện mắc bên ngoài theo dạng chuẩn : - đề tài mạng thu thập dữ liệu và quang báo
Sơ đồ sau đây cho thấy các khối bên trong MAX232 và các linh kiện mắc bên ngoài theo dạng chuẩn : (Trang 27)
Sơ đồ khối port nối tiếp. - đề tài mạng thu thập dữ liệu và quang báo
Sơ đồ kh ối port nối tiếp (Trang 33)
Bảng tóm tắt thanh ghi SCON. - đề tài mạng thu thập dữ liệu và quang báo
Bảng t óm tắt thanh ghi SCON (Trang 34)
Bảng tóm tắt một số chuẩn tốc độ baud thông dụng. - đề tài mạng thu thập dữ liệu và quang báo
Bảng t óm tắt một số chuẩn tốc độ baud thông dụng (Trang 37)
Bảng vị trí các thanh ghi chức năng : - đề tài mạng thu thập dữ liệu và quang báo
Bảng v ị trí các thanh ghi chức năng : (Trang 39)
Sơ đồ chân: - đề tài mạng thu thập dữ liệu và quang báo
Sơ đồ ch ân: (Trang 47)
Bảng thông số chi tiết của ICL 7107: - đề tài mạng thu thập dữ liệu và quang báo
Bảng th ông số chi tiết của ICL 7107: (Trang 48)
Hình trên dùng cho trường hợp ngỏ vào 200mV ( FS - FullScale ), thời  gian chuyển đổi 3lần/giây - đề tài mạng thu thập dữ liệu và quang báo
Hình tr ên dùng cho trường hợp ngỏ vào 200mV ( FS - FullScale ), thời gian chuyển đổi 3lần/giây (Trang 53)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w