搜索
bottom↓
回复: 38

初次试用LGT,驱动12864成功。有小问题向厂方专家求教

[复制链接]

出0入0汤圆

发表于 2012-5-3 07:49:06 | 显示全部楼层 |阅读模式
编译环境:                   WinAVR-20100110
MCU:                LGT8F08A-16C(avr-gcc mcu选择为atmega164a,没有atmega164)
F_CPU:                16M(使用内部RC振荡器)
VDD:                3.3V(LM317稳压器提供)
LCD:                青云LCM128645ZK(带字库,驱动芯片是ST7920-COB)



代码大概流程如下:
0、把主时钟设定到16MHz。
1、设置I/O方向。
2、初始化USART并输出字符(比较懒没有连接到电脑看输出,不知道USART到底工作了没有)。
3、初始化LCD12864并显示测试字符。
4、初始化定时/计数器0,产生8mS、80mS和1S定时信号供程序使用。
5、初始化定时/计数器1,在OC1A(PD5)产生15.625KHz PWM输出,占空比从最小到最大循环变化。在OC1B(PD4)产生1%占空比15.625KHz PWM输出。
6、PB1上接LED,每秒变化一次(0.5Hz)。

我没有用过m164,试用感觉LGT8F08A跟m48寄存器命名方法也是一样的,跟M8/M16/M32有很大区别。编程中只要注意寄存器名的区别,其它方面跟通常的AVR用法是一模一样的,非常容易上手!

使用中有几个小问题一直困扰着我,麻烦厂方专家解释一下:
1、试用中,发现LGT8F08A datasheet上TIMER/COUNTER0的寄存器命名(和相关位定义)与iomxx4.h头文件有不同,实际编程中要按照iomxx4.h中的写法才可以编译通过。
   规格书          iomxx4.h(WinAVR-20100110)
   OCR0             OCR0A
    OCIE0            OCIE0A
    OCF0             OCF0A

2、LGT8F08A的TIMER/COUNTER0比较匹配中断号实际是16(相当于m164的TIMER0_COMPA_vect),而不是1.3编程手册上Page25表格上的17。

3、1.3编程手册上Page28第三段上写“系统上电复位后,所以端口均默认为输入三态,输出高阻。”,但是我手上的LGT8F08A-16C在按下复位键时,所有I/O口都有1.4V到1.7V不等的电压存在,如果端口接有LED(连接为高电平点亮),则按下复位键时LED会弱亮!我希望的是复位时端口完全没有电流输出。对于我来讲复位时I/O有输出是非常麻烦的事。请告诉我,我哪里做错了?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2012-5-3 08:29:03 | 显示全部楼层
lz高手。我的还没时间玩。

出425入0汤圆

发表于 2012-5-3 08:35:18 | 显示全部楼层
第三个问题,跟其它的MCU对比测试一下

出0入0汤圆

发表于 2012-5-3 09:38:34 | 显示全部楼层
1.  这几个寄存器是和头文件里的定义不一致, 会造成混乱, 我们会在下一次版本更新中改正。 非常感谢。
2. 文档里的中断序号是从1开始, 头文件里的是从0开始, 所以是不同的, AVR文档的定义也是如此。
3. 复位时I/O为输入状态, 此时I/O并没有输出电流。 这个电流和电压应该外部电路所致。

出0入0汤圆

发表于 2012-5-3 12:54:01 | 显示全部楼层
都是高手,高手先上

出0入0汤圆

发表于 2012-5-3 12:54:18 | 显示全部楼层
都是高手,高手先上

出0入0汤圆

 楼主| 发表于 2012-5-3 13:35:14 | 显示全部楼层
LGT 发表于 2012-5-3 09:38
1.  这几个寄存器是和头文件里的定义不一致, 会造成混乱, 我们会在下一次版本更新中改正。 非常感谢。
2. ...

关于第三点,你认为电压是外部电路提供的。但是事实上不是,PB1我只接了这个东西,LED和电阻怎么能提供电压??
PB1-------\/\/\/\-----------|》----------|
I/O       1K电阻    +红LED-    GND

手上有小板的朋友帮忙测试一下,看问题能不能重现:按示意图接红色LED,烧入本帖HEX文件,LED闪烁。按下复位键是LED是弱亮的

出0入0汤圆

发表于 2012-5-3 15:02:47 | 显示全部楼层
本帖最后由 LGT 于 2012-5-3 15:04 编辑

你是对的。 整个芯片只有PB0在复位过程中内部上拉是打开的。
因为这个PB0设计是作为ISP的片选引脚, 低电平有效。 复位阶段内部默认上拉。
建议你用其他I/O驱动。

