一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 2484|回复: 12
收起左侧

[avr] 请教M8V7源程序的编译问题

[复制链接]
发表于 2014-10-18 19:17 | 显示全部楼层 |阅读模式
最近新装了2个M8V7电源,感觉还不错,很有玩头。由于我手中的液晶屏和普通的不一样。普通2004上显示的1、2、3、4行在我的液晶屏上变成1、3、2、4行,而且上下没有对齐,我手头的液晶屏是2404,每行显示24个字符的。通过研究,仔细看了G大源程序中LCD1604部分
asm("ldi R18,0x80");                  // 1604 address = LCD_START_LINE1;
        ldi R18,0x80
        .dbline 144
;         //asm("ldi R18,0x82");                  // 2004
;         asm("cpi R17,1");
        cpi R17,1
        .dbline 145
;         asm("brne LCD_set_address_L1");
        brne LCD_set_address_L1
        .dbline 146
;         asm("ldi R18,0xc0");                  // 1604
        ldi R18,0xc0
        .dbline 148
;         //asm("ldi R18,0xc2");                // 2004
;         asm("LCD_set_address_L1:");
        LCD_set_address_L1:
        .dbline 150
;         
;         asm("cpi R17,2");
        cpi R17,2
        .dbline 151
;         asm("brne LCD_set_address_L2");
        brne LCD_set_address_L2
        .dbline 152
;         asm("ldi R18,0x90");                  // 1604
        ldi R18,0x90
        .dbline 154
;         //asm("ldi R18,0x96");                   // 2004
;         asm("LCD_set_address_L2:");
        LCD_set_address_L2:
        .dbline 156
;         
;         asm("cpi R17,3");
        cpi R17,3
        .dbline 157
;         asm("brne LCD_set_address_L3");
        brne LCD_set_address_L3
        .dbline 158
;         asm("ldi R18,0xd0");                  // 1604
        ldi R18,0xd0
        .dbline 160
;         //asm("ldi R18,0xd6");                   // 2004
;         asm("LCD_set_address_L3:");
        LCD_set_address_L3:
        .dbline 162
如果我要使用2404,是否可以直接在2004那行修改:
//asm("ldi R18,0x82");      // 2004;将0x82改为0x84(这应该是第一行显示,1604改为2004,那么80改为82,前面空2个字符,我判断改为2404应该空4个字符就应该改为84,下面以此类推?)
//asm("ldi R18,0xc2");         // 2004;将0xc2改为0x9c(84+24个字符,16进制应该是18,那么84+18=9c)
//asm("ldi R18,0x96");         // 2004;将0x96改为0xc4
//asm("ldi R18,0xd6");         // 2004;将0xd6改为0xdc
是否可行?
另外,我因为不懂AVR,只是略懂51和PIC,所以不会编译,请大神指点。
发表于 2014-10-18 20:19 | 显示全部楼层
应该不用改
 楼主| 发表于 2014-10-18 20:24 | 显示全部楼层

哦?愿闻其详。
 楼主| 发表于 2014-10-18 20:32 | 显示全部楼层
普通2004显示的:
2004a.jpg

2004b.jpg

我手头的液晶屏显示的:
2440b.jpg

2440a.jpg

 楼主| 发表于 2014-10-22 07:26 | 显示全部楼层
终于搞定了,请看图片 2404b.jpg

2404a.jpg


 楼主| 发表于 2014-10-22 07:28 | 显示全部楼层
感谢rober兄弟,一点一点的告诉我如何使用编译器。又学习到了知识,乐趣啊,也是一个苦难的开始   
发表于 2014-10-22 09:06 | 显示全部楼层
能否说一下编译的方法啊,也让我们一起学习下。
 楼主| 发表于 2014-10-22 09:06 来自手机 | 显示全部楼层
很简单,用icc6.31,记得路径设置好
发表于 2014-10-22 13:41 | 显示全部楼层
祝贺christian
发表于 2014-10-22 13:43 来自手机 | 显示全部楼层
源文件,没有做函数声明,编译,一堆的警告,看的不踏实!

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-5-18 11:09 , Processed in 0.072139 second(s), 47 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表