thiết lập uart là gì Giao diện UART: mô tả, sử dụng

Giao diện RS-232 (tiêu chuẩn EIA) được tạo để giao tiếp máy tính cá nhân(PC) và thiết bị truyền dữ liệu (modem) sử dụng chế độ truyền đồng bộ - không đồng bộ trên khoảng cách lên tới vài mét. Tiêu chuẩn cung cấp hai loại đầu nối DB25 và DB9 với 8 tín hiệu. Dữ liệu được truyền qua 2 mạch thu phát giao diện RxD, TxD độc lập (UART1, UART2 trong Hình 1.14) và cho phép sử dụng chế độ song công trao đổi, 6 tín hiệu còn lại dùng để điều khiển trao đổi dữ liệu. Trong các triển khai giao diện hiện đại, các tín hiệu này không được sử dụng; các bộ thu phát được coi là luôn sẵn sàng để trao đổi dữ liệu (giao diện UART). Các thuật toán điều khiển được áp dụng thay vì tạo ra tín hiệu điều khiển sẽ truyền các thông báo điều khiển cùng với dữ liệu cơ bản thông qua các mạch tín hiệu RxD, TxD.

Cơm. 1.14. Giao diện RS232

Các thuật toán và công cụ có thể được sử dụng cho các chức năng quản lý và kiểm soát dữ liệu giao thức chuẩn Lớp liên kết. Các thuật toán điều khiển và giám sát này được triển khai như một phần mở rộng của giao diện UART bằng cách sử dụng định dạng tiêu chuẩn, thường là một byte của nó. tin nhắn riêng. Việc khởi tạo với việc lựa chọn các tham số và chế độ phải được thực hiện trước khi bắt đầu công việc, giao diện không chứa bất kỳ phương tiện khởi tạo tự động nào.

Hiện tại, giao diện này được sử dụng làm cơ sở lớp vật lý trong giao diện điểm-điểm với tốc độ truyền dữ liệu thấp từ 2,4 – 115,2 kbit/s. Được sử dụng phổ biến nhất là chế độ không đồng bộ với định dạng thông báo riêng: bit bắt đầu – 5-8 bit dữ liệu – bit dừng (khung UART). Các bit bắt đầu và dừng đánh dấu sự bắt đầu và kết thúc của tin nhắn và cho phép đồng bộ hóa các bộ thu phát và kiểm soát độ dài tin nhắn; bit bắt đầu là tín hiệu logic 0 trong 1 chu kỳ xung nhịp và bit dừng là tín hiệu logic 1.

Chế độ truyền dữ liệu song công giả định hoạt động độc lập của bộ thu và bộ phát của giao diện. Do đó, chúng chứa các mạch điều khiển và thanh ghi dữ liệu độc lập. Thông thường, việc ghi một byte dữ liệu vào thanh ghi máy phát sẽ bắt đầu quy trình truyền khung UART và việc hoàn tất nhận khung UART sẽ tạo ra tín hiệu rằng byte dữ liệu đã sẵn sàng để đọc từ thanh ghi máy thu.

Bởi vì thuật toán đơn giản kiểm soát, tính linh hoạt và khả năng trao đổi dữ liệu song công, giao diện UART được sử dụng rộng rãi như một giao diện truyền thông nối tiếp tiêu chuẩn giữa các thiết bị tự động hóa kỹ thuật khác nhau. Ví dụ: các bộ vi điều khiển của AVR, PIC và nhiều họ khác có triển khai phần cứng tích hợp của giao diện UART, qua đó các thiết bị bên ngoài có thể được kết nối để cung cấp hỗ trợ cho các thiết bị khác. giao diện hiện đại LVDS, 1-W, IrDA, RS-485, CAN, v.v.

Một số đặc điểm và tính năng của vi mạch UART của công ty này được hiển thị trong Hình. 1.16.

Nếu có thể phương tiện kỹ thuật không chứa giao diện UART tích hợp; có thể sử dụng chip UART đặc biệt. Các vi mạch này (Hình 1.15) chuyển đổi định dạng dữ liệu song song thành nối tiếp, cung cấp khả năng lưu trữ dữ liệu trong các thiết bị lưu trữ đệm, tạo ra các tín hiệu điều khiển giao diện cần thiết, yêu cầu ngắt để xử lý dữ liệu được truyền qua giao diện, v.v. EXAR là công ty dẫn đầu được công nhận trong lĩnh vực này

sản xuất chip UART

Cơm. 1.15. Truyền dữ liệu bằng chip UART

Cơm. 1.16. Phân loại chip EXAR UART

UART 8 bit đơn giản nhất là chip ST16C450 (Hình 1.17).

Cơm. 1.17. Sơ đồ kết cấu ST16C450

Thiết bị này hoàn toàn tuân thủ tiêu chuẩn công nghiệp 16450 và có các tính năng sau:

Kiểm soát riêng biệt việc tiếp nhận và truyền tải;

Tốc độ truyền được điều khiển bằng phần mềm (từ 50 bps đến 1,5 Mbps);

Tín hiệu điều khiển modem (CTS, RTS, DSR, DTR, RI và CD);

Độ dài lập trình của các ký tự được truyền (5, 6, 7 và 8 bit);

Tạo và phát hiện bit chẵn lẻ;

Tiêu thụ dòng điện thấp – 1,2 mA.

Ngoài các UART truyền thống có bus song song 8 bit, EXAR còn sản xuất các UART 32 bit để hoạt động với bus PCA. Bộ đệm FIFO bên trong được thiết kế để giảm tải lõi xử lý và cho phép bạn giảm số lần ngắt để bảo trì UART. Ví dụ: chip XR16C85x UART có FIFO 128 byte có thể đệm toàn bộ trang dữ liệu, tăng thời gian truyền mà không làm gián đoạn CPU.

Trước đây đã lưu ý rằng giao diện RS-232 cung cấp cho việc sử dụng hai loại đầu nối: DB9 và DB25. Việc phân công các tiếp điểm đầu nối được đưa ra trong bảng. 1.2.

Bảng 1.2

Liên hệ với No.

Liên hệ với No.

Mục đích

Bộ dò tín hiệu đường dây (sóng mang)

Đang nhận dữ liệu

Truyền dữ liệu

Sự sẵn sàng của thiết bị đầu cuối

Tín hiệu mặt đất

Sẵn sàng dữ liệu

Yêu cầu chuyển

Sẵn sàng chuyển giao

Chỉ báo cuộc gọi

Thông thường, tín hiệu giao diện được tạo ra với các mức logic tiêu chuẩn (0-5 V) và theo giao thức RS-232, các mức điện áp là ±12 V. Bộ thu phát để chuyển đổi các mức vật lý của tín hiệu giao diện UART, được gọi là trình điều khiển cổng COM, được sản xuất bởi nhiều nhà sản xuất mạch tích hợp. Các vi mạch khác nhau về số lượng máy thu và máy phát, điện áp cung cấp, mức tiêu thụ điện năng, tốc độ tối đa truyền dẫn, cũng như sự hiện diện của tụ điện tích hợp và một số thông số khác.

