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

標題: lcd1602仿真正常但是焊接的實物電路顯示亂碼 [打印本頁]

作者: susu1234    時間: 2019-6-1 16:22
標題: lcd1602仿真正常但是焊接的實物電路顯示亂碼
先上程序
#include<reg52.h>
#include <intrins.h>
#include "LCD1602.h"
sbit  RX = P3^3;  
sbit  TX = P3^2;
sbit LED = P1^3;  
sbit SPEAK = P1^0;
sbit Motor = P1^7;
unsigned int  time=0;
unsigned int  timer=0;
unsigned int S=0;
unsigned int SET_H=2000,SET_L=100;
bit  flag =0;
unsigned char Table[5],Table1[5];
unsigned char KEY_flag=0;
//?????
void Delay_ms(int jj)  
{
int ii;
while(jj--)
  for(ii=0;ii<116;ii++);
}
void Conut(void)  
{
  time=TH0*256+TL0;  
  TH0=0;  
  TL0=0;  

  S=(time*1.87)/10;     
  if((S>=7000)||flag==1)
  {  
   flag=0;
  }
  else
  {
   Table1[0]= S/1000+0X30;
   Table1[1]= S/100%10+0X30;
   Table1[2]= S/10%10+0X30;
   Table1[3]= '.';   
   Table1[4]= S%10+0X30;   
   LCD1602_Disp_ZF(0x88,Table1,5);
}
}
void main(void)
{
    LCD1602_init();
////////////////
    LCD1602_Disp_ZF(0x80,"  Now S:     CM ",16);
           
    LCD1602_Disp_ZF(0x80+0X40,"Set H     L     ",16);
TMOD=0x11;     
TH0=0;      
TL0=0;            
TH1=0xf8;     
TL1=0x30;     
ET0=1;            
ET1=1;      
TR1=1;      
EA=1;      
EA=0;
EA=1;
while(1)
{
  while(!RX);      
  TR0=1;      
  while(RX);   
  TR0=0;   
  Conut();  
  /////////////////////////////////////
  if((S>SET_H)||(S<SET_L))
  {
   LED=0;SPEAK=0;
  }
  else
  {
   LED=1;SPEAK=1;
  }
  ////////////////////////////////
  if((S>SET_H))
  {
   Motor=0;
  }
  else
  {
   Motor=1;
  }
   Table[0]= SET_H/1000+0X30;  
   Table[1]= SET_H/100%10+0X30;
   Table[2]= SET_H/10%10+0X30;
   Table[3]= '.';
   Table[4]= SET_H%10+0X30;
   LCD1602_Disp_ZF(0x85+0x40,Table,5);
   Table[0]= SET_L/1000+0X30;  
   Table[1]= SET_L/100%10+0X30;
   Table[2]= SET_L/10%10+0X30;
   Table[3]= '.';
   Table[4]= SET_L%10+0X30;
   LCD1602_Disp_ZF(0x8b+0x40,Table,5);
}
}

#include "LCD1602.h"
void delay_50us_1602(unsigned int t)
{
unsigned char j;
for(;t>0;t--)
  for(j=19;j>0;j--);
}

void LCD1602_write_com(unsigned char com)
{
LCD1602_E = 0;
LCD1602_RS = 0;
LCD1602_RW = 0;
LCD1602_Data= com;
delay_50us_1602(10);
LCD1602_E = 1;
delay_50us_1602(20);
LCD1602_E = 0;
}
void LCD1602_write_data(unsigned int dat)
{
LCD1602_E = 0;
LCD1602_RS = 1;
LCD1602_RW = 0;
LCD1602_Data = dat;
delay_50us_1602(10);
LCD1602_E = 1;
delay_50us_1602(20);
LCD1602_E = 0;
}
void LCD1602_init(void)
{
   delay_50us_1602(300);
   LCD1602_write_com(0X38);
   delay_50us_1602(100);
   LCD1602_write_com(0X38);
   delay_50us_1602(100);
   LCD1602_write_com(0X38);
   LCD1602_write_com(0X38);
   LCD1602_write_com(0X08);
   LCD1602_write_com(0X01);
   LCD1602_write_com(0X06);
   LCD1602_write_com(0X0C);
   
}

void LCD1602_Disp_ZF(unsigned char addr,const unsigned char * pt,unsigned char num)
{
unsigned char i;
LCD1602_write_com(addr);
for(i = 0;i < (num*1);i++)
  LCD1602_write_data(*(pt++));
}

IMG_20190601_162024.jpg (2.22 MB, 下載次數: 71)

IMG_20190601_162024.jpg

作者: susu1234    時間: 2019-6-1 16:37
仿真中正常顯示   開
作者: susu1234    時間: 2019-6-1 17:08
在開發板上也是正常的
作者: wc86110    時間: 2019-6-1 18:37
仿真上沒問題不代表實物上也能正常運行,樓主都沒曬實物電路圖問題不好找
作者: yk910127    時間: 2019-6-1 20:43
建議測試下顯示固定數據是否正常
作者: 快樂圣誕節分厘    時間: 2019-6-1 22:35
樓主 :1/建議你檢查電路是否存在虛焊
          2/你看一下軟件的字符排布是否正確(可能會存在錯位情況)
作者: susu1234    時間: 2019-6-1 23:05
標題: RE: lcd1602仿真正常但是焊接的實物電路顯示亂碼
pcb 和原理圖在這  在開發板上也能正常運行



作者: susu1234    時間: 2019-6-1 23:06
wc86110 發表于 2019-6-1 18:37
仿真上沒問題不代表實物上也能正常運行,樓主都沒曬實物電路圖問題不好找

在開發板上也能正常運行


作者: 13383864609    時間: 2019-6-2 04:12
對于這個問題,你先讓它顯示正常字符串。如果能正常顯示。數據采集錯誤。無法正常顯示請檢查電路問題
作者: liuzx66    時間: 2019-6-2 09:41
看現象應該是軟件問題,檢查數據和字符轉換的部分。也可能是數據引腳反了
作者: wc86110    時間: 2019-6-2 13:12
樓主用的是啥主控芯片?
作者: yiyizhao    時間: 2019-6-2 14:22
先排除硬件連接問題后,嘗試在程序開頭加上比較長的延時,比如說3秒,看看是不是單片機現工作起來了,顯示屏還沒有工作的時候,單片機發的命令屏幕沒有接收到
作者: lioooo    時間: 2019-11-6 08:59
我的也是,Proteus仿真正常顯示,但是實際電路就是一堆亂碼
作者: yinnan128    時間: 2021-7-2 14:30
找到原因了嗎?我也自己焊的洞洞板顯示正常,上PCB就是不行,也是亂碼,要不就是有個ADC采集不了
作者: 菇涼猶在    時間: 2021-7-2 21:12
我感覺是寫的方式不對
作者: 軒轅頂托    時間: 2021-7-20 12:39
可能產生的問題如下:


1、I/O口與LCD的數據口方向焊反


2、LCD的RS、RW、E的控制I/O口在程序編輯時定義錯誤


3、程序錯誤


只要這三點做對了是絕對沒問題的
作者: 名字不是重點    時間: 2021-7-20 17:06
又見墳貼。。。
能顯示,說明接線沒錯。顯示亂,重點去查代碼,比如初始化的各種模式是否正確,顯示數據寫入的對不對。。
本不想回這貼,算了,回就回吧。




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