最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

PIC16F877A与YM1602C液晶的接口设计与软件编程

来源:动视网 责编:小OO 时间:2025-09-24 12:52:25
文档

PIC16F877A与YM1602C液晶的接口设计与软件编程

收稿日期:2008-10作者简介:刘健康(1980—),男,硕士,研究方向为机电一体化;高志(1963—),男,教授。PIC16F877A与YM1602C液晶的接口设计与软件编程刘健康,高志,宋冬冬(华东理工大学机械与动力工程学院,上海200237)摘要:首先介绍一款字符型液晶显示器YM1602C的硬件结构以及显示驱动控制器KS0066U的性能和特点;其次介绍了该液晶显示器与PIC16F877A单片机的硬件接口电路设计;最后介绍了PIC16F877A单片机在MPLABIDE+PICC软件平台上
推荐度:
导读收稿日期:2008-10作者简介:刘健康(1980—),男,硕士,研究方向为机电一体化;高志(1963—),男,教授。PIC16F877A与YM1602C液晶的接口设计与软件编程刘健康,高志,宋冬冬(华东理工大学机械与动力工程学院,上海200237)摘要:首先介绍一款字符型液晶显示器YM1602C的硬件结构以及显示驱动控制器KS0066U的性能和特点;其次介绍了该液晶显示器与PIC16F877A单片机的硬件接口电路设计;最后介绍了PIC16F877A单片机在MPLABIDE+PICC软件平台上
  收稿日期:2008-10  作者简介:刘健康(1980—),男,硕士,研究方向为机电一体化;高志(1963—),男,教授。

PI C16F877A 与Y M1602C 液晶的接口

设计与软件编程

刘健康,高 志,宋冬冬

(华东理工大学机械与动力工程学院,上海200237)

  摘要:首先介绍一款字符型液晶显示器Y M1602C 的硬件结构以及显示驱动控制器KS0066U 的性能和特点;其次介绍了该液晶显示器与P I C16F877A 单片机的硬件接口电路设计;最后介绍了P I C16F877A 单片机在MP LAB I D E +P I CC 软件平台上的C 语言编程以及针对Y M1602C 的C 程序设计,完成显示的功能。

关键词:Y M1602C;P I C16F877A;接口;MP LAB -I D E

中图分类号:TP334        文献标识码:B         文章编号:1006-2394(2009)02-0052-03

I n terface D esi gn and Program for YM 1602C LCD Ba sed on P I C16F877A

L IU J ian 2kang,G AO Zhi,S ONG Dong 2dong

(M echanical Engineering I nstitute,East China University of Science and Technol ogy,Shanghai 200237,China )

Abstract:Firstly,an intr oducti on is given about hard ware structure of Y M1602C and perf or mance and characteris 2tics of LCD πs contr oller KS0066U.Secondly,a design of LCD dis p lay interface with P I C16F877A is discussed .A t last,the C language p r ogramm ing based on MAP LAB -I D E +P I CC for P I C16F877A is described and an exa mp le f or Y M1602C is als o intr oduced .

Key words:Y M1602;P I C16F877A;interface;MAP LAB -I D E

1 硬件电路设计

1.1 Y M1602C 液晶显示器原理简述

Y M1602C 是一款专门用于显示字母、数字、符号等

的点阵型液晶显示器,能显示16×2个字符,每个字符由5×7点组成,点间距为:3.02mm ×5.66mm,Y M1602C 的内部控制器为KS0066U ,其接口电路简单,兼容性好,能与八位单片机直接连接。其接口电路的控制管脚定义如表1所示,引脚控制功能说明如下:

DB0~DB7:数据总线。

RS:数据/指令选择信号。RS =1表示出现在数据总线上的是数据;RS =0表示出现在数据总线上的是指令或读出的状态。

E:在控制器时序为读时,低电平有效;在控制器时序为使能信号时,是个正脉冲,在下降沿处于写操作,在高电平时为读操作。

R /W:在控制器时序为写时,低电平有效;在控制器时序为读时,写选择信号,R /W =1为读,R /W =0为写。

表1 YM 1602C 液晶管脚定义

引脚号

名字

0/1电平功  能