Những công ty dẫn đầu trong việc sản xuất vi mạch trong lĩnh vực này là Maxim và Analog Devices. Danh sách các vi mạch Bộ điều khiển/Bộ thu Đường dây RS-232 do Maxim sản xuất bao gồm 150 mặt hàng, một phần của danh sách được đưa ra trong bảng. 1.3. Một danh sách tương tự cho các Thiết bị Analog được đưa ra trong bảng. 1.4.

TRONG ứng dụng tiêu chuẩn Giao diện RS-232 được sử dụng để kết nối hai thiết bị. Một trong những thiết bị này là máy phát và thiết bị còn lại là máy thu. Về vấn đề này, tín hiệu đường truyền RS-232 được bộ thu và bộ phát tạo ra và xử lý khác nhau.

Tốc độ (kbit/s)

Chế độ tiết kiệm năng lượng

Điều kiện RxD

tụ điện

Điện áp cung cấp (V)

Mức tiêu thụ hiện tại (mA)

Tốc độ (kbit/s)

Chế độ tiết kiệm năng lượng

Điều kiện RxD

tụ điện

Điện áp cung cấp (V)

Mức tiêu thụ hiện tại (mA)

Thiết bị phát (ví dụ: máy tính) trong hệ thống truyền dữ liệu thường được gọi là thiết bị đầu cuối dữ liệu hoặc DTE (Thiết bị đầu cuối dữ liệu) và thiết bị thu (ví dụ: modem) được gọi là thiết bị thiết bị truyền thông dữ liệu hoặc DCE (Dữ liệu Thiết bị thông tin liên lạc). Hướng truyền tín hiệu giữa DTE và DCE được thể hiện trong bảng. 1.5.

Như có thể thấy từ bảng. 1.5, mỗi tín hiệu là đầu ra cho một thiết bị và đầu vào cho thiết bị khác. Ví dụ: đối với thiết bị DTE, tín hiệu dữ liệu truyền TD là đầu ra và đối với thiết bị DCE, tín hiệu TD là đầu vào. Thiết bị DCE tạo ra tín hiệu DCD (nếu là modem thì nó sẽ phát hiện sự hiện diện của tín hiệu sóng mang trong đường dây điện thoại) và thiết bị DTE nhận được tín hiệu này, v.v.

thiết bị DTE

Hướng truyền

thiết bị DCE

- * ¦¦

Trong một số trường hợp, nhiệm vụ nảy sinh là đảm bảo hoạt động của giao diện RS-232 giữa hai thiết bị cùng loại, chẳng hạn như cần cung cấp kết nối DTE-DTE (máy tính với máy tính). Kết nối giữa các đầu nối trong trường hợp này được xác định bởi các chương trình truyền thông được máy tính sử dụng. TRONG cấu hình tối thiểu Cáp kết nối hai thiết bị phải có ba dây: một dây để kết hợp tín hiệu SG nối đất, dây thứ hai và thứ ba để truyền tín hiệu TD và RD (Hình 1.18) và phải thực hiện kết nối chéo các tín hiệu. Ví dụ, một loại cáp như vậy có thể cung cấp kết nối giữa hai máy tính bằng chương trình Hyper Terminal được tích hợp trong Windows.

Nếu máy tính "giả định" rằng nó đang hoạt động với modem thì trong trường hợp này, bạn có thể sử dụng cáp modem vô hiệu(Hình 1.19). Trong hình này, các con số biểu thị các tiếp điểm của đầu nối DB25M và đường đứt nét biểu thị dây “nối đất bảo vệ” - GND.

Cơm. 1.18. Tùy chọn RS-232 ba dây

Cơm. 1.19. Kết nối modem không có cho cáp RS-232

Việc lựa chọn tùy chọn kết nối được xác định bởi các điều kiện tạo tín hiệu điều khiển và kiểm tra của thiết bị DTE. Cần lưu ý rằng tùy chọn cáp “a” là phổ biến nhất và nên được sử dụng trong trường hợp không có đủ thông tin về các tính năng triển khai giao diện của các thiết bị được kết nối. Tùy chọn cáp “g” cho phép bạn “thuyết phục” máy tính rằng nó luôn sẵn sàng thiết bị bên ngoài DTE để nhận và truyền tín hiệu.

Cơm. 1,23. Mạch cấp nguồn cho thiết bị I/O từ cổng COM

Trong bài học này, tôi sẽ nói về giao diện UART trong bộ vi điều khiển AVR và cách làm việc với nó trong . UART là một bộ thu phát không đồng bộ phổ quát. Bản thân giao diện này khá phổ biến và có sẵn ở hầu hết Bộ vi điều khiển AVR, ngoại lệ duy nhất là bộ vi điều khiển Attiny13 và một số bộ khác. Việc truyền dữ liệu được thực hiện từng bit một. khoảng bằng nhau thời gian, khoảng thời gian này được xác định bởi tốc độ truyền, ví dụ tốc độ tiêu chuẩn: 4800 baud, 9600 baud, 19200 baud, 38400 baud, v.v. Cũng cần lưu ý rằng tốc độ ở cả hai phía của kết nối phải giống nhau. Nhân tiện, máy thu và máy phát hoạt động độc lập. kết nối UARTđược thực hiện dọc theo ba dòng: RXD - tiếp nhận, TXD - truyền và GND - chung (trừ). Bạn cần kết nối UART, có thể nói, “đảo ngược” RXD với TXD và TXD với RXD như trong hình bên dưới:

Sử dụng UART, bạn cũng có thể kết nối bộ vi điều khiển và máy tính, nhưng có một vấn đề: giao diện UART có các mức logic là 0 và +5 volt, và trong máy tính, các mức logic trong giao diện RS-232 có thể từ -25 đến -3 volt và từ +3 đến +25 volt. Bộ chuyển đổi mức sẽ giúp chúng ta giải quyết vấn đề này, nó có thể được lắp ráp bằng bóng bán dẫn hoặc tốt hơn là sử dụng vi mạch MAX232 đặc biệt. Đây là sơ đồ kết nối MAX232 phổ biến nhất:

Làm việc với UART trong BASCOM-AVR

Trước hết, trước khi bắt đầu làm việc với UART, bạn cần chỉ định tốc độ truyền, việc này được thực hiện bằng lệnh: $ baud =(tốc độ). Ví dụ: $ baud = 9600.Ngoài ra, đừng quên chỉ ra tần số thực của bộ tạo xung nhịp bằng lệnh $pha lê =(Tốc độ Hz), nếu không, tốc độ của chương trình sẽ không khớp với tốc độ của bộ vi điều khiển và kết quả là việc thu hoặc truyền dữ liệu sẽ không chính xác. Ví dụ về viết lệnh $pha lêở tần số 8 MHz: $pha lê = 8000000. Nhân tiện, bạn nên mở cửa sổ cài đặt trong BASCOM-AVR (Tùy chọn>Trình biên dịch>Truyền thông):

