强化功能使用说明#
这篇迁移指南旨在帮助您使用AIR32F103器件所支持的增强型功能
PLL高频配置#
描述:AIR32F103 内置的 PLL 可输出 216MHz 时钟
使用范例:参考\ModuleDemo\RCC\RCC_ClockConfig工程
......
RCC_PLLCmd(DISABLE); //关闭PLL
AIR_RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_27, 1);//配置PLL,8*27=216MHz
RCC_PLLCmd(ENABLE); //使能PLL
......
GPIO支持独立上下拉控制#
描述:AIR32F103 支持独立上下拉控制(40K),当 IO为复用功能时,可代替外部电路电阻。例如:
使用 SDIO 模块时,D0-D3 和 CMD 可用内部上拉电阻
使用IIC是,当IIC 速率小于等于100K,可用内部上拉电阻
使用范例:参考\ModuleDemo\IIC\IIC_IntTransmit工程
//开启内部上拉
GPIO_ForcePuPdCmd(GPIOB, ENABLE);
GPIO_ForcePullUpConfig(GPIOB, GPIO_Pin_8); // PB8上拉
GPIO_ForcePullUpConfig(GPIOB, GPIO_Pin_9); // PB9上拉
USB内部可选1.5K上拉电阻#
描述:USB 内部 DP可选1.5K上拉电阻,可替代外部电路上拉电阻;并且可以实现软件重枚举(不需要PCB外部加三极管控制)
使用范例:参考\ModuleDemo\USB\Virtual_COM_Port工程
DP_PUUP = 1;
USB支持PLL时钟的 1/1.5/2/2.5/3/3.5/4/4.5 倍分频作为 USB 时钟#
描述:支持 PLL 时钟的 1/1.5/2/2.5/3/3.5/4/4.5 倍分频作为 USB 时钟
使用范例:参考\ModuleDemo\USB\Virtual_COM_Port工程
//USB时钟配置函数,USBclk=48Mhz@HCLK=72Mhz
void Set_USBClock(void)
{
RCC_USBCLKConfig(RCC_USBCLKSource_PLLCLK_4Div5); //USBclk=PLLclk/1.5=48Mhz
RCC_APB1PeriphClockCmd(RCC_APB1Periph_USB, ENABLE); //USB时钟使能
}
MCO支持输出PLL 2-16分频输出#
描述:MCO支持输出 PLL 2-16 分频输出
使用范例:参考\ModuleDemo\MCO\MCO_PllDiv工程
/** @defgroup Clock_source_to_output_on_MCO_pin
* @{
*/
enum
{
RCC_MCO_NoClock = 0x00,
RCC_MCO_SYSCLK = 0x04,
RCC_MCO_HSI,
RCC_MCO_HSE,
RCC_MCO_PLLCLK_Div2,
RCC_MCO_PLLCLK_Div3,
RCC_MCO_PLLCLK_Div4,
RCC_MCO_PLLCLK_Div5,
RCC_MCO_PLLCLK_Div6,
RCC_MCO_PLLCLK_Div7,
RCC_MCO_PLLCLK_Div8,
RCC_MCO_PLLCLK_Div9,
RCC_MCO_PLLCLK_Div10,
RCC_MCO_PLLCLK_Div11,
RCC_MCO_PLLCLK_Div12,
RCC_MCO_PLLCLK_Div13,
RCC_MCO_PLLCLK_Div14,
RCC_MCO_PLLCLK_Div15,
RCC_MCO_PLLCLK_Div16,
};