打印

大家帮我解决下关于AT89C2051片子的问题

[复制链接]
2858|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mycbaobei|  楼主 | 2011-8-26 13:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在做个双电机自动调节摄像机镜头实验,我开始用89S52做的实验,调试是成功的。现在我们工程师要我用AT89C2051做,但是我把程序写到2051里面去后调试不出来,不知道为什么,我测试过,振荡正常,复位是用的47UF和10K电阻。输出就是不正确,应该是上电后,自动选择基准点,也就是电机先自动调节,但是我测量输出引脚一直是高电位。大侠们帮我解决下,是不是硬件方面有什么问题,或者说程序方面 两个单片机的初始化不一样啊,我用的是C语言编写的,初始化方面就是P1|=0x00,和P3|=0xff,大家帮我看看应该怎么弄  我现在都急死了  这破东西我都弄了快一个月了

相关帖子

沙发
ayb_ice| | 2011-8-26 14:51 | 只看该作者
2051哪有什么P3口?

使用特权

评论回复
板凳
sw008| | 2011-8-26 17:11 | 只看该作者
看一下生成Hex时是不是没有在软件里选择芯片
再编一个简单的测试程序,看能否输出正确的值
逐步查找原因
另外P1|=0x00和P3|=0xff有什么意义?

使用特权

评论回复
地板
manle789| | 2011-8-26 18:38 | 只看该作者
我没用过,自己最好去看看AT89C2051的datasheet,也许会发现与at89c52的不同

使用特权

评论回复
5
dengm| | 2011-8-29 23:02 | 只看该作者
at80C2051 只有 2k

使用特权

评论回复
6
mycbaobei|  楼主 | 2011-8-30 09:31 | 只看该作者
2# ayb_ice  2051 有P3口的

使用特权

评论回复
7
mycbaobei|  楼主 | 2011-8-30 09:34 | 只看该作者
3# sw008  我编写了一个简单的程序实验了下 也是一样的,输出就是不对,P1|=0x00和P3|=0xff,是初始化啊,P3做为输入口要至1,P1口作为输入口也要至1的,但是我不用P1口做为输入口就给他至0了,现在我怀疑是我的初始化有问题

使用特权

评论回复
8
ayb_ice| | 2011-8-30 11:23 | 只看该作者
对了,好象是有P3口,
记得2051的某个口是要接上拉电阻的,和比较器有关的

使用特权

评论回复
9
mycbaobei|  楼主 | 2011-8-30 13:17 | 只看该作者
8# ayb_ice  你的意思是哪个引脚啊,P3口就P3.6没有上拉电阻,但是片子上没有P3.6引脚,P1中P1.0,P1.1是没有上拉电阻的,可是他们是同向输入和输出端啊。还有就是我刚注意到我的程序,烧写是“已忽略部分超出缓存区的内容”,但是我用个小程序,实验的话,I/O口的输出全部是高电平

使用特权

评论回复
10
ayb_ice| | 2011-8-30 14:06 | 只看该作者
本帖最后由 ayb_ice 于 2011-8-30 14:24 编辑
8# ayb_ice  你的意思是哪个引脚啊,P3口就P3.6没有上拉电阻,但是片子上没有P3.6引脚,P1中P1.0,P1.1是没有上拉电阻的,可是他们是同向输入和输出端啊。还有就是我刚注意到我的程序,烧写是“已忽略部分超出缓存区 ...
mycbaobei 发表于 2011-8-30 13:17

这种问题直接问手册
刚才看了一下文档,好象不用比较器的话,是不用加上拉的

使用特权

评论回复
11
ayb_ice| | 2011-8-30 14:06 | 只看该作者
还有
“已忽略部分超出缓存区的内容”,
这个肯定是不行的

使用特权

评论回复
12
mycbaobei|  楼主 | 2011-9-1 08:22 | 只看该作者
非常感谢大家,找到解决办法了,是编译器问题

使用特权

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

本版积分规则

0

主题

7

帖子

1

粉丝