1V ss —0V 2Vdd —+5V 3V 0—

0~5V

电源

4

RS

H /L

L:指令代码输入H:数据写5R /W H /L L:数据写H:数据读

6E H.H -L 信号势能

7D0H /L 8D1H /L 9D2H /L 10D3H /L 11D4H /L 12D5H /L 13D6H /L 14D7H /L

数据总线

15L -—

0V 16

L +

+

+5V

LCD 电源

25・仪表技术  2009年第2期

图1 P I C16F877A 与Y M1602C 控制原理图

1.2 P I C16F877A 单片机介绍及

接口电路设计

P I C16F877A 的主要性能有:具有高性能R I SC CP U;仅有35条指令,除程序分支指令为两个周期外,其余均为单周期指令;8K ×14个F LASH 程序存储器,368×8个数据存储器(RAM )字节,256×8EEPROM 数据存储器字节;8级深度的硬件堆栈;三个定时/计数器,2个捕获/比较器,10位多通道模/数转换器等。P I C16F877A 单片机有P ORT A ,P ORT B ,P ORTC,P ORT D,P ORTE 五个I/O 端口,可以作为液晶显示的控制端口,根据Y M1602C 液晶的原理和引脚特

性,采用P ORT D 端口与Y M1602C 的数据端口相连,将RB1,RB2,RB3与Y M1602C 的E,R /W ,RS

端口相连,其控制电路原理图如图1所示。2 软件设计

2.1 P I C 单片机C 语言编程简介

我们知道用C 语言来开发单片机系统软件的最大好处是编写代码效率高、软件调试直观、维护升级方便、代码的重复利用率高、便于跨平台移植。对P I C 系列的单片机来说,同样可以用C 语言来开发软件。M i 2cr ochi p 公司没有针对中低档系列P I C 单片机的C 语言编译器,需要第三方公司P I C 单片机的C 语言编译器,本文采用H I TECH 公司的P I CC 编译器,它稳定可靠,编译生成的代码效率高。

P I CC 编译器可以直接挂接在MP LAB -I D E 集成

开发平台下,实现一体化的编译连接和原代码调试。

基于P I CC 编译环境写P I C 单片机程序的基本方式和标准C 程序类似,程序一般由以下几个主要部分组成:

(1)在程序的最前面用#include 预处理指令引用包含头文件,其中必须包含一个编译器提供的“p ic .h ”文件,实现单片机内特殊寄存器和其他特殊符号的声明;(2)用“_CONF I G ”预处理指令定义芯片的配置位;(3)声明本模块内被调用的所有函数类型,P I CC 将对所调用的函数进行严格的类型匹配检查;(4)定义全局变量或符号替换;(5)实现函数(子程序),特别注意m ian ()函数必须是一个没有返回的死循环。2.2 Y M1602C 液晶显示的C 语言程序的实现

Y M1602C 液晶的显示驱动控制器为KS0066U,它

完成Y M1602C 液晶的显示功能,KS0066U 的控制由

一条一条的指令控制;根据P I C16F877A 与液晶模块的控制接口原理图,P I C16F877A 单片机向KS0066U 发送固定时序的指令时,KS0066U 就完成显示的功能,KS0066U 共有11条指令,指令裕时简单,指令一览表如表2所示。

表2 KS0066U 的指令格式表

(“3”表示任意值,在实际应用时一般认为是“0”)指令名称

控制信号控制代码

D /I R /W D7D6D5D4D3D2D1D0

清屏0000000001

归home 位0000000013

输入方式设置00000001I/D S 显示状态设置0000001

D

C

B

光标画面滚动000001S/C R /L 33工作方式设置

00001

DL

N

F

3

3

CGRAM 地址设置0001

A5A4A3A2A1A0

DDRAM 地址设置

001

A6A5A4A3A2A1A0

读BF 和AC 01BF AC6AC5AC4AC3AC2AC1AC0

写数据10数  据读数据

1

1

数  据

  根据上述指令要求以及P I C16F877A 单片机的特

点,Y M1602C 液晶显示的主要步骤为初始化单片机系统、初始化LCD 系统、端口控制、工作方式设置、开始显示,清屏、调用显示函数等。其具体程序流程图如图

