




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
科信学院课程设计说明书(2008/2009学年第二学期)课程名称 : DSP控制器及其应用 题 目 :DSP通用管脚控制LCD公告牌的文字显示专业班级 : 电子信息工程06-1班 学生姓名 : 陈恒 学 号 : 068072106 指导教师 : 谢万新、李丽宏、付佳、王鹏 设计周数 : 2周 设计成绩 : 2009年6月17日 目 录一 设计目的.2二 系统分析.2 2.1设计要求.2 2.2设计思想.2三 总体设计.2 3.1硬件设计.2 3.2总电路图设计.3 3.3最小系统图.3四 单元电路设计.3 4.1按键电路.4 4.2. DSP与LCD接口设计.4五 元器件选择.5 5.1所要元器件.5 5.2主要元器件的描述.5521、TPS7333.5 522、 MGLS12864-LCD.5六 运行描述.8七 软件设计.97.1序流程图.97.2序代码9八 设计总结.29九 参考文献.30附录.。31一、 设计目的DSP应用的快速发展为数字信息产品带来广阔的发展空间,并将支持通信、计算机和消费类电子产品的数字化融合。在无线领域,DSP遍及无线交换设备、基站、手持终端和网络领域,并涵盖从骨干基础设施到宽带入户的设备,包括VoIP网关和IP电话、DSL和Cable Modem等。面向群体应用,DSP在媒体网关、视频监控、专业音响、数字广播、激光打印等应用中表现出色;面向个人应用,DSP在便携式数字音频和影像播放器、指纹识别和语音识别等应用中表现不俗;针对嵌入式数字控制应用,DSP极大地满足了工业界的需求,如数字变频电力电源设备、工业缝纫机等;DSP也极大地满足了消费电子的需求,如空调、冰箱、洗衣机等。随着DSP生产技术和工艺的进步,新型的DSP产品将会不断涌现,并得到广泛应用。通过此次课程设计,学习DSPf2812芯片的I/O端口控制方法,熟悉字模的简单构建和使用,熟悉Emulator方式下的程序调试规程,并能最终熟悉掌握在DSP软硬件环境下的程序开发流程,达到学以致用的目的。二、 系统分析21、设计要求(1)设置DSPf2812芯片为Emulator工作模式;(2)设置GPIO相应管脚为输入或输出模式;(3)DSP芯片外接LCD作为输出,外接n个(数目不底于3个)单按键作为输入;(4)在程序中构建汉字字模,并能够使用查找法提取。22、设计思想 通过CCS软件开发平台和相应实验箱进行程序调试DSP外设控制设备开发扩展。用独立式控键控制DSP的GPIO管脚,使用DSP芯片控制LCD来显示汉字,用其中一个按键实现LCD的清屏,其它(4个)每个按键实现8汉字的输出控制, 通用DSP管脚控制LCD公告牌的文字显示 三、 总体设计3.1、硬件设计TMS320F2812作为使用的DSP芯片。它包含33个电源引脚(为使器件正常运行,所有电源引脚必须正确连接且不能悬空),时钟源模块,DSP有六种信号可以使DSP控制器复位。所以在设计的初期,我把它分成了四个模块。它们分别是:电平转换部分、晶振和复位部分、键盘部分和液晶显示。其中复位采用电源复位的方式,由引脚PORESET引起。为了可靠复位,其中高电平的有效时间至少6个CPU时钟周期。硬件设计组成框图如图所示:有键按下?驱动电路液晶显示电平转化F2812晶振和复位否是 3.2、总体电路图设计 其中s1s5为按键,R1R5对管脚起保护作用。该键盘为独立式键盘,分别和DSP芯片的GPIO管脚PWM1、PWM2、PMW3、PWM4、PWM5相连接命令控制扩展接口的地址为0X108001,数据控制扩展接口的地址为0X108003、0x108004,辅助控制扩展接口的地址为0X108002。因为DSP芯片的允许电压为3.3V,所以该键盘外接3.3V的电源。设置GPIO相应管脚为输入或输出模式,DSP芯片外接LCD作为输出,外接5个单按键作为输入。在程序中构建汉字字模,并能够使用查找法提取。3.3最小系统图四、 单元电路设计4.1 按键电路 该键盘为独立式键盘,分别和DSP芯片的GPIO管脚PWM1、PWM2、PMW3、PWM4、PWM5相连接,因为DSP芯片的允许电压为3.3V,所以该键盘外接3.3V的电源。当开关S断开时,其管脚为高电平;当开关闭合时,其管脚变为低电平;以此来控制DSP芯片的管脚。其中PWM1为轻屏,其余控制LCD显示汉字。4.2. DSP与LCD接口设计DSP经常会对读写周期较慢的输入/输出设备(如液晶显示模块、打印机、键盘等)进行访问,通常用以下两种方法来解决DSP与这些慢速设备之间的输入/输出时序匹配问题。直接访问。直接访问方式是将DSP的读写信号线与慢速设备接口控制板引出的读写信号线直接相连,时序由DSP内部读写逻辑控制。由于慢速外设的读写周期相对DSP较慢,要使两者的时序匹配,还必须进行一些时序方面的控制处理。一种处理方法是软件编程等待状态发生器,将外部总线周期扩展到数个机器周期。由于受硬件条件的限制,这种扩展通常也是有限的。另一种处理方法是利用DSP的READY(外部设备准备就绪)引脚,通过硬件扩展实现外部状态自动等待,从而使DSP与慢速设备之间的时序匹配。虽然可以将总线周期扩展到任意个机器周期,但是需要进行硬件扩展,增加了系统设计的复杂度。间接访问。用DSP的数字I/0间接控制慢速设备,通过软件控制DSP的I/O口来实现与慢速设备的时序匹配。此种方式无需硬件扩展即可实现与任意时序慢速设备之间的时序匹配。本设计采用间接访问方式来实现DSP与LCD之间的时序匹配,即在程序中加入大量延时语句。由于DSP 为3.3V 设备,而液晶显示模块属于5V 设备,所以在连接控制线、数据线时需要加电平隔离和转换设备。五、 元器件选择5.1 所要元器件TPS7333电平转换芯片;TMS320F2812 DSP芯片; MGLS12864-LCD;若干导线; 5个开关;5个电阻。52、模块性能分析 521、TPS7333 由于器件所需电压为3.3V,而实际提供电源为5V,所以要有个电平转换模块,我们选择的是TPS7333,原理图如下: 522、MGLS12864-LCD字符式液晶显示模块MGLS12864-LCD SM由一块128X64点阵液晶屏和控HD44780及其辅助电路组成。它可以显示字母、数字、符号等;该液晶显示模块的访问、控制是由F2812DSP对扩展接口的操作来完成的,控制扩展口的寻址:命令控制扩展接口的地址为0X108001,数据控制扩展接口的地址为0X108003、0X108004,辅助控制扩展接口的地址为0X108002。发送控制命令:向液晶显示模块发送控制命令的方法是通过向命令控制扩展接口写入命令控制字,然后再向辅助控制接口写入0。六、 运行描述(1)CS运行环境,进行相应的设置,然后保存设置,在CCS运行环境下打开已编好的程序,进行调试,直至提示0个错误,然后保存调试成功后的文件。(2)打开DSP试验箱电源,按照先前设计的电路原理图连接电路,其中电源部分应在确定为3.3v或小于3.3v时连接芯片电源,然后拷入刚才运行成功后的程序。(3) 由键盘作用分别向DSP芯片管脚输入低电平,各管脚分别调用相应程序来控制LCD的显示;按键1: LCD显示出“梅子金黄杏子肥”按键2: LCD显示出“麦花雪白菜花稀”按键3: LCD显示出“日长篱落无人过” 按键4: LCD显示出“唯有蜻蜓蛱蝶飞”七、 软件设计 7.1程序流程图 初始化程序后,f2812一直处在等待判断状态,若有低电平,则调用显示程序,若没有低电平送来(5个按键有其中一个按下)。则根据相应的程序设置地址判断时显示相应按键控制下的汉字还是清屏,如果没有低电平送来,则保持原来等待判断状态。当清屏或显示汉字后,程序会自动回到等待判断状态,以此循环。程序流程图如下: 7.2程序代码 #include DSP281x_Device.h / DSP281x Headerfile Include File#include DSP281x_Examples.h / DSP281x Examples Include File#include f2812a.h#include DSP281x_GPio.h#include lcd.h#define LCDDELAY 1#define LCDCMDTURNON 0x3f /打开LCD#define LCDCMDTURNOFF 0x3e /关闭LCD#define LCDCMDSTARTLINE 0xc0 /起始行#define LCDCMDPAGE 0xb8 /起始页#define LCDCMDVERADDRESS 0x40 / 起始地址int i,j,y=0;/void Delay(unsigned int nTime);/ 延时子程序void TurnOnLCD();/ 打开显示void LCDCLS(); / 清除屏幕显示内容 /延时 /*void Delay(unsigned int nTime) int ii; int jj; int kk=0; for(ii=0;iinTime;ii+ ) for(jj=0;jj100;jj+ ) kk+; */unsigned char ledkey1832= 0x00, 0xfe, 0x02, 0x02, 0x02, 0xfe, 0x02, 0x02, 0xfe, 0x02, 0x02, 0x02, 0x02, 0xfe, 0x00, 0x00, 0x00, 0x7f, 0x28, 0x24, 0x23, 0x20, 0x20, 0x20, 0x21, 0x22, 0x22, 0x22, 0x22, 0x7f, 0x00, 0x00, ,0x00, 0x00, 0xfc, 0x04, 0x24, 0x24, 0xfc, 0xa5, 0xa6, 0xa4, 0xfc, 0x24, 0x24, 0x24, 0x04, 0x00, 0x80, 0x60, 0x1f, 0x80, 0x80, 0x42, 0x46, 0x2a, 0x12, 0x12, 0x2a, 0x26, 0x42, 0xc0, 0x40, 0x00, ,0x40, 0x40, 0x44, 0x54, 0x54, 0xd4, 0x74, 0x5f, 0x54, 0x54, 0xd4, 0x54, 0x54, 0x44, 0x40, 0x00, 0x04, 0x04, 0x02, 0x02, 0x7f, 0x4a, 0x4a, 0x4a, 0x4a, 0x4a, 0x7e, 0x01, 0x03, 0x06, 0x02, 0x00, ,0x00, 0x00, 0x00, 0xfe, 0x02, 0x12, 0x22, 0x42, 0x82, 0x7a, 0x12, 0x02, 0xfe, 0x00, 0x00, 0x00, 0x40, 0x20, 0x18, 0x07, 0x10, 0x08, 0x04, 0x02, 0x01, 0x06, 0x1c, 0x00, 0x0f, 0x30, 0x7c, 0x00, ,0x80, 0x40, 0x20, 0xf8, 0x07, 0x02, 0x00, 0x00, 0xff, 0xc0, 0x60, 0x30, 0x1c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x04, 0x02, 0x01, 0x3f, 0x40, 0x40, 0x40, 0x40, 0x78, 0x00, 0x00, ,0x10, 0x98, 0x54, 0x33, 0x1a, 0x00, 0xfe, 0x52, 0x52, 0x7e, 0x52, 0x52, 0x42, 0xfe, 0x00, 0x00, 0x11, 0x11, 0x09, 0x89, 0x49, 0x30, 0x0f, 0x00, 0x1f, 0x09, 0x09, 0x5f, 0x80, 0x7f, 0x00, 0x00, ,0x20, 0x38, 0xa7, 0x62, 0x18, 0x00, 0x2a, 0x12, 0xbe, 0x40, 0xa6, 0x1a, 0x02, 0x7e, 0x00, 0x00, 0x10, 0x11, 0x11, 0x09, 0x0a, 0x82, 0x95, 0x55, 0x4a, 0x29, 0x24, 0x11, 0x09, 0x02, 0x02, 0x00, ,0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ,;unsigned char ledkey2832= 0x00,0x00,0x00,0x00,0xFE,0x02,0x02,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x20,0x18,0x07,0x00,0x00,0x00,0x00,0x00,0x1F,0x20,0x20,0x20,0x3C,0x00,0x00,0x10,0x92,0x92,0x56,0x5A,0x32,0xFE,0x11,0x31,0x59,0x95,0x91,0x18,0x10,0x00,0x01,0x01,0x00,0xFF,0x49,0x49,0x49,0x7F,0x49,0x49,0x49,0xFF,0x01,0x01,0x01,0x00, ,0x24,0x24,0xE4,0xFC,0xA2,0x22,0x22,0x80,0x70,0x00,0xFF,0x40,0x20,0x18,0x00,0x00,0x02,0x01,0x00,0xFF,0x00,0x83,0x40,0x20,0x18,0x07,0x01,0x06,0x18,0xE0,0x40,0x00, ,0x02,0x02,0xF2,0x32,0x52,0x92,0x12,0xFE,0x32,0x52,0x92,0x12,0xF2,0x02,0x02,0x00,0x00,0x00,0xFF,0x01,0x02,0x04,0x00,0x7F,0x01,0x02,0x44,0x80,0x7F,0x00,0x00,0x00, ,0x10,0x61,0x06,0xF0,0xA0,0x98,0x8E,0x88,0x88,0xFF,0x88,0x88,0x88,0x80,0x80,0x00,0x04,0x04,0xFF,0x00,0x40,0x20,0x18,0x07,0x00,0x00,0x3F,0x40,0x40,0x40,0x70,0x00, ,0x10,0x61,0x86,0x60,0x08,0xF8,0x08,0x00,0xFC,0x0E,0x35,0x04,0x44,0x7C,0x00,0x00,0x04,0x7C,0x03,0x04,0x04,0x03,0x0A,0x08,0x09,0x09,0x09,0x09,0x49,0x81,0x7F,0x00, ,0x10,0x60,0x01,0xC6,0x30,0x20,0x18,0x0F,0xC8,0x08,0x08,0x08,0x08,0xF8,0x00,0x00,0x04,0x04,0xFE,0x01,0x00,0x04,0x06,0x05,0x04,0x04,0x46,0x8C,0x40,0x3F,0x00,0x00, ,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x24,0x24,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, ,;unsigned char ledkey3832=0x00, 0xfe, 0x02, 0x02, 0x02, 0xfe, 0x02, 0x02, 0xfe, 0x02, 0x02, 0x02, 0x02, 0xfe, 0x00, 0x00, 0x00, 0x7f, 0x28, 0x24, 0x23, 0x20, 0x20, 0x20, 0x21, 0x22, 0x22, 0x22, 0x22, 0x7f, 0x00, 0x00, ,0x00, 0x00, 0xfc, 0x04, 0x24, 0x24, 0xfc, 0xa5, 0xa6, 0xa4, 0xfc, 0x24, 0x24, 0x24, 0x04, 0x00, 0x80, 0x60, 0x1f, 0x80, 0x80, 0x42, 0x46, 0x2a, 0x12, 0x12, 0x2a, 0x26, 0x42, 0xc0, 0x40, 0x00, ,0x40, 0x40, 0x44, 0x54, 0x54, 0xd4, 0x74, 0x5f, 0x54, 0x54, 0xd4, 0x54, 0x54, 0x44, 0x40, 0x00, 0x04, 0x04, 0x02, 0x02, 0x7f, 0x4a, 0x4a, 0x4a, 0x4a, 0x4a, 0x7e, 0x01, 0x03, 0x06, 0x02, 0x00, ,0x00, 0x00, 0x00, 0xfe, 0x02, 0x12, 0x22, 0x42, 0x82, 0x7a, 0x12, 0x02, 0xfe, 0x00, 0x00, 0x00, 0x40, 0x20, 0x18, 0x07, 0x10, 0x08, 0x04, 0x02, 0x01, 0x06, 0x1c, 0x00, 0x0f, 0x30, 0x7c, 0x00, ,0x80, 0x40, 0x20, 0xf8, 0x07, 0x02, 0x00, 0x00, 0xff, 0xc0, 0x60, 0x30, 0x1c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x04, 0x02, 0x01, 0x3f, 0x40, 0x40, 0x40, 0x40, 0x78, 0x00, 0x00, ,0x10, 0x98, 0x54, 0x33, 0x1a, 0x00, 0xfe, 0x52, 0x52, 0x7e, 0x52, 0x52, 0x42, 0xfe, 0x00, 0x00, 0x11, 0x11, 0x09, 0x89, 0x49, 0x30, 0x0f, 0x00, 0x1f, 0x09, 0x09, 0x5f, 0x80, 0x7f, 0x00, 0x00, ,0x20, 0x38, 0xa7, 0x62, 0x18, 0x00, 0x2a, 0x12, 0xbe, 0x40, 0xa6, 0x1a, 0x02, 0x7e, 0x00, 0x00, 0x10, 0x11, 0x11, 0x09, 0x0a, 0x82, 0x95, 0x55, 0x4a, 0x29, 0x24, 0x11, 0x09, 0x02, 0x02, 0x00, ,0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ,;unsigned char ledkey4832=0x00, 0xfe, 0x02, 0x02, 0x02, 0xfe, 0x02, 0x02, 0xfe, 0x02, 0x02, 0x02, 0x02, 0xfe, 0x00, 0x00, 0x00, 0x7f, 0x28, 0x24, 0x23, 0x20, 0x20, 0x20, 0x21, 0x22, 0x22, 0x22, 0x22, 0x7f, 0x00, 0x00, ,0x00, 0x00, 0xfc, 0x04, 0x24, 0x24, 0xfc, 0xa5, 0xa6, 0xa4, 0xfc, 0x24, 0x24, 0x24, 0x04, 0x00, 0x80, 0x60, 0x1f, 0x80, 0x80, 0x42, 0x46, 0x2a, 0x12, 0x12, 0x2a, 0x26, 0x42, 0xc0, 0x40, 0x00, ,0x40, 0x40, 0x44, 0x54, 0x54, 0xd4, 0x74, 0x5f, 0x54, 0x54, 0xd4, 0x54, 0x54, 0x44, 0x40, 0x00, 0x04, 0x04, 0x02, 0x02, 0x7f, 0x4a, 0x4a, 0x4a, 0x4a, 0x4a, 0x7e, 0x01, 0x03, 0x06, 0x02, 0x00, ,0x00, 0x00, 0x00, 0xfe, 0x02, 0x12, 0x22, 0x42, 0x82, 0x7a, 0x12, 0x02, 0xfe, 0x00, 0x00, 0x00, 0x40, 0x20, 0x18, 0x07, 0x10, 0x08, 0x04, 0x02, 0x01, 0x06, 0x1c, 0x00, 0x0f, 0x30, 0x7c, 0x00, ,0x80, 0x40, 0x20, 0xf8, 0x07, 0x02, 0x00, 0x00, 0xff, 0xc0, 0x60, 0x30, 0x1c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x04, 0x02, 0x01, 0x3f, 0x40, 0x40, 0x40, 0x40, 0x78, 0x00, 0x00, ,0x10, 0x98, 0x54, 0x33, 0x1a, 0x00, 0xfe, 0x52, 0x52, 0x7e, 0x52, 0x52, 0x42, 0xfe, 0x00, 0x00, 0x11, 0x11, 0x09, 0x89, 0x49, 0x30, 0x0f, 0x00, 0x1f, 0x09, 0x09, 0x5f, 0x80, 0x7f, 0x00, 0x00, ,0x20, 0x38, 0xa7, 0x62, 0x18, 0x00, 0x2a, 0x12, 0xbe, 0x40, 0xa6, 0x1a, 0x02, 0x7e, 0x00, 0x00, 0x10, 0x11, 0x11, 0x09, 0x0a, 0x82, 0x95, 0x55, 0x4a, 0x29, 0x24, 0x11, 0x09, 0x02, 0x02, 0x00, ,0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ,;/*void Delay(unsigned int nTime)int ii ,jj,kk=0;for(ii=0;iinTime;ii+)for(jj=0;jj1024;jj+) kk+;/*/ /*/r打开液晶显示void TurnOnLCD() *(int *)0x108001=LCDCMDTURNON; Delay(LCDDELAY); *(int *)0x108002=0; Delay(2048); *(int *)0x108001=LCDCMDSTARTLINE; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); void LCDCLS() /清屏 int i,j; *(int *)0x108001=LCDCMDSTARTLINE; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for ( i=0;i8;i+ ) /左屏 *(int *)0x108001=LCDCMDPAGE+i; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS; /地址 Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for ( j=0;j64;j+ ) *(int *)0x108003=0; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); /右屏 *(int *)0x108001=LCDCMDPAGE+i; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for ( j=0;j64;j+ ) *(int *)0x108004=0; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); */void main(void) EALLOW; GpioMuxRegs.GPAMUX.all=0x0000; /管脚定义为I/O口 GpioMuxRegs.GPADIR.all=0x0000; /定义管脚为输入口 EDIS; TurnOnLCD();/ 打开显示 LCDCLS(); for(;) if(GpioDataRegs.GPADAT.bit.GPIOA0=0) LCDCLS(); / 清除显示内存 if(GpioDataRegs.GPADAT.bit.GPIOA1=0) /设置起始值 *(int *)0x108001=LCDCMDSTARTLINE;/ 设置显示起始行 Delay(LCDDELAY); /延时 *(int *)0x108002=0; /辅助命令控制字 Delay(LCDDELAY); *(int *)0x108001=LCDCMDPAGE;/ 设置操作页=0 Delay(LCDDELAY); *(int *)0x108002=0; /辅助命令控制字 Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS;/ 起始列=0Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); / TurnOnLCD();/ 打开显示 y=0; for(j=0;j4;j+) *(int *)0x108001=LCDCMDPAGE+2; /设置页 Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS+y; /设置地址 Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for(i=0;i16;i+) *(int *)0x108003=ledkey1ji; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDPAGE+3; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS+y; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for(i=16;i32;i+) *(int *)0x108003=ledkey1ji; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); y+=16; y=0; for(j=4;j8;j+) *(int *)0x108001=LCDCMDPAGE+4; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS+y; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for(i=0;i16;i+) *(int *)0x108004=ledkey1ji; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDPAGE+5; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS+y; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for(i=16;i32;i+) *(int *)0x108004=ledkey1ji; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); y+=16; if(GpioDataRegs.GPADAT.bit.GPIOA3=0) /设置起始值 *(int *)0x108001=LCDCMDSTARTLINE;/ 设置显示起始行Delay(LCDDELAY); /延时 *(int *)0x108002=0; /辅助命令控制字 Delay(LCDDELAY); *(int *)0x108001=LCDCMDPAGE;/ 设置操作页=0Delay(LCDDELAY); *(int *)0x108002=0; /辅助命令控制字 Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS;/ 起始列=0Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); TurnOnLCD();/ 打开显示 y=0; for(j=0;j4;j+) *(int *)0x108001=LCDCMDPAGE+2; /设置页 Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS+y; /设置地址 Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for(i=0;i16;i+) *(int *)0x108003=ledkey2ji; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDPAGE+3; Delay(LCDDELAY); *(int *)0x10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 初一下册生物期中试卷及答案
- 2025至2030中国软骨症治疗行业项目调研及市场前景预测评估报告
- 华山医院神经内科护理进修
- 美的售后年终工作总结
- 2025至2030中国微创手术(MIS)设备行业项目调研及市场前景预测评估报告
- 2025至2030中国血栓前体蛋白行业调研及市场前景预测评估报告
- 离婚后子女户口迁移及父母监护权划分合同
- 生产运营分析部门工作总结
- 离婚协议书中的共同子女监护权共享与探望权协议
- 离婚房产分割及共同债权债务处理协议
- 消防水系统资料
- 人力资源管理流程手册
- 微生物学第九章 微生物生态
- YS/T 226.12-2009硒化学分析方法第12部分:硒量的测定硫代硫酸钠容量法
- 雪落在中国土地上
- GB/T 29114-2012燃气轮机液体燃料
- GB/T 18690.1-2009农业灌溉设备微灌用过滤器第1部分:术语、定义和分类
- FCI测试试题附答案
- 部编版四年级上册语文全册1-8单元课文思维导图
- 耳部解剖及急慢性中耳炎课件
- 【成都】麓湖生态城地产视角分析总结
评论
0/150
提交评论