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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1427|回復: 2
打印 上一主題 下一主題
收起左側

stm8003單片機驅動lcd1602 四線驅動出現問題 求大神幫忙

[復制鏈接]
跳轉到指定樓層
樓主
現在發現驅動出現亂碼 以及 不顯示 ,功能很不正常
下面附上代碼以及 原理圖

#ifndef __LCD1602_H
#define __LCD1602_H

/***********LCD1602 四線驅動***********/

#include "system.h"
#include "delay.h"

/***********Definition***********/
#define LINE0   0x80
#define LINE1   0xC0

#define Rx_PORT (GPIOD)//RS= PD6  RW=PD5 EN=PD4
#define RS_PIN (GPIO_PIN_6) /* PD6 */
//#define RW_PIN (GPIO_PIN_5) /* PD5 */ /* NOT USE(RW接地) */
#define EN_PIN (GPIO_PIN_4) /* PD4 */
#define Rx_FOUR_PINS (RS_PIN | EN_PIN)
//#define Rx_ALL_PINS (RS_PIN | RW_PIN | EN_PIN) /* NOT USE */

#define Dx_PORT (GPIOC)
//#define D0_PIN (GPIO_PIN_0) /* PC0 */ /* NOT USE */
//#define D1_PIN (GPIO_PIN_1) /* PC1 */ /* NOT USE */
//#define D2_PIN (GPIO_PIN_2) /* PC2 */ /* NOT USE */
//#define D3_PIN (GPIO_PIN_3) /* PC3 */ /* NOT USE */
#define D4_PIN (GPIO_PIN_4) /* PC4 */
#define D5_PIN (GPIO_PIN_5) /* PC5 */
#define D6_PIN (GPIO_PIN_6) /* PC6 */
#define D7_PIN (GPIO_PIN_7) /* PC7 */
#define Dx_FOUR_PINS (D4_PIN | D5_PIN | D6_PIN | D7_PIN)
//#define Dx_ALL_PINS (D0_PIN | D1_PIN | D2_PIN | D3_PIN | D4_PIN | \
                     D5_PIN | D6_PIN | D7_PIN) /* NOT USE */

#define RS_LOW  GPIO_WriteLow (Rx_PORT, RS_PIN)
#define RS_HIGH GPIO_WriteHigh(Rx_PORT, RS_PIN)
#define EN_LOW  GPIO_WriteLow (Rx_PORT, EN_PIN)
#define EN_HIGH GPIO_WriteHigh(Rx_PORT, EN_PIN)
#define Dx_CLR  GPIO_Write(Dx_PORT, 0x00)

/***********Function***********/
void LCD1602_Cmd(uint8_t cmd);
void LCD1602_Data(uint8_t data);
void LCD1602_Init(void);
void LCD1602_SetCursor(uint8_t x, uint8_t y);
void LCD1602_PrintStr(uint8_t x, uint8_t y, uint8_t *str);

#endif /* __LCD1602_H */


#include "lcd1602.h"

/******發送命令******/
void LCD1602_Cmd(uint8_t cmd)
{
  delay_ms(2000);
  EN_LOW;
  RS_LOW; /* RS=0,寫入命令 */
  delay_us(10);
  GPIO_Write(Dx_PORT, (cmd&0xf0));     /* 接收高四位命令 */
  EN_HIGH;
  delay_ms(1);
  EN_LOW;

  GPIO_Write(Dx_PORT, (cmd&0xf0)<<4); /* 接收低四位命令 */
  EN_HIGH;
  delay_ms(1);
  EN_LOW;
}

/******發送數據******/
void LCD1602_Data(uint8_t data)
{  
  delay_ms(200);
  EN_LOW;
  RS_HIGH; /* RS=1,寫入數據 */
  delay_us(10);

  GPIO_Write(Dx_PORT, (data&0xf0));     /* 接收高四位數據 */
  EN_HIGH;
  delay_ms(1);
  EN_LOW;
  delay_us(10);
  GPIO_Write(Dx_PORT, (data&0xf0)<<4); /* 接收低四位數據 */
  EN_HIGH;
  delay_ms(1);
  EN_LOW;
}

