阅读:1755回复:18
D12相对c51的地址?
我的是用p3.0连接A0,两个片子的ALE都置空。
现在的问题是D12对51的地址是什么? 即固件的硬件抽象层的inportb()和outportb()分别怎么写? 谢谢!! |
|
最新喜欢:![]()
|
沙发#
发布于:2004-04-29 15:05
帮帮我啦!! 给个思路就行!
在南京的同志,搞定了请吃饭饭! |
|
|
板凳#
发布于:2004-04-29 15:09
D12的ALE能悬空吗?
不是吧? |
|
地板#
发布于:2004-04-29 15:21
非复用方式下的。
用A0选择命令或数据。 |
|
|
地下室#
发布于:2004-04-29 15:22
非复用要接地啊!
|
|
5楼#
发布于:2004-04-29 15:28
哈哈,老了老了,才做好几天都忘了,才看了一下,是接地的。
硬件抽象层怎么写呀? |
|
|
6楼#
发布于:2004-04-29 15:34
我都是照周立功的做的,
可是书上没有说应该怎么连接, 所以做出来的都没有什么反应! |
|
7楼#
发布于:2004-04-29 15:34
它们是按复用的做的吧。
|
|
|
8楼#
发布于:2004-04-29 15:38
是的,
可是我弄不明白, 为什么偶地址指的是命令, 而奇地址指的是数据? 怎么接才能符合这个要求? 我真弄不明白! |
|
9楼#
发布于:2004-04-29 15:48
对于51来说,用d12相当于扩展了一个RAM。
8个地址位,一个数据位。 按照它们的接法,0xff02 正好对应数据。 可是我的非复用,怎么玩儿呢?!◎#¥%……※×()――+ 您在南京吗?有手机吗? |
|
|
10楼#
发布于:2004-04-29 15:50
我在杭州市,
有手机, 不过话费不多。 穷! |
|
11楼#
发布于:2004-04-29 15:52
对于51来说,用d12相当于扩展了一个RAM。 8个地址位,一个数据位,0xff02正好对应数据, 怎么说呢? |
|
12楼#
发布于:2004-04-29 15:53
都穷,买板子的钱都搞死我了。
发几个短信还行吗? 行的话,看看我给你发的在线留言,上面有我的手机。 |
|
|
13楼#
发布于:2004-04-29 15:57
当然可以发短信,
由于太穷, 我的手机的功能现在只有收发短信了:) 买板子不可以报的吗? 自己掏? |
|
14楼#
发布于:2004-04-29 15:59
我是做毕业设计,找谁报? 难道申请科研经费?哈哈
我要下了。135 851 09003 |
|
|
15楼#
发布于:2004-04-29 16:04
毕业设计不是有经费的吗?
晚上给你发短信! [编辑 - 4/29/04 by longyinjiuxiao] |
|
16楼#
发布于:2004-04-30 09:55
/*电路设计:
8位并行数据线 <-----> PortA 数据/指令控制脚A0 <----- PortC-0 WR <----- PortC-1 RD <----- PortC-2 INT_N -----> IRQ CS_N,ALE直接接地 对PDIUSBD12的写操作, 通过函数的参数nPort区分写数据或是写指令, 而参数nVal则是要写入PDIUSBD12的1字节内容。 */ void outportb(unsigned short nPort,unsigned char nVal) //对PDIUSBD12的写操作 { DDRA=0xff; // 方向寄存器,设置PortA为输出 if(nPort) // nPort参数区分写数据或是写指令 PTC|=0x01; // 置A0为1,写指令 else PTC&=0xfe; // 置A0为0,写数据 PTA=nVal; // 由PortA写1个字节 PTC&=0xfd; // 模拟WR信号下降沿(PortC-1) PTC|=0x02; // 模拟WR信号上升沿(PortC-1) } unsigned char inportb(unsigned short nPort) //对PDIUSBD12的读操作 { unsigned char nVal; DDRA=0x00; // 方向寄存器,设置PortA为输入 if(nPort) PTC|=0x01; // 置A0为1 else PTC&=0xfe; // 置A0为0 PTC&=0xfd; // 模拟RD信号下降沿(PortC-2) nVal=PTA; // 由PortA读取1个字节 PTC|=0x04; // 模拟RD信号上升沿(PortC-2) return nVal; } 兄弟,我把摩托罗拉的程序帖出来, 你看一下。 |
|
17楼#
发布于:2004-05-01 18:44
再单地址下把D12的A0接到MCU的P0.0上,这样就能区分数据还是命令
|
|
18楼#
发布于:2004-05-06 02:00
我也有这个问题。
区分数据与命令还能理解, 但是,它们的地址为什么是0xff02和0xff03(按周立功),而不是0xff04和0xff05或者其它什么的呢?! |
|