Thông báo

Collapse
No announcement yet.

Giao tiếp dùng MatLab

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

  • Giao tiếp dùng MatLab

    cho em hỏi tại sao có thông báo lỗi này khi em viết lệnh như sau:
    s= serial('com1')
    set(s,'baudrate',4800)
    fopen(s)

    Lỗi :??? Error using ==> serial.fopen
    Port: COM1 is not available. No ports are available.
    Use INSTRFIND to determine if other instrument objects are connected to the requested device.

  • #2
    Lỗi trên có nghĩa là cổng COM1 đang được sử dụng bởi một chương trình khác. Hoặc là không tồn tại.

    Bạn dùng lệnh INSTRFIND để tìm xem có khi một thiết bị khác đang dùng cổng này để kết nối.

    Chú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


    • #3
      Anh có thể cho em hỏi xem chương trình như thế này sao báo lỗi:
      Code:
         % Setting for Serial Object
          %s = serial('Com1');                 % COM port
          %s.BaudRate  = 9600              % Baud rate
          %s.DataBits  = 8;               % Data bit
          %s.Parity    = 'none';             % Parity bit
          %s.StopBit   = 1;               % Stop bit
          
          % Setting for reat direction
          %s.ReadAsyncMode = 'continuous';
          
          %s.BytesAvailableFcnCount = 1;
          
          %s.Terminator = 'CR'
          %s.BytesAvailableFcnMode = 'terminator';%'terminator';
         fopen(s)
          str = get(s,'Status')
        if str=='open'
            set(handles.Edit_ThongBao,'string','Cong Da Mo');
        else
            set(handles.Edit_ThongBao,'string','Cong Chua Duoc Mo');
        end
      Nếu em kích vào nút thì nối, cổng được mở và hiển thị thông tin đã mở
      Khi em kích vào nút ngắt kết nối có code như sau thì thông báo hủy kết nối, nhưng cho em hỏi tại sao khi đã hủy rồi, em kicks vào nút mở kết nối lại thì báo lỗi như trên
      Code:
      function Button_HuyKetNoi_Callback(hObject, eventdata, handles)
      fclose(s);
      sta = get(s,'Status');
      set(handles.Edit_ThongBao,'String',sta);
      delete(s)
      clear s
      Last edited by ngohaibac; 20-10-2008, 09:58. Lý do: Thêm tag Code

      Comment


      • #4
        Em code thêm một quả nữa cho chắc ăn. Trong hàm mà em muốn mở cổng COM thì kiểm tra trạng thái của cổng đó, xem đã mở chưa rùi mới mở là chắc ăn nhất em ạ. Còn trong
        hàm ngắt kết nối cũng như thế, em kiểm tra xem có mở không thì mới đóng chứ.

        Chúc em 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


        • #5
          cảm ơn anh, em sẽ thử viết lại có gì xin anh giúp đỡ thêm. Vì em chưa được học kĩ về cái VĐK và giao tiếp nên chưa hiểu nhiều, em chỉ biết sơ sơ qua mấy bài viết của anh.

          Comment


          • #6
            Anh nghĩ code của em còn có vấn đề nữa. Là biến s đó, có là biến global không em ??

            Chúc ý nhé, nếu em dùng biến s ở một chỗ và lại khai báo biến s tương tự ở chỗ khác, thì nó sẽ hiểu là có 2 quá trình cùng truy nhập vào COM Port đó.

            Chúc em 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


            • #7
              Cảm ơn anh, em quên mất cái này, anh đã từng nhắc 1 lần thế mà quên.

              Comment


              • #8
                Tôi có dùng chương trình RS232_Communication của bạn Hải Bắc, khi test bằng cách nối 2 chân 2 và 3 của cổng COM lại thì được. Khi giao tiếp với VĐK AVR thì khi vào một chuỗi ký tự, ấn nút send thì vẫn thông báo dữ liệu đã sent thành công, nhưng ở phần Reciver không có gì cả, ở cửa sổ Command Window cũng không thấy báo lỗi gì. Xin cho tôi hỏi vậy xử lý thế nào?

                Comment

                Về tác giả

                Collapse

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

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

                Collapse

                Đang tải...
                X