打印

要不要先输出1

[复制链接]
2148|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chuxh|  楼主 | 2011-9-2 14:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
汇编读单片机端口引脚需要先写一条指令将端口置1,C51需要吗?
沙发
dingy| | 2011-9-2 14:46 | 只看该作者
看看C51的反汇编后的汇编程序

使用特权

评论回复
板凳
chuxh|  楼主 | 2011-9-2 14:58 | 只看该作者
没有将要读引脚的端口置1的汇编指令啊

使用特权

评论回复
地板
pengf| | 2011-9-2 15:17 | 只看该作者

使用特权

评论回复
5
juventus9554| | 2011-9-2 15:32 | 只看该作者
估计编译器没有那么智能,知道你要读端口状态然后生成端口置1的指令。需要在C程序中先把端口置1,然后再读。

使用特权

评论回复
6
llljh| | 2011-9-2 15:40 | 只看该作者
不过51的端口默认状态是1,如果没有置零的操作直接读就行了。

使用特权

评论回复
7
supernan| | 2011-9-2 15:46 | 只看该作者
安全起见,还是加上吧,反正也耗不了多少时间。

使用特权

评论回复
8
栩栩如生| | 2011-9-2 15:59 | 只看该作者
编译器不会,自己操作吧。

使用特权

评论回复
9
chuxh|  楼主 | 2011-9-2 16:12 | 只看该作者
可是我在使用过程中却发现我没这么做也行的耶。。。

使用特权

评论回复
10
renyaq| | 2011-9-2 16:21 | 只看该作者
没有深究过这个问题 一般我都会先设定为输入口

使用特权

评论回复
11
zwll| | 2011-9-2 16:30 | 只看该作者
51没有输入一说,就是拉高,度状态

使用特权

评论回复
12
supernan| | 2011-9-2 16:34 | 只看该作者
5楼正确,书本上写的也是复位后为FF,绝大多数情况直接读就可以了

使用特权

评论回复
13
司徒老鹰| | 2011-9-2 16:45 | 只看该作者
IIC之类的通讯才是需要读之前先置1

使用特权

评论回复
14
chuxh|  楼主 | 2011-9-2 16:54 | 只看该作者
复位之后是不用重新置1,但是随后如果这个引脚端口被改变了,再次读取这个引脚的时候呢?

使用特权

评论回复
15
dingy| | 2011-9-2 17:02 | 只看该作者
后面读再多次也不需要重新置1的,不管它是高电平还是低电平

使用特权

评论回复
16
Sea-Wolf| | 2011-9-3 08:51 | 只看该作者
51默认IO输出都为1,所以你不把它之前置0的话,是不用置1的。

使用特权

评论回复
17
米其林r| | 2011-9-5 23:23 | 只看该作者
看数据手册啊,

使用特权

评论回复
18
chuxh|  楼主 | 2011-9-8 09:48 | 只看该作者
[quote]看数据手册啊,
米其林r 发表于 2011-9-5 23:23 [/quote看了能解决的话早看了

使用特权

评论回复
19
chuxh|  楼主 | 2011-9-8 10:01 | 只看该作者
算了,结贴了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

936

主题

11296

帖子

2

粉丝