多谢你的提醒, 复位过程中这个默认上拉的设计也是不合适的。

我们测试的是PB0在复位过程中会有默认上拉, 但PB1不会。

出0入0汤圆

发表于 2012-5-3 15:10:22 | 显示全部楼层
我常用的三星单片机复位状态也是输入带上拉,所以像这种驱动LED都用低电平输出

VCC---LED---RES---I/O

出0入0汤圆

 楼主| 发表于 2012-5-3 15:15:43 | 显示全部楼层
LGT 发表于 2012-5-3 15:02
你是对的。 整个芯片只有PB0在复位过程中内部上拉是打开的。
因为这个PB0设计是作为ISP的片选引脚, 低电平 ...

板子现在不在手上,晚上回去我再确认LED是不是接到PB0。
关键是:上拉没有问题,但是要在规格书上明确指出,这样用户才会考虑去避开有可能出现的问题。(现在规格书写的是所有端口复位高阻!)

出0入0汤圆

发表于 2012-5-3 15:17:09 | 显示全部楼层
mowin 发表于 2012-5-3 15:15
板子现在不在手上,晚上回去我再确认LED是不是接到PB0。
关键是:上拉没有问题,但是要在规格书上明确指 ...

对, 写文档时是忽略了这个问题。 下一版本中更正。

出0入0汤圆

发表于 2012-5-3 18:06:39 | 显示全部楼层
LGT最好在这个版块开个置顶帖,把网友已经发现的问题集中起来,便于大家查找,避免重复走弯路。毕竟现有已经有些网友包括本人在内买了些芯片回来。另外想确认一下,已经供应的芯片是样片吧?

出0入0汤圆

发表于 2012-5-3 21:47:49 | 显示全部楼层
买了80片,还在路上。

出0入0汤圆

发表于 2012-5-3 21:59:16 | 显示全部楼层
啥时候有LQFP44的封装?

出0入0汤圆

发表于 2012-5-3 22:22:28 | 显示全部楼层
都是高手,高手先上

出0入0汤圆

发表于 2012-5-3 22:39:59 | 显示全部楼层
什么时候有SSOP20的封装,这几天在找低价格的MCU用在玩具上。

出0入618汤圆

发表于 2012-5-3 23:19:06 | 显示全部楼层
LGT 发表于 2012-5-3 15:02
你是对的。 整个芯片只有PB0在复位过程中内部上拉是打开的。
因为这个PB0设计是作为ISP的片选引脚, 低电平 ...

我杯具了,现在才看到这个帖子……

今天刚发给小张的板子

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2012-5-4 07:43:49 | 显示全部楼层
LGT 发表于 2012-5-3 15:02
你是对的。 整个芯片只有PB0在复位过程中内部上拉是打开的。
因为这个PB0设计是作为ISP的片选引脚, 低电平 ...

确实是PB0的LED复位是弱亮。PB1不会

出0入0汤圆

 楼主| 发表于 2012-5-4 07:44:59 | 显示全部楼层
gzhuli 发表于 2012-5-3 23:19
我杯具了,现在才看到这个帖子……

今天刚发给小张的板子

同情中……
我觉得肯定有人会遇到跟我一样的问题的,想不到是大师您

出0入0汤圆

 楼主| 发表于 2012-5-4 07:47:43 | 显示全部楼层
正式结贴。本帖所有问题已经得到解决。感谢各位关注!
让我们拿出当年玩AVR的热情一起来玩LGT吧。

出0入618汤圆

发表于 2012-5-4 14:52:53 | 显示全部楼层
mowin 发表于 2012-5-4 07:44
同情中……
我觉得肯定有人会遇到跟我一样的问题的,想不到是大师您  ...

图中也可以看到我没接RESETN脚,所以最多只是上电瞬间微闪一下,后面就没事了,问题不大,说杯具是夸张了。

出0入0汤圆

 楼主| 发表于 2012-5-4 14:55:47 | 显示全部楼层
是的,驱动LED没事。要是接NPN管(or NMOS)驱动继电器,那就会悲剧的。

出0入0汤圆

发表于 2012-5-4 15:19:22 | 显示全部楼层
gzhuli 发表于 2012-5-4 14:52
图中也可以看到我没接RESETN脚,所以最多只是上电瞬间微闪一下,后面就没事了,问题不大,说杯具是夸张了 ...

没接RESETN脚怎么烧写程序呢??  难道是烧好了焊接上去?

出0入0汤圆

