C51需要先写一条指令将端口置1吗

[复制链接]
3332|22
 楼主| dingy 发表于 2013-1-2 14:14 | 显示全部楼层 |阅读模式
汇编读单片机端口引脚需要先写一条指令将端口置1,C51需要吗?
pengf 发表于 2013-1-2 14:15 | 显示全部楼层
看看C51的反汇编后的汇编程序
pengf 发表于 2013-1-2 14:15 | 显示全部楼层
没有将要读引脚的端口置1的汇编指令啊
renyaq 发表于 2013-1-2 14:16 | 显示全部楼层
supernan 发表于 2013-1-2 14:17 | 显示全部楼层
估计编译器没有那么智能,知道你要读端口状态然后生成端口置1的指令。需要在C程序中先把端口置1,然后再读。
栩栩如生 发表于 2013-1-2 14:17 | 显示全部楼层
不过51的端口默认状态是1,如果没有置零的操作直接读就行了。
zwll 发表于 2013-1-2 14:18 | 显示全部楼层
安全起见,还是加上吧,反正也耗不了多少时间。
chuxh 发表于 2013-1-2 14:18 | 显示全部楼层
编译器不会,自己操作吧。
 楼主| dingy 发表于 2013-1-2 14:19 | 显示全部楼层
可是我在使用过程中却发现我没这么做也行的耶。。。
llljh 发表于 2013-1-2 14:19 | 显示全部楼层
没有深究过这个问题 一般我都会先设定为输入口
juventus9554 发表于 2013-1-2 14:21 | 显示全部楼层
51没有输入一说,就是拉高,度状态
司徒老鹰 发表于 2013-1-2 14:21 | 显示全部楼层
5楼正确,书本上写的也是复位后为FF,绝大多数情况直接读就可以了
renyaq 发表于 2013-1-2 14:22 | 显示全部楼层
IIC之类的通讯才是需要读之前先置1
 楼主| dingy 发表于 2013-1-2 14:22 | 显示全部楼层
IIC之类的通讯才是需要读之前先置1
liuzaiy 发表于 2013-1-2 14:23 | 显示全部楼层
后面读再多次也不需要重新置1的,不管它是高电平还是低电平
yinxiangh 发表于 2013-1-2 14:23 | 显示全部楼层
51默认IO输出都为1,所以你不把它之前置0的话,是不用置1的。
 楼主| dingy 发表于 2013-1-2 14:25 | 显示全部楼层
算了,结贴了
 楼主| dingy 发表于 2013-1-2 14:25 | 显示全部楼层
不过仍然感谢大家啊
明月小厨 发表于 2013-1-2 18:52 | 显示全部楼层
需要的;
明月小厨 发表于 2013-1-2 18:53 | 显示全部楼层
和编译器无关;是硬件上的特点;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

745

主题

10920

帖子

6

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