《LCD几何图形显示课程设计》由会员分享,可在线阅读,更多相关《LCD几何图形显示课程设计(9页珍藏版)》请在金锄头文库上搜索。
1、目 录第 1 章 设计的研究背景及目的要求 .11.1 研究背景 .11.2 设计目的 .11.3 硬件选择 .11.4 设计内容 .1第 2 章 设计的方案及基本原理 .22.1 方案 .22.2 基本原理 .3第 3 章 程序设计 .43.1 主程序流程图 .43.2 设计程序 .4第 4 章 调试结果与分析 .54.1 调试结果 .54.2 结果分析 .5结论与体会 .6参考文献 .7附录 .8单片机的控制系统课程设计1第 1 章 LCD 几何图形显示设计的研究背景及目的要求1.1 研究背景在程序设计方面,凌阳十六位单片机还具有易学易用的效率较高的一套指令系统和集成开发环境。在此环境中,
2、支持标准 C 语言,可以实现 C 语言与凌阳汇编语言的互相调用。显示器的核心液晶显示器控制器品种繁多,各种控制芯片在控制电路逻辑、控制指令、指标参数等方面各有差异。 但对于已带有控制电路的平板点阵式图形液晶显示器,使用者无需关心其控制核心的集成芯片、控制电路等, 就可方便地利用它进行开发。1.2 设计目的熟悉利用 SPLC501 液晶显示模组显示几何图形的 API 函数。掌握利用液晶显示器显示几何图形的方法。1.3 硬件选择装有window系统和仿真环境和PC机一台,十六位单片机实验箱一个。SPCE061A核心及周边电路模块(包含 32 个 I/O 口) ,LCD显示模组模块。1.4 设计内容
3、LCD 显示器上一个实心圆,在实心圆的横向直径画一条横线,并在实心圆上叠加显示汉字:“ 凌阳科技 ”,最后向上滚屏。在 LCD 显示器实现实心圆和汉字的叠加显示。利用 SPLC501 液晶显示模组显示英文(ASCII)字符时,需要对 LCD 进行初始化操作,以初始化 LCD 内部的供电方式、驱动设置等; 在凌阳大学计划提供的 SPLC501 液晶显示模组的驱动程序中,提供了对 SPLC501 液晶显示模组的初始化程序,除了完成前面所述的操作外,该函数还可以初始化液晶的显示。 初始化 SPLC501 液晶显示模组后,驱动程序默认设置图形显示模式为覆盖模式,ASCII 字符的字型默认为 816 的
4、大小,如果需要修改这些参数可以调用对应的函数进行设置。主程序利用 C 语言编写,调用驱动程序(调动程序已提供在 IDE 的安装路 SPCE061Aexamplemodel_ExadriverSPLC501driver) 。单片机的控制系统课程设计2第 2 章 LCD 几何图形显示的设计方案及基本原理2.1 方案驱动程序文件 SPLC501User.c 同样定义了显示几何图形的 API 函数,在驱动程序文件 SPLC501User.h 同样定义了显示几何图形的 API 函数,SPLC501User.h文件里也对这些函数进行了申明。void LCD501_Init(unsigned int Ini
5、tialData) void LCD501_ClrScreen(unsigned int Mode) void LCD501_SetPaintMode(unsigned ModeCode) unsigned int LCD501_GetPaintMode(void) void LCD501_FontSet(unsinged int Font) /选择显示字符的字体大小unsigned int LCD501_FontGet(void) /获得显示字符的字体大小void LCD501_Bitmap(unsigned int x,unsigned int y,unsigned int *word)
6、void LCD501_PutPixel(unsigned int x,unsigned int y) void LCD501_Line(unsigned int x,unsigned int y,unsigned int e_x,unsigned int e_y) /画直线void LCD501_Circle(unsigned int x,unsigned int y,unsigned int r,unsigned int Mode) /画圆void LCD501_Rectangle(unsigned left, unsigned top,unsigned right, unsigned b
7、ottom, unsigned Mode) void LCD501_ScrollUp(unsigned Rows) /屏幕向上滚动前面七个函数在前面实验里都有详细说明,这里介绍后面四个函数:1)【API 格式】C:void LCD501_PutPixel(unsigned int x,unsigned int y) 【功能说明】在液晶显示器上画一个点【参数】x 表示要画点的 x 坐标;y 表示要画点的 y 坐标;【返回值】无2)【API 格式】C:void LCD501_Line(unsigned int x,unsigned int y,unsigned int e_x,unsigned i
8、nt e_y)【功能说明】在液晶显示器上画一条直线;【参数】x 表示要画的线的 x 起点坐标;y 表示要画的线的 y 起点坐标;e_x 表示要画的线的 x 终点坐标;e_y 表示要画的线的 y 终点坐标。单片机的控制系统课程设计3【返回值】无3)【API 格式】C:void LCD501_Circle(unsigned int x,unsigned int y,unsigned int r,unsigned int Mode) 【功能说明】在液晶显示器上画一个圆【参数】x 表示要画的圆心的 x 坐标;y 表示要画的圆心的 y 坐标;r 表示要画的圆的半径;Mode 表示绘点模式,其中 Mode
9、 = M_DOT_CLEAR(0) 画圆框;Mode = M_DOT_SET 【返回值】无4)【API 格式】C:void LCD501_Rectangle(unsigned left, unsigned top,unsigned right, unsigned bottom,unsigned Mode)【功能说明】在液晶显示器上画一个矩形【返回值】无2.2 基本原理硬件连接如上图。分别用实验箱跳线连接 IOB4 与 AO,IOB5 与 RWP,IOB6与 EP,IOB9 与/CS,IOA8IOA15 与 D0D7:VR、C86 和 PS 都与 V3 短接,把 SPLC501 液晶显示模组的时序选择为 6800 时序。即用跳线把实验箱 JP6 的所有引针全部短接。IOB9IOB4 IOB5IOB6IOA8SPCE061A IOA9IOA10IOA11IOA12IOA13IOA14IOA15/CSAOR/WEPD0D1 SPLC501 液晶D2 显示模组D3D4D5D6D7图 2-1 硬件连接框图单片机的控制系统课程设计4第 3 章 LCD 几何图形显示的程序设计3.1 主程序流程图主