Trong cửa sổ cài đặt này, bạn có thể chỉ định tốc độ UART, tần số đồng hồ bộ tạo xung nhịp và xem phần trăm lỗi ở tần số xung nhịp đã chọn. Nhưng tốt hơn hết bạn nên chỉ định tốc độ và tần số xung nhịp trực tiếp trong chính chương trình. Nhân tiện, tỷ lệ lỗi ở tần số xung nhịp 4 MHz là rất nhỏ (0,16%), nhưng vẫn có. Nếu bạn muốn tỷ lệ phần trăm lỗi bằng 0, bạn cần chọn tần số xung nhịp là bội số của tốc độ UART. Ví dụ: với tần số xung nhịp là 3,6864 MHz và tốc độ UART là 115.200 baud thì tỷ lệ lỗi sẽ bằng 0.

Và vì vậy, sau khi chỉ định tần số xung nhịp và tốc độ của UART, bạn có thể bắt đầu làm việc với chính giao diện đó. Để gửi một cái gì đó đến UART, có một lệnh In(biến hoặc văn bản trong dấu ngoặc kép), đây là một ví dụ về cách sử dụng nó: In "Xin chào thế giới!". Ngoài văn bản trong dấu ngoặc kép, bạn cũng có thể hiển thị các biến, một số biến cùng một lúc được phân tách bằng dấu chấm phẩy, ví dụ: In "Trọng lượng:" ; Một; "Kilôgam" hoặc là In "Xin chào," ; "thế giới!". Bạn cũng có thể nhận nó từ UART, việc này được thực hiện bằng lệnh Đầu vào(văn bản hoặc biến trong dấu ngoặc kép để gửi) , (biến nơi ghi dữ liệu nhận được). Như bạn có thể thấy, mọi thứ đều rất đơn giản: đầu tiên chúng ta viết văn bản trong dấu ngoặc kép sẽ được truyền đến UART, sau đó chúng ta chỉ ra biến mà dữ liệu nhận được từ UART sẽ được ghi vào. Đây là một ví dụ: Nhập "Trọng lượng:", a

Làm việc với UART trong thực tế

Bây giờ chúng ta hãy thử “điều khiển” UART trong thực tế, đầu tiên chúng ta sẽ lắp ráp một mạch đơn giản:

Sau đó, chúng ta sẽ gõ một chương trình đơn giản (sử dụng kiến ​​thức thu được) và biên dịch nó. Cô ấy đây rồi:

$crystal = 8000000 $baud = 9600 Dim A As Byte In "Xin chào thế giới!" In "Xin chào http://site" Nhập "Size:" , A Print "Size=" ; MỘT; "byte" Kết thúc

Và chương trình này sẽ hoạt động như sau: đầu tiên nó sẽ gửi văn bản tới UART, sau đó nó sẽ đợi dữ liệu được nhận (trong trong trường hợp này số) sẽ được ghi vào biến Một và sau đó sẽ gửi văn bản cùng với sự thay đổi. Đối với những người quá lười biên dịch, có sẵn phần mềm cơ sở trong các tệp cho bài học. Chúng tôi flash vi điều khiển, kết nối các chân vi điều khiển RXD, TXD (kết nối như tôi đã viết ở trên) và GND với cổng COM máy tính (thông qua bộ chuyển đổi cấp độ) hoặc sang USB (bộ chuyển đổi USB - UART), mở một chương trình trên máy tính để làm việc với cổng COM, ví dụ: Terminal của Bray, Hyper Terminal hoặc Trình mô phỏng thiết bị đầu cuối trong BASCOM-AVR, cho biết cổng COM mà bạn đã kết nối, cho biết tốc độ truyền, nhìn vào cửa sổ chương trình, cấp nguồn cho vi điều khiển và vui mừng. Cũng cần lưu ý rằng sau khi flash chương trình cơ sở của vi điều khiển, cần đặt các bit cầu chì theo tần số xung nhịp của máy phát mà chúng ta cần, trong trường hợp này (đối với chương trình trên) là 8 MHz. Ở tần số 8 MHz, bạn có thể sử dụng bộ tạo xung nhịp bên trong của vi điều khiển và đặt các bit cầu chì như thế này (cho ).

"Tôi đã mô tả ý nghĩa của nó cổng phổ thông nối tiếp và logic hoạt động của nó là gì. Tôi nhận thấy nhiều người nhầm lẫn giữa các khái niệm UART, RS-232, COM và như thế. TRONG bài này Tôi muốn làm sáng tỏ mọi chuyện một chút.



UART mô tả công việc logic, đây là logic 1-a ngụ ý như cao mức tín hiệu, và logic 0-l, Làm sao cấp thấp tín hiệu. Về mặt vật lý... nó là gì? ngắncao mức tín hiệu phụ thuộc vào công nghệ trên đó nó được xây dựng ChipTTL, CMOS vân vân.

Bởi vì số đông vi mạchTTL, sau đó, dưới logic một và số 0 trong UARTđược hiểu 0V+5V, bắt đầu sớm hơn. Nhưng để truyền dữ liệu tới khoảng cách, I E. bên ngoài bảng, không thể sử dụng các mức như vậy nữa, do khả năng chống ồn kém. Vì vậy, chúng được phát triển tiếp theo Cấp độ vật lý của UART:

  • RS-232(còn gọi là cổng COM);
  • RS-422
  • RS-423(dùng cho tự động hóa trong công nghiệp);
  • RS-485(dùng cho tự động hóa trong công nghiệp);
  • IrDA(UART sử dụng sóng ánh sáng hồng ngoại, nếu không thì dùng cổng IR)

RS-232 trước đây được sử dụng trong máy tính gia đình dưới cái tên cổng COM và phục vụ cho kết nối chuột, modem, máy in. Có thể nói đây là điều tuyệt vời nhất chung từ Lớp vật lý UART. Tên được xây dựng từ cụm từ “ Tiêu chuẩn đề xuất 232 ", tiêu chuẩn đã được phát triển" Hiệp hội Công nghiệp Điện tử (EIA)"trở lại năm 1962.

Tiêu chuẩn đã phát triển theo thời gian:

  • RS-232C(1968);
  • EIA-232D(1987) - từ năm 1986, EIA bắt đầu sử dụng chữ viết tắt EIA thay vì RS;
  • TIA/EIA 232-E (1991);
  • ANSI/TIA/EIA-232-F(1997).

Trên thực tế, khi họ nói về RS-232 thường có một trong những tiêu chuẩn này.

