Thông báo

Collapse
No announcement yet.

Ghép nối máy tính dùng 8051_Vấn đề vẫn chưa giải quyết được.

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • #31
    bạn kiểm tra lại đi, nếu bạn lấy nguyên si chương trình đó đảm bảo chạy ngay, mình đã test thử nó rồi
    note là do cấu hình máy lên có thể ko ổn định, lúc chuyển đổi nhanh, lúc chuyển đổi chậm, còn vs sản phẩm thật thì đều như vắt chanh
    Website chính thức đổi địa chỉ website thành
    Mời các bạn ghé thăm !!!

    Comment


    • #32
      Private Sub MSComm2_OnComm()
      If MSComm2.CommEvent = 2 Then
      Label6.Caption = "Ket noi voi thiet bi !"
      kt = MSComm2.Input
      temp = Asc(kt)
      If temp >= 50 Then
      MSComm2.Output = "h"
      Label9.Caption = "NGUY HIEM!"
      Beep
      Beep
      Else
      Label9.Caption = "BINH THUONG"
      End If
      Label7.Caption = Str(temp)
      End If
      End Sub

      Các bác cho hỏi là để tạo ra hàm trên thì phải là gì vậy?
      Mãi mà e vẫn chưa làm được cái bài của em các bác ah.hic. Mấy hnay lại phải tập trung ôn mấy môn khác, giờ mới quay lại làm tiếp bài này.
      Mong các bác nhiệt tình giúp em.
      Mua bán thiết bị điện công nghiệp tại Hà Nội, toàn quốc.
      http://diencongnghiep360.com/
      http://tudienhathe.vn/

      Comment


      • #33
        Nguyên văn bởi vietthanh123 Xem bài viết
        Private Sub MSComm2_OnComm()
        If MSComm2.CommEvent = 2 Then
        Label6.Caption = "Ket noi voi thiet bi !"
        kt = MSComm2.Input
        temp = Asc(kt)
        If temp >= 50 Then
        MSComm2.Output = "h"
        Label9.Caption = "NGUY HIEM!"
        Beep
        Beep
        Else
        Label9.Caption = "BINH THUONG"
        End If
        Label7.Caption = Str(temp)
        End If
        End Sub

        Các bác cho hỏi là để tạo ra hàm trên thì phải là gì vậy?
        Mãi mà e vẫn chưa làm được cái bài của em các bác ah.hic. Mấy hnay lại phải tập trung ôn mấy môn khác, giờ mới quay lại làm tiếp bài này.
        Mong các bác nhiệt tình giúp em.
        Để tạo ra hàm này thì kích đúp vào biểu tượng của MSComm. Đây giống như một hàm ngắt của vi điều khiển. Thay vì dùng 1 timer cho chạy liên tục sẽ tốn tài nguyên chương trình thì thực hiện đọc dữ liệu truyền đến trong hàm này tốt hơn. Chương trình trong hàm này sẽ được thực thi khi có dữ liệu truyền đến và số byte dữ liệu bằng giá trị của Rthreshold. Nếu đặt Rthreshold là 0 thì sự kiện OnCom không xảy ra. Nếu Rthreshold = 1 thì sẽ xảy ra On Com mỗi khi có dữ liệu truyền đến.
        Đặt Rthreshold = n để truyền dữ liệu theo khung dữ liệu.

        Comment


        • #34
          Sau khi tổng hợp ý kiến của mọi người thì vấn đề hiện dòng chữ "BÁO CHÁY" và "BÁO TRỘM" lên màn hình em làm như sau:
          Sử dụng hai hàm ngắt ngoài INT0 và INT 1. Khi có sự cố cháy thì hàm INT0 sẽ gửi ký tự "k"lên máy tính ==> Cái này đã chạy tốt vì e đã thử với hyperTerminal(khi có hàm ngắt ngoài sảy ra thì VDK đã gửi ký tự này lên.). Tuy nhiên trong hàm Private Sub MSComm1_OnComm() em vẫn chưa thật sự hiểu nó cho lắm nên e vẫn chưa làm được việc nhận ký tự từ máy tính lên . Mong các bác giúp đỡ với. Hay bác nào có tài liệu gì cho em với.hic
          // Em cần làm là khi có hàm ngắt sảy ra thì máy tính sẽ hiện thị dòng chữ "BÁO CHÁY" ở labal1
          Các bác xem code gium em với , xem nó sai ở đâu vậy

          DK cac Role.rar
          Mua bán thiết bị điện công nghiệp tại Hà Nội, toàn quốc.
          http://diencongnghiep360.com/
          http://tudienhathe.vn/

          Comment


          • #35
            Hình như em hỏi nhiều và ngu quá nên các bác chán ko muốn giúp nữa thì phải.
            Mong các bác giúp em xong vụ này đi, rồi lần sau em ko hỏi nhiều nữa.
            Cảm ơn các bác.
            Last edited by vietthanh123; 07-03-2012, 01:15.
            Mua bán thiết bị điện công nghiệp tại Hà Nội, toàn quốc.
            http://diencongnghiep360.com/
            http://tudienhathe.vn/

            Comment


            • #36
              Nguyên văn bởi vietthanh123 Xem bài viết
              Sau khi tổng hợp ý kiến của mọi người thì vấn đề hiện dòng chữ "BÁO CHÁY" và "BÁO TRỘM" lên màn hình em làm như sau:
              Sử dụng hai hàm ngắt ngoài INT0 và INT 1. Khi có sự cố cháy thì hàm INT0 sẽ gửi ký tự "k"lên máy tính ==> Cái này đã chạy tốt vì e đã thử với hyperTerminal(khi có hàm ngắt ngoài sảy ra thì VDK đã gửi ký tự này lên.). Tuy nhiên trong hàm Private Sub MSComm1_OnComm() em vẫn chưa thật sự hiểu nó cho lắm nên e vẫn chưa làm được việc nhận ký tự từ máy tính lên . Mong các bác giúp đỡ với. Hay bác nào có tài liệu gì cho em với.hic
              // Em cần làm là khi có hàm ngắt sảy ra thì máy tính sẽ hiện thị dòng chữ "BÁO CHÁY" ở labal1
              Các bác xem code gium em với , xem nó sai ở đâu vậy
              Hàm OnCom.
              Tương tự như ngắt truyền thông của vi điều khiển. Hàm OnCOm là hàm chứa "chương trình ngắt" của MSComm trong VB. Khi MSCom nhận được dữ liệu truyền tới và số byte dữ liệu nhận được bằng với giá trị Rthreshold thì sự kiện OnCom sẽ xảy ra và VB sẽ thực hiện chương trình trong hàm OnCom.
              Vậy đơn giản để dùng hàm này như sau, nếu muốn báo cháy:
              Code:
              'Giả sử khi có cháy bạn gửi 1 kí tự lên PC giả sử là kí tự "!".
              'MSCom sẽ được đặt Rthreshold = 1 để mỗi khi có 1 byte dữ liệu truyền tới đều gây sự kiện OnCom.
              'Đọc dữ liệu khi có dữ liệu truyền từ MCU lên.
              Private Sub MSComm1_OnCom()
              'Kiểm tra sự kiện OnCom 
              'Nếu là có dữ liệu nhận được.
              if MSComm1.commEvent = comEvReceive then
              'Khai báo 1 biến String để lưu dữ liệu.
              Dim dat As String
              'Lưu giữ liệu
              dat = MSComm1.Input.
              End If
              'Xử lí dữ liệu, nếu kí tự là "!" thì báo cháy
              If dat = "!" then
              Label1.Caption = "Có cháy"
              End If
              End Sub

              Comment


              • #37
                mọi người cho e hỏi cái. e muốn giám sát thiết,kiểm tra xem thiết bị đó có đang hoạt động hay k rồi gửi lên máy tính. nhưng e nghỉ hoài k ra là làm sao để nhận biết được nó để đưa vào vxl. thiết bị của e được đóng ngắt bằng role.mong mọi người cho e ý kiến!

                Comment


                • #38
                  Nguyên văn bởi nguyenphutuc Xem bài viết
                  mọi người cho e hỏi cái. e muốn giám sát thiết,kiểm tra xem thiết bị đó có đang hoạt động hay k rồi gửi lên máy tính. nhưng e nghỉ hoài k ra là làm sao để nhận biết được nó để đưa vào vxl. thiết bị của e được đóng ngắt bằng role.mong mọi người cho e ý kiến!
                  tùy vào cái thiết bị là gì thì chú nghĩ cách lấy tín hiệu xác nhận. Ví dụ: đèn có thể dùng quang trở, hoặc chung chung cho tải AC thì dùng biến dòng chẳng hạn

                  Comment


                  • #39
                    Private Sub Errors()
                    If Err.Number = 8002 Then
                    MsgBox "Cong COM Khong Co Hoac Dang Ban. Moi Ban Chon Cong COM Lai !"
                    End If
                    If Err.Number = 8005 Then
                    MsgBox "Moi Chon Lai Cong Com !"
                    End If
                    If Err.Number = 8012 Then
                    MsgBox "Hay Chon Cong COM !"
                    End If
                    If Err.Number = 8018 Then
                    MsgBox "Ban Chua Chon Cong COM !"
                    End If


                    cho e hỏi mấy con số 8002,8005,... nghĩa là gì vậy. ở đâu có hay mình tự đặt. ^^

                    Comment


                    • #40
                      Nguyên văn bởi nguyenphutuc Xem bài viết
                      Private Sub Errors()
                      If Err.Number = 8002 Then
                      MsgBox "Cong COM Khong Co Hoac Dang Ban. Moi Ban Chon Cong COM Lai !"
                      End If
                      If Err.Number = 8005 Then
                      MsgBox "Moi Chon Lai Cong Com !"
                      End If
                      If Err.Number = 8012 Then
                      MsgBox "Hay Chon Cong COM !"
                      End If
                      If Err.Number = 8018 Then
                      MsgBox "Ban Chua Chon Cong COM !"
                      End If


                      cho e hỏi mấy con số 8002,8005,... nghĩa là gì vậy. ở đâu có hay mình tự đặt. ^^
                      Đấy là các mã lỗi. Dựa vào các mã lỗi này để biết được nó gặp lỗi gì.

                      Comment


                      • #41
                        Mấy chú mới học tham khảo trang web : Câu lạc bộ Visual Basic Hồi mình học tìm được rất nhiều thứ ở đây , kể cả code mẫu giao tiếp máy tính .

                        Comment


                        • #42
                          Cảm ơn bạn duơngACT và tất cả mọi người. Nhờ có sự giúp đỡ của tất cả mọi người mình đã làm hoàn thiện vụ này rồi. Thật vui khi có mọi người luôn giúp đỡ.
                          Mua bán thiết bị điện công nghiệp tại Hà Nội, toàn quốc.
                          http://diencongnghiep360.com/
                          http://tudienhathe.vn/

                          Comment


                          • #43
                            cảm ơn bác fee_08 nhiều@@

                            Comment


                            • #44
                              mấy bác cho e hỏi? e chèn file flash vào rồi khi lưu thì bị báo lỗi:"system error &h0004005(-2147467259).Unspecified error". làm sao để hết lỗi này? mong các bác giúp đỡ!

                              Comment


                              • #45
                                Nguyên văn bởi fee_08 Xem bài viết
                                Rảnh up dc file lên mediafire rồi : GTMT-dk thiet bi.rar
                                Hi vọng giúp dc các chú mới nghịch
                                Cám ơn bác fee_08 rất nhiều đề tài bác làm rất hay nhưng cho em hỏi chút xíu.bác viết code để cập nhật sự thay đổi nhiệt độ như thế nào em chưa hiểu rõ lắm ,xin bác chỉ giáo .Và cho em hỏi bác tí là khi em thay đổi giá trị nhiệt độ của con LM35 trong mạch mô phỏng thì trên giao diện VB ko có thay đổi theo vì sao vậy?
                                Nó chỉ thay đổi khi bác stop protues và play trở lại .Điều này có nghĩa là data nhiệt độ chỉ dc cập nhật có 1 lần duy nhất khi khởi động mà ko cập nhật liên tục dc .Mong bác chỉ giáo thêm.

                                Comment

                                Về tác giả

                                Collapse

                                vietthanh123 Tìm hiểu thêm về vietthanh123

                                Bài viết mới nhất

                                Collapse

                                Đang tải...
                                X