Đăng Ký
Trang 3 của 3 Đầu tiênĐầu tiên 123
Kết quả 21 đến 29 của 29
  1. #21
    Thành viên cấp 3
    Ngày tham gia
    Oct 2011
    Đang ở
    Q9, HCM
    Bài viết
    205
    Thanks
    37
    33 lượt trong 24 bài viết
    nmh_bk:
    1. Ở đây bạn thanhke_auto dùng con trỏ AR1, em xin trích nguyên văn câu hỏi này:
    "Em có cái thắc mắc này muốn hỏi. tại sao khi dùng con trỏ ARn trong STL hay có cái đoạn như sau:
    L #diachitruyxuat
    SLW 3
    LAR1
    L 100.0
    T MW [AR1 , P#0.0]
    vd địa chỉ truyền thông của m bắt đầu là 3000. thì biến truyền vào #diachitruyxuat sẽ là 3000 trong chương trình gọi nó. nhưng tại sao lại luôn có dòng lệnh SLW 3"
    cái sai ở đây là cách khai báo lệnh Load một giá trị vào ACCU1:
    L #diachitruysuat => sai
    L L#diachitruysuat => đúng
    ví dụ:
    L L#3000 => ghi giá trị 3000 vào thanh ghi ACCU1(32bit nhé),sau đó tiếp lệnh
    SLW 3 => dịch chuyển 3 bit trong ACCU1 về bên trái, mục đích để trùng với cấu trúc của con trỏ AR1 mới thu về giá trị đúng.
    ....
    2. xin trích câu trả lời của bạn nmh_bk nha: "
    con trỏ toàn cục theo em biết thì thường dụng lệnh L D [ARx,P#2.0] để lấy địa chỉ"
    - lệnh L D [ARx,P#2.0] của bạn để load địa chỉ một bit trong vùng nào đó của plc bằng cách sử dụng con trỏ ARx, còn P#2.0 chỉ là giá trị offset tùy vào bit bạn muốn load. Do đó, tùy vào mục đích người dùng là lệnh thay đổi chứ không phải "
    con trỏ toàn cục thì thường dụng lệnh L D [ARx,P#2.0] để lấy địa chỉ"

    mọi người cho ý kiến thêm nhé!




  2. #22
    Thành viên cấp 3
    Ngày tham gia
    Oct 2013
    Bài viết
    103
    Thanks
    17
    13 lượt trong 11 bài viết
    Trích dẫn Gửi bởi minhhungspk Xem bài viết
    nmh_bk:
    1. Ở đây bạn thanhke_auto dùng con trỏ AR1, em xin trích nguyên văn câu hỏi này:
    "Em có cái thắc mắc này muốn hỏi. tại sao khi dùng con trỏ ARn trong STL hay có cái đoạn như sau:
    L #diachitruyxuat
    SLW 3
    LAR1
    L 100.0
    T MW [AR1 , P#0.0]
    vd địa chỉ truyền thông của m bắt đầu là 3000. thì biến truyền vào #diachitruyxuat sẽ là 3000 trong chương trình gọi nó. nhưng tại sao lại luôn có dòng lệnh SLW 3"
    cái sai ở đây là cách khai báo lệnh Load một giá trị vào ACCU1:
    L #diachitruysuat => sai
    L L#diachitruysuat => đúng
    ví dụ:
    L L#3000 => ghi giá trị 3000 vào thanh ghi ACCU1(32bit nhé),sau đó tiếp lệnh
    SLW 3 => dịch chuyển 3 bit trong ACCU1 về bên trái, mục đích để trùng với cấu trúc của con trỏ AR1 mới thu về giá trị đúng.
    ....
    2. xin trích câu trả lời của bạn nmh_bk nha: "
    con trỏ toàn cục theo em biết thì thường dụng lệnh L D [ARx,P#2.0] để lấy địa chỉ"
    - lệnh L D [ARx,P#2.0] của bạn để load địa chỉ một bit trong vùng nào đó của plc bằng cách sử dụng con trỏ ARx, còn P#2.0 chỉ là giá trị offset tùy vào bit bạn muốn load. Do đó, tùy vào mục đích người dùng là lệnh thay đổi chứ không phải "
    con trỏ toàn cục thì thường dụng lệnh L D [ARx,P#2.0] để lấy địa chỉ"

    mọi người cho ý kiến thêm nhé!



    bạn thử dùng lệnh L 10 với lệnh L L#10 xem thử ACC 1 chứa cái gì? bạn có biết con trỏ toàn cục là gì không? bạn có biết kiểu dữ liệu pointer có độ dài 6 byte không? còn any pointer là 10 byte? mấy cái byte đó chứa cái gì? tại sao lại dùng L D [ARx,P#2.0] đối với kiểu pointer, còn any pointer thì load kiểu khác nha?thanh ghi AR của bạn chỉ dài 4byte thôi
    Lần sửa cuối bởi nmh_bk, ngày 02-09-2015 lúc 08:29 PM.

  3. #23
    Thành viên cấp 3
    Ngày tham gia
    Oct 2011
    Đang ở
    Q9, HCM
    Bài viết
    205
    Thanks
    37
    33 lượt trong 24 bài viết
    Trích dẫn Gửi bởi nmh_bk Xem bài viết
    bạn thử dùng lệnh L 10 với lệnh L L#10 xem thử ACC 1 chứa cái gì? bạn có biết con trỏ toàn cục là gì không? bạn có biết kiểu dữ liệu pointer có độ dài 6 byte không? còn any pointer là 10 byte? mấy cái byte đó chứa cái gì? tại sao lại dùng L D [ARx,P#2.0] đối với kiểu pointer, còn any pointer thì load kiểu khác nha?thanh ghi AR của bạn chỉ dài 4byte thôi
    xin lỗi bạn nhưng mình đã cố gắng giải thích, còn bạn thì cứ cố gắng hỏi và hỏi.
    không biết bạn có đọc kỹ câu hỏi của bạn thanhke_auto không, cú pháp bạn ấy đưa ra là: L #diachitruyxuat. xin hỏi bạn cú pháp của lệnh đọc vào thanh ghi này có đúng chưa? ( ví dụ: L #10), còn bạn đem so sánh L 10 và L L#10 là đều đúng cú pháp, chỉ khác về ý nghĩa lệnh thôi, nhưng lại lệch với ý mình muốn trả lời. mình nghĩ bạn nên đọc lại kỹ trước khi trả lời. còn hỏi any pointer, ko liên quan ở đây.

  4. #24
    Thành viên cấp 3
    Ngày tham gia
    Oct 2013
    Bài viết
    103
    Thanks
    17
    13 lượt trong 11 bài viết
    Trích dẫn Gửi bởi minhhungspk Xem bài viết
    xin lỗi bạn nhưng mình đã cố gắng giải thích, còn bạn thì cứ cố gắng hỏi và hỏi.
    không biết bạn có đọc kỹ câu hỏi của bạn thanhke_auto không, cú pháp bạn ấy đưa ra là: L #diachitruyxuat. xin hỏi bạn cú pháp của lệnh đọc vào thanh ghi này có đúng chưa? ( ví dụ: L #10), còn bạn đem so sánh L 10 và L L#10 là đều đúng cú pháp, chỉ khác về ý nghĩa lệnh thôi, nhưng lại lệch với ý mình muốn trả lời. mình nghĩ bạn nên đọc lại kỹ trước khi trả lời. còn hỏi any pointer, ko liên quan ở đây.
    mình nghĩ bạn dùng con trỏ thì cần phải biết pointer với any pointer thôi còn mấy cái load gì ấy, mình không biết,
    mình chỉ quan tâm nội dung của máy thanh ghi chứa cái gì thôi, con bạn muốn làm gì thì tùy bạn thôi

  5. #25
    Thành viên cấp 3
    Ngày tham gia
    Oct 2013
    Bài viết
    103
    Thanks
    17
    13 lượt trong 11 bài viết
    tại trước giờ mình toàn đặt câu hỏi như thế rồi tìm cách trả lời? thông cảm cho mình nhé
    mình nghĩ tự đặt câu hỏi rồi tìm câu trả lời như thế sẽ nhớ lâu hơn thôi

  6. #26
    Thành viên cấp 3
    Ngày tham gia
    Oct 2011
    Đang ở
    Q9, HCM
    Bài viết
    205
    Thanks
    37
    33 lượt trong 24 bài viết
    hi.mình cũng tự đặt câu hỏi tự trả lời ko đó chứ. có gì trao đổi thêm để tiến bộ.thân!

  7. #27
    Thành viên cấp 1
    Ngày tham gia
    Feb 2012
    Bài viết
    27
    Thanks
    7
    2 lượt trong 2 bài viết
    thấy mấy bác trao đổi em đọc không hiểu gì hết, e có nghe nói về lập trình STL. mấy bác cho e xin 1 ít tài liệu loại này được không ah. e muốn lần sau vào đây sẽ hiểu được các bác chia sẽ nội dung gì. thanks all

  8. #28
    Thành viên cấp 4
    Ngày tham gia
    Oct 2011
    Bài viết
    300
    Thanks
    17
    89 lượt trong 75 bài viết
    Trích dẫn Gửi bởi minhhungspk Xem bài viết
    nmh_bk:
    1. Ở đây bạn thanhke_auto dùng con trỏ AR1, em xin trích nguyên văn câu hỏi này:
    "Em có cái thắc mắc này muốn hỏi. tại sao khi dùng con trỏ ARn trong STL hay có cái đoạn như sau:
    L #diachitruyxuat
    SLW 3
    LAR1
    L 100.0
    T MW [AR1 , P#0.0]
    vd địa chỉ truyền thông của m bắt đầu là 3000. thì biến truyền vào #diachitruyxuat sẽ là 3000 trong chương trình gọi nó. nhưng tại sao lại luôn có dòng lệnh SLW 3"
    cái sai ở đây là cách khai báo lệnh Load một giá trị vào ACCU1:
    L #diachitruysuat => sai
    L L#diachitruysuat => đúng
    ví dụ:
    L L#3000 => ghi giá trị 3000 vào thanh ghi ACCU1(32bit nhé),sau đó tiếp lệnh
    SLW 3 => dịch chuyển 3 bit trong ACCU1 về bên trái, mục đích để trùng với cấu trúc của con trỏ AR1 mới thu về giá trị đúng.
    ....
    2. xin trích câu trả lời của bạn nmh_bk nha: "
    con trỏ toàn cục theo em biết thì thường dụng lệnh L D [ARx,P#2.0] để lấy địa chỉ"
    - lệnh L D [ARx,P#2.0] của bạn để load địa chỉ một bit trong vùng nào đó của plc bằng cách sử dụng con trỏ ARx, còn P#2.0 chỉ là giá trị offset tùy vào bit bạn muốn load. Do đó, tùy vào mục đích người dùng là lệnh thay đổi chứ không phải "
    con trỏ toàn cục thì thường dụng lệnh L D [ARx,P#2.0] để lấy địa chỉ"

    mọi người cho ý kiến thêm nhé!



    Ở đây bạn Hùng hiểu sai ý rồi:
    1. L #diachitruysuat Không phải là L#10. Ý của bạn kia ở đây #diachitruysuat la 1 biến IN trong FC. Địa chỉ (VD 10) sẽ được đưa vào chân IN (diachitruysuat) của FC mình vừa viết chứ k phải là nhập L#10

    2. Cái này bạn Hùng nói đúng, mà lệnh L D [ARx,P#2.0] là load 1 doubleword chứ k phải 1 bít nha
    Lần sửa cuối bởi Mechatronic_Hieu, ngày 02-24-2015 lúc 09:10 PM.
    Nhận hợp tác lập trình các loại PLC và xử lý sự cố về hệ thống tự động hóa
    Gm: Hidden Content

  9. Bài viết của "Mechatronic_Hieu" đã được cám ơn bởi các thành viên:


  10. #29
    Thành viên cấp 3
    Ngày tham gia
    Oct 2011
    Đang ở
    Q9, HCM
    Bài viết
    205
    Thanks
    37
    33 lượt trong 24 bài viết
    Trích dẫn Gửi bởi quanglocbp Xem bài viết
    thấy mấy bác trao đổi em đọc không hiểu gì hết, e có nghe nói về lập trình STL. mấy bác cho e xin 1 ít tài liệu loại này được không ah. e muốn lần sau vào đây sẽ hiểu được các bác chia sẽ nội dung gì. thanks all
    2 bạn, trên diễn đàn đã có rồi, bạn chauvinhloi đã up, mình chỉ đưa link lại thôi: http://www.mediafire.com/?rqmtyij75ivyp#rqmtyij75ivyp. thân!

Trang 3 của 3 Đầu tiênĐầu tiên 123

Tag của Chủ đề này

Đánh dấu

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •  
Back to Top