ioport 是用来定义io口的一个关键字
语法: ioport type porthex_num ;
其中:
ioport keyword,表明这是一个端口变量
type 必须是 char short int 或 unsigned int
porthex_num 端口号,hex_num是一个十六进制数,代表IO空间的地址
注:端口定义放在函数中无效,必须在文件级的位置。
所以,ioport unsigned port3; 表示定义了一个unsigned类型的IO口,其地址为 003H
例:
ioport int port10; //定义了一个整型的IO口,其地址为 010H
int a;int b;int c;
extern void foo(int);
void func( )
{
port10 = a; //把a从port10送出
b = port10; //读操作
foo(port10); //可以作为函数的参数
c = port10+b;
port10 += a; // 可以放在表达式中操作
}
如果对定义IO口的地址有疑问的话,可以看下C compiler 的输出文件。
比如 port10 = a; 被编译为以下的汇编语句:
MOVZ DP,#_a
OUT *(010H),@_a
谢谢各位朋友的指点,但我还是不懂怎样对LF2407A的数据线D0~D15进行操作,麻烦大家给我举个例子,比如我要从D0~D15上送出一个数0x00FF,用C语言该怎样写。
请不要和单片机的数据线混淆!
单片机的是复用的,而DSP不是.
对,楼上的朋友说得对,DSP是哈佛结构的
D0~D7的输出,跟内存映射地址有关。。。。
如果连接的是液晶,我看到很多同行是用GPIO连接LCD,而不是用DATA BUS连接(我自己也用GPIO),
在网上看到你的帖子:请教有关2407A数据总线的问题”
我现在遇到的问题和你说的基本一样也是要数据总线连接显示器,请问你是怎么解决的,麻烦了,
我的QQ是68402710,邮箱是yizhetian@163.com
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |