để đơn giản thì ta nên theo ta- có nghĩa nghĩ sao làm vậy cho được việc cái đã. Còn nếu làm có quy củ hoặc giao tiếp điều khiển với thiết bị của tây thì ta phải làm theo chuẩn. Có rất nhiều chuẩn, mỗi chuẩn có quy định cấu trúc khung truyền tin riêng - frame. cho 1 ví dụ chuẩn hay dùng - IEC 62056-21. 1 khung truyền tin bao gồm: cờ đầu khung, địa chỉ thiết bị, chức năng gói tin, chiều dài dữ liệu,các byte dữ liệu, byte kiểm tra CS, cờ cuối khung. đây là 1 chuẩn rất phổ biến, mà nên làm theo chuẩn thì mới chuyên nghiệp được.
Thông báo
Collapse
No announcement yet.
Serial Port - lập trình giao tiếp nối tiếp
Collapse
This topic is closed.
X
This is a sticky topic.
X
X
-
Vấn đề chuẩn
Nếu nói về chuẩn hoặc xây dựng cả một chuẩn riêng thì cả một vấn đề. Và vấn đề ở đây mình cũng chưa thấy bạn nào phân biệt một cách rõ ràng chuẩn và giao thức. Qua quá trình tìm hiểu ngắn thì theo mình biết chuẩn là những quy chuẩn quy định về mặt vật lý (mức tín hiệu, đường truyền, ...). Còn giao thức (protocol) là những quy định để cho phép các phần tử truyền thông trong mạng hiểu và nhận đúng dữ liệu, tránh sự sai lạc trong quá trình truyền. Đơn giản nhất nếu bạn tìm hiểu về truyền thông RS232 thì về chuẩn truyền thông quy định mức tín hiệu logic -12V và +12V và đi kèm với nó là các giao thức bắt tay phần cứng (sử dụng các chân CTS, RTS, DTR,...), giao thức bắt tay mềm (X-ON, X-OFF) hoặc không sử dụng giao thức bắt tay. Hay một ví dụ đơn giản nữa , nếu bạn nào đã từng truyền thông với PLC của Mitshubishi mà cụ thể là họ FX thì các bạn cũng sẽ hiểu. Công lập trình của FX sử dụng chuẩn RS422 nên khi muốn truyền thông với máy tính phải sử dụng bộ chuyển đổi RS422 sang RS232. Tuy nhiên nếu chỉ thực hiện chuyển đổi đơn thuần (đồng mức vật lý) thì không thể truyền thông với FX được và vấn đề chúng ta cần phải quan tâm nữa là giao thức. Với các thiết bị phức tạp như PLC thì có rất nhiều vùng dữ liệu với các địa chỉ khác nhau đồng thời phải thực hiện quá trình kiểm tra lỗi dữ liệu, FX thực hiện truyền thông theo các Frame và thực tế nếu ngoài dữ liệu chính trong Frame còn có các thông tin như các ký tự điều khiển (stx,...), địa chỉ dữ liệu, dữ liệu, mã kiểm tra SUMCHECK CODE,... Vì vậy mong các bạn hãy cùng mình phân biệt một cách cụ thể, rõ ràng hơn về chuẩn và giao thức.Nguyên văn bởi hoctro89xxx Xem bài viếtđể đơn giản thì ta nên theo ta- có nghĩa nghĩ sao làm vậy cho được việc cái đã. Còn nếu làm có quy củ hoặc giao tiếp điều khiển với thiết bị của tây thì ta phải làm theo chuẩn. Có rất nhiều chuẩn, mỗi chuẩn có quy định cấu trúc khung truyền tin riêng - frame. cho 1 ví dụ chuẩn hay dùng - IEC 60... 1 khung truyền tin bao gồm: cờ đầu khung, địa chỉ thiết bị, chức năng gói tin, chiều dài dữ liệu,các byte dữ liệu, byte kiểm tra CS, cờ cuối khung. đây là 1 chuẩn rất phổ biến, mà nên làm theo chuẩn thì mới chuyên nghiệp được.http://techpal.vn
Chia sẻ công nghệ, cùng thành công
Comment
-
Máy tính, giao tiếp với VDK qua mạng 485
Trong Max485 có hai chân RE, DE. Em đã thử nếu như nối chân DE với nguồn, RE với đất, để luôn luôn cho phép truyền và cho phép nhận. Tuy nhiên em nhận thấy nếu để như vậy thì không thể truyền tín hiệu được. Mà phải nối với nhau và được điều khiển bằng 1 chân. Nếu muốn truyền thì set bit = 1, sau khi truyền xong mà muốn nhận thì clear bit = 0. Ở đây em có đưa lên mạch mà em đã sử dụng để truyền thông giữa máy tính và vi điều khiển qua mạng 485 (có sử dụng bộ chuyển đổi 232 -485) . việc điều khiển 2 chân DE, RE thông qua chân RTS. Giả sử muốn truyền từ máy tính xuống một dữ liệu và muốn vi điều khiển phải trả lời thì phải làm như sau: từ máy tính cho RTS = 1, truyền dữ liệu, cho delay để truyền hết dữ liệu, [/B]cho RTS = 0 để cho phép máy tính nhận từ nhận từ vi điều khiển ...Với cách làm như trên sẽ làm cho 1 vòng quét chiếm mất nhiều thời gian, đặc biệt nếu sử dụng nhiều vi điều khiển (máy tính là master, VDK là slave). Không biết có cách nào để biết là máy tính đã truyền hết dữ liệu xuống vi điều khiển hay chưa, Hình như phải kiểm tra một thanh ghi điều khiển gì đó. Ở đây em dùng ngôn ngữ C# cho việc điều khiển trên máy tính. Kính mong Cao Thủ chỉ giúp cho em.
Comment
-
Về mạch chuyển RS485 sang RS232 và ngược lại trên mạng cũng rất nhiều. Theo hình vẽ của Picachu thì dùng IC 75176, và cổng COM phải dùng thêm chân RTS--> điều này là không cần thiết: sửa lại như sau--> nối chân 2 và 3 của IC75176 vào nhau. Chân DI ( chân 4 của IC75176) cho qua 2 con NOT( dùng CD4069- 1 chíp có 6 bộ NOT) sau đó cho qua mạch R1//R2//Diode (220K//33K//diode)-> nối đến 1 chân tụ 102 ( chân còn lại của tụ nối mát)--> đi đến chân 2 và 3 IC 75176. -----> thế là OK, trên phần mềm không phải điều khiển chân RTS nữa, cứ truyền cổng COM bình thường là bên nhận sẽ nhận đúng. Mạch này tôi đã sản xuất vài chục mạch -> chạy rất tốt.Nguyên văn bởi picachu Xem bài viếtTrong Max485 có hai chân RE, DE. Em đã thử nếu như nối chân DE với nguồn, RE với đất, để luôn luôn cho phép truyền và cho phép nhận. Tuy nhiên em nhận thấy nếu để như vậy thì không thể truyền tín hiệu được. Mà phải nối với nhau và được điều khiển bằng 1 chân. Nếu muốn truyền thì set bit = 1, sau khi truyền xong mà muốn nhận thì clear bit = 0. Ở đây em có đưa lên mạch mà em đã sử dụng để truyền thông giữa máy tính và vi điều khiển qua mạng 485 (có sử dụng bộ chuyển đổi 232 -485) . việc điều khiển 2 chân DE, RE thông qua chân RTS. Giả sử muốn truyền từ máy tính xuống một dữ liệu và muốn vi điều khiển phải trả lời thì phải làm như sau: từ máy tính cho RTS = 1, truyền dữ liệu, cho delay để truyền hết dữ liệu, [/B]cho RTS = 0 để cho phép máy tính nhận từ nhận từ vi điều khiển ...Với cách làm như trên sẽ làm cho 1 vòng quét chiếm mất nhiều thời gian, đặc biệt nếu sử dụng nhiều vi điều khiển (máy tính là master, VDK là slave). Không biết có cách nào để biết là máy tính đã truyền hết dữ liệu xuống vi điều khiển hay chưa, Hình như phải kiểm tra một thanh ghi điều khiển gì đó. Ở đây em dùng ngôn ngữ C# cho việc điều khiển trên máy tính. Kính mong Cao Thủ chỉ giúp cho em.
Đã áp dụng làm mạch lặp RS485: chỉ việc ghép 2 mạch trên lại nhưng bỏ IC max232 đi là xong.
email:mahaco@fpt.vn
Comment
-
Em đã làm đúng như anh hoctro89xxx nói nhưng mạch không chạy, Nhưng khi chỉ sử dụng 1 con NOT rồi sau đó cho qua mạch R1//R2//Diode (220K//33K//diode)... như anh hoctro89xxx nói thì mạch lại chạy bình thường . Mà thậm chí rằng bỏ cả R1,R2,Diode mạch vẫn chạy.
Tức là mạch bây giờ đơn giản chỉ là Chân DI ( chân 4 của MAX485) qua 1 con NOT sau đó đi đến chân 2,3 của Max485. Như vậy là chạy bình thường. Không hiểu tại sao lại như vậy. Liệu như vậy thì mạch có chạy ổn định không. Hiện tại thì em chưa phát hiện ra lỗi. Rất có thể sau này sẽ có lỗi. Anh hoctro89xxx có thể chỉ giúp cho em được không.
Comment
-
Hic, định post lại là chỉ cần 1 NOT ( hay 3 NOT). mạch gin của nó còn nhiều thứ khác nhưng qua thực tế đã lược bớt như thế. với loại chỉ dùng 1 NOT và bỏ hết trở tụ... Tôi chỉ làm 1 mạch và hiện vẫn chạy--> chưa vấn đề gì.Nguyên văn bởi picachu Xem bài viếtEm đã làm đúng như anh hoctro89xxx nói nhưng mạch không chạy, Nhưng khi chỉ sử dụng 1 con NOT rồi sau đó cho qua mạch R1//R2//Diode (220K//33K//diode)... như anh hoctro89xxx nói thì mạch lại chạy bình thường . Mà thậm chí rằng bỏ cả R1,R2,Diode mạch vẫn chạy.
Tức là mạch bây giờ đơn giản chỉ là Chân DI ( chân 4 của MAX485) qua 1 con NOT sau đó đi đến chân 2,3 của Max485. Như vậy là chạy bình thường. Không hiểu tại sao lại như vậy. Liệu như vậy thì mạch có chạy ổn định không. Hiện tại thì em chưa phát hiện ra lỗi. Rất có thể sau này sẽ có lỗi. Anh hoctro89xxx có thể chỉ giúp cho em được không.
còn mạch đủ cả tụ, trở và 1 NOT tôi đã sản xuất 50 chiếc, đã cho chạy liên tục cả 50 chiếc 24h/24h/3 tháng, cả 50 chiếc này luôn có tín hiệu data qua lại-----> chưa thấy lỗi gì cả-----> thật tuyệt vời
email:mahaco@fpt.vn
Comment
-
anh ngô bắc hải có biết nhiều về logic mờ hay fuzzy logic ko ?
em đang tìm hiểu nó nhưng hỗng thấy tài liệu tiếng việt nào.
anh có thể giúp em chứ?
Tài liệu anh có thể gửi cho em qua địa chỉ: anhtuan_spkt03@yahoo.com
Em cảm ơn lắm lắm!
Comment
-
Máy tính, giao tiếp với VDK qua mạng 485
Không hiểu con diode có vai trò gì mà khi em mắc theo chiều ngược hay chiều xuôi mạch vẫn chạy. Cái mạch mà anh hoctro89xxx sử dụng đã chạy ổn 3 tháng thì mắc như thế nào.Nguyên văn bởi hoctro89xxx Xem bài viếtHic, định post lại là chỉ cần 1 NOT ( hay 3 NOT). mạch gin của nó còn nhiều thứ khác nhưng qua thực tế đã lược bớt như thế. với loại chỉ dùng 1 NOT và bỏ hết trở tụ... Tôi chỉ làm 1 mạch và hiện vẫn chạy--> chưa vấn đề gì.
còn mạch đủ cả tụ, trở và 1 NOT tôi đã sản xuất 50 chiếc, đã cho chạy liên tục cả 50 chiếc 24h/24h/3 tháng, cả 50 chiếc này luôn có tín hiệu data qua lại-----> chưa thấy lỗi gì cả-----> thật tuyệt vời
Comment
-
Mắc diode quay Anode vào NOT.Nguyên văn bởi picachu Xem bài viếtKhông hiểu con diode có vai trò gì mà khi em mắc theo chiều ngược hay chiều xuôi mạch vẫn chạy. Cái mạch mà anh hoctro89xxx sử dụng đã chạy ổn 3 tháng thì mắc như thế nào.
email:mahaco@fpt.vn
Comment
-
Cám ơn anh hoctro89xxx nhé.Nguyên văn bởi hoctro89xxx Xem bài viếtMắc diode quay Anode vào NOT.
Comment
-
Không có gì!Nguyên văn bởi picachu Xem bài viếtCám ơn anh hoctro89xxx nhé.
Ngày xưa mới tìm hiểu, thấy sơ đồ nó bắt viết phần mềm điều khiển chân 2 và 3 IC75176--> ngại --> bỏ. thời gian sau kiếm được cái mạch này--> quá hay, chỉ việc truyền RS232 như bình thường.
Sắp tới sẽ cho ra mắt sản phẩm:
1.RS232 <-> RS485
2.RS485 <-> RS485
HI vọng sẽ bán được nhiều!
email:mahaco@fpt.vn
Comment
-
BAc haibac oi coi lai dum cai link tren thu,em vao ma co thay chi dau.Hau la bac gui cho em nhe huunghiaonline@gmail.comNguyên văn bởi ngohaibac Xem bài viếtChào các bạn.
Trong thời gian qua tôi hơi bận nên chưa tiếp tục chủ đề này được. Có lẽ phần mềm Visual Basic mọi người khá thông thạo thì không phải bàn cãi gì nữa. Tôi xin gửi cho mọi người chương trình khá đơn giản để gửi kí tự mình đánh từ bàn phím qua RS232 đến vi điều khiển:
http://luckytoki.com/haibac/download...SerialPort.rar