RS-232đã như vậy thành công Cái gì ở trên nó vậy nền tảngđã được tạo ra giống hệt nhau Làm sao nội địa vậy sau đó tiêu chuẩn nước ngoài:

  • (2000);
  • (1993);
  • GOST 18145-81
  • GOST R 50668-94

vân vân. Vấn đề là không thể tải xuống miễn phí các tiêu chuẩn của dòng 232... bạn chỉ có thể tìm các tiêu chuẩn trên và sử dụng chúng như nguồn chính thứcđể học RS-232UART.

(nếu bạn vẫn cần các tiêu chuẩn gốc, bạn có thể mua trên trang web TIA (Hiệp hội Công nghiệp Viễn thông Hoa Kỳ))

Là đầu nối cho RS-232đã sử dụng 25 chân9 chốt loại kết nối D-phụ, có chữ viết tắt DB25DB9(đôi khi được gọi là PHÁO 25PHÁO 9).

Các kết nối đã trở nên phổ biến hơn DB9.

Tại sao có nhiều liên hệ như vậy nếu cho nhất quán cổng phổ thông(UART) hai dây dữ liệu là đủ TXRX và dây GND?

Vấn đề là ở chỗ, trong tiêu chuẩn RS-232 Ngoài những điều trên, các tín hiệu dịch vụ cũng được sử dụng, chẳng hạn như “ sự sẵn sàng của thiết bị đầu cuối«, « yêu cầu vận chuyển«, « sẵn sàng tiếp nhận" và như thế. Ngày nay, tín hiệu dịch vụ không phải lúc nào cũng được sử dụng trong các thiết bị, có thể chúng chỉ bị hạn chế TX, RXGND như trong "sạch" UART.

Điều quan trọng cần lưu ý là trong RS-232ở mức logic các đơn vị phạm vi từ -3V trước -12V, và logic số không từ +3V trước +12 .

(hình ảnh được lấy từ "Giao diện phần cứng Guk M. PC")

Từ -3V trước +3V, đếm vùng không chắc chắn.

Tiêu chuẩn RS-232 thao tác hai loại thiết bị

  • DTE- “thiết bị nhập dữ liệu”, đây là cách nó được thấm nhuần máy tính
  • DCE- “thiết bị đầu cuối đường dây truyền thông”, đây thường là modem/chuột/máy in và như thế.

DTE loại kết nối được sử dụng bố", Vì " DCE» kiểu kết nối Mẹ". Nếu bạn có trên máy tính của bạn COM cổng, nhìn... bạn sẽ thấy đầu nối pin, I E. "bố".

Tại sao tôi lại nói về điều này? Vấn đề là đối với kết nối thiết bị Với COM có một cảng thẳngcáp trở lại. Kết nối DTE và DCE(ví dụ: máy tính và modem) là cần thiết trực tiếp kết nối tất cả các chân và đầu nối, điều này có nghĩa là chân chịu trách nhiệm truyền dữ liệu ( RxD) được bao gồm trong trình kết nối cùng tên ( RxD). Sự kết nối như vậy được gọi là trực tiếp, và cáp thẳng hoặc " modem«.

Có những lúc bạn cần kết nối hai DTE(ví dụ hai máy tính), sau đó sử dụng kết nối ngược gọi điện " modem vô hiệu" cáp. Trong trường hợp này với RxD thứ nhất máy tính kết nối với TxD lần 2TxD thứ nhất Với RxD lần 2.

Nếu bạn muốn xem xét kỹ hơn RS-232 Tôi khuyên bạn nên đọc nó tổng quan về tiêu chuẩn Trực tuyến .

Bạn có thể quan tâm:

Hysteria đặt ra rất nhiều câu hỏi về cách kết nối bo mạch với máy tính. Và nhiều người thậm chí còn không hiểu UART là gì. Và tôi quyết định nói cho bạn biết ở đây nó là một công cụ mạnh mẽ như thế nào.

Bộ định tuyến sẽ biến thành máy tính nếu bạn kết nối bàn phím và hiển thị với nó qua UART

Từ CW tới cổng COM

Giao thức UART (Bộ thu/phát không đồng bộ toàn cầu) hay trong tiếng Nga, UART (Bộ thu/phát không đồng bộ toàn cầu) là giao thức lâu đời nhất và phổ biến nhất hiện nay giao thức vật lý truyền dữ liệu. Giao thức nổi tiếng nhất của dòng UART là RS-232 (thường được gọi là cổng COM, giống như cổng trên máy tính của bạn). Đây có lẽ là lâu đời nhất giao diện máy tính. Nó đã tồn tại cho đến ngày nay và không mất đi sự liên quan.

Phải nói rằng giao diện UART ban đầu xuất hiện ở Hoa Kỳ như một phương tiện để truyền tin nhắn điện báo và có năm bit hoạt động (như trong mã Morse). Dùng để truyền tải thiết bị cơ khí. Sau đó máy tính xuất hiện và mã ASCII, yêu cầu bảy bit. Vào đầu những năm 60, 8-bit nổi tiếng bảng ASCII và sau đó định dạng truyền bắt đầu chiếm một byte đầy đủ, cộng với ba bit điều khiển.

Năm 1971, khi sự bùng nổ vi mạch đã bắt đầu, Gordon Bell đã sản xuất máy tính PDP của công ty kỹ thuật số phương Tây Tôi đã tạo ra chip UART WD1402A. Khoảng đầu những năm 80, National Semiconductor đã tạo ra chip 8520. Vào những năm 90, một bộ đệm cho giao diện đã được phát minh, giúp truyền dữ liệu đến nhiều thiết bị hơn. tốc độ cao. Giao diện này, hầu như không có thay đổi nào, vẫn tồn tại cho đến ngày nay.

Vật lý của giao diện

Để hiểu điều gì làm cho các giao diện UART khác nhau giống và khác nhau, chúng ta hãy xem nguyên tắc hoạt động của giao thức phổ biến và được yêu thích nhất, RS-232. Tôi sẽ không mô tả tỉ mỉ tất cả những điều phức tạp trong công việc của anh ấy. Hàng chục megabyte bài viết đã viết về điều này và nếu bạn biết cách sử dụng Google, bạn có thể dễ dàng tìm thấy mọi thứ thông tin cần thiết. Nhưng tôi sẽ kể cho bạn những điều cơ bản, may mắn thay, với chúng, bạn có thể điều khiển mọi thứ thật tuyệt vời và tất cả các loại thủ thuật đều rất hiếm khi được sử dụng.

