全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1602液晶几种典型显示状态及解决方案-附图【转】2008-01-16 19:021602应该说是很简单的一种器件,但是许多人初次使用的时候可能总是出问题,当然可能也有一次就试验成功的,但是像我这样的在AVR ATMega16上调1602居然花了近3天的时间,最后调到快崩溃的地步,对自己的智商和水平都产生了怀疑,最后解决问题却是充满了戏剧性。解决问题期间在OURAVR上查找了许多帖子,最后才在马超老师的一句话里发现了答案呵呵,所以我把我调1602液晶时遇到的情况描述一遍供大家参考,算是给AVRFans积攒一点资料。硬件资料:AVR ATMega16,工作在外部晶振11.0592MHz,MS1602C字符液晶状态1上电之后,1602的第一行全黑,即16个5x7黑块产生原因:液晶根本就没有进行初始化操作,需要检查连线或者程序状态2屏上显示两排灰格产生原因:程序中对液晶初始化不正常,应是部分初始化指令没有正常接收,建议按照标准初始化步骤调整程序,或者调整指令之间的延时(加大一些试试)-补充:也有可能是对比度太大,建议调整对比度电阻状态3此种不用解释了呵呵,调通了已经1602液晶大概就这三种状态了,我调的时候很费劲,8位数据线方式接在PC口怎么都不出字符,怎么调延时都没用,总是显示两行灰格,最后看见马老师的提示,PC口有4个线默认是给JTAG用的,默认状态不做IO口,于是重新将数据线接在PB口修改程序重新烧写后就好使 另外,我还发现,1602数据线接在PB口时,有时候上电之后显示工作正常,但有些时候根本就不工作,怀疑是ISP下载线有影响,拔去下载线,恢复正常。下面附上我的初始化程序,参考了OURAVR上的一个帖子,具体是哪个我忘了不好意思,有所调整,按照太阳人那个数据手册里面推荐步骤进行的:/*本程序实现功能:在1602液晶屏上显示预期字符硬件平台:AVR ATMega16,外部晶振11.0592MHz2007.01.04MYBlog-/*/#define LCDPORT PORTB /数据总线在PB口#define LCDDDR DDRB #define LCDPIN PINB#define En_H PORTA |= _BV(PA2) /sbi(PORTA,2) /En接Pa2#define En_L PORTA &= _BV(PA2) /cbi(PORTA,2)#define RW_R PORTA |= _BV(PA0) /sbi(PORTA,0) /RW接Pa0#define RW_W PORTA &= _BV(PA0) /cbi(PORTA,0)#define RS_H PORTA |= _BV(PA3) /sbi(PORTA,3) /RS接Pa3#define RS_L PORTA &= _BV(PA3) /cbi(PORTA,3)#define DelaytE _delay_us(2)/#define Clear_Screen Write_Command(0x01)/延时程序void Delay(uint16_t time) while(time0) time-; /产生一个使能脉冲void En_Toggle(void) En_H; /拉高使能位 DelaytE; /保持高电平一定时间 En_L; /拉低使能位,产生一个下降沿 DelaytE; /保持低电平一定时间/不断检测LCD忙标志BF,直到其为0,表示可以执行下一条指令void Wait_Until_Ready(void) LCDDDR = 0x00; /单片机设为输入,用以读取LCD忙标志 RS_L; /所读为状态位 RW_R; /设为读状态 DelaytE; En_H; DelaytE; loop_until_bit_is_clear(LCDPIN,7); /不断循环,直至BF=0 En_L;void Write_Command(uint8_t Command,uint8_t busyFlag) uint8_t busy; busy = busyFlag; if (busy = 1) /busy=1表示系统希望检测忙信号 Wait_Until_Ready(); /等待指令执行完毕 LCDDDR = 0xff; RS_L; /写入的是命令字 RW_W; /置为写状态 LCDPORT = Command; _delay_us(25); En_Toggle(); /产生使能脉冲,使之在下降沿开始执行指令 void Write_Data(uint8_t data) Wait_Until_Ready(); /等待指令执行完毕 RS_H; /写入的是数据 RW_W; /置为写状态 LCDDDR = 0xff; LCDPORT = data; En_Toggle(); /产生使能脉冲,使之在下降沿开始执行指令void Initialize_LCD(void) /主程序中在进入初始化程序前已经延时400ms LCDDDR = 0xff; /LCD控制线在PD口,故将其设为输出 /此处可以根据实际情况调整,或者在主程序中设置 DDRA = 0xff; /ERSRW等接在PA口 _delay_ms(15); Write_Command(0x38,0); /设为8位接口模式,显示2行字符,busy=0不检测忙信号 _delay_ms(5); Write_Command(0x38,0); _delay_ms(5); Write_Command(0x38,0); Write_Command(0x38,1); Writ
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 产品售后服务质量评估体系搭建模板
- 商业计划书制作工具含行业案例参考版
- 线缆整件代加工合同模板(3篇)
- 产品缺陷反馈及解决方案跟进表
- 2025年数字营销行业直播电商营销策略研究报告及未来发展趋势预测
- 2025年虚拟现实行业技术应用与虚拟体验研究报告及未来发展趋势预测
- 2025年物联网技术在物流行业中的应用与发展研究报告及未来发展趋势预测
- 2025年科技创新产业行业科技创新产业链发展与科技企业发展研究报告及未来发展趋势预测
- 2025年新能源行业太阳能光伏技术与可再生能源开发研究报告及未来发展趋势预测
- 食品安全保障行动承诺书4篇
- 2025年消防日消防月主题知识培训
- 2022年长春财经学院公共课《思想道德基础与法律修养》科目期末试卷B
- 2025年10月广东深圳市大鹏新区群团工作部招聘编外人员1人考试模拟试题及答案解析
- GB/T 46401-2025养老机构认知障碍老年人照护指南
- 2025年中小学教师师德师风考试试题及答案
- 生物育种方法
- 建筑企业法人a证考试及答案
- HSF管理体系实施方案及操作指南
- 药企采购知识培训课件
- 脚手架工程监理实施细则(盘扣式脚手架)
- 建筑施工现场质量安全检查表模板
评论
0/150
提交评论