wangjun403 发表于 2011-4-11 18:21

指针,端口映射或其他,我也说不清楚

本帖最后由 wangjun403 于 2011-4-11 18:24 编辑

用的是TMS320C672x系列的DSP
程序代码里的小问题,请教下

功能是点亮一个LED#define TRUN_ON_LED1      *(unsigned volatile int *)MaASP1_PDCLR =0x0200000一起6个LED,全部采用的是这种方式

PDCLR地址是0x4400 0020

我理解就是把端口所对应的位映射到地址中去,所以可以那样点亮一个LED
但不知道为什么?

希望大家给我解释下,或提供下相关文档

另外求操作TMS320C672x定时器的详细文档

aresc 发表于 2011-4-11 23:16

TI的C6000的寄存器采用MEMORY MAP的形式,用C语言的指针来读写寄存器的内容.

PDCLR就是一个寄存器,你的系统应该是将对应的McASP的引脚配置成GPIO来控制LED了,写PDCLR实际上是改变PDOUT寄存器的内容控制不同GPIO的状态,向PDCLR相应位写1,则清除PDOUT寄存器中的相应位;向PDCLR相应位写0,对PDOUT的相应位没有影响. 也就是可以只改变某一位的状态,而其它位的状态可以不受影响.

好好看一下C672x的McASP文档吧.
页: [1]
查看完整版本: 指针,端口映射或其他,我也说不清楚