em cam on bac nhieu
Comment
-
Chào bạn.
Tài liệu về RS232 mình upload tại đây:
http://www.esnips.com/web/UARTBac
Chúc các bạn thành công.Technical sale at WT Microelectronics S'pore
Hỗ trợ dự án sử dụng các hãng Texas Instrument, STMicro, Freescale, Fairchild, International Rectifier, Ublox, Lumiled, Maxim
Liên hệ: 0915.560.511 hoặc ngo.haibac@wtmec.com
Comment
Bài viết mới nhất
Collapse
-
bởi theidiotcatViệc lựa chọn một chiếc laptop gaming phù hợp với nhu cầu, ngân sách chưa bao giờ là dễ dàng. Và điều đó càng khó hơn trong năm 2026 khi mà mức giá liên tục tăng.
Nếu bạn chưa biết nên chọn một chiếc laptop gaming như thế nào...-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 10:29 -
-
bởi theidiotcatVới mức ngân sách 20 - 30 triệu đồng trong năm 2026, các bạn sinh viên và dân văn phòng có thể tìm thấy nhiều lựa chọn cao cấp, mạnh mẽ, pin “trâu”, đặc biệt là các mẫu laptop AI hỗ trợ cho học tập và làm việc.
Trong phân...-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 10:25 -
-
bởi theidiotcatDưới đây là một số mẫu laptop nổi bật trong phân khúc dưới 20 triệu giúp các bạn văn phòng, sinh viên và đặc biệt là tân sinh viên có thể dễ dàng lựa chọn được mẫu laptop phù hợp với nhu cầu và ngân sách của mình.
Thị...-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 10:07 -
-
bởi theidiotcatViệc chọn mua một bộ máy tính phục vụ cho các nhu cầu làm việc văn phòng và sử dụng cơ bản hàng ngày đang trở nên dễ dàng và tiết kiệm hơn bao giờ hết. Thay vì phải đau đầu trích ngân sách để mua cả vi xử lý lẫn card đồ họa rời...
-
Channel: Đánh giá sản phẩm DTVN
25-06-2026, 11:23 -
-
bởi theidiotcatViệc nâng cấp từ một dàn máy tính cũ lên cấu hình mới luôn khiến nhiều người đắn đo về mức chi phí bỏ ra. Nếu bạn đang tìm kiếm một sự lột xác hoàn toàn về hiệu năng mà vẫn cân đối được dòng tiền, combo giữa vi xử lý Ryzen...
-
Channel: Đánh giá sản phẩm DTVN
25-06-2026, 11:06 -
-
Trả lời cho Lực dọc trục làm hỏng ổ bi.bởi nguyendinhvanVí dụ một trang như thế này
...-
Channel: Điện tử công suất
24-06-2026, 19:57 -
-
Trả lời cho Lực dọc trục làm hỏng ổ bi.bởi nguyendinhvanỔ bi có loại chịu lực dọc, loại chịu lực ngang.
Bạn kiếm một quyển Data cũng một hãng vòng bi nào đó. Họ sẽ cấp cho bạn đủ thông số kỹ thuật.
Khi lựa chọn được mã sản phẩm, bạn chỉ việc tìm mua mã đó, hoặc đặt hàng....-
Channel: Điện tử công suất
24-06-2026, 19:52 -
-
bởi GargiChào mọi người, tôi đang gặp một vấn đề kỹ thuật và muốn được nghe ý kiến của mọi người.
Tôi đã lắp một đĩa xích vào trục đầu ra của hộp số hành tinh bánh răng xoắn dùng cho truyền động xích. Sau vài tháng hoạt động, ổ bi đầu ra bị hỏng.
Bản thân...-
Channel: Điện tử công suất
24-06-2026, 13:22 -
-
bởi vi van phamSau hàng chục năm, không biết có ai còn nghĩ gì về tôi? Riêng tôi, nhớ nhiều về dientuviet nam. net. Ngày ấy tìm 1 người bạn đam mê về điện từ khó như trúng số độc đăc. Tôi đã trúng số độc đắc khi được mời về dientuvietnam.net...
-
Channel: Tâm tình dân kỹ thuật
23-06-2026, 22:43 -
-
bởi FotiniChào mọi người.
Cấu trúc khung giàn của tôi sử dụng một động cơ servo tích hợp trên mỗi trục (https://www.oyostepper.es/category-8...integrado.html), với một dây nối đất chung.
Việc kích hoạt từng trục riêng lẻ hoạt động tốt, nhưng...-
Channel: Điện tử dành cho người mới bắt đầu
18-06-2026, 14:03 -

Comment