发表于 2012-5-4 15:23:34 | 显示全部楼层
wx85105157 发表于 2012-5-4 15:19
没接RESETN脚怎么烧写程序呢??  难道是烧好了焊接上去?

用仿真器,只需SWD和SWC就可以了。                                                                  

出0入0汤圆

发表于 2012-5-4 20:38:43 | 显示全部楼层
.titrwh 发表于 2012-5-4 15:23
用仿真器,只需SWD和SWC就可以了。                                                                   ...

忘记了   和AVR的不一样了。。。

出0入0汤圆

发表于 2012-5-7 21:33:54 | 显示全部楼层
请问各位大哥在哪买的货申请的样片?请问我公司现有产品需要替换单片机,能不能申请两片样片回来?我的邮箱superchencheng@163.com,希望知道信息的朋友能够告诉我下,,哈哈。。。。

出0入0汤圆

 楼主| 发表于 2012-5-8 07:48:54 | 显示全部楼层
oucui 发表于 2012-5-7 21:33
请问各位大哥在哪买的货申请的样片?请问我公司现有产品需要替换单片机,能不能申请两片样片回来?我的邮箱 ...

我是自己买来玩的。邮购部有卖,请点击论坛顶部“阿莫电子邮购”!

出0入0汤圆

 楼主| 发表于 2012-6-6 07:54:55 | 显示全部楼层
申请的DS3231M到手,却卡在软I2C驱动上,有没有那位朋友、大湿调好LGT上的I2C驱动?贡献来用一下,谢谢!

出0入0汤圆

 楼主| 发表于 2012-6-7 09:12:54 | 显示全部楼层
本帖最后由 mowin 于 2012-6-7 17:04 编辑

自己搞定了,原来是因为SDA/SCL线搞反了

出1070入962汤圆

发表于 2012-6-7 09:22:06 | 显示全部楼层
真正的悲剧来了!


控制外部的电源,NPN管接PMOS,我哭啊!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2012-6-7 12:46:43 | 显示全部楼层
hiahiahia,咦,我怎么笑出声了
没想到先来报告杯具的是两位神级人物

出0入0汤圆

发表于 2012-6-7 13:09:22 | 显示全部楼层
原厂资料引发的问题可以很严重。 资料编辑必须慎重

出0入0汤圆

发表于 2012-6-7 13:16:26 | 显示全部楼层
标记下,PB0在设计时得注意了。谢谢

出0入0汤圆

 楼主| 发表于 2012-6-11 11:40:13 | 显示全部楼层
mowin 发表于 2012-6-6 07:54
申请的DS3231M到手,却卡在软I2C驱动上,有没有那位朋友、大湿调好LGT上的I2C驱动?贡献来用一下,谢谢! ...



直接锂电供电给LGT,不知道会不会挂

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入618汤圆

发表于 2012-6-11 11:46:52 | 显示全部楼层
bozai 发表于 2012-6-7 13:16
标记下,PB0在设计时得注意了。谢谢

估计是因为PB0的特殊位置(1脚)和比较无关紧要的复用功能,使得设计时很容易将它用于输出控制IO……

出0入0汤圆

 楼主| 发表于 2012-6-15 11:20:25 | 显示全部楼层
mowin 发表于 2012-6-11 11:40
直接锂电供电给LGT,不知道会不会挂

完了,昨晚调试断电模式,不知道弄错哪里,现在没有显示了。“build and run”之后不用按“F5”,他自己直接run起来,板子没有反应
板子没有留ISP口,怎么办呢?SWD没法把原先正常的程序烧进去

出0入618汤圆

发表于 2012-6-15 11:23:43 | 显示全部楼层
mowin 发表于 2012-6-15 11:20
完了,昨晚调试断电模式,不知道弄错哪里,现在没有显示了。“build and run”之后不用按“F5”,他自己 ...

去邮购部买一套测试钩吧,钩1.27mm的SOP压力不大。

出0入0汤圆

 楼主| 发表于 2012-6-15 14:27:31 | 显示全部楼层
gzhuli 发表于 2012-6-15 11:23
去邮购部买一套测试钩吧,钩1.27mm的SOP压力不大。

谢谢大湿指点,我考虑一下。暂时最快的方法,把IC拆下来装到LGT评估板上去烧

出0入0汤圆

 楼主| 发表于 2012-6-18 08:39:37 | 显示全部楼层
其实应该是电脑的问题,电脑和板都全部断电再开,又能烧了

断电模式可以进入,也可以正常唤醒。只是断电后还是有2.0xmA电流,板上就一片LGT和一片DS3231M……
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-5 14:34

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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