找回密码
 注册
关于网站域名变更的通知
查看: 200|回复: 1
打印 上一主题 下一主题

1602字符显示keil+protues详细讲解及说明

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-1-22 10:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
1602字符显示keil+protues详细讲解及说明
1 `  x" L; b* B% b! B* m: `) h
+ g& F% z. z/ Q! w! N+ e
1602字符显示keil+protues详细讲解及说明
* }6 v( ~" K; a7 ^9 h ( Z, H. O1 i9 X+ u9 h
源程序:

7 R+ \- M0 f% I4 z, w# d& ^  ~4 G#include<reg52.h>  P* {, l7 M" B! L% ~* Y
typedef unsigned int u16;. ^! G* p; w( y
typedef unsigned char u8;
+ T9 u4 i7 g8 v! p( {# F7 B; U
2 f0 \1 D% J3 ]#define DATA P0                                //宏定义,相当于  define π 3.14,这里没有等号。
6 u, @* q8 n9 K0 R: Q7 s2 x' r; f0 G$ j4 j: s
sbit rs = P2^1;                                          //rs,sw,en;可以理解成液晶的几个功能开关,无非就只有两种状态
+ _& C5 k8 C; Y* ]0 Dsbit rw = P1^5;                                                                         //为0或1,对应的功能详细看使用手册。这里是把液晶的
; Z$ k" Q) ^4 g" D9 g) j& usbit en = P1^6;                                                                   //这三个开关与单片机引脚定义为链接状态,以便单片机控制液晶。
' m. A" g) X9 @9 Y/ C. F% J0 n( t: v% k2 s
void delay(u16 num)* ?, f; s0 `. |  r; Q
{
# V+ `8 ?' N3 J' D6 w4 s4 N. i    u16 x,y;
% n* N0 E2 u2 |) D        for (x=num;x>0;x--)" {2 U" \# B2 k2 J; G; F
             for(y=110;y>0;y--);
4 v4 g3 T/ X- S" O+ N7 c7 J+ q
9 w% q- J0 k5 ]& G# A  Q. V}( g1 ?' G( R, |5 Z8 b; ]. K, U
void write_cmd(u8 cmd)                   //写指令
6 q' ]4 G0 B/ L4 x( \{4 E' K4 B% F( Q- j
  rs=0;                                                   //选择指令寄存器
; |& T4 i4 V* \% Q. K4 H- Y4 Y  rw=0;                                                   //进行写操作. D2 k* T$ r1 L  p7 M0 L
  DATA = cmd;                                   //把指令传给单片机8 S+ ?& K! i7 B$ D6 L+ l; ?
  delay(5);
2 Z2 Z5 X" L/ L: s  a( u7 H  en=1;
4 U2 G$ ?9 O* X% z6 ?  delay(5);3 o& k  z  p3 h4 x& G
  en=0;                                                   //en为使能端,当en由高电平跳到底电平时,液晶模块执行命令。
1 B5 t; E+ y6 `! E6 w7 U}
4 L. E$ j/ H' v( @2 @7 m7 ^void write_data(u8 dat)4 c0 W1 |! ^5 i# y5 i4 Y. n
{
1 j, [& ~3 k; `* _, q7 H4 t8 G7 d* o( B5 K  rs=1;                                                        //选择数据寄存器
) U8 m2 ~) b+ Y# z  rw=0;                                                        //进行写操作
4 c' k4 K! q8 u  DATA = dat;                                        // 把数据传给单片机
! l. z& q3 s5 o  delay(5);
2 \) S( X( E/ @, d8 |7 i  en=1;* Z. j# x6 U) i3 c+ ~3 R
  delay(5);  @3 y& _% x- J0 K
  en=0;0 y8 z1 C3 g2 s# h
}
3 W$ T' h) V3 r9 E7 G! I( Wvoid lcd_init()                                 //初始化" s5 K5 O' ^) v2 |( G5 o9 `
{
1 v6 A2 i! P' f) P$ L$ \   write_cmd(0x02);           //归为
: w  y) y7 M" ?8 h+ u& a8 `   write_cmd(0x06);           //设置输入方式
" _6 R. q+ G- E1 ~  u   write_cmd(0x0e);           //控制显示开关* u4 Q" E: L: `4 Z% C
   write_cmd(0x38);           //功能设置
7 |' {; ^) s! I: Z/ Q$ m) |. C4 v   write_cmd(0x01);    //清屏2 u1 k5 W7 Y( E
}
% a& s( `5 Z' [# P' p- R& Avoid main()/ K3 ]- R9 c* ]3 ~2 q( o6 C
{! Y" D; U, W3 {8 J$ V
  rw=0;
# [9 I! b- [* r8 A: @9 Q2 S  rs=0;
; J8 R* B2 F7 r3 w- s1 N  en=0;
" H2 Y& a$ K, p6 a' Q4 R  lcd_init();
0 T# @+ F# n3 Z: g  write_cmd(0x80);             //0x80,(0xc0)为在液晶上显示的地址;80为第一排显示,c0为第二排显示。5 f4 f: ]1 I5 m! N1 A
  write_data('x');      //显示的数据" e- n% V: w% \- l$ Q& m$ }
  write_data('i');
+ s: w9 y6 |8 Z3 c% Z% [  write_data('a');
& D, |& @. g7 k8 F" x  write_data('o');
6 e- \" Z7 O" O  write_data(' ');
- w3 ~3 e& ~; {- v: R7 R  write_data('p');$ H/ k" j: ~8 v
  write_data('e');
9 d  t- Q$ o- h. {5 b0 k  write_data('n');0 `# \3 r" f! P6 u5 d
  write_data('g');" F. |* _" f- G' ~
  write_data(' ');; D+ z- ?3 C+ \( e; _/ N7 L
  write_data('y');2 m$ j- ]4 j5 m9 |9 A+ y$ J/ `
  write_data('o');, i' Q+ L. @$ x; q6 s9 n
  write_data('u');' S1 `1 m4 E$ T
  write_cmd(0xc0);                 //第二排显示
) ]' Y) p: b5 @' n3 z' o/ X  write_data('t');                  //显示的数据+ t( d5 z4 K3 c: |
while(1);
/ X# v2 Y) A; J, ?% g}
# ^9 Z6 n* r0 L3 \. f. J3 |. }' @$ o5 X6 x) R6 G; D* `
下载:. @9 n- \  w$ x1 o
游客,如果您要查看本帖隐藏内容请回复
# k  P0 `8 `( `+ D. Y( b+ y
! g. I  R4 i# e0 {6 d3 ], {
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-19 12:43 , Processed in 0.109375 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表