Nan giải máy đọc mã vạch chuẩn RS232

bigboy061293

Thành Viên PIF
Theo như bình thường từ trước đến giờ thì khi làm về rs232 -> uart, thiên hạ thường xài những thằng nổi tiếng như pl2303, ft232, hay con chuyển điện áp max232. Đó là trường hợp mà chỉ có RX và TX. Sau khi mua cái máy đọc mã vạch chuẩn rs232 về (chuẩn chân là rs232 thôi nhưng mức điện áp vẫn là 5v), mua sợi cáp serial -> usb, đút vào terminal, bấm một phát đọc được mã vạch luôn. Nhưng ngặt một nỗi là sau khi mổ xẻ cái đầu rs232 (9 chân) của máy này thì mình nhận ra là: ngoài 3 cọng dây thần thánh RX, TX và GND ra, nó còn lồi ra 3 cọng nữa: đó là cọng số 7 (RTS), số 8 (CTS) và số 9 (hình như là chuông thôi, không quan trọng lắm). Và chỉ xài RX, TX không thôi thì không giao tiếp được với nó.

Vấn đề nằm ở chổ thằng RTS và CTS. Đọc tài liệu thì thấy là RTS tích cực thì cái máy mới truyền dữ liệu, CTS tích cực thì xác nhận đến cái máy (2 thiết bị giao tiếp với nhau gọi là DCE và DTE). Đại khái là RTS, CTS giúp truyền/nhận theo kiểu bắt tay hay truyền đồng bộ. Nên đây chính là USART.

Vậy xin hỏi có con nào thực hiện chuyện chuyển UART -> USART không (tức là đút vào RX, TX, CTS, RTS thì chỉ lòi ra RX và TX) hay phải config bằng phần mềm đối với những con không có ngoại vi USART ? Đối với những con có ngoại vi USART thì khi nối 4 chân TX, RX, RTS, CTS có cần lưu ý gì không ?

Tóm lại là có cách nào giao tiếp được với cái máy đọc mã vạch này không ? :)
Cám ơn mọi người trước :)
 

honghiep

Cố Vấn CLB
Staff member
Nếu cắm 3 dây RX,TX,GND (Không cắm RTS, CTS) vào sợi cáp USB->Serial thì có truyền dữ liệu được không?
 
H

huunho

Guest
Vậy xin hỏi có con nào thực hiện chuyện chuyển UART -> USART: con Pl2303 thỏa mãn yêu cầu của bạn, bạn mua sợi cáp serial -> usb rồi mổ ra, lấy

thêm 2 chân RTS, CTS là ok rồi
 

honghiep

Cố Vấn CLB
Staff member
PL2303 dùng để chuyển USB->UART. Bản thân PL2303 đã có sẵn RTS, CTS rồi
 

bigboy061293

Thành Viên PIF
Nếu cắm 3 dây RX,TX,GND (Không cắm RTS, CTS) vào sợi cáp USB->Serial thì có truyền dữ liệu được không?
không được, cắm CTS, RTS mới chạy được
thì bất kì con nào làm nhiệm vụ từ rs232 -> usb thì ngõ vào của nó cũng có đầy đủ các chân của chuẩn rs232 mà. vấn đề là có cái nào làm nhiệm vụ đầu vào là TX,RX,CTS,RTS, ngõ ra chỉ là RX, TX ?
 

bigboy061293

Thành Viên PIF
Vậy xin hỏi có con nào thực hiện chuyện chuyển UART -> USART: con Pl2303 thỏa mãn yêu cầu của bạn, bạn mua sợi cáp serial -> usb rồi mổ ra, lấy

thêm 2 chân RTS, CTS là ok rồi

pl2302, đầu ra của nó là usb mà, mình đâu cần usb :)
 

trucnguyen

Trứng gà
Vậy xin hỏi có con nào thực hiện chuyện chuyển UART -> USART: con Pl2303 thỏa mãn yêu cầu của bạn, bạn mua sợi cáp serial -> usb rồi mổ ra, lấy

thêm 2 chân RTS, CTS là ok rồi

pl2302, đầu ra của nó là usb mà, mình đâu cần usb :)

Đọc Mã vạch <=> ( UART 4 dây ) Vi Điều Khiển (UART 2 dây thần thánh) <=> đi về nơi xa lắm

Dùng Vi điều khiển tích hợp 2 UART cứng (tốt nhất) hoặc có thể dùng UART mềm + 1 UART cứng.

+ Nhưng cái khó là bạn phải biết được format truyền nhận (parity, stop bit, baudrate... từa lưa thứ) mà thằng barcode qui định + giải mã được dữ liệu + lệnh giao tiếp từ thằng đọc mã vạch gừi cho VĐK (qua UART 4 dây).

+ Sau khi biết được những thứ trên thì việc truyền dữ liệu qua bộ UART thứ 2 của VĐK đi về nơi xa lắm bằng 2 dây thần thánh như cậu nói thì là chuyện nhỏ rồi.

:gach nhiệt tình chém vì thực ra hồi nào giờ cũng chỉ dùng UART 2 dây.
 

TieuNhi

Trứng gà
Bạn cho cái mã ( tên, datasheet) của cái máy quét mã vạch đi. Có thể cấu hình nó thành UART chỉ có TX, RX đó
 
Top