Dây chuyền hoạt động chính của chúng tôi là RXD và TXD, hoặc đơn giản là RX và TX. Đường truyền là TXD (Dữ liệu đã truyền) và cổng RXD (Dữ liệu đã nhận) là cổng nhận.
Các đường cổng COM này được sử dụng trong quá trình truyền mà không cần kiểm soát luồng phần cứng. Với luồng phần cứng, các dòng giao diện bổ sung được sử dụng (DTS, RTS, v.v.). Đầu ra TX của máy phát được kết nối với đầu vào RX của máy thu và ngược lại. Nguyên lý điện Hoạt động của RS-232 khác với logic TTL 5 volt tiêu chuẩn. Trong giao thức này, số 0 logic lần lượt nằm từ +3 đến +12 volt và một từ -3 đến -12. Phạm vi từ -3 đến +3 volt được coi là vùng không chắc chắn. Xin lưu ý rằng tất cả các điện áp được chỉ định liên quan đến vỏ máy tính hoặc mặt đất. Bây giờ tôi nghĩ bạn đã hiểu tại sao đơn vị máy tính Có hai điện áp cung cấp cùng một lúc: -12 và +12 volt. Chúng được giới thiệu đặc biệt cho hoạt động của cổng COM.


Nhận tín hiệu qua RS-232 (trích từ sách “Giao diện phần cứng PC” của M. Guk)

Biên độ điện áp hoạt động lớn như vậy, lên tới 24 volt, chủ yếu cần thiết để chống nhiễu cho đường dây liên lạc. Theo tiêu chuẩn, chiều dài của cáp mà chúng tôi truyền dữ liệu có thể là 15 m, mặc dù trên thực tế, người ta đã cố gắng làm cho nó hoạt động ngay cả ở độ sâu 25 m. Thông số điện RS-232 là đặc điểm chính, giúp phân biệt nó với các giao thức khác trong họ UART.

Các đặc điểm sau - định dạng gửi và tốc độ truyền dữ liệu - hoàn toàn có thể áp dụng cho tất cả các loại UART và đảm bảo tính tương thích của chúng thông qua kế hoạch đơn giản ghép nối.

Một tin nhắn tiêu chuẩn có 10 bit. Nhưng quy luật này chỉ áp dụng cho cài đặt tiêu chuẩn cổng COM. Về nguyên tắc, nó có thể được cấu hình lại để thậm chí có thể hiểu được giao diện One-Wire. Ở chế độ không tải, khi đường dây không truyền bất cứ thứ gì, nó ở trạng thái logic hoặc -12 volt. Việc bắt đầu truyền được biểu thị bằng cách truyền một bit bắt đầu, bit này luôn được bằng 0. Sau đó là việc truyền tám bit dữ liệu. Việc gửi được hoàn thành bởi một bit chẵn lẻ và một bit dừng. Bit chẵn lẻ kiểm tra dữ liệu được truyền. Bit bắt đầu cho chúng ta biết rằng quá trình truyền dữ liệu đã hoàn tất. Cần lưu ý rằng bit STOP có thể chiếm 1, 1,5 và 2 bit. Đừng nghĩ rằng đây là những bit phân số, con số này chỉ nói lên thời lượng của nó. Bit dừng, giống như bit bắt đầu, bằng 0.


Tín hiệu UART trên màn hình máy hiện sóng. Bit bắt đầu, dữ liệu và bit dừng được hiển thị. Cảm ơn DIHALT vì bức ảnh

Tốc độ hoạt động

Ngay cả khi bạn chưa bao giờ phải làm việc với cổng COM trước đây thì ít nhất trong modem bạn cũng nên biết tốc độ hoạt động danh nghĩa: 9600, 28800, 33600, 56000, v.v. Có bao nhiêu bit mỗi giây đang thoát khỏi cổng của chúng tôi? Hãy nhìn xem, giả sử tốc độ của chúng ta là 9600 bit mỗi giây. Điều này có nghĩa là việc gửi một bit sẽ mất 1/9600 giây và việc gửi một byte sẽ mất 11/9600. Và tốc độ này cho một byte chỉ đúng nếu bit dừng chiếm một bit. Nếu nó chiếm hai bit dừng thì tốc độ truyền sẽ là 12/9600. Điều này là do thực tế là cùng với các bit dữ liệu, các bit đặc biệt cũng được truyền đi: bit bắt đầu, dừng và bit chẵn lẻ. Phạm vi tốc độ cổng COM được tiêu chuẩn hóa. Theo quy định, tất cả các thiết bị đều hoạt động ở ba tốc độ tiêu chuẩn: 9600, 19200, 115200. Nhưng vẫn có thể có các tùy chọn khác, ngay cả khi sử dụng tốc độ không chuẩn hoặc tốc độ thay đổi theo thời gian - Tôi đã phát hiện ra điều này khi phỏng vấn thiết bị tiếp theo.

Một giao thức khác như vậy

Có nhiều loại UART. Tôi sẽ không liệt kê tên của họ vì nếu bạn nói tiếng Anh, bạn sẽ có thể tự mình tra Google. Nhưng những điều quan trọng nhất không thể bỏ qua! Hãy để tôi nhắc bạn rằng sự khác biệt chính giữa các giao diện là môi trường và phương thức truyền dữ liệu. Dữ liệu thậm chí có thể được truyền qua cáp quang.

Giao diện phổ biến thứ hai sau RS-232 là RS-485. Đây là một tiêu chuẩn công nghiệp và việc truyền tải được thực hiện qua cáp xoắn đôi, giúp nó có khả năng chống ồn tốt và tăng tốc độ truyền lên tới 4 megabit mỗi giây. Chiều dài của dây ở đây có thể đạt tới 1 km. Thông thường, nó được sử dụng trong các nhà máy để điều khiển các máy móc khác nhau.

Phải nói rằng IRDA, hay giao tiếp hồng ngoại, được tích hợp trong hầu hết các điện thoại và PDA, về cơ bản cũng là một UART. Chỉ có dữ liệu được truyền không qua dây mà sử dụng bức xạ hồng ngoại.

Trong thẻ SMART (SIM, truyền hình vệ tinh, thẻ ngân hàng) – chính những thiết bị mà mọi phreaker tự trọng đều mơ ước được đánh cắp – cũng sử dụng UART yêu quý của chúng tôi. Đúng, có truyền dữ liệu bán song công và logic hoạt động có thể là 1,8/3,3 và 5 volt. Có vẻ như RX được hàn với TX ở một đầu và đầu kia - kết quả là một đầu đang truyền, đầu kia đang nghe tại thời điểm đó và ngược lại. Điều này được quy định bởi tiêu chuẩn thẻ thông minh. Bằng cách này, chúng tôi biết chính xác số lượng byte chúng tôi sẽ gửi và số lượng thẻ sẽ phản hồi cho chúng tôi. Chủ đề này xứng đáng có một bài viết riêng. Nói chung, hãy nhớ rằng UART hầu như có ở khắp mọi nơi.


Các thiết bị có UART trên bo mạch, theo chiều kim đồng hồ: chuột, trình giả lập đầu đọc thẻ SMART, Palm m105 PDA, Ban phát triểnđối với vi điều khiển ATtiny2313 (hoặc AT89C2051), modem.

