久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4751|回復: 16
收起左側

lcd1602仿真正常但是焊接的實物電路顯示亂碼

  [復制鏈接]
ID:512401 發表于 2019-6-1 16:22 | 顯示全部樓層 |閱讀模式
50黑幣
先上程序
#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
回復

使用道具 舉報

ID:512401 發表于 2019-6-1 16:37 來自觸屏版 | 顯示全部樓層
仿真中正常顯示   開
回復

使用道具 舉報

ID:512401 發表于 2019-6-1 17:08 | 顯示全部樓層
在開發板上也是正常的
回復

使用道具 舉報

ID:96682 發表于 2019-6-1 18:37 | 顯示全部樓層
仿真上沒問題不代表實物上也能正常運行,樓主都沒曬實物電路圖問題不好找
回復

使用道具 舉報

ID:403018 發表于 2019-6-1 20:43 | 顯示全部樓層
建議測試下顯示固定數據是否正常
回復

使用道具 舉報

ID:552742 發表于 2019-6-1 22:35 | 顯示全部樓層
樓主 :1/建議你檢查電路是否存在虛焊
          2/你看一下軟件的字符排布是否正確(可能會存在錯位情況)
回復

使用道具 舉報

ID:512401 發表于 2019-6-1 23:05 | 顯示全部樓層

RE: lcd1602仿真正常但是焊接的實物電路顯示亂碼

原理圖

原理圖

pcb

pcb
pcb 和原理圖在這  在開發板上也能正常運行


回復

使用道具 舉報

ID:512401 發表于 2019-6-1 23:06 | 顯示全部樓層
wc86110 發表于 2019-6-1 18:37
仿真上沒問題不代表實物上也能正常運行,樓主都沒曬實物電路圖問題不好找

在開發板上也能正常運行

回復

使用道具 舉報

ID:360353 發表于 2019-6-2 04:12 | 顯示全部樓層
對于這個問題,你先讓它顯示正常字符串。如果能正常顯示。數據采集錯誤。無法正常顯示請檢查電路問題
回復

使用道具 舉報

ID:160500 發表于 2019-6-2 09:41 | 顯示全部樓層
看現象應該是軟件問題,檢查數據和字符轉換的部分。也可能是數據引腳反了
回復

使用道具 舉報

ID:96682 發表于 2019-6-2 13:12 | 顯示全部樓層
樓主用的是啥主控芯片?
回復

使用道具 舉報

ID:552983 發表于 2019-6-2 14:22 | 顯示全部樓層
先排除硬件連接問題后,嘗試在程序開頭加上比較長的延時,比如說3秒,看看是不是單片機現工作起來了,顯示屏還沒有工作的時候,單片機發的命令屏幕沒有接收到
回復

使用道具 舉報

ID:616545 發表于 2019-11-6 08:59 | 顯示全部樓層
我的也是,Proteus仿真正常顯示,但是實際電路就是一堆亂碼
回復

使用道具 舉報

ID:608872 發表于 2021-7-2 14:30 | 顯示全部樓層
找到原因了嗎?我也自己焊的洞洞板顯示正常,上PCB就是不行,也是亂碼,要不就是有個ADC采集不了
回復

使用道具 舉報

ID:943857 發表于 2021-7-2 21:12 來自觸屏版 | 顯示全部樓層
我感覺是寫的方式不對
回復

使用道具 舉報

ID:954170 發表于 2021-7-20 12:39 | 顯示全部樓層
可能產生的問題如下:


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


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


3、程序錯誤


只要這三點做對了是絕對沒問題的
回復

使用道具 舉報

ID:824490 發表于 2021-7-20 17:06 | 顯示全部樓層
又見墳貼。。。
能顯示,說明接線沒錯。顯示亂,重點去查代碼,比如初始化的各種模式是否正確,顯示數據寫入的對不對。。
本不想回這貼,算了,回就回吧。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品自产拍 | 亚洲成av人片在线观看 | 国产小u女发育末成年 | 成人av电影天堂 | 亚洲欧美一区二区三区1000 | 91传媒在线观看 | 欧美日韩网站 | 国产99小视频 | 亚洲欧美视频 | 国产亚洲高清视频 | 欧美一区二区三区 | 免费看黄色小视频 | 久久久999国产精品 中文字幕在线精品 | 91九色porny首页最多播放 | 亚洲国产一区二区三区四区 | 99精品一区二区三区 | 亚洲成人在线免费 | 精品国产一区二区三区久久久久久 | 精品蜜桃一区二区三区 | 在线观看av网站永久 | 久久国产精品视频观看 | 亚洲看片网站 | 精产国产伦理一二三区 | 国产精品亚洲精品 | 午夜电影合集 | 丝袜美腿一区 | 亚洲在线| 四虎在线观看 | 日韩视频在线观看中文字幕 | 日韩在线免费电影 | 中文字幕在线第一页 | 一区二区视频 | 男人的天堂久久 | 欧美最猛黑人 | 美女视频黄的免费 | 亚洲一区二区三区 | 国产在线观看一区 | 91久久久久久久 | 国产在线二区 | 国产精品一区二区在线 | 久久精品黄色 |