STC51入门笔记(郭天祥C语言) |
您所在的位置:网站首页 › mcu屏幕是什么意思 › STC51入门笔记(郭天祥C语言) |
声明:本篇文章只是个人知识盲区、知识弱点、重点部分的归纳总结,望各位大佬不喜勿喷。梳理顺序是按照书籍的实际顺序梳理,转载请注明出处。
作者:sumjess
一、液晶概述:
液晶(LiquidCrystal) 是一种高分子材料,因为其特殊的物理、化学、光学特性,20世纪中叶开始广泛应用在轻薄型显示器上。 液晶显示器(LiquidCrystalDisplay,LCD)的主要原理是以电流刺激液晶分子产生点、线、面并配合背部灯管构成画面。为叙述简便,通常把各种液晶显示器都直接叫做液晶。 各种型号的液晶通常是按照显示字符的行数或液晶点阵的行、列数来命名的。比如:1602的意思是每行显示16个字符,一共可以显示两行;类似的命名还有0801, 0802,1601等,这类液晶通常都是字符型液晶,即只 能显示ASCII码字符,如数字、大小写字母、各种符号等。12232液晶属于图形型液晶,她的意思是液晶由122列、32行组成,即共有122X32个点来显示各种图形,我们可以通过程序控制这122X32个点中的任一个点显示或不显示。类 似的命名还有12864,19264,192128,320240等,根据客户需要,厂家可以设计出任意数组合的点阵液晶。 液晶体积小、功耗低、显示操作简单,但是它有一个致命的弱点,其使用的温度范围很窄,通用型液晶正常工作温度范围为0°C+55°C,存储温度范围为-20°C+60°C,即使是宽温级液晶,其正常工作温度范围也仅为-20°C+70°C,存储温度范围为-30°C+80°C,因此在设计相应产品时,务必要考虑周全,选取合适的液晶。 本章主要介绍三种具有代表性的常用液晶,同时详细讲解并行操作方式和串行操作方式。市场上使用的1602液晶以并行操作方式居多,但也有并、串口同时具有的,用户可以选择用并口或串口操作。12232液晶同样也有这两种操作方式。只有并行接口的1602液晶接口如图7.1.1所示,其显示状态如图7.1.2所示。并、串口兼有的12232液晶接口如图7.1.3所示,其显示状态如图7.1.4所示 1602液晶的讲解以并行操作为主,设计两个程序,一个是在液晶的任意位置显示字符,另一个是滚动显示一串字符。 本教材实验使用的1602液晶为5V电压驱动,带背光,可显示两行,每行16个字符,不能显示汉字,内置含128个字符的ASCII字符集字库,只 有并行接口,无串行接口。 1、接口信号说明 1602型液晶接口信号说明如表7.2.1所示。 6、数据指针设置 控制器内部设有一个数据地址指针,用户可以通过它们访问内部的全部80B的RAM,如表7.2.4所示。 库函数如下: /* * 文 件 名:1602led.c.c * 芯 片:1602液晶 * 晶 振:11.0592MHz * 创 建 者:XK * 创建日期:2011.8.6 * 修 改 者: * 修改日期: * 功能描述:1602,写数据函数 */ #include #include "1602_Sum.h" #include "delay_Sum.h" #include "74hc595_Sum.h" sbit rs_1602=P2^5; //1602rs信号 sbit rw_1602=P2^6; //1602rw信号 sbit e=P2^4; /* void write_zl(uchar zl) { rs=0; P0=zl; delay(5); e=1; delay(5); e=0; } void write_sj(uchar sj) { rs=1; P0=sj; delay(5); e=1; delay(5); e=0; } */ void write_order_1602(uchar order_data) { e=0; rs_1602=0; P0=order_data; e=1; delay(1); e=0; } void write_data_1602(uchar data_1602) { e=0; rs_1602=1; P0=data_1602; e=1; delay(1); e=0; } / //功能:按指定位置显示一串字符 /// //输入: //列显示地址x_1602(取值范围1-16) //行显示地址y_1602(取值范围1-2), //指定字符串指针*p_1602, //要显示的字符个数count_1602 (取值范围1-16) /// // 子函数使用例子: Disp_1602(1,1," TEMP: . ",16); //在1602第一行第一列写16个字符,既字符串数据 / void Disp_1602(unsigned char x_1602,unsigned char y_1602,unsigned char *p_1602,unsigned char count_1602) { unsigned char i; for(i=0;i |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |