[問題] 關於GPIO的指標寫法

作者: goodzey (--)   2016-11-19 09:54:25
請教大家,在STM32Lxx.h有以下指標寫法
#define GPIOB_BASE (0x0c00)
#define GPIOB ((GPIO_TypeDef *) GPIOB_BASE)
typedef struct
{
__IO uint32_t CRL;
__IO uint32_t CRH;
__IO uint32_t IDR;
__IO uint32_t ODR;
__IO uint32_t BSRR;
__IO uint32_t BRR;
__IO uint32_t LCKR;
} GPIO_TypeDef;
int main(void)
{
GPIOB->CRH &= 0xFFFFFFF0;
GPIOB->CRH |= 0x00000003;
}
其中的指標寫法:
#define GPIOB ((GPIO_TypeDef *) GPIOB_BASE)
請問大家,有沒有簡單的example code可以協助理解這種寫法?
我找了很多網路資料都沒有多說
在正規C語言中這種寫法的關鍵字是什麼?查得到C語言正規教材嗎?
謝謝!
作者: tomnelson   2016-11-19 12:46:00
這不就是 Memory-mapped I/O !?
作者: MasterChang (我愛ASM)   2016-11-22 23:10:00
CubeMx是你的好朋友

Links booklink

Contact Us: admin [ a t ] ucptt.com