网站首页 > 技术教程 正文
单片机应用技术课程报告
实验名称 | 1602LCD液晶显示屏的显示 | 实验时间 | |
学生姓名 | 实验地点 | 钉钉群线上 | |
同组人员 | 专业班级 | ||
1、实验目的 1、会使用单片机4个并行I/O端口连接外部设备并构建单片机最小应用系统。 2、能使用工具软件绘制单片机硬件原理图、能编写简LCD控制程序。 3、会使用LCD1602显示指定的内容。 | |||
2、任务设计要求 采用STC89C52单片机构建最小系统,在I/O口外接1602,编程实现在1602字符型 LCD显示:实现字符的静态和动态显示。显示字符为第一行:“I am xx”,第二行:“Hou are you”。 | |||
3、总体设计方案 根据实验任务要求,通过功能分析,设计的系统总体方案如图所示。 并行接口 AT89C51单片机 电源 时钟电路 复位电路 实现led显示屏显示 | |||
4、硬件电路设计 | |||
5、软件程序设计 (1)、程序设计思路(流程图绘制) 结束 结束 结束 (2)程序清单 #include<reg51.h> #include<intrins.h>//包含_nop_()空函数指令的头文件 #define uchar unsigned char #define uint unsigned int #define out P0 sbit RS=P2^0;//位变量 sbit RW=P2^1;//位变量 sbit E=P2^2;//位变量 void lcd_ini();//LCD初始化函数 void check_busy();//检查忙标志函数 void w_command(uchar com);//写命令函数 void w_data(uchar dat);//写数据函数 void string(uchar ad,uchar*s); void lcd_busy(void); void delay(uint); void lcd_ini(); void main(void)//主函数 { lcd_ini();//调用对LCD初始化函数 while(1) { string(0x80,"I am dujingjing");//显示的第1行字符串 string(0xC2,"HOW are you");//显示的第2行字符串 delay(100);//延时 w_command(0x01);//写入清屏命令 delay(100);//延时 } } void delay(uint j)//1ms延时子程序 { uchar i=250; for(;j>0;j--) { while(--i); i=249; while(--i); i=250; } } void check_busy(void)//检查忙标志函数函数检测P0.7脚电平,即检测忙 { uchar dt; do { dt=0xff; E=0; RS=0; RW=1; E=1; dt=out; } while(dt&0x80); E=0; } void w_command(uchar com)//写命令函数 { check_busy(); E=0; RS=0; RW=0; out=com; E=1; _nop_(); E=0; delay(1); } void w_data(uchar dat)//写数据函数 { check_busy(); E=0; RS=1; RW=0; out=dat; E=1; _nop_(); E=0; delay(1); } void lcd_ini()//液晶显示器初始化函数 { w_command(0x38);//写入命令0x38:8位两行显示,5×7点阵字符 w_command(0x0C);//写入命令0x0C:开整体显示,光标关,无黑块 w_command(0x06);//写入命令0x06:光标右移 w_command(0x01);//写入命令0x01:清屏 delay(1); } void string(uchar ad,uchar*s)//输出显示字符串的函数 { w_command(ad); while(*s>0) { w_data(*s++);//输出字符串,且指针增1 delay(100); } } | |||
| |||
7、项目总结 本次实验了解到1206液晶的储存器结构以及其基本的操作时序。了解到在指令设置中如何显示开、关及光标设置。地址设置:第一行地址从0x80开始,第二行地址从0xC0开始。知识要慢慢积累,实践更为重要。在做实验的过程中会慢慢发现不足之处,强化练习,以减少错误的出现,使实验顺利完成。 | |||
8、项目设计报告成绩 指导教师签字: 年 月 日 |
猜你喜欢
- 2024-11-13 51火灾警报系统 STC89C52RC+DS18B20+MQ2+LCD1602+蜂鸣器+按键*2
- 2024-11-13 LCD液晶屏和数码管比较(lcd与数码管)
- 2024-11-13 序列之11:4x4按键和LCD1602(lcdi4)
- 2024-11-13 基于51单片机的分拣系统演示仿真,涉及:LCD1602...
- 2024-11-13 Arduino用超声波模块+LCD1602测距并显示
- 2024-11-13 Arduino + LCD1602 + DS1302 实现时钟和定时器
- 2024-11-13 LCD1602 液晶显示电路(lcd1602显示电路工作原理)
- 2024-11-13 Arduino液晶显示---1602液晶带IIC模块
- 2024-11-13 LCD1602 51单片机驱动程序#电子电路
- 2024-11-13 STM8 单片机接入1602 LCD(stm8a系列单片机)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)