Ghép nối giao diện

Tôi đã thấy khó chịu với nhiều giao diện khác nhau, nhưng làm cách nào để làm việc với chúng? Chà, điều đó thì rõ ràng với RS-232 thông thường, nhưng giả sử, với nguồn điện 5 volt thì sao? Thật đơn giản: có nhiều chip chuyển đổi làm sẵn khác nhau. Theo quy định, chúng chứa các số “232” trong các dấu hiệu. Nếu bạn nhìn thấy một vi mạch có những con số này trong sơ đồ, hãy yên tâm: rất có thể đó là một bộ chuyển đổi. Tất cả các giao diện UART đều được giao tiếp thông qua các vi mạch như vậy với một kết nối nhỏ. Tôi sẽ không nói về các giao diện công nghiệp mà sẽ nói về những bộ chuyển đổi mà chúng ta quan tâm chủ yếu.

Bộ chuyển đổi giao diện nổi tiếng nhất là một vi mạch được phát triển bởi MAXIM, lấy một phần tên từ nó (max232). Nó cần bốn tụ điện từ 0,1 microfarad đến 4 microfarad và nguồn điện 5 volt. Thật ngạc nhiên, IC 5 volt này tạo ra điện áp âm để giao tiếp UART 5 volt với RS-232.

Có các chip để kết nối USB với UART, ví dụ như chip ft232rl. Ubuntu đã tích hợp sẵn trình điều khiển cho con chip này. Đối với Windows, bạn sẽ phải tải chúng xuống từ trang web chính thức. Sau khi cài đặt trình điều khiển, một cổng COM ảo sẽ xuất hiện trong hệ thống và với nó, bạn có thể điều khiển nhiều thiết bị khác nhau. Tôi khuyên bạn không nên chấp nhận những vi mạch này là những vi mạch duy nhất có thể có. Có một số lượng lớn rẻ hơn và sự tương tự thú vị do đó, hãy dành nhiều thời gian trên Google và bạn sẽ hiểu rằng thế giới UART thật tuyệt vời.

Nhìn chung, vi mạch khá đắt tiền và đôi khi bạn có thể sử dụng các mạch phức tạp hơn nhưng rẻ hơn bằng cách sử dụng một cặp bóng bán dẫn.

Điều này mang lại cho chúng ta điều gì?

Như bạn đã hiểu, giao diện UART hiện diện trong nhiều thiết bị có chứa một số loại bộ xử lý hoặc bộ điều khiển. Tôi thậm chí sẽ nói nhiều hơn: nếu có bộ điều khiển ở đó, thì tai hoàn toàn ở đó (nhưng không phải lúc nào cũng có thể sử dụng được). Theo quy định, giao diện này được sử dụng để thiết lập và kiểm tra chức năng của thiết bị. Thường thì nhà sản xuất im lặng về sự hiện diện của giao diện này trong sản phẩm, nhưng không khó để tìm ra: chỉ cần tải xuống hướng dẫn sử dụng cho bộ xử lý và bạn sẽ biết giao diện đó nằm ở đâu. Sau khi bạn nhận được Truy cập vật lýđối với phần cứng sử dụng giao diện của chúng tôi, bạn có thể tùy chỉnh nó theo ý thích của mình hoặc thậm chí làm cho nó hoạt động như bạn cần chứ không phải như dự định của nhà sản xuất. Nói chung, để tận dụng tối đa một thiết bị khiêm tốn. Biết được giao thức này cũng giúp bạn có thể nghe lén những gì đang diễn ra trong đường dây trao đổi giữa các bộ xử lý khác nhau, vì các nhà sản xuất thường tổ chức toàn bộ mạng UART trong thiết bị của họ. Nói chung có rất nhiều ứng dụng, cái chính là phải hiểu cách thực hiện bằng trực giác.

Hãy cập nhật bộ định tuyến

