I. Sơ lược về UART
Hầu hết các Router hiện nay đều đi kèm với một UART tích hợp vào vi xử lý hệ thống và các chân của nó được định tuyến trên Bảng Mạch In (PCB) để cho phép gỡ lỗi, thay thế firmware hoặc kết nối với các thiết bị serial (như modem).
Thường thì, một router sẽ bắt đầu với "bootloader" "cố định" của nó, chịu trách nhiệm cho các bước đầu tiên của việc tìm kiếm firmware, kiểm tra phần cứng,.. và khởi chạy chúng. Trong những giai đoạn sớm này, bootloader thường cung cấp thông tin qua cổng serial và có thể phản ứng với bộ lệnh của riêng mình. Những lệnh này không phải là lệnh như một hệ điều hành thông thường, mà là những lệnh được lập trình sẵn tích hợp vào bootloader. Mỗi bootloader khác nhau của những hãng khác nhau sẽ có một tập lệnh khác nhau.
Serial (UART) có thể làm được rất nhiều thứ, nó có thể cứu router của các bạn khỏi "Brick" và cũng có thể làm "Brick" thiết bị của bạn.
Cổng UART trên router thông thường sẽ có 5 chân hoặc 4 chân tùy nhà sản xuất. Về cơ bản mỗi cổng UART đều có ít nhất 4 chân là VCC, GND, RX và TX.
Mỗi board mạch sẽ có mỗi cách bố trí khác nhau cũng như vị trí khác nhau, cách thiết kế cũng khác nhau, chúng có thể là những lỗ được đục sẵn, cũng có thể dưới dạng chân cắm, cũng có thể được phủ một lớp thiếc hàn ...
Để sử dụng được cổng UART này, thiết bị cần phải có đó là Adapter USB To UART. Trên thị trường cũng có rất nhiều loại USB sử dụng các IC khác nhau. Một trong số chúng là PL2303, CH341A, CH340, CP2102, FT232
Mình thì đang sử dụng loại FT232 này , có đầy đủ đèn báo hiệu RX - TX, driver dễ cài đặt, IC của thương hiệu lớn.
II. Cách xác định chân UART
Các bạn phải cực kì chú ý đến chân VCC của UART. Đa số thì chân VCC sẽ là chân số 1, hoặc nó cũng có thể được đánh dấu bằng ô vuông, tam giác ... và sẽ khác biệt với 3 chân còn lại trên mạch, cũng có nhiều nhà sản xuất ghi thứ tự chân lên trên mạch
Về cách kết nối, thông thường thì chân VCC là không cần thiết và chúng ta có thể bỏ trống chúng. Đa phần Router mình làm qua đều không cần dùng đến chân VCC, chỉ sử dụng chân này khi các bạn biết mình đang làm gì. Nếu sử dụng sai mục đích chân VCC sẽ có thể làm cháy USB, chết luôn CPU, hoặc gây chập cháy trên mainboard Router
- Cách xác định chân UART trên Mainboard thường sẽ có 2 cách đo bằng đồng hồ vạn năng
- Cách 1: Dùng thang đo điện DC
- Chúng ta tiến hành đo như sau:
Chân GND (chân nối mass), nó sẽ thông với GND của adpater, chân ÂM của tụ điện...Đo giữa GND và VCC -> 3.3V VCC và RX -> 0V VCC và TX -> 0V GND và RX -> 3.3V GND và TX -> 0V RX và TX -> 0V
- Chúng ta tiến hành đo như sau:
- Cách 2: Thang đo Ohm
- Chúng ta tiến hành đo như sau:
Đo giữa Khoảng giá trị GND với GND 0 Ohm GND với VCC 5k - 200k Ohm GND với TX 8k - 2M Ohm GND với RD 10k - 8M Ohm
- Chúng ta tiến hành đo như sau:
- Cách 1: Dùng thang đo điện DC
Sau khi đã xác định được các chân GND, RX, TX. Tiến hành kết nối với USB và PC
III. Kết nối các chân UART với USB Adapter
Đánh dấu 3 chân đã xác định được trên mainboard. Nếu cổng UART trên mainboard là dạng đục lỗ, các bạn có thể sử dụng 3 cây đồng 1mm, mài nhọn 1 đầu sau đó cắm chặt vào 3 lỗ GND, RX, TX
- Chân GND trên router sẽ nối với chân GND trên USB
- Chân RX trên router sẽ nối với chân TX trên USB
- Chân TX trên router sẽ nối với chân RX trên USB
Ảnh ví dụ:
Sau khi đã kết nối xong các chân, tiến hành kết nối USB với PC
IV. Phần mềm điều khiển trên Máy tính
- Cắm USB vào PC. Tùy theo loại IC trên USB mà sẽ có mỗi loại Driver khác nhau
- Các bạn phải xác định được USB đang sử dụng IC gì để tìm Driver đúng cho nó
- Ví dụ như USB mình đang dùng là FT232 , thì driver đi kèm với nó sẽ được tải ở trang chủ của nhà sản xuất ( Driver cho FT232 )
- Có rất nhiều phần mềm hỗ trợ điều khiển cổng COM trên PC, ví dụ 1 số phần mềm phổ biến như PuTTY, MobaXterm, TeraTerm...
Ví dụ sử dung phần mềm MobaXterm
- Sau khi đã cài xong Driver cho USB Adapter. Vào Device Manager > Ports (COM & LPT). Xem thiết bị có tên là USB Serial Port (COMx) Trong đó (COMx) chính là số cổng (vd: COM3, COM4, COM7…)
- Mở MobaXterm trên PC lên, vào Session > chọn Serial > Serial Port: Chọn số cổng COM đã xác định lúc nãy (vd: COM7) > Speed (bps): 115200 (Mỗi bootloader sẽ có một bitrate khác nhau, chỉ khi chọn đúng thì thông tin mới được hiển thị trên màn hình console) > Click OK
- Lúc này hãy cấp nguồn cho Router, nếu UART kết nối đúng, rất nhiều dòng chử sẽ hiện lên.
Về cơ bản thì chỉ có như thế, nếu không hiểu chổ nào các bạn hãy để lại bình luận, mình sẽ giải đáp nhanh nhất có thê. Chúc các bạn thành công.
Góp Ý / Bình Luận / Đánh giá