EDA365电子论坛网

标题: DSP---28335LED地址映射问题 [打印本页]

作者: damengshu    时间: 2021-12-31 13:40
标题: DSP---28335LED地址映射问题

想必刚接触DSP的小伙伴们都会是从流水灯实验开始学习的。但是在学习的过程中肯定会遇到很多的问题,那么下面我就把我学习的过程记录下来,欢迎大家一起交流,共同进步。

1)万恶的开始

​​​​#define

LedReg

(*((volatile  Uint16

*)0x41FF))

学习过C语言的应该一定能够看懂这句话(我还是废话一点说明一下吧):

(volatile  Uint16

*)0x41FF这个的意思是将41FF这个地址强制的转换为不可更改的16位的int型地址,将这个地址以后作为LED的写入数据的地址;

​​((volatile

Uint16

*)0x41FF)然后这个相当于最简单的指针p(就是我们刚接触C语言时候的指针*p里面的p);

​(*((volatile

Uint16

*)0x41FF))这个就是一个完整的int型的16位指针了,其指向的是LED的地址,这个说的通俗一点就是C语言里面的*p=8,就是这个意思,这里的8就代表了以后LED的控制信号的所在的地方了。

2)关于CPLD​

其实LedReg

(*((volatile  Uint16

*)0x41FF))这句话所包含的真正的含义是先把地址映射到CPLD上,再通过CPLD的内部处理来控制LED的亮灭的。因为这里的地址是0x41ff,在进入CPLD之前,要减去这个存储单元的基地址(官方的例程是将这个写在了XINTF的ZONE0区域,这里的基地址就是0x4000),减去基地址之后就是0x01ff,那么再看上面的CPLD的地址输入端信号,是读取输入信号的高4位,送入到CPLD的立面进行对应外设的选择。至于CPLD的使用,楼主我没有找到相关的资料,如果大家有的话,欢迎大家分享。

这样大家能理解了么,文采不好,如果大家还有什么不明白的地方,欢迎评论交流。​祝大家生活愉快。​

大家可以举一反三的理解下28335的cpld的工作原理。​

DAC7725N是一个数模转换的模块,和DSP是通过一个CPLD相接的,可以看到CPLD就是起到了一个地址译码器的作用。

! X5 l/ o/ o9 ~% a; e+ u2 T

作者: guanshen    时间: 2021-12-31 13:53
CPLD可以起到地址译码器的作用
作者: grand    时间: 2021-12-31 15:02
CPLD如何使用
作者: hunterccc    时间: 2021-12-31 16:50
学习了  感谢分享
作者: muzitongxue    时间: 2021-12-31 17:11
地址跟BootLoader一样是确定地址吗




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2