[ZLG-ARM] LPC2131板子,管脚不能顺利的置高置低,Help Me.

[复制链接]
 楼主| arm_arm 发表于 2007-3-6 14:34 | 显示全部楼层 |阅读模式
#define&nbsp;ADDR1&nbsp;&nbsp;&nbsp;&nbsp;0x000000FF<br />#define&nbsp;ADDR2&nbsp;&nbsp;&nbsp;&nbsp;0x0000FF00<br /><br /><br />void&nbsp;w_addr1(uint32&nbsp;addr)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;PINSEL0&=0xFFFF0000;<br />&nbsp;&nbsp;&nbsp;&nbsp;IO0DIR=ADDR1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;IO0PIN=(IO0PIN&0xFFFFFF00)|addr;<br />}<br /><br />void&nbsp;w_addr2(uint32&nbsp;addr)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;PINSEL0=0x0000FFFF;<br />&nbsp;&nbsp;&nbsp;&nbsp;IO0DIR=ADDR1;<br />&nbsp;&nbsp;&nbsp;&nbsp;IO0PIN=(IO0PIN&0xFFFF00FF)|(addr&lt&lt8);<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />}<br /><br />int&nbsp;main(void)<br />{<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;uint32&nbsp;myaddr1;<br />&nbsp;&nbsp;&nbsp;&nbsp;uint32&nbsp;myaddr2;<br />&nbsp;&nbsp;&nbsp;&nbsp;myaddr1=0x55;<br />&nbsp;&nbsp;&nbsp;&nbsp;myaddr2=0xaa;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;while(1)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;w_addr1(myaddr1);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;w_addr2(myaddr1);<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;0;<br />}<br /><br />P0.2,P0.3,P0.11,P0.14等接口都加了上拉电阻了(在板子背面将跳线处短接了),在main()的while(1)里,只写一个函数w_addr1(myaddr1)或w_addr2(myaddr1),用示波器看管脚电平都对,如果两个函数一起写有的管脚是个方波,不是高低电平了.<br />w_addr1(myaddr2);<br />w_addr2(myaddr2);<br />P0.14,P0.2,P0.5是方波,其它管脚正常.<br /><br />w_addr1(myaddr1);<br />w_addr2(myaddr1);<br />P0.3,P0.7,P0.11,P0.4,P0.6是方波,其它管脚正常.<br /><br />为什么是这样啊??谢谢.
 楼主| arm_arm 发表于 2007-3-6 23:06 | 显示全部楼层

为什么这样?程序写错了吗?

有的脚不是方波,类似方波。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

39

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

19

主题

39

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部