欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機程序沒有錯誤,但是仿真里的LCD不顯示,求大佬幫忙指點下 [打印本頁]

作者: shoos    時間: 2021-4-8 17:24
標題: 單片機程序沒有錯誤,但是仿真里的LCD不顯示,求大佬幫忙指點下

#include <reg51.h>
#include <intrins.h>
#include<math.h>
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
uint buffer1,buffer2;
uchar dis1[17] ={'T','o','t','a','l','M','o','n','e','y','=',' ',' ',' ','.',' ','\0'};
uchar dis2[17] ={'C','u','r','r','e','n','t','M','o','n','e','y','=',' ','.',' ','\0'};
sbit LCD_RS = P1^1;           
sbit LCD_EN = P1^0;              
sbit QQ=P2^0;
sbit WW=P2^1;
sbit EE=P2^2;
sbit RR=P2^3;
void delay(int ms)
{                           
   int i;
   while(ms--)
   {
     for(i =0; i< 250; i++)
     {
      _nop_();
      _nop_();
      _nop_();
      _nop_();
     }
   }
}
void lcd_wcmd(uchar cmd)
{                          
  //while(lcd_busy());
    LCD_RS =0;
    LCD_EN =0;
    _nop_();
    _nop_();
    P0 = cmd;
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    LCD_EN =1;
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    LCD_EN =0;  
}
void lcd_wdat(uchar dat)
{                          
//while(lcd_busy());
    LCD_RS =1;
   // LCD_RW =0;
    LCD_EN =0;
    P0 = dat;
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    LCD_EN =1;
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    LCD_EN =0;
}
void lcd_pos(uchar pos)
{                          
  lcd_wcmd(pos|0x80);   
}
void lcd_init()
{                        
   lcd_wcmd(0x38);         
    delay(5);
   lcd_wcmd(0x38);         
    delay(5);
   lcd_wcmd(0x38);         
    delay(5);
   lcd_wcmd(0x0c);         
    delay(5);
   lcd_wcmd(0x06);         
    delay(5);
   lcd_wcmd(0x01);         
    delay(5);
}
void shujuchuli()
{  
    float temp1,temp2;
       if(QQ==0)
       {
        temp1=temp1+1;
        temp2=1;
       }
       if(WW==0)
       {
        temp1=temp1+0.5;
        temp2=0.5;
       }
       if(EE==0)
       {
        temp1=temp1+0.1;
        temp2=0.1;
       }
       if(RR==0)
       {
        temp1=temp1+0.1;
        temp2=0.1;
       }   
buffer1=temp1*10;
dis1[11]=(buffer1%10000)/1000+'0';
dis1[12]=(buffer1%1000)/100+'0';
dis1[13]=(buffer1%100)/10+'0';
dis1[15]=buffer1%10+'0';
buffer2=temp2*100;
dis2[13]=(buffer2%1000)/100+'0';
dis2[15]=(buffer2%100)/10+'0';                  
}
void xianshi()
{uchar i;
  lcd_wcmd(0x06);               
     lcd_pos(0);                    
         delay(5);
         lcd_pos(0);                    

      i = 0;
         delay(1);
    while(dis1 != '\0')
     {                                
      lcd_wdat(dis1);
       i++;
      delay(1);               
     }
          delay(1);
      lcd_pos(0x40);         
          delay(1);
          lcd_pos(0x40);        
      i = 0;
         delay(1);  
    while(dis2 != '\0')
     {
      lcd_wdat(dis2);           
       i++;
      delay(1);              
     }
}
main()
{
  lcd_init();
  while(1)
   {
   shujuchuli();
    xianshi();
   }
}



作者: taotie    時間: 2021-4-8 17:48
上拉電阻加在p0端口試一試
作者: ankangyu    時間: 2021-4-8 18:25
單片機的P0端口沒加上一組上拉電阻或者下拉電阻都可以,因為P0口默認輸出高阻態(tài)。
作者: 張?zhí)鞄?nbsp;   時間: 2021-4-8 18:54
P0口做輸出要外加上拉電阻。

作者: shoos    時間: 2021-4-8 19:27
taotie 發(fā)表于 2021-4-8 17:48
上拉電阻加在p0端口試一試

加在P0口了,但還是不行

作者: 958668952    時間: 2021-4-8 20:03
復位腳是高電平,單片機一直在復位
作者: shoos    時間: 2021-4-8 20:29
958668952 發(fā)表于 2021-4-8 20:03
復位腳是高電平,單片機一直在復位

改了復位電路,也是不顯示

作者: taotie    時間: 2021-4-8 22:12
電路錯誤~程序錯誤
程序里自己查找改成下面的:缺少[i]
while(dis1[i] != '\0')
while(dis2[i] != '\0')
lcd_wdat(dis1[i]);
lcd_wdat(dis2[i]);
作者: taotie    時間: 2021-4-8 22:20


作者: taotie    時間: 2021-4-8 22:34
源程序雖然(Proteus )顯示編譯成功但里面夾了2條警告提示,你沒看到嗎?
作者: lwh999995    時間: 2021-4-8 23:17
RW引腳不能接地
數(shù)據(jù)口要上拉電阻
作者: shoos    時間: 2021-4-9 10:48
taotie 發(fā)表于 2021-4-8 22:12
電路錯誤~程序錯誤
程序里自己查找改成下面的:缺少
while(dis1 != '\0')

可以了,謝謝大佬幫助
作者: 來了來了噗    時間: 2022-6-9 16:48
taotie 發(fā)表于 2021-4-8 22:12
電路錯誤~程序錯誤
程序里自己查找改成下面的:缺少
while(dis1 != '\0')

這個是為什么啊,我的也是LED不顯示,但是代碼和她的不太一樣 就看不出來,不太會改




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1