94|0

6943

帖子

19

资源

纯净的硅(中级)

DSP C54X ioport的用法 [复制链接]

DSP中如何访问I/O,数据空间

访问I/O空间


I/O空间地址声明

要在程序中访问io空间地址,必须首先用关键字“ioport”对要访问的地址进行定义。

语法:ioport t ype porthex_num
ioport 声明io空间端口变量的关键字;
type 变量类型,可以为char, short, int或unsigned int;
porthex_num 端口号,port后面接16进制数字。

ioport unsigned int port10;

注:声明io空间地址必须在C文件起始声明,不允许在函数中使用ioport声明io空间地址。

I/O空间地址访问

访问用ioport关键字声明的I/O端口变量和访问一般变量没有区别。

ioport unsigned int port10;
int func ()
{
...
port10 = a;
...
b = port10;
...
}

I/O端口变量的使用不仅仅局限于赋值,和其他变量同样也可以应用于其它的表达式。

call (port10);
a = port10 + b;
port10 += a;

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
程序中访问的任何一个IO地址都必须在C语言程序起始处用ioport关键字声明!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

访问数据空间

访问数据空间不需要对要访问的单元预先声明,访问是通过指针的方法实现的。

unsigned int org,cnt,block,offset,tmp,i;
org = *(unsigned int *) 0x8000;
cnt = *(unsigned int *) 0x8001;
block = *(unsigned int *) 0x8002;
offset = *(unsigned int *) 0x8003;
for (i=0; i<cnt; i++)

tmp = *(unsigned int *) (org + i);
*(unsigned int *) (org + offset +i) = tmp;


回复
您需要登录后才可以回帖 登录 | 注册

最新文章 更多>>
    关闭
    站长推荐上一条 1/4 下一条

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

    电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表