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)

haku039 21-09-2008 11:32 AM

Chào mọi người,mình mới bắt đầu học con 8051,mình làm theo TUT của anh ngohaibac,nhưng mình ko có code và sơ đồ mạch để truyền dữ liệu từ 8051 lên PC,bác nào giúp mình với hay mail cho minh theo địa chỉ : nguythachun@gmail.com
...thanks!!!

nhti 27-09-2008 08:13 PM

cam on mấy bác, để em về đọc đã có gì thắc mắc hôm sau em sẻ hỏi mấy bác

truongnv 29-09-2008 11:34 AM

Bac Bac va cac cao thu giup em cai truyen thong PC voi p30f4011 cai
 
1 Attachment(s)
Em muốn điều khiển tốc độ động cơ DC từ PC, PIC dùng cái UART2. Các bác giúp em xem chương trình PIC sai chỗ nào mà em k thể truyền thông được.
Cám ơn các bác nhiều nhiều.

tiendungkct 30-09-2008 10:39 AM

1 Attachment(s)
Trích:

Nguyên văn bởi ltpbkis (Post 15604)
Anh Bắc ơi ,em đã làm theo các bước trên mà vẫn không chạy được.Anh gửi cho em code mà anh viết để thực hiện chương trình cho em được không.em không hiểu làm sai ở đâu nữa mà không chạy được.em đang cần lắm ah.Cảm ơn anh!

mình cũng viết 1 ít về nó nhưng chắc chưa hay lắm bạn tham khao nha .có sai ji bạn góp ý nha

ngocvq 06-12-2008 06:05 AM

Cám ơn
 
E cảm ơn a Bắc rất nhiều!

tcoi001 06-01-2009 09:00 PM

Mình cũng đang muốn viết một phần mềm truyền thông giữa hai máy tính:có thể gửi các byte đơn (kí tự) hoặc là file text qua cho nhau dùng VB 6.0
Mình cũng mới học VB nên chưa biết nhiều. Tìm kếm trên mạng thì được đoạn code này

code:truyền kí tự
Code:

Private Sub cmdClear_Click()
    Text1.Text = ""
    Text2.Text = ""
End Sub

Private Sub cmdExit_Click()
Unload Me
End Sub

Private Sub cmdSend_Click()
    MSComm1.Output = Text2.Text
End Sub

Private Sub Form_Load()
    cmdSend.Caption = "&Send"
    Text1.Text = ""
    Text2.Text = ""
    Text1.Enabled = False
    cmdExit.Caption = "&Exit"
    With MSComm1
        .Settings = "9600,N,8,1"
        .CommPort = 1
        .RThreshold = 1
        .SThreshold = 0
        .InputMode = comInputModeText
        .InputLen = 0
        .Handshaking = comNone
        .InBufferSize = 1024
        .OutBufferSize = 1024
        If .PortOpen = False Then
          .PortOpen = True
        End If
       
    End With
End Sub

code: truyền file text

Private Sub Command1_Click()
Cdlg.DialogTitle = "Send file..."
Cdlg.Filter = "Textfile (*.TXT)|*.txt|All Files (*.*)|*.*"
Cdlg.InitDir = App.Path
Cdlg.FileName = ""
Cdlg.ShowOpen

' The Function Call
If Cdlg.FileName <> "" Then SendFile (Cdlg.FileName)

End Sub

Private Sub Form_Load()

' Opens the selected com port
MSComm1.CommPort = 1
MSComm1.PortOpen = True

End Sub


' here is the function
Function SendFile(tmp$)

Dim temp$
Dim hsend, bsize, LF&

' Open file
Open tmp$ For Binary Access Read As #2
' Check size on Mscomm1 OutBuffer
bsize = MSComm1.OutBufferSize
' Check file length
LF& = LOF(2)

' This code makes tiny pieces of data (Buffer sized)
' And send's it

Do Until EOF(2)
   
    If LF& - Loc(2) <= bsize Then
        bsize = LF& - Loc(2) + 1
    End If

    ' Make room for some data
    temp$ = Space$(bsize)
   
    ' Put the data piece in the Temp$ string
    Get #2, , temp$

    MSComm1.Output = temp$

    Do
        ret = DoEvents()
    ' Wait until the buffer is empty
    Loop Until MSComm1.OutBufferCount = 0
Loop

' close file
Close #2

End Function

