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 bằng Visual Basic. (http://www.picvietnam.com/forum/showthread.php?t=869)

ngohaibac 13-01-2007 11:34 PM

Giao tiếp RS232 trên PC bằng Visual Basic.
 
1 Attachment(s)
Chào các bạn.

Mình mở luồng này để hướng dẫn các bạn lập trình giao tiếp RS232 bằng phần mềm Visual Basic 6.0 của Microsoft.

Do site tailieuvietnam.net đang có vấn đề về nhỏ nên mình không upload file lên đó được. Tuy nhiên mình vẫn upload chương trình viết bằng VB để các bạn tham khảo.

Giao diện của chương trình như sau:

http://i36.photobucket.com/albums/e4...t/PVN_0112.gif

Hình 1: Giao diện chương trình đơn giản thứ 1 dùng VB.

Chương trình này là một ví dụ nhỏ bạn truyền một loạt byte rùi nhận về (mình nối 2 chân 2 và 3 để test chương trình). Các bạn có thể ứng dụng nó trong mạng truyền thông dùng các giao thức truyền khác nhau. Trong ví dụ của mình truyền đi 11 byte gồm 1 byte start, 8 byte dữ liệu, 1 byte CRC, 1 byte stop.

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

odi 17-01-2007 03:34 PM

Bạn có thể nói rõ hơn một chút về cách tính CRC trong VB cho tớ được không? Thanks.

bta 18-01-2007 10:48 AM

Luồng mới hay wa. Tớ muốn hỏi về truyền, nhận theo khung truyền dùng giao thức Modbus? Tức là cần tính mã kiểm lỗi của khung nhận được và so sánh mã kiểm lỗi của khung truyền. Nếu giống thì truyền tiếp, còn ko thì gửi yêu cầu truyền lại. Thanks.

ngohaibac 20-01-2007 01:26 AM

Trích:

Nguyên văn bởi odi (Post 6909)
Bạn có thể nói rõ hơn một chút về cách tính CRC trong VB cho tớ được không? Thanks.

Chào bạn.

Rất cảm ơn sự quan tâm của bạn đến chủ đề này. Việc lập trình truyền nhận theo một giao thức nhất định rất có ích cho các dự án về Mạng truyền thông công nghiệp hay tự động hoá toà nhà,...

Tuy nhiên, mình chưa lập trình xử lý kiểm soát lỗi CRC trong VB. Mình sẽ xem xét help MSDN rùi trao đổi với các bạn sau. Bạn nào nghiên cứu trong VB rùi xin post lên để cho mọi người cùng tham khảo học tập.

Mình xin đưa ra một vài thông tin về mã kiểm lỗi CRC:

Đầu tiên các bạn chọn một đa thức phát G được qui ước dưới dạng nhị phân tức các hệ số của nó chỉ có giá tri 1 hoặc 0 tương ứng với các chữ số trong một dãy bit.

Ví dụ:
Dạng đa thức: G = x^7 + x^6 + x^5 + (0x^4 + 0*x^3) + x^2 + (0*x^1) + 1
Dạng nhị phân: G = 1 1 1 0 0 1 0 1

Nguyên tắc cơ bản của phương pháp mã hoá CRC:
Trích:

  • Giả sử đa thức G có bậc n, ví dụ x^3 + x + 1 tương ứng với dãy bit {1011}. Dãy bit mang thông tin nguồn I được thêm vào n bit 0 và coi như một đa thức nhị phân P. Ví dụ thông tin nguồn là {110101} tgù sau khi thêm 3 bit 0, ta có dãy bit {110101000} tương ứng với đa thức P = x^8 + x^7 + x^5 + x^3.
  • Đa thức P được chia cho đa thức G dựa vào các qui tắc đơn giản của phép trừ không có nhớ (chính là phép XOR từng bit) (trừ 2 số bằng nhau kết quả = 0, trừ 2 số khác nhau kết quả = 1).
  • Không cần quan tâm tới kết quả của phép chia, phần dư R của phép chia được thay thế vào chỗ của n chữ số 0 bổ sung trong P, tức là ta có D = P + R. Theo tính chất của phép chia đa thức nhị phân, nếu D-R chi hết cho G thì D = P + R cũng vậy. D chính là dãy bit được gửi đi thay cho I.
  • Giả sử dãy bit nhận được là D' không chia hết cho G thì tức là D khác với D', ta có thể khẳng định được bức điện chắc chắn bị lỗi. Ngược lại, nếu D' chi hết cho G thì xác xuất rất cao là bức điện nhận được không có lỗi. Ta nói "xác suất cao", bởi mỗi bit trong thông tin nguồn tham gia nhiều vòng (cyclic) vào tính toán thông tin bổ trợ nên khả năng "dữ kiện" sai mà kết quả đúng" là rất it.

(Trích Pgs. Ts. Hoàng Minh Sơn - "Mạng truyền thông công nghiệp" NXB KHKT 2006)

Dựa trên nguyên tắc này các bạn có thể tạo ra ý tưởng cho việc lập trình của mình đó.

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

bta 29-01-2007 03:13 AM

Crc
 
1 Attachment(s)
Theo như một bài tớ được bít thì mã kiểm lỗi CRC có thể dùng bảng để tra giá trị thay vì phải tính toán. Bảng CRC thì có rất nhiều trên mạng. Đây là một ví dụ về cách dùng bảng CRC trong VB. Bạn nào có ý kiến hay thì đưa lên nhé.Thanks.

signin 20-04-2007 10:03 PM

Crc
 
Gởi Anh Hải Bắc!

Em Muốn dùng phương pháp kiểm tra lỗi CRC, Em có hiểu phương pháp này nhưng thực sự không biết cách chọn đa thức sinh, Anh có thể chỉ không? em muốn dùng 1 byte cho CRC

ngohaibac 21-04-2007 12:08 PM

Chào em.

Đa thức sinh em có thể chọn tùy ý mà em. Quan trọng là 2 bên truyền và nhận phải cùng kiểu mã hóa CRC để việc kiểm lỗi là đúng em ạ.

Em dùng CRC 1 byte thì chọn G là đa thức bậc 8.

Chúc em thành công.

signin 14-05-2007 06:37 PM

Mấy hôm nay Em thi nên không lên mạng được, Cảm ơn Anh Hải Bắc nhiều!

seraph 18-05-2007 01:31 AM

may dai ca! em dang lam do an dieu khien dco buoc co giao tiep may tinh xai VB, co su phu nao lam rui chi giup em voi! Hix, em dang gap lam. co file up len cho em thi cang tot. Xin da ta!!!!

moihocpic1985 29-05-2007 08:09 PM

Cac anh co kinh nghiem lam viec voi ca 2 phan mem VB 6 va Visual C++ roi co the chi cho toi biet giua 2 phan mem co diem gi khac nhau, uu nhuoc diem trong dieu khien? Nen hoc phan mem nao de co the dap ung khi di lam ngoai thuc te? Thanks

controlufo 02-07-2007 05:26 PM

1 ứng dụng access cần giúp đỡ 1 đoạn vb giao tiếp rs232
 
1 Attachment(s)
các bạn thân :

cả tháng qua tui theo dõi cái mục này rùi áp dụng vào cái chương trình của tui mà sao giờ này nó vẫn chưa chạy oải wá trời đành phải nhờ các bạn code dùm thui chư mò chắc tới tết nguyên đán wá ...

tui viết code vb trong access ...sử dụng mscomm32.ocx đã đăng ký ổn
cáp từ thiết bị ngoại vi xuất từ com 25 pins vào máy ở com 9pins

các bạn code dùm mình đưa số liệu vào ô "chisocan" trong form "nhap" nhé ..
mình thực sự đắp chiếu .com rùi

sau đây là cái đoạn code dở hơi của mình :

Code:


Option Compare Database
    Dim inputstring As String

Private Sub chiso_Click()
   
 
    MSComm1.Settings = "9600,N,8,1"
    MSComm1.CommPort = 1
    MSComm1.PortOpen = True
    inputstring = MSComm1.Input
    MSComm1.Handshaking = 3
    Forms!nhap!chisocan = MSComm1.Input
    MSComm1.PortOpen = False
   

End Sub

bạn nào có cái đầu bác học muốn hướng dẫn cho tui xin vui lòng mail hoặc chát google talk và yahoo messenger trực tiếp cho tui qua nick controlufo@yahoo.com controlufo@gmail.com

xin chân thành cám ơn tiger bể đã tài trợ chương trình này hihihihhiiiiii

hopeman 02-07-2007 05:55 PM

thực sự là một chuyên mục rất thú vị của bác ngohaibac

ngohaibac 09-07-2007 09:31 AM

Chào bạn controlufo.

Chương trình của bạn như thế là hoàn toàn không ổn rùi. Các thông số thiết lập cho MSCOMM thì bạn phải thiết lập ngay từ đầu chứ.

Còn dữ liệu nhận từ RS232 bạn nên viết trong hàm ngắt. Chứ tự nhiên bạn inputstring = MSComm1.Input thì dữ liệu ở đâu mà nhận nhỉ :D. Với lại setting cho đối tượng mscomm đó cũng không đúng.

Chương trình đơn giản khác bạn xem tại đây:
http://dientuvietnam.net/forums/showthread.php?t=5281

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

controlufo 09-07-2007 12:29 PM

thua rùi manager ngohaibac ui
 
1 Attachment(s)
tui sưu tầm các hướng dẫn của mr maneger(ngohaibac) đem áp dụng sài không được trong form access
form nhap
texbox vao

tui có gửi file access kèm theo mong manager box """"design"""" lại dùm ....giúp tui đi tui chuyển sang dề tài khác ngâm cứu chứ cái vụ này lấy của tui mất hơn 1 tháng rùi ngohaibac ui...


Code:

Dim x As Variant

Private Sub Form_Load()
On Error Resume Next
With MSComm1
If .PortOpen = True Then .PortOpen = False
.CommPort = 2
.Settings = "9600,N,8,1"
.InBufferSize = 2000
.InputLen = 0
.OutBufferSize = 64
.PortOpen = True
End With
End Sub

Private Sub Timer1_Timer()
Timer1.Enabled = False
MSComm1_OnComm
Timer1.Enabled = True
End Sub

Private Sub MSComm1_OnComm()
With MSComm1
If .InBufferCount >= 1 Then
x = MSComm1.Output
Forms!nhap!vao = x
End If
End With
End Sub



mong hồi âm
xin chân thành cám ơn....chúc công việc vui vẻ

ngohaibac 09-07-2007 05:03 PM

Code:

Forms!nhap!vao = x
là cái gì đó hả bạn?

Nếu là editbox thì phải gán vào thuộc tính text của nó chứ nhỉ ? Bạn xem lại nhé.
Sao bạn k upload của project của bạn lên để mình xem chứ.

Đề nghị viết tất cả code trong tag code cho dễ nhìn nhé.

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

signin 12-07-2007 11:44 AM

Kính gởi: anh Hải Bắc !

Em tên là Trung, học ngành cơ khí. Em đang làm đồ án tốt nghiệp, hiện em đang gặp sự cố ở khâu truyền dữ liệu từ máy tính xuống vi điều khiển 89S52. Em đã làm đi làm lại nhiều lần nhưng không được.

Mong anh Hải Bắc xem giúp source code và hướng dẫn dùm em. Vào ngày 18 tháng 7 em bảo vệ đồ án tốt nghiệp, chỉ còn trục trặc ở khâu này thôi !

Anh có thể chỉ em:
• viết code cho visual basic truyền được khoảng 10 byte hex mà vi điều khiển nhận được
• viết code cho vi điều khiển 89S52 nhận đươc 10 byte hex do visual basic gởi
Và cho em hỏi :
• Khi vi điều khiển gởi đi nội dung “0FFh” thì máy tính nhận được ký tự gì, và ngược lại.

Cảm ơn anh Hải Bắc nhiều, thật sự em rất ngưỡng mộ anh, chúc anh luôn vui vẻ và hạnh phúc !

Code:
Code:

org        000h
                ljmp        main
       
                org        0023h
                ljmp        ngat_noitiep

                org        0030h

main:                mov        p1,#0
                mov        TMOD,#20h                        ; bo dinh thoi 1 che do 2
                mov        TH1,#-3                        ; gia tri nap lai
                setb        Tr1                                ; bo dinh thoi hoat dong
                mov        SCON,#01010010b               
                mov        IE,#90h                        ; cho phep ngat noi tiep
                sjmp        $

ngat_noitiep:
                mov        p1,#0ffh
                clr        TI
reti
end

Code:

Code:
        Private Sub cmdPause_Click()
MSComm1.Output = "0"
End Sub

Private Sub cmdPlay_Click()
MSComm1.Output = "1"
End Sub

Private Sub Form_Load()
With MSComm1
.Settings = "9600,N,8,1"
.RThreshold = 1
.SThreshold = 0
.InBufferSize = 1024
.OutBufferSize = 1024
.InputMode = comInputModeText
.ParityReplace = ""
.CommPort = 2
If .PortOpen = False Then
.PortOpen = True
End If
End With
End Sub
Private Sub MSComm1_OnComm()
    Dim Buffer As String
    Dim size As Byte
    Dim c As Integer
    Dim i As Integer
    Dim chay As Integer
    Text1.Text = ""
             
        If MSComm1.CommEvent = comEvReceive Then ' n?u là s? ki?n truy?n
            Buffer = MSComm1.Input
            Text1.Text = Mid(Buffer, 1, 1)
        End If
 End Sub


ngohaibac 12-07-2007 12:05 PM

Trích:

Khi vi điều khiển gởi đi nội dung “0FFh” thì máy tính nhận được ký tự gì, và ngược lại.
Nếu bạn hiển thị kí tự đó thì nó sẽ tương ứng với kí tự có mã ASCII = 0xFF. Thực tế giá trị này sẽ được lưu vào 1 byte nên bạn có thể không cần quan tâm nó là kí tự gì mà vãn truyền nhận đúng giá trị.

Trích:

ngat_noitiep:
mov p1,#0ffh
clr TI
reti
end
Code trên vi điều khiển thế này là hỏng rùi. Vì bạn biết ngắt truyền, khi thanh ghi bộ đệm truyền rỗng thì sẽ nhảy vào ngắt nối tiếp. Khi truyền xong nó lại nhảy vào đây. Vậy không nên dùng ngắt truyền.

Bạn chỉ nên dùng ngắt nối tiếp khi nhận dữ liệu mà thôi. Nhớ xóa cờ nhớ RI nhé.

Còn chương trình trên PC chắc OK rùi. Bạn xem thếm code tại đây:
http://dientuvietnam.net/forums/showthread.php?t=5281

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

controlufo 12-07-2007 05:49 PM

giúp tui lun đi ,,tui viết vb trong access mà
 
1 Attachment(s)
bạn ngohaibac biết thì chỉnh dùm tui lun đi
chương trình tui gửi kèm theo lun đó
mình bên trường tự nhiên nên cái khoản truyền thông qua thiết bị này các thày cô cũng chẳng giúp gì cho tui được đành phải nhờ bạn thui


bạn bung file codedum.rad chỉnh lại đoạn code dùm nhe
form trong acess khác trong vb
nếu bạn biết giúp tui trọn bộ nhe

form chỉ có 1 ô textbox "vao" liệu tui có lấy được số liệu cân từ đầu dọc toledo được không


mong hùi âm

thank

VNArmy 12-07-2007 10:13 PM

Muốn đọc dữ liệu từ đầu cân thì không đơn giản đâu. Bởi vì mình đâu có biết được format dữ liệu của đầu cân. Để debug format dữ liệu này bạn cần phải có thiết bị đầu cân thật và dùng Hyper terminal mà debug.
Chúc thành công.

ngohaibac 13-07-2007 08:00 AM

To controlufo:

Chào bạn.

Mình đã hướng cho bạn suy nghĩ và tìm hiểu rùi mà. Như thế này nhé, bạn sẽ làm như sau:

- Đầu tiên test xem module UART của 8051 có hoạt động ok không bằng cách đầu tiên gửi lên PC, sau đó tiếp tục là PC gửi xuống và vi điều khiển nhận được gì thì gửi lại luôn. Bạn dùng Hyper Terminal để debug. Bạn cần đọc lại module UART trong 8051, cái này thì rất đơn giản rùi, sách vở nào cũng nói cả.

Bạn đọc thêm 8051 Tutorial: Serial Communication tại đây:
http://www.8052.com/tutser.phtml nói quá dễ hiểu và đơn giản. Hoặc search google với từ khóa 8051 uart

- Sau khi xong code trên 8051 bạn làm lại trên PC gửi dữ liệu xuống 8051. Sau đó mới phát triển lên là gửi 10 kí tự và đọc 10 kí tự.


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

hieucdtspk 24-07-2007 09:14 PM

Lựa chọn cổng còn trống...
 
Chào Hải Bắc và mọi người!
Các bài viết của bạn rất hay. Mình cũng đang nghiên cứu về truyền dữ liệu qua cổng COM bằng VB, mọi thứ OK, nhưng mình còn một rắt rối nhỏ, mong Bắc chỉ giúp!
Trong các bài viết, có một bài Bắc nói về việc kết nối sẽ bị lỗi nếu cổng đó đang bị sử dụng bởi một ứng dụng khác.
Nếu nhận ra cổng nào đang bị chiếm dụng và set qua cổng khác bằng tay thì không có gì đáng nói. nhưng ở đây, mình muốn chương trình tự động lựa chọn cổng còn trống mà thiết lập kết nối với nó. mò mẫm trong các thuộc tính của MSCOMM thì chẳng thấy. mình muốn công việc này thực hiện tự động bằng cách kiểm tra thuộc tính nào đó của MSCOMM (nếu có) trước khi thực hiện .PortOpen = True.
Bắc và các bạn biết vấn đề này thì chỉ giúp tớ nhé!
Cám ơn nhiều lắm...

ngohaibac 25-07-2007 02:15 AM

Chào bạn.

Vấn đề này mình đã làm good rùi. Mình đã làm với VC++.net hay VC++ 6.0 cũng thế.

Để mình xem lại code và upload lên đây cho bạn sau nhé. Code này dùng hàm API chứ không có trong thuộc tính nào của MSCOMM đâu.

Bạn có thể qua bên luồng về lập trình bằng VC++.Net

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

ngohaibac 25-07-2007 10:35 AM

Chào bạn.
 
Đây là code để test xem một port có tồn tại hay là không tồn tại hoặc đang bị ứng dụng khác chiếm giữ bằng cách dùng hàm API là CreatFile. Bạn dễ dàng tra đối số của nó trong MSDN.

Visual C++ hoặc Visual C++.Net
Code:

bool CRS232Dlg::COMAvailable(int COMNum)
{
        HANDLE hCOM;
        CString portName;

        portName.Format(_T("COM%d "),COMNum);
 
        hCOM = CreateFile(portName,  // Specify port device: default "COM1"
                                                GENERIC_READ | GENERIC_WRITE,      // Specify mode that open device.
                                                0,                                  // the devide isn't shared.
                                                NULL,                              // the object gets a default security.
                                                OPEN_EXISTING,                      // Specify which action to take on file.
                                                FILE_ATTRIBUTE_NORMAL,              // default.
                                                NULL);                              // default.

        if (hCOM == INVALID_HANDLE_VALUE){
                return false;
        }
        else{
                BOOL ret = CloseHandle(hCOM);
                return true;
        };
}

Visual Basic:
Code:

'// Return TRUE if the COM exists, FALSE if the COM does not exist
Public Function COMAvailable(COMNum As Integer) As Boolean
    Dim hCOM As Long
    Dim ret As Long
    Dim sec As SECURITY_ATTRIBUTES

    '// try to open the COM port
    hCOM = CreateFile("\.\COM" & COMNum & "", 0, FILE_SHARE_READ + _
        FILE_SHARE_WRITE, sec, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0)
    If hCOM = -1 Then
        COMAvailable = False
    Else
        COMAvailable = True
        '// close the COM port
        ret = CloseHandle(hCOM)
    End If
End Function

Tham khảo: http://www.developerfusion.co.uk/show/21/2/

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

toanck86 08-11-2007 09:02 PM

sao luồng này dừng luôn vậy các bác, em đang theo dõi và học về lập trình giao tiếp qua cổng com, bác nào có chương trình gì hay up lên cho mọi người tham khảo trap đổi nhé

tienbkit 03-03-2008 09:31 PM

Cho mình hỏi thêm chút:
Nếu như mình sử dụng bắt tay bằng phần mềm (dùng 2 tín hiệu Xon & Xoff) thì chỉ cần thiết lập chế độ này( MSComm1.Handshaking = comXOnXoff) là các thiết bị tự động thực hiện hay có cần điều khiển thêm gì ko?

Longnguyen 08-03-2008 02:43 PM

Anh Bac xem lai gium. Chuong trinh Rs232.exe khong chay duoc.

lttet 17-03-2008 10:23 PM

Xin chào ! cho em hỏi cách truyền file qua cổng com như thế nào nhỉ? em đang làm đề tài này ! mấy anh giúp em với ! Dùng bằng VB.

ltpbkis 18-03-2008 11:21 AM

tôi cũng đang làm đồ án vi xử lý liên wan đến giao tiếp PC va VB va vi xử lý.bác nào cho tôi biết nguyên lý để PC nhận dữ liệu từ VXL lên PC rồi lại hiện wa giao dien VB như thế nào?và nếu có mã nguồn thì cho tôi với. VXL tôi dùng PIC

ha_vy_cson 30-03-2008 08:09 PM

các bác ơi! cho em hỏi một tý...
em đang lập trình giao tiếp giữa pc và pic 16f877a, em muon truyen một chuổi từ máy tính bằng vb6 đến pic thi nên viết code trên VB như thế nào và viết hàm nhận trong ccs như thế nào........

quoctrung 31-03-2008 03:49 PM

chào bác ngohaibac bác có thể giúp mình 1 số tài liệu về lập trình vb giao tiếp bằng cổng com với plc s7200 và mình dùng phần mềm pc acess để upload từ plc lên máy tính để giám sát mong bạn giúp mình

89c2051 04-04-2008 11:34 AM

anh Bắc ơi ,giúp em đổi data dạng C ( 0x00,0xAF, 0xFF,...) lưu trong 1 file font ra dạng mã hex tương ứng mà VB6 có thể truyền qua cổng com được ấy (&H00,&HAF,&HFF,...),em muốn load nó để gửi xuống bảng điện tử ! cảm ơn anh trước nha ( cái này em bó tay.com lun )

namqn 04-04-2008 06:35 PM

Trích:

Nguyên văn bởi 89c2051 (Post 15331)
anh Bắc ơi ,giúp em đổi data dạng C ( 0x00,0xAF, 0xFF,...) lưu trong 1 file font ra dạng mã hex tương ứng mà VB6 có thể truyền qua cổng com được ấy (&H00,&HAF,&HFF,...),em muốn load nó để gửi xuống bảng điện tử ! cảm ơn anh trước nha ( cái này em bó tay.com lun )

Nếu bạn có thể đọc được tập tin text đó, bạn chỉ cần dò chuỗi "0x", sau đó lấy ký tự thứ nhất chuyển thành 1 nibble (4-bit), dịch trái nó 4 bit, rồi cộng với kết quả chuyển ký tự thứ hai thành 1 nibble, sau đó tìm chuỗi "0x" kế tiếp, và tiếp tục quy trình. Như vậy bạn sẽ có các giá trị hex chính xác.

Tôi cho là các ngôn ngữ lập trình cấp cao đều có sẵn công cụ để bạn làm các việc trên.

Nếu bạn chỉ muốn chuyển dạng 0x00 thành &H00 thì chỉ cần Notepad và lệnh Replace.

Thân,

nguyenchituyen 06-04-2008 06:05 PM

code vb giao tiep wa cong RS232
 
1 Attachment(s)
code co day du thong tin wa cong M trong VB va co API do tim cong COM

namqn: đề nghị bạn viết tiếng Việt có dấu.

thaptinhtamdang 15-05-2008 09:05 PM

Các bác giúp em với.Bác nào chỉ giúp em cách viết chương trình (bằng VB hay C# cũng được) để truyền dữ liệu qua cổng COM trên laptop với.
Nếu là PC, để truyền dữ liệu cho chính mình (kiểu tự mình chat với mình) thì chỉ cần truyền dữ liệu cho chính mình bằng cổng COM (nối chân 2,3) nhưng trên laptop thi làm thế nào??

namqn 16-05-2008 05:32 AM

Trích:

Nguyên văn bởi thaptinhtamdang (Post 16241)
Các bác giúp em với.Bác nào chỉ giúp em cách viết chương trình (bằng VB hay C# cũng được) để truyền dữ liệu qua cổng COM trên laptop với.
Nếu là PC, để truyền dữ liệu cho chính mình (kiểu tự mình chat với mình) thì chỉ cần truyền dữ liệu cho chính mình bằng cổng COM (nối chân 2,3) nhưng trên laptop thi làm thế nào??

Nếu diễn đàn có mục bầu chọn "Câu hỏi ngây thơ nhất trên diễn đàn" thì tôi xin đề nghị câu hỏi này của bạn.

Cổng COM của PC hay laptop đều là cổng COM. Ở trên PC bạn nối chân 2 và 3 để tự trả dữ liệu được truyền về thì trên laptop bạn cũng làm như vậy (kiểu này được gọi là loopback connection, hay được các phần mềm thử nghiệm phần cứng thời xa xưa sử dụng khi kiểm tra các cổng COM).

Thân,

dungoc1 02-06-2008 11:51 PM

a Bac oi. em dang lam de tai ve ADC. Chuong trinh la: viet chuong trinh thu du lieu qua cong may in. viet bang visual basic. so do gom co ADC0809, vi mach 74LS257, senso nhiet LM335 va sung clock vi mach 555. anh giup em voi

tiendungkct 13-08-2008 10:26 AM

em lập trình giao tiếp pic với pc mắc lổi như sau:
-truyền kí tự từ máy tính xuống nếu trên 3 ki tự thi pic chỉ nhận được 3 kí tự va đơ luôn
- nếu dưới 3 ký tự thì nhận đúng ( em hiện thị lên lcd )
mong các bác chỉ giúp em a .

bengan 26-09-2008 01:25 AM

giao tiếp RS232
 
thanks các bạn nhiều, có bạn nào có tài liệu lập trình pic bằng vb.net ko?

namqn 26-09-2008 02:48 AM

Trích:

Nguyên văn bởi bengan (Post 19103)
thanks các bạn nhiều, có bạn nào có tài liệu lập trình pic bằng vb.net ko?

Tôi tin rằng hiện thời chưa có trình biên dịch VB.net nào cho PIC, do đó có lẽ không tồn tại tài liệu mà bạn hỏi.

Thân,

TADUCHAI 02-10-2008 12:48 AM

sao bác Bắc ko làm một bài hưỡng dẫn như đã làm với C++ để anh em (nhưng ngừoi mới bắt đầu như tôi) có thể dễ tiếp thu và học hỏi nhỉ. Mong bác có thể sớm làm để tụi tôi có thể học hỏi. Thank U bác nhiều


Múi giờ GMT. Hiện tại là 03:54 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