Hôm nọ, tôi đã thiết lập bộ định tuyến WiFi WL-520GU và sau khi đọc bài viết “Nâng cấp cho điểm truy cập” của Step (][ #106), tôi đã cài đặt thành công Linux ở đó. Nhưng tôi gặp vấn đề khi gắn phân vùng trao đổi ổ cứng. Vì vậy, cần phải xem nhật ký khởi động của điểm truy cập - xem phân vùng đã được gắn kết hay chưa - và, như người ta nói, ngay lập tức, để vào ngay sự thay đổi cần thiết. Với giác quan thứ sáu, tôi nghi ngờ rằng bộ định tuyến của mình đơn giản phải có UART. Tôi nhặt một chiếc tuốc nơ vít Phillips và bắt đầu tháo rời nó. Đó là một vấn đề tầm thường, nhưng có một nhược điểm - các ốc vít ẩn nằm dưới chân cao su (nếu bạn quyết định lặp lại, hãy nhớ rằng nếu bạn tháo rời nó, bạn sẽ mất bảo hành). Thứ hiện ra trước mắt tôi là một tấm bảng khá nhàm chán, nơi mọi thứ đều là “chip-in-one”: một CPU, bao gồm mọi thứ, RAM ngoài, ổ đĩa flash, bộ chuyển đổi nguồn và một hàng đầu nối có nút. Nhưng bo mạch có một miếng tiếp xúc chưa được hàn, hay đúng hơn là các lỗ để ghim. Có bốn người trong số họ. Đây là UART, điều đó là hiển nhiên! Ngay cả khi không có đồng hồ vạn năng, bạn có thể thấy trên bảng rằng kim ngoài cùng có điện áp +3,3 volt và kim thứ hai được nối đất. Các tiếp điểm ở giữa lần lượt là RX và TX. Cái nào dễ dàng được xác định bằng cách chọc khoa học (đốt giao diện rất khó khăn).
Tôi muốn lưu ý ngay rằng giao diện UART trông khác nhau ở mỗi bộ định tuyến. Trong hầu hết các trường hợp, đây không phải là những lỗ hàn trên bảng. Đúng vậy, trong một bộ định tuyến của ASUS, tôi thậm chí còn tìm thấy một đầu nối đã được ký đầy đủ.

Lắp ráp bộ chuyển đổi

Để kết nối bộ định tuyến với máy tính, bạn cần ghép nối giao diện RS-232 với UART của bộ định tuyến. Về nguyên tắc, bạn có thể kết nối với USB bằng chip FT232RL được đề cập ở trên - đó là điều tôi đã làm khi kiểm tra bộ định tuyến lần đầu tiên. Nhưng vi mạch này nằm trong một gói khá khó hàn nên chúng ta sẽ nói nhiều hơn giải pháp đơn giản. Cụ thể là chip MAX232. Nếu bạn định cấp nguồn bằng bộ định tuyến thì rất có thể sẽ có điện áp 3,3 volt, vì vậy tốt hơn nên sử dụng MAX3232, loại này thường có trong các PDA (sơ đồ nối dây rất dễ tìm thấy trên Internet). Nhưng bộ định tuyến của tôi có nguồn điện +5 volt ở đầu vào và tôi có rất nhiều loại vi mạch này nên tôi không bận tâm. Để lắp ráp, chúng ta cần tụ điện 0,1 uF (4 miếng) và chính vi mạch. Chúng tôi hàn mọi thứ theo sơ đồ truyền thống và bắt đầu thử nghiệm.


Nguồn lắp ráp

Tôi lắp ngay đầu nối đực 9 chân ở đầu ra để có thể dễ dàng kết nối cáp modem null. Nếu bạn còn nhớ, vào thời DOS, những sợi cáp như vậy được sử dụng để tạo mạng lưới gồm hai máy tính và cắt chúng tại Dyuknyukem. Dây cho mục đích của chúng tôi không khó để lắp ráp. Đúng, nó sẽ không phải là một modem vô hiệu hoàn chỉnh và bạn sẽ không thể chơi nhiều thông qua nó, nhưng việc điều khiển điểm truy cập mới là điều quan trọng! Bạn sẽ cần hai đầu nối cái 9 chân, vỏ cho chúng và một dây, chẳng hạn như từ con chuột già hoặc bàn phím (điều chính là nó có ba dây). Đầu tiên chúng ta kết nối nối đất - đây là tiếp điểm thứ năm của các đầu nối; Chỉ cần lấy bất kỳ dây nào và hàn nó vào chân thứ 5 ở cả hai bên. Nhưng với RX và TX bạn cần phải làm điều gì đó tinh vi hơn. Từ một đầu của dây, chúng tôi hàn nó vào tiếp điểm thứ 3 và từ đầu kia đến tiếp điểm thứ 2. Tương tự như vậy với dây thứ ba, chỉ từ một đầu chúng ta hàn vào điểm tiếp xúc thứ 2, từ đầu kia đến điểm thứ 3. Vấn đề là TX phải truyền tới RX. Chúng tôi giấu các đầu nối hàn trong hộp - và cáp modem null đã sẵn sàng!


Các chân hàn trên bo mạch bộ định tuyến.

Để dễ cài đặt, tôi hàn một đầu nối dạng chốt vào bo mạch chủ của bộ định tuyến và một đầu nối ngược vào giá đỡ bằng MAX232 và lắp bìa cứng vào như thể nó là một khe cắm. RX và TX của bộ định tuyến được chọn thử nghiệm.


Bảng lắp ráp

Bây giờ chúng ta cần cấp nguồn cho chip chuyển đổi. Chúng tôi đã có một dây chung trực tiếp trong đầu nối trên bo mạch chủ của bộ định tuyến. Nhưng + 5 volt lại nằm ngay đầu vào nguồn của bộ định tuyến, ở nơi kết nối bộ chuyển đổi. Chúng tôi xác định điểm 5 volt bằng vôn kế bằng cách đo các nút khác nhau so với mặt đất của bộ định tuyến.
Kết nối nguồn điện. Chúng tôi bật và bắt đầu các thử nghiệm độc hại của mình.


Đốt một lỗ cho dây thò ra


Cổng COM hàn


Tất cả mọi người ở đây. Xin lưu ý rằng dây nguồn màu đỏ đi tới đầu nối bộ chuyển đổi bộ định tuyến. Nút thắt bên trong được thực hiện để xé các dây hàn bằng một cú giật.

Thiết lập thiết bị đầu cuối

Chúng ta cần thiết lập một chương trình đầu cuối. Trong Windows, mọi thứ khá đơn giản: khởi chạy Hyper Terminal, tắt tính năng kiểm tra dữ liệu phần mềm và phần cứng, đặt tốc độ thành 115200 và một bit stop. Nhưng trong Linux, mọi thứ phức tạp hơn một chút. Tôi có Ubuntu và tôi sẽ kể cho bạn nghe về nó. Đầu tiên, hãy tìm hiểu xem cổng COM trong hội đồng của bạn được gọi là gì. Trong trường hợp của tôi, COM1 là ttyS0 (ví dụ: nếu bạn sử dụng chip FT232 thì nó sẽ được gọi là ttyUSB0). Để làm việc với nó, tôi đã sử dụng phần mềm minicom.

Chạy nó với các tham số: minicom -l -8 -c on -s. Tiếp theo, chọn “Cài đặt cổng nối tiếp”:
Cổng nối tiếp/dev/ttyS0

* Baud/chẵn lẻ/bit 115200 8N1
* Kiểm soát phần cứng dòng chảy - không
* Kiểm soát phần mềm dòng chảy - không

Lưu cài đặt. Phần mềm sẽ cố gắng khởi tạo modem - đừng chú ý. Để mở menu, nhấn . Ở đó bạn có thể thay đổi cài đặt, ví dụ: bật/tắt tiếng vang - E.
Cài đặt

Tôi không khuyên bạn nên kết nối chip chuyển đổi với bộ định tuyến để kiểm tra chức năng của nó. Nó chỉ được phép lấy thức ăn từ nó. Thử nghiệm rất đơn giản - bạn cần kết nối RX với TX. Đầu tiên, bạn kết nối các tiếp điểm thứ 2 và thứ 3 trong cổng COM - kiểm tra cài đặt thiết bị đầu cuối. Bạn viết điều gì đó trên bàn phím: nếu các ký tự quay trở lại thì mọi thứ đều ổn. Bạn cũng kiểm tra lại dây cáp, các điểm tiếp xúc giống nhau. Sau đó, bạn kết nối vi mạch và đặt một nút nhảy ở đầu ra của nó. Tôi chỉ ra điều này bởi vì, chẳng hạn, tôi gặp vấn đề và không có gì hiệu quả cho đến khi tôi kiểm tra mọi thứ và tìm thấy lỗi.

Sau tất cả các cài đặt, bạn có thể kết nối nó với bộ định tuyến một cách an toàn và tìm kiếm RX-TX trên bộ định tuyến, định kỳ ngắt nguồn khỏi bộ định tuyến. Nếu mọi thứ được thực hiện chính xác thì khi cấp nguồn, bạn sẽ thấy nhật ký khởi động bộ định tuyến. Xin chúc mừng, bây giờ bạn đã có root phần cứng đầy đủ, như thể bạn đang ngồi trước màn hình với bàn phím bộ định tuyến.


Nhật ký khởi động bộ định tuyến trong chương trình minicom

Bơi tự động

Đồng ý rằng, thực hiện điều tương tự thông qua chương trình đầu cuối sẽ thuận tiện hơn thông qua SSH không phải là băng. Tôi muốn biến bộ định tuyến thành một máy tính Linux độc lập với kiến ​​trúc thông minh của riêng nó. Để làm được điều này, dữ liệu từ bàn phím phải được truyền qua UART và hiển thị trên màn hình qua nó. Việc hàn và phát triển thiết bị thật lười biếng. Sau đó, ý tưởng sử dụng PDA vốn đang bám bụi và không hoạt động đã nảy sinh cho những mục đích này. Trên thực tế, thiết bị cầm tay sẽ đóng vai trò là bàn phím và bộ điều khiển hiển thị, đồng thời đóng vai trò là giao diện cho các giao diện.

Đầu tiên mình thử chiếc Palm m100 cổ. Nhưng hình như anh ta có một cái rất nhỏ bộ nhớ đệm và lượng dữ liệu đến từ bộ định tuyến khiến anh cảm thấy mệt mỏi. Tôi lấy một cái khác - một PDA công nghiệp, có cổng COM thông thường và thiết bị đầu cuối. Tôi đã kết nối nó, lắp nó vào đế và kết quả là tôi có được một máy tính Linux nhỏ. Về nguyên tắc, thay vì một PDA công nghiệp đắt tiền, hầu hết các thiết bị cầm tay chạy hệ điều hành WinCE đều làm được, việc chính là tìm phần mềm đầu cuối phù hợp.


Máy tính Linux :)