35・2009年第2期

  仪表技术

2所示

图2 P I C16F877A 控制Y M1602C 的显示流程图根据图2的程序流程图以及P I C 单片机基于

P I CC 编译器的C 语言编程规范。将Y M1602C 液晶显示器的程序模块化,主要包括LCD 显示的初始化函数,P I C16F877A 单片机向LCD 写数据函数,P I C16F877A 单片机向LCD 写命令函数,LCD 显示函数等,部分程序代码如下:

#include

#define LCD_DAT A P ORT D #define LCD_RS RB3#define LCD_RW RB2#define LCD_E RB1

void Delay_1m s (void )       //延时函数{ char j;

f or (j =0;j <130;j ++)

{;}

}

void Syste m_init (void )//系统初始化函数{ I N TCON =0x00;

//禁止总中断和外围中断OPTI O N =0x00;//设置外部中断GI E =0;//0=禁止所有中断T R I S D =0x00;//设置端口D 为输出模式

P ORT D =0x00;}

void W rite_Data_Lcd (unsigned char data ){ LCD_DAT A =data;

//向LCD 写数据函数LCD_RS =1;LCD_RW =0;LCD_E =0;Delay_1m s ();LCD_E =1;}

void W rite_Command_Lcd (unsigned char data ){ LCD_DAT A =data;

//向LCD 写命令函数LCD_RS =0;LCD_RW =0;LCD_E =0;

Delay_1m s ();LCD_E =1;}

void main (void ){ 

Syste m_init ();LCD_DAT A =0;

W rite_Command_Lcd (0x38);Delay_1m s ();

W rite_Command_Lcd (0x38);//显示模式设置W rite_Command_Lcd (0x08);//关闭显示W rite_Command_Lcd (0x01);//显示清屏W rite_Command_Lcd (0x06);//显示光标移动设置W rite_Command_Lcd (0x0c );//显示开及光标移动设置while (LcdBuf !=’\\0’)//显示数据

{ 

dis p lay_string (x,y,LcdBuf );

}}

3 结论

本文介绍了Y M1602C 液晶模块的性能特点和工

作原理,以P I CF16F877A 单片机为控制核心实现了对Y M1602C 液晶的控制,完成了硬件电路接口设计和基于C 语言的程序设计,并在电路板上完成实验。同时,可以移植本文中C 语言程序,修改其中的参数,就可以实现复杂的功能。本文所讨论的内容同样适合其他型号的MCU 和液晶显示模块。参考文献:

[1]李学海.P I C 单片机实用教程—基础篇[M ].北京:北京航

空航天大学出版社,2002.

[2]郭强.液晶显示应用技术[M ].北京:电子工业出版社,

1999.

[3]马成,何陪祥,李庆东.图形点阵式液晶显示模块与51单

片机的接口设计[J ].应用天地,2007,5(2).

[4]马洪芹,吴锡淳.单片机控制液晶模块显示[J ].电子科技,

2008,1(3).

[5]刘华昌,李东,谈效华.基于P I C16F87X 的液晶显示模块接

口技术设计[J ].光学与光电技术,2008,6(5).

(丁云编发)

声 明

为适应我国信息化建设,扩大本刊及作者知识信息交流渠道,本刊已被《中国学术期刊网络出版总库》及CNKI 系列数据库收录,其作者文章著作权使用费与本刊稿酬一次性给付。如作者不同意文章被收录,请在来稿时声明,本刊将作适当处理。

・45・仪表技术  

2009年第2期

文档

PIC16F877A与YM1602C液晶的接口设计与软件编程

收稿日期:2008-10作者简介:刘健康(1980—),男,硕士,研究方向为机电一体化;高志(1963—),男,教授。PIC16F877A与YM1602C液晶的接口设计与软件编程刘健康,高志,宋冬冬(华东理工大学机械与动力工程学院,上海200237)摘要:首先介绍一款字符型液晶显示器YM1602C的硬件结构以及显示驱动控制器KS0066U的性能和特点;其次介绍了该液晶显示器与PIC16F877A单片机的硬件接口电路设计;最后介绍了PIC16F877A单片机在MPLABIDE+PICC软件平台上
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top