Tiva C AHB总线的使用

Tiva C系列微控制器的AHB总线提供了优于APB总线的连续访问性能。GPIO外设可以通过特定函数挂载到AHB总线,以实现更快的GPIO翻转速度。挂载后,操作GPIO需使用对应的AHB基地址。
摘要由CSDN通过智能技术生成

Tiva C AHB总线的使用

AHB总线概述

there are two on-chip buses that connect the core to the peripherals. The Advanced Peripheral Bus (APB) bus is the legacy bus. The Advanced High-Performance Bus (AHB) bus provides better back-to-back access performance than the APB bus.
Tiva™ TM4C123GH6PM Microcontroller High-Level Block Diagram
The Advanced Peripheral Bus (APB)bus is the legacy bus. The Advanced High-Performance Bus (AHB) bus provides better back-to-backaccess performance than the APB bus.
—— [ Tiva™ TM4C123GH6PM Microcontroller ]

AHB总线是一种高级高性能外设总线,通过Figure 1-1可以看出,TM4C123GH6PM的43个GPIO可以挂载到AHB总线,并且在该模式下,GPIO的翻转只需要两个系统时钟。

AHB总线的使用

SysCtlGPIOAHBEnable函数
—— [ Tiva C TivaWare 外设驱动库用户指南]

可以通过函数SysCtlGPIOAHBEnable(uint_32 ui32GPIOPeripheral)将GPIO挂载到AHB总线上,ui32GPIOPeripheral只能使用固定的值:SYSCTL_PERIPH_GPIOA,SYSCTL_PERIPH_GPIOB,…SYSCTL_PERIPH_GPIOJ

GPIO挂载到AHB总线后,GPIO的操作要使用GPIO_PORTn_AHB_BASE作为基地址代替GPIO_PORTn_BASE

以下是GPIO挂载到AHB总线的具体代码实现

//配置系统时钟80MHz
SysCtlClockSet(SYSCTL_SYSDIV_2_5 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN | SYSCTL_XTAL_16MHZ);
//使能GPIOF外设
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);
//GPIOF挂载AHB高性能总线
SysCtlGPIOAHBEnable(SYSCTL_PERIPH_GPIOF);
//挂载高性能总线后GPIOF基地址为GPIO_PORTF_AHB_BASE
//PF0输出模式
GPIOPinTypeGPIOOutput(GPIO_PORTF_AHB_BASE, GPIO_PIN_0);
//PF0输出1
GPIOPinWrite(GPIO_PORTF_AHB_BASE, GPIO_PIN_0,1);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值