Kết quả

Vì vậy tôi đã cho thấy ví dụ nhỏ sử dụng UART. Nếu bạn tham gia vào giao thức này, thì tin tôi đi, bạn sẽ trở thành bậc thầy của nhiều phần cứng khác nhau. Nó có sẵn ở hầu hết mọi nơi và thông qua nó, bạn có thể kết nối những thứ dường như hoàn toàn khác nhau. Ví dụ: đến cùng một bộ định tuyến khi cài đặt nhỏ kết nối điện thoại di động theo Ewart, - và phân phối Internet từ đó. Nói chung là có rất nhiều ứng dụng. Đừng ngại thử nghiệm, giáo dục bản thân và hiện thực hóa ý tưởng của bạn.

Bài đăng này là phiên bản chỉnh sửa cho Habr của bài viết của tôi trong Hacker số 05/09 “Công cụ chính của phreaker.”

Văn học:
1. Mikhail Guk “Giao diện phần cứng PC” đơn giản là cuốn kinh thánh dành cho sinh viên về máy tính cá nhân.

Bài viết và Lifehacks

Nhiều người dùng quan tâm đến mọi thứ liên quan đến việc kết nối bo mạch với PC. Đồng thời, họ thắc mắc cài đặt uart trong điện thoại là gì. Bài viết của chúng tôi dành riêng cho công cụ này cũng như ứng dụng của nó trong lĩnh vực công nghệ di động.

UART trong điện thoại là gì và tại sao bạn cần cấu hình nó?

VỚI bằng tiếng Anh UART, hay máy phát-thu không đồng bộ phổ quát, có thể được dịch là một phương tiện nhận và truyền không đồng bộ phổ quát. TRONG Hiện nayĐây không chỉ là giao thức truyền thông tin nổi tiếng nhất mà còn khá cũ.

Giao thức UART phổ biến nhất là RS-232, tức là cổng com được cài đặt trên máy tính để bàn. Điểm đặc biệt của nó nằm ở chỗ cho đến ngày nay nó vẫn không mất đi tính liên quan và được sử dụng tích cực. Điều này cũng được biết đến rộng rãi tiêu chuẩn công nghiệp, giống như RS-485.

Hãy thêm rằng UART1 và UART2 được sử dụng để kết nối cáp phần mềm, cũng như để kết nối với máy tính. Đến đầu nối hệ thống của chúng tôi thiết bị di động các cổng như UART1, UART2 và USB được hiển thị. Hãy thêm điều đó cổng hồng ngoại, trên thực tế, cũng là một UART. Sự khác biệt duy nhất là ở phương thức truyền dữ liệu (không có dây mà là hồng ngoại). Thẻ SIM cũng sử dụng giao thức này, mặc dù chúng cung cấp phương thức truyền thông tin bán song công.

Yêu cầu ghép nối giao diện đáng được quan tâm đặc biệt. Ngày nay có những vi mạch đặc biệt cho việc này. Một ví dụ tốt là chip ft232rl được thiết kế để giao tiếp UART với USB. Tuy nhiên, bạn không nên quá bận tâm với nó, vì có những phương tiện giao tiếp tương tự rẻ hơn nhưng rất thú vị.

Tại sao cần có giao diện UART? Theo quy định, với nó, chúng ta có thể kiểm tra và điều chỉnh hiệu suất của thiết bị của mình.

Thường các nhà sản xuất công nghệ điện thoại di động không tập trung vào việc hỗ trợ giao thức này. Để kiểm tra điều này chắc chắn, bạn nên tải xuống hướng dẫn sử dụng cho bộ xử lý có UART. Chúng tôi không chỉ có thể có quyền truy cập vật lý vào thiết bị bằng giao thức của mình mà còn có thể định cấu hình hoạt động của thiết bị theo ý của chúng tôi - thường không hoàn toàn theo cách mà nhà sản xuất dự định.

Vì vậy, chúng tôi đã tìm ra nó là gì giao diện này. Tuy nhiên, sự hiểu biết về cài đặt uart trong điện thoại chỉ có thể cung cấp cho chúng tôi hướng dẫn chi tiết bằng cách thiết lập.

Hướng dẫn thiết lập UART trên điện thoại

Để cấu hình giao thức, hãy gọi thực đơn kỹ thuậtđiện thoại bằng cách quay số tổ hợp *#3646633#, sau đó chúng ta chuyển sang menu tiếp theo. Để thực hiện việc này, hãy đi tới “Thiết bị” > “Đặt UART” > “Cài đặt UART”.

Chúng tôi thấy các mục như “Cấu hình PS” và “Cấu hình TST”. Điểm đầu tiên chịu trách nhiệm trao đổi thông tin với PC qua cáp USB và điểm thứ hai là cần thiết để gỡ lỗi phần mềm, nhờ đó các nhà phát triển xác định được sự cố.

Mỗi mục chứa các tham số để chuyển hướng luồng đến thiết bị (UART 1-3 hoặc USB) và tốc độ của luồng đó. Chúng tôi không cần cổng kiểm tra, tức là “TST Config” và chúng tôi không chạm vào nó. Về “PS Config”, bạn cần quan tâm đến một số cài đặt nhất định. Đặt giá trị thành “UART1”. Trình điều khiển trên PC thường chỉ ra tốc độ bit (ví dụ: 115200). Đặt tốc độ tương tự cho UART1 (hoặc “Tự động”).

Ngoài ra, thay vì UART1, bạn có thể đặt “Cổng USB”, tuy nhiên, trong trường hợp này, khi kết nối cáp USB, điều đó không được đảm bảo rằng Chế độ usb sẽ được hiển thị. Khởi động lại thiết bị và thử kết nối lại.