打印

大虾们:2051和373的问题

[复制链接]
1915|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tc9148|  楼主 | 2007-5-13 20:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我要实现的功能是,用2051将16位数据同时送出,我把P1口与两个373数据端连接,P3.0和P3.1接两个373的LE端,OE端接地。编好控制程序,用一个LED在373的一个输出端测试,亮度极其小,而且闪灭频率不是按照程序走。
真郁闷!2051最小系统工作正常。


#include  <reg51.h>
#define  dataout P1
sbit LE1=P3^0;
sbit LE2=P3^1;
//*************************************
//373控制引脚初始化
//*************************************
void initial()
{
 LE1=0;
 LE2=0;
}

//*************************************
//延时100ms子程序。
//*************************************
void delay()
{int i,j;
for(j=20;j>=0;j--)
{
for(i=5000;i>=0;i--);
}
}


//******************************************
//主程序
//******************************************
main()
{
initial();
while(1)
{
 
 initial(); 
 
 LE2=1;
 dataout=0x00;
 LE2=0;//片2锁存
 LE1=1; 
 dataout=0xff; 
 LE1=0;//片1锁存
 delay();//延时

 initial(); 
 LE1=1;
 dataout=0x00;
 LE1=0;//片1锁存
 LE2=1;
 dataout=0xff; 
 LE2=0;//片2锁存
 
 delay();
 }

 
}

相关帖子

沙发
jimsboy| | 2007-5-13 21:38 | 只看该作者

调试一把

把delay里边改成直接就return,然后单步,这样可以节省时间,看看是不是正确.

使用特权

评论回复
板凳
ayb_ice| | 2007-5-14 08:38 | 只看该作者

好好看看373的datasheet....

使用特权

评论回复
地板
tc9148|  楼主 | 2007-5-14 12:24 | 只看该作者

to:ayb_ice

373的datasheet我都研究了好几十遍了,373是电平触发,所以我就按照打开,送数据,然后关闭这个顺序写的。

使用特权

评论回复
5
ayb_ice| | 2007-5-14 13:32 | 只看该作者

随便说说

373建议使用灌电流方式...
频率取决于delay函数...
主循环中循环调用initial()程序,不符合逻辑规范,尽管此程序中不会有问题...

使用特权

评论回复
6
wjy1107| | 2007-5-14 16:42 | 只看该作者

弱弱地问一句

当373不锁存的时候,即LE为0与从0到1这段时间内373的输出电平是什么呢?

使用特权

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

本版积分规则

137

主题

589

帖子

1

粉丝