点阵式液晶显示屏的显示程序设计单片机课程设计告53446273.docVIP

  • 0
  • 0
  • 约3.13万字
  • 约 32页
  • 2018-12-30 发布于福建
  • 举报

点阵式液晶显示屏的显示程序设计单片机课程设计告53446273.doc

点阵式液晶显示屏的显示程序设计单片机课程设计告53446273

PAGE PAGE 3 J I A N G S U U N I V E R S I T Y 单片机原理及应用 课程设计 点阵式液晶显示屏的显示程序设计 点阵式液晶显示屏的显示程序设计 一、设计目的 1.熟练掌握C51系统仿真开发系统的应用。 2.加强单片机的综合运用能力、提高单片机的软件编程和调试能力,为以后的学习和开发工作打下良好基础。 3.掌握的液晶的工作原理以及应用设计。 4.掌握小系统开发设计的流程以及设计思路。 二、设计方案 实验要求: 1)从下到上左到右滚动显示:自己设计的图片 2)能进行正常的模拟量采样值显示(温度、压力、电位) 。 3)未按键时菜单要可以停下来 设计思路: 由于实验指导书中做过液晶显示和模数转换得实验,根据两个实验的功能实现和流程原理进行设计 将程序分成四个模块: 主函数模块main.c 模数转换模块ADC.c 液晶显示模块KS0108.c 按键调试模块Test7179.c 其中让主函数模块做一些初始化和函数调用工作,模数转换模块主要是将温度,压力,点位的值转化为数字量供液晶显示用,液晶显示模块得到模数转换模块传递过来的数字量显示到液晶面板上,按键调试模块是输入按键显示温度,电压,压力等。 程序流程图: 1系统主流程图如下 开始 开始 主函数模块 显示模块 模数转换模块 2主函数流程图 开始 开始 使能比较器1 开中断 初始化系统时钟钟 初始化定时器0 初始化IO端口 初始化SPI0 使能片内参考电压 使能DAC 3 显示模块流程图 开始初始化LCD 开始 初始化LCD 滚屏显示江苏大学计算机学院 读取数字量并显示 调用模数转换得到值 显示课程设计题目、班级、姓名 健值是否1.2.3 开始 开始 读取No和模拟量 返回温度 返回点位 结束 返回压力 No=2? No=3? No=1? 主要的源程序及注释 主函数: #include c8051f020.h #include intrins.h void Delay1us(unsigned char us) { while (us) { _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); --us; } } void SYSCLK_Init (void) { int i; // delay counter OSCXCN = 0x67; // start external oscillator with // 18.432MHz crystal for (i=0; i 256; i++) ; // Wait for osc. to start up while (!(OSCXCN 0x80)) ; // Wait for crystal osc. to settle OSCICN = 0x88; // select external oscillator as SYSCLK // source and enable missing clock // detector // OSCICN = 0x07; file://interal 16MHZ } #define PRT0CF P0MDOUT #define PRT1CF P1MDOUT #define PRT2CF P2MDOUT void PORT_Init (void) { XBR0 = 0x07; // Enable SMBus, SPI0, and UART0 XBR1 = 0x00; XBR2 = 0x44; // Enable crossbar and weak pull-ups EMI0CF = 0x27; EMI0TC = 0x21; P74OUT = 0xFF; P0MDOUT = 0x15; P1MDOUT |= 0x3C; //P1.2-P1.5推挽输出 P1 = 0xc3;

文档评论(0)

1亿VIP精品文档

相关文档