Thông báo

Collapse
No announcement yet.

Giải thích về truy nhập bit trong STM32f103

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

  • Giải thích về truy nhập bit trong STM32f103

    Thân gửi các bạn
    Mình đag tìm hiểu về dòng MCU STM32. Trong User manual có đoạn sau:
    A mapping formula shows how to reference each word in the alias region to a corresponding
    bit in the bit-band region. The mapping formula is:
    bit_word_addr= bit_band_base+ (byte_offsetx 32) + (bit_number× 4)
    where:
    bit_word_addris the address of the word in the alias memory region that maps to the
    targeted bit.
    bit_band_baseis the starting address of the alias region
    byte_offsetis the number of the byte in the bit-band region that contains the targeted bit
    bit_numberis the bit position (0-7) of the targeted bit.
    Example:
    The following example shows how to map bit 2 of the byte located at SRAM address
    0x20000300 in the alias region:
    0x22006008 = 0x22000000 + (0x300*32) + (2*4).
    Writing to address 0x22006008 has the same effect as a read-modify-write operation on bit
    2 of the byte at SRAM address 0x20000300.
    Reading address 0x22006008 returns the value (0x01 or 0x00) of bit 2 of the byte at SRAM
    address 0x20000300 (0x01: bit set; 0x00: bit reset).



    Như vậy theo mình hiểu là để truy nhập 1 bit trong thanh ghi sẽ dùng công thức như trên.
    Ví dụ như thanh ghi GPIOA_CRL có add là: ( 0x40010800+0x00). 32 bit như sau:

    CNF7[1:0] MODE7[1:0] CNF6[1:0] MODE6[1:0] CNF5[1:0] MODE5[1:0] CNF4[1:0] MODE4[1:0]


    CNF3[1:0] MODE3[1:0] CNF2[1:0] MODE2[1:0] CNF1[1:0] MODE1[1:0] CNF0[1:0] MODE0[1:0]

    Khi đó truy nhập bit 8 của thanh ghi sẽ có địa chỉ là: 0x40010800+(0x00*32)+(8*4)=0x40010832

    Mọi người giúp mình xem mình hiểu như thế đã đúng chưa.
    Thanks rất nhiều. Cùng học tập nào.

Về tác giả

Collapse

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

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

Collapse

  • Andrea14
    Vấn đề về tốc độ quay
    bởi Andrea14
    Chào mọi người,

    Tôi muốn mô phỏng sự thay đổi các mùa bằng cách từ từ nghiêng một quả địa cầu 16 inch bằng một động cơ bước nhỏ. Một động cơ bước khác sẽ quay quả địa cầu theo thời gian thực. Hệ thống truyền động...
    12-12-2025, 12:42
  • bqviet
    Trả lời cho Đấu tắt điện cho máy tính bảng
    bởi bqviet
    Bqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
    06-12-2025, 17:17
  • nguyendinhvan
    Trả lời cho Xin hỏi về mạch thu FM/AM trong catsette
    bởi nguyendinhvan
    Theo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
    05-12-2025, 19:59
Đang tải...
X