/******LCD初始化******/
void LCD1602_Init(void)
{

    delay_ms(200);
//  LCD1602_Cmd(0x20);
//  LCD1602_Cmd(0x32);
//  delay_ms(5);
//  LCD1602_Cmd(0x28);  // 最后發0x28,進入4線模式,設置16*2顯示,115*7點陣,4位數據接口
//  delay_ms(5);
//  LCD1602_Cmd(0x28);
//  delay_ms(5);
//  EN_HIGH;
//  LCD1602_Cmd(0x28);
//  EN_LOW;
  LCD1602_Cmd(0x30);
  delay_ms(5);
  LCD1602_Cmd(0x30);
  delay_ms(5);
  LCD1602_Cmd(0x30);
  delay_ms(5);

  LCD1602_Cmd(0x28);
  LCD1602_Cmd(0x08);

  LCD1602_Cmd(0x01); /* 清屏 */
  LCD1602_Cmd(0x06);
  LCD1602_Cmd(0x0f);
  delay_ms(2);

  //LCD1602_Cmd(0x06); /* 寫入數據光標右移,寫入新數據顯示屏不移動 */
  //LCD1602_Cmd(0x0C); /* 開顯示,有光標,光標閃爍 */

}


/* 0x80和0xC0分別是兩行的開始地址,將字符的序號加上行的地
   址作為命令發送給LCD1602會讓下一個字符輸出在指定的位置  */
/******發送地址******/
void LCD1602_SetCursor(uint8_t x, uint8_t y) // x:列坐標 y:行坐標
{
  LCD1602_Cmd(x + (y ? LINE1:LINE0));
}

/******連續發送數據******/
void LCD1602_PrintStr(uint8_t x, uint8_t y, uint8_t *str)
{
  LCD1602_SetCursor(x, y);
  while(*str != '\0')
  {
    LCD1602_Data(*str++);
  }
}



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:517951 發表于 2022-1-3 13:24 | 只看該作者
發下亂碼顯示照片, 注意一下上電復位時序,還有發送數據的速度。lcd1602是慢速器件,不能太快。
另外論壇里有PCF8574驅動LCD1602的例程,你可以參照他們的程序來,也是采用4線驅動方式做的。
回復

使用道具 舉報

板凳
ID:543220 發表于 2022-1-5 14:27 | 只看該作者
rayin 發表于 2022-1-3 13:24
發下亂碼顯示照片, 注意一下上電復位時序,還有發送數據的速度。lcd1602是慢速器件,不能太快。
另外論壇 ...

感謝  , 已經解決與了 ,由于用的是ST_LINK仿真, 雖然程序初始化  有顯示清空的程序, 但還是不行, 需要重新上電。  所以 不重新上電會導致亂碼  , 還是得感謝你
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品日韩一区二区 | 日韩欧美一级片 | 国产一区二区精品在线观看 | 久久久久久久久久久久一区二区 | 91成人 | 老司机67194精品线观看 | 日日碰狠狠躁久久躁婷婷 | 欧美日韩在线高清 | 免费视频久久久久 | 久久久精品黄色 | 国产区高清 | 亚洲精品在线视频 | 日韩在线视频观看 | www久久国产| 国产成人一区在线 | 玩丰满女领导对白露脸hd | 欧美日韩一区二区三区在线观看 | 成人国内精品久久久久一区 | 免费国产一区二区 | 成人免费av在线 | 日韩中字幕 | 日韩精品四区 | 亚洲视频在线看 | 亚洲欧美第一视频 | 免费国产成人av | 国产精品揄拍一区二区久久国内亚洲精 | 中文字幕国产日韩 | 国产欧美一区二区三区久久手机版 | 国产精品欧美精品 | 亚洲一区二区在线播放 | 久久成人精品视频 | 日本一区二区三区四区 | 99久久婷婷国产综合精品电影 | 精品国模一区二区三区欧美 | 成人国产精品久久久 | 亚洲www啪成人一区二区 | 日韩欧美高清 | 国产亚洲精品久久久久动 | 日韩精品免费在线观看 | 中文字幕免费观看 | 国产综合精品一区二区三区 |