这个哪里错啦?MSP430数码管的程序

2019-03-24 09:58发布

本帖最后由 qweqwr 于 2015-7-28 11:39 编辑
  1. #include<msp430f5529.h>
  2. char Seg[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07};
  3. main()
  4. {
  5.     unsigned int i,j;
  6.     P3DIR=0xff;
  7.     P4DIR=BIT0+BIT1+BIT2;
  8.     P3OUT=0Xff;
  9.     while(1)
  10.     {
  11.         for(i=0;i<8;i++)
  12.         {
  13.             P4OUT = Seg[i];
  14.             for(j=0;j<50000;j++);
  15.                
  16.         }
  17.     }
  18. }
复制代码

我P3接数码管,P4.0 P4.1 P4.2接138译码器,现象应该是八位数码管依次显示8,但是实际却只显示最左边一位。
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
qweqwr
1楼-- · 2019-03-26 09:19
qiushenghua 发表于 2015-7-28 02:12
还是没说清楚,最左端一个亮对应38译码器的数值几?0还是7?
目前能发现的问题就是没有关狗,还有i初始化 ...

没关看门狗会造成这个问题吗?
qweqwr
2楼-- · 2019-03-26 11:14
 精彩回答 2  元偷偷看……
qweqwr
3楼-- · 2019-03-26 12:44
gcxzhz 发表于 2015-7-27 23:00
别用循环 单独测试每一位看一下  138的接线对吗

问题解决啦,没有关看门狗。谢啦
qiushenghua
4楼-- · 2019-03-26 15:25
qweqwr 发表于 2015-7-28 11:42
最左端亮对应138译码器0!i的初始化是我之前改的忘了改回去,还有一看就知道数码管是八位的吧,你看程序 ...

看程序确实能看出应该用共阴数码管,但是万一用错了共阳的数码管,同样会出问题的。所以需要先确认不是犯了这些弱智错误。

一周热门 更多>

相关问题

    相关文章