Thông báo

Collapse
No announcement yet.

PIC_16f887 từ dễ đến khó_ Dành cho người mơi bắt đầu

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

  • #16
    Còn việc truy cập các thanh ghi thì các hàm dựng sẵn đã tự động thao tác rồi. Nếu bác muốn định nghĩa thêm thì nên định nghĩa các hằng (constant) thay vì bỏ thời gian ra định nghĩa lại thanh ghi và bit.
    Ví dụ:
    #define BIT0 0x01
    #define BIT1 0x02
    ...
    #define BIT8 0x80
    Đây là các hằng dùng để làm mặt nạ (mask) khi cần kiểm tra bit nào đó hoặc set/clear bit nào đó.
    Thân ái.[/QUOTE]
    Cao thủ nói rõ về ý nghĩa của nó được không, sử dụng trong trường hợp nào vậy. em chưa rõ lắm bác ạ
    Be quan. Plz contact through email:

    Comment


    • #17
      Nguyên văn bởi Lenh Ho Xem bài viết
      Còn việc truy cập các thanh ghi thì các hàm dựng sẵn đã tự động thao tác rồi. Nếu bác muốn định nghĩa thêm thì nên định nghĩa các hằng (constant) thay vì bỏ thời gian ra định nghĩa lại thanh ghi và bit.
      Ví dụ:
      #define BIT0 0x01
      #define BIT1 0x02
      ...
      #define BIT8 0x80
      Đây là các hằng dùng để làm mặt nạ (mask) khi cần kiểm tra bit nào đó hoặc set/clear bit nào đó.
      Thân ái.
      Cao thủ nói rõ về ý nghĩa của nó được không, sử dụng trong trường hợp nào vậy. em chưa rõ lắm bác ạ
      Các hàm nó sẽ tác động thế nào nhỉ ?
      Khác với ASM là tác động trực tiếp lên các thanh ghi và trực tiếp thay đổi giá trị của nó, C là ngôn ngữ cao hơn do vậy trong câu lệnh bạn rất ít thấy câu nào đả động gì đến thanh ghi. Vậy nó làm sao, nó sẽ phải định nghĩa trước địa chỉ các thanh ghi và giá trị cho các chức năng tương ứng.

      Comment


      • #18
        Nguyên văn bởi duong_act Xem bài viết
        Các hàm nó sẽ tác động thế nào nhỉ ?
        Khác với ASM là tác động trực tiếp lên các thanh ghi và trực tiếp thay đổi giá trị của nó, C là ngôn ngữ cao hơn do vậy trong câu lệnh bạn rất ít thấy câu nào đả động gì đến thanh ghi. Vậy nó làm sao, nó sẽ phải định nghĩa trước địa chỉ các thanh ghi và giá trị cho các chức năng tương ứng.
        anh duong_act ơi, như vậy có nghĩa là nó định nghĩa mà mình " không nhìn thấy " phải không ạ ( nó là trình biên dịch ấy), tức một lệnh đã bao gồm một macro và trong macro đó nó đã tương ứng với các lệnh asm tuơng ứng phải không/. nó định nghĩa toàn số gì đó mà em không hiểu nổi, ví dụn như : #define PIN_AN0 40 thì em đọc trong ccs thấy thế này: vì thanh ghi a ở địa chỉ 05h, 05h * 8 = 40, vì bit a0 nằm ở bit thứ nhất nên 40 + 0 = 40, còn các hằng số khác thì bó tay, thua
        Be quan. Plz contact through email:

        Comment


        • #19
          Bác lập ra luồng này hay đấy chúc các bác có nhiều bài viết bổ ích .em không được học về vi xử lí nhưng rất thích tìm hiểu các bác có thể chỉ cho em tìm hiểu ở đâu và và tài liệu nào ko ạ.nhìn những dòng lệnh của các bác mà choáng chả hiểu gì cả.chúc các bác vui
          ĐIỆN TỬ NGỌC LỄ
          đ/c ba hàng-tiên lữ -hưng yên
          dt 03216293151-0986475737

          Comment


          • #20
            Mình cũng mới học vi điều khiển, mình cũng không dám chỉ bảo gì đâu, nhưng theo nghidderre bắt đầu nghiên cứuveefe vi điều khiển bạn nên chọn một con nào đó ( thực tế đa số chọn 89 để bắt đầu), học kiến trúc của nó và nghiên cứu ngôn ngữ cấp thấp ( asm), sau một thời gian bạn có thể chuyển sang con khác mang tính phổ biến và được hỗ trợ nhiều hơn ( ví dụ như PIC). sách thì mình khuyên bạn nên mua cuốn kỹ thuật vi xử lý . rất hay và ngắn gọn, chúc bạn thành công.
            Be quan. Plz contact through email:

            Comment


            • #21
              Nguyên văn bởi Lenh Ho Xem bài viết

              anh duong_act ơi, như vậy có nghĩa là nó định nghĩa mà mình " không nhìn thấy " phải không ạ ( nó là trình biên dịch ấy), tức một lệnh đã bao gồm một macro và trong macro đó nó đã tương ứng với các lệnh asm tuơng ứng phải không/. nó định nghĩa toàn số gì đó mà em không hiểu nổi, ví dụn như : #define PIN_AN0 40 thì em đọc trong ccs thấy thế này: vì thanh ghi a ở địa chỉ 05h, 05h * 8 = 40, vì bit a0 nằm ở bit thứ nhất nên 40 + 0 = 40, còn các hằng số khác thì bó tay, thua
              -Em đọc tới đây cũng thua cái định nghĩa của ccs #define PIN_AN0 40 nó rất khó hình dung
              -cóthể hiểu nhớ đc đánh từ điạ chỉ 00, thanh ghi ở 05h là thứ tự tính từ 1. Vd như số nhà đc đánh từ 00 thì nhà vị trí thứ 05 sẽ có địa chỉ là 04
              Đời bể khổ :

              Comment

              Về tác giả

              Collapse

              Lenh Ho Tìm hiểu thêm về Lenh Ho

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

              Collapse

              Đang tải...
              X