[TECH]TI C55x系列DSP的GPIO如何使用

关于TI 55x(主要是5509/A,5510,其他类似)系列DSP的GPIO
C55X系列DSP的GPIO有专用GPIO,地址总线GPIO,控制总线GPIO,其中的专用GPIO上电复位后就具有了GPIO的功能,GPIO[0..3]的上电状态同时决定DSP的启动模式。
在对专用GPIO编程过程中可以直接设置方向,赋值即可。以下的实例是基于CSL。
e.g:
GPIO_RSET(IODIR,0xff);//设置全部专用GPIO([7..0])方向为输出,1输出,0输入。
GPIO_pinWrite(GPIO_GPIO_PIN2,1)//向专用GPIO2输出高电平
GPIO_RSET(IODATA,val);//将val所代值赋给专用GPIO。
GPIO_RSET(IODIR,0x00);//设置全部专用GPIO([7..0])方向为输入。
unsigned char temp=GPIO_RGET(GPIO_PIN2);//读取专用GPIO2引脚的值。并传递到temp寄存器
unsigned char temp=GPIO_pinRead(GPIO_GPIO_PIN2);//读回GPIO2的值。

另外还可以做为GPIO使用的是可以配置的地址GPIO,在使用时,需要先配置外部总线选择寄存器(XBSR)的最后两位为00,之后用AGPIOEN 使能,在AGPIODIR配置

方向,用AGPIODATA输出数据,其中引脚标记用:如AGPIO_GPIO_PIN2表示A2.此时地址线作为GPIO使用
/*操作Address GPIO*/
CHIP_RSET(XBSR,0x00);//最后两位配置为00,选择data emif模式
GPIO_RSET(AGPIOEN,0xffff);//所有的Address GPIO使能。
GPIO_RSET(AGPIODIR,0xffff);//所有的Address GPIO方向输出。
GPIO_RSET(AGPIODATA,0xffff);//所有的Address GPIO输出高电平。
GPIO_pinWrite(AGPIO_GPIO_PIN2,1)//向地址GPIO2输出高电平
unsigned char temp=GPIO_RGET(AGPIO_PIN2);//读取专用地址GPIO2引脚的值。并传递到temp寄存器
unsigned char temp=GPIO_pinRead(AGPIO_GPIO_PIN2);//读回地址GPIO2的值。

还有就是控制接口Cx也可以配置成GPIO,但这个要先配置XBSR为相应模式,并使能。用法类似。

以上信息可以在相应DATASHEET的GPIO章节找到,CSL的在官方手册的第八章GPIO模块找到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值