stm32 地址外設簡介

void GPIO_ETH_MediaInterfaceConfig(uint32_t GPIO_ETH_MediaInterface) 
{ 
  assert_param(IS_GPIO_ETH_MEDIA_INTERFACE(GPIO_ETH_MediaInterface)); 
 
  /* Configure MII_RMII selection bit */ 
  *(__IO uint32_t *) MAPR_MII_RMII_SEL_BB = GPIO_ETH_MediaInterface;
}

#define PERIPH_BB_BASE        ((uint32_t)0x42000000) /*!< Peripheral base address in the alias region */
/* ---  MAPR Register ---*/ 地址0x40010004
/* Alias word address of MII_RMII_SEL bit */ 
#define MAPR_OFFSET                 (AFIO_OFFSET + 0x04)   //0x10004
#define MII_RMII_SEL_BitNumber      ((uint8_t)0x17) 
#define MAPR_MII_RMII_SEL_BB        (PERIPH_BB_BASE + (MAPR_OFFSET * 32) + (MII_RMII_SEL_BitNumber * 4))

由地址外設計算可知,上面的實際操做是,對0x40010004的0x17位置1,也就是重映射配置寄存器(AFIO_MAPR)的23位的位置1。配置爲RMII_MODE。ui

相關文章
相關標籤/搜索