Nhưng ở hai đoạn code này mình thấy đều chỉ có phần truyền kí tự và file mà chưa có phần nhận.Vậy thì chương trình có thể chạy được ko?
Ai rành về cái này có thể viết tiếp hộ mình được ko?
ah còn 1 yêu cầu nhỏ nữa là phần mềm thì phải có giao diện nữa nhỉ? có thể hướng dẫn mình cách tạo giao diện bằng tiếng việt được ko? kiểu như là một dòng ghi là: gửi file hay ki tự còn dòng dưới ghi là file hay kí tự nhận được.
Cảm ơn mọi người nhiều.
cảm ơn anh Bắc đã mở diễn đàn này cho đàn em học hỏi.
Cảm ơn!

ltt 20-01-2009 10:06 PM

tui chỉ có thể giúp bạn phần truyền kí tự thui.bạn có thể tham khảo đoạn chương trình đính kèm theo đây.Có gì không hiểu tui có thể giúp bạn

ngohaibac 27-01-2009 09:39 AM

Trích:

Nguyên văn bởi manh.1041399 (Post 17111)
Chào Ngohaibac!
Tôi là thành viên mới vào nghề nghe các thầy nói về điện tử thấy mê lấm, nhưng khổ nổi phần thực hành tôi còn yếu lắm. Bạn có thể giúp mình tiến bộ đuợc không. Tôi cũng liều thử làm đồ án xe lăng cho ngưòi già: là đề tài tự nghĩ thôi nhưng không biết bắt đầu từ đâu. Mình học cơ điện tử, nếu đuợc giúp đỡ mình xin chân thành cảm ơn cậu rất nhiều

Chào bạn.

Diễn đàn là nơi trao đổi, có rất nhiều người rất giỏi, mỗi người biết chút, góp nhặt vào sẽ là kiến thức tốt cho mình. Bạn cứ mạnh dạn thảo luận đề tài của bạn trên diễn đàn nhé.

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

tungtot_vl 26-02-2009 10:09 AM

mình muốn giao tiếp PC với 2 hoặc nhiều PIC thông qua 1 cổng COM của PC. nhưng khi PC gửi xuống chỉ có 1 PIC nhận data. giốmg như chuẩn I2C ấy. PC là Master còn các PIC là Slever. Bác nào biết thì chỉ giúp mình hướng giải quyết với. thank you!

nguyen tien 27-02-2009 10:59 AM

chào bác Bắc, vừa qua em có thực hiện cái TUT bác viết về RS232 hướng dẫn về lập trình giao tiếp RS232 bằng VC++. (http://www.picvietnam.com/download/T...OHB.100106.pdf). Em làm theo bác chỉ mà nó báo 102 lỗi, toàn lỗi "error C2018: unknown character '0xa0' ". Bác có thể giải thích cho em lỗi này đc không? Và cách khắc phục như thế nào.
Project em tạo đây: http://www.mediafire.com/?zlmntzbeg3m . Cám ơn các bác đã đọc!

tranvankien_bk 27-02-2009 11:37 AM

em dang lam ve giao tiep rs232 giua pic 16f877a voi may tinh.em khong biet lap trinh vb6.0 de truyen du lieu .bac nao biet day em voi .thank ,,,,,,,,,,,

xuanhiendk2 27-02-2009 11:58 AM

Các bạn ơi làm thế nào để viết được tiếng Việt trong CCS thế? Có phải chúng ta tạo một font rồi include font đó vào chương trình sau đó đổi lại mã ASCII mở rộng là được ko ạ?

hoang phuong 14-03-2009 05:24 PM

Bác Bắc ơi!Sao bác ko dịch luôn ra file.exe cho a e đc nhờ

mtuankct 15-03-2009 12:31 AM

Trích:

Nguyên văn bởi tungtot_vl (Post 23022)
mình muốn giao tiếp PC với 2 hoặc nhiều PIC thông qua 1 cổng COM của PC. nhưng khi PC gửi xuống chỉ có 1 PIC nhận data. giốmg như chuẩn I2C ấy. PC là Master còn các PIC là Slever. Bác nào biết thì chỉ giúp mình hướng giải quyết với. thank you!

Theo mình biết thì chuẩn RS232 chỉ cho phép thực hiện liên kết điểm-điểm, nếu bạn muốn tạo liên kết đa điểm thì bạn có thể chuyển nó sang chuẩn RS485

hoang phuong 15-03-2009 03:54 PM

a Bắc ơi! E ko down dc nó xuống. Chương trình ko còn nữa rồi.


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