PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Giao tiếp cổng COM và LPT (http://www.picvietnam.com/forum/forumdisplay.php?f=44)
-   -   Giao tiếp RS232 trên PC (http://www.picvietnam.com/forum/showthread.php?t=274)

ngohaibac 04-01-2006 08:00 PM

Giao tiếp RS232 trên PC
 
2 Attachment(s)
Chào các bạn tôi xin đưa cho các bạn chương trình mẫu để giao tiếp với RS232 trên PC. Chương trình này tôi viết bằng Visual C++ trong bộ Microsoft Studio 6.0 của Microsoft, các bạn dịch lại ra file .exe để chạy. Phần hướng dẫn chi tiêt tôi sẽ gửi sau khi được kiểm duyệt kĩ lưỡng. Chương trình này còn đơn giản. Sẽ có nhiều phiên bản sau ra đời.

Giao diện chương trình như sau:
Hình 1: Giao diện chương trình

Chương trình có chức năng sau:

- Nhập kí tự hoặc xâu kí tự vào EditBox Transfer, điều chỉnh tham số giao tiếp trên các ComboBox. Nhấn nút Send để gửi dữ liệu ra cổng COM.

- Đồng thời với nó nếu có dữ liệu truyền vê cổng Com thì dữ liệu sẽ được hiển thị lên EditBox Receive. Khi bạn nhấn vào Clear thì sẽ xoá dữ liệu hiển thị trên EditBox này

Chú ý:

Để có thể test luôn chương trình các bạn nối tắt chân 2 và chân 3 của RS232 lại với nhau chính là nối chân RxD và TxD để chúng ta truyền dữ liệu ra RS232 sau đó nhận dữ liệu luôn.


http://luckytoki.com/haibac/download.../rs232_pin.gif
Hình 2: Sơ đồ đấu chân của RS232

Chúc các bạn thành công.

ngohaibac 10-01-2006 09:10 PM

Tài liệu TUT01.03.PVN.NOHB.100106
 
Chào các bạn, sau một số ngày cung phu làm TUT này, cuối cùng TUT cũng được anh Falleaf phê duyệt.

TUT này là về cách lập trình giao tiếp RS232 trên PC bằng công cụ Visual C++ 6.0 trong bộ Visual Studio 6.0 của Microsoft. Tài liệu có nói chi tiết về các thuộc tính của MSComm và cũng hướng dẫn rất chi tiết về cách lập trình.

Tài liệu này bao gồm 78 trang( hơi cung phu) có hình vẽ minh hoạ đầy đủ từng bước đảm bảo các bạn làm theo là được ngay.

Đây là một hình minh họa trong TUT của tôi.

Thứ nhất, kiểm tra các thuộc tính của cổng COM


Thứ hai,tạo dự án


Thứ ba,thêm thư viện MSComm:


ngohaibac 10-01-2006 10:22 PM

Thứ tư,tạo giao diện:


Thứ năm,đặt các thuộc tính cho điều khiển:


Thứ sáu.thêm các biến điều khiển:


Thứ bảy,viết mã cho chương trình:

Đây là tài liệu, xin mời các bạn down về:

http://www.picvietnam.com/download/T...OHB.100106.pdf

Chúc các bạn thành công.

VinhVT 11-01-2006 06:07 PM

Chào các Bác, mình đang cần tìm hiểu lập trình qua cổng COM mà không dùng các OCX. Bác nào biết bảo mình với, Xin trân trọng cảm ơn nhiều

ngohaibac 11-01-2006 06:20 PM

Vấn đề này thì bạn phải dùng các hàm API. Vấn đề này bạn có thể mua quyển "Lập trình Windows" của tác giả nào đó mình không nhớ.

Vấn đề này tôi đang làm để có thể viết một thư viện cho PVN. Thư viện liên kết động có chức năng như MSComm nhưng độ ổn định cao hơn, tôi hoàn toàn lập trình mức hệ thống giao tiếp gần với hệ thống và các bạn dùng thư viện này tương tự như qua trung gian MSComm. Nhưng thư viện này là do người VN tự làm cho mình.

Thư viện này sắp sửa được đưa ra trong thời gian tới. Bạn chờ nhé.

phamhoangdung 12-01-2006 03:02 PM

Neu bac VinhVT khong muon dung OCX thi nen dung Mscomm cua Vb6 co san de ma lap trinh. Khi do ban chi can add file port.dll vao trong system cua window la co the lam duoc roi.

bkav_hcm 13-01-2006 08:19 PM

Cám ơn anh N H Bắc rất nhiều, giá mà tôi có tài liệu của anh sớm hơn thì tốt quá.

Tôi mới bắt đầu dùng VC nên không biết, mong anh Bắc và mọi người chỉ hộ, thanks!:

Khi tôi điều chỉnh lệnh
m_mscomm.SetInputMode(0); // 0 - Text Mode , 1- Binary Mode

thành:

m_mscomm.SetInputMode(1);

thì chương trình chạy không đúng

Cho tôi hỏi là nếu mình chuyển sang Binary Mode, ngoài chỉnh lệnh m_mscomm.SetInputMode như trên thì mình có cần chỉnh sửa gì nữa kô? như kiểu biến chẳng hạn...

Rất mong sớm nhận được câu trả lời của anh và mọi người, thanks!

PS: file mẫu anh gửi hơi có vấn đề, sau khi nhập data, nhấn Enter thì nó Close.

ngohaibac 16-01-2006 11:52 PM

1 Attachment(s)
Chào các bạn.

Có lẽ để cho các bạn hiểu TUT này hơn tôi xin đưa cho các bạn một link bên dientuvietnam.net để các bạn có thể hiểu thêm về giao tiếp nối tiếp này.
http://dientuvietnam.net/forums/showthread.php?t=963

còn về cái sourcecode ở trên thì tôi nói thế này: thực chất thì bạn dùng kiểu Text Mode hay là kiểu Binary Mode thì cũng đơn giản là truyền xâu kí tự qua RS232. Sau đó, có dữ liệu đến RS232 thì nhận lại và hiển thị trên màn hình. Đơn giản thế thôi.Do đó việc lựa chọn mode là không quan trọng.

Còn tại sao ấn nút Enter khi nhập xong thì thoảt khỏi điều khiển là do.Nút Exit trong chương trình này mặc định là Default. Nên khi ấn Return thì nó có tác dụng lên nút Exit.Cái này hoàn toàn giống như VB thôi.

Bạn làm như sau: kích phải chuột vào nút Send, chọn Properties.Chọn sang Tab Styles bạn check Default button

Chúc bạn thành công.

bkav_hcm 23-01-2006 09:37 AM

Thanks!
 
1 Attachment(s)
Dựa vào tài liệu của N H Bắc tôi đã viết lại chương trình cho Serial Port đơn gian hơn, post lên cho những ai mới học tham khảo ( vì chức năng ít hơn nên mới đơn giản hơn của NHB :) )

VinhVT 08-02-2006 11:58 AM

Chao các Bạn !. Bạn viết sử dụng OCX cũng rất tốt. Bạn có sample dùng API không với cổng COM thì cho mình tham khảo nhé. À, mình đang viết chương trình thu dữ liệu qua cổng COM và hiển thị ra màn hình. Nếu bạn có thì cho mình tham khảo nhé. Xin cảm ơn và hẹn gặp lại. địa chỉ mail là: viva23901@yahoo.com

ThanhPhuc 18-02-2006 02:36 PM

1 Attachment(s)
Mình có sơ đồ mạch Test cổng com dùng Pic16F876a giúp các bạn kiểm tra chương trình

linhnc308 19-02-2006 02:40 AM

Về cái giao tiếp này tôi cũng đã làm khá nhiều mạch, ,phần mềm thì viết bằng VB thôi. Nói chưng khá hay. Nhân đây, có bác nào đã làm mạch đo nhiệt độ dùng PIC và gửi dữ liệu lên máy tính chưa. Và dữ liệu đó sẽ được đưa vào một đồ thị, vẽ thanh dạng biểu đồ theo thời gian. Ở nhà tôi đã làm cái mạch đo rồi, nhưng còn khoản ghi dạng đồ thị thì chưa,ở nhà cũng có cái code mẫu họ dùng VB trông khá đơn giản,đồ thị chạy đẹp,khá ổn. Tôi thấy cái này khá hay. ta có thể lưu đồ thị đó lại,sau có thể xem lại tiến trình biến đổi nhiệt..v.v...

Noname0 19-02-2006 12:35 PM

Sao cái file pdf này download về ko mở xem được hả bác?
http://www.picvietnam.com/download/T...OHB.100106.pdf
Kiểm tra em với!!!!!!!!!!!!!!!!!!!!(Em dùng Foxit Reader)

falleaf 19-02-2006 01:05 PM

http://www.picvietnam.com/download/T...OHB.100106.pdf

Bạn chép cái link sai rồi, nên dowwnload không được là phải. hihii...

Tôi mở lên bình thường.

chúc vui.

ngohaibac 19-02-2006 01:12 PM

Trích:

Nguyên văn bởi Noname0
Sao cái file pdf này download về ko mở xem được hả bác?
http://www.picvietnam.com/download/T...OHB.100106.pdf
Kiểm tra em với!!!!!!!!!!!!!!!!!!!!(Em dùng Foxit Reader)

Cái link này download bình thường. Đây là dạng file .pdf bạn có thể mở bằng phần mềm Adobe Acrobat (bản Pro mới nhất là 7.0) hoặc là bản Acrobat Reader 7.0 (free).

Đây là link down bản Acrobat Reader 7.0: http://www.adobe.com/products/acrobat/readstep2.html

Bạn kích vào chữ download thì sẽ down được trình cài đặt này về.

Chúc bạn thành công.


Múi giờ GMT. Hiện tại là 02:25 AM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam