搜索
bottom↓
回复: 8

LGT使用过程中的几点问题及解决

[复制链接]

出0入0汤圆

发表于 2013-7-9 22:21:39 | 显示全部楼层 |阅读模式
第一次使用LGT,在开发过程中遇到一些问题,现列出来,让大家有个参考,同时也让自己有个备忘。
一些问题是自己研究解决,大多数问题是坛里网友及LGT技术人员帮忙解决。

芯片是08A-sop8

1:IO口问题:第一次在用的时候,无论用手碰到哪一个脚,都会引起复位,而且机率非常高,大约大于80%。因为临时做的电路板,包括烧写部份,然后直接用电脑的USB接口供电以及烧写。后来想想会不会电脑机箱的静电引起的复位。在电脑机箱上拉了一根线,直接到金属自来水管上,复位基本上没出现过,但偶尔碰第五脚(VCC/RST)还是有复位的现像,机率约小于5%。看来LGT的抗干优可能需要加强一下。因为这样用USB供电写程序,我是一直以来都这么干的,其它的芯片一直没出现过这个问题。

2:读IO口问题:读IO口复位的问题,大家可能都遇到过了。我也同时遇到,按手册和大家的方法写程序。我接的是一个按键,按键有时操作快了,还是会有复位的现像,但机率非常小。因为现在这个项目对按键的操作不会太快,而且就算复位,也没关系。因为按键只会在工厂模式下有效,有用户手上的产品,是没有按键的。我的程序如下:
   i=PANx;
  asm("nop");
asm("nop");
  if (i=xxxx);
  为了保险,我上面多加了两句nop;估计意义不大,对时序要求高的没必要加。

3:IO口设置问题:在设置输出输入状态时,DDR寄存器设置,必须将不用的脚设为输入,否则有可能不正常。没研究清楚,反正自己按平时的写法,为了方便,同一组PORT口,不用的我也会跟其它的一样,如DDRA=0xff,也许我只用A.7位,这时我为了方便,其它位都是一样。这个可能与SWD功能有关联。因为在08A中遇到的问题,是SWD复用的PC6,PA6不正常,其它的正常,当正确设置SWD位时,其它不用的口设为输入状态。不用的口,不一定是指空脚,也指芯片中没有的脚。如08A  B端口只有PB2,那么设置时写为这样:DDRB=0b00000100,假设PB2为输出。

3:SWD位的问题:SWD位如果要关闭,必须要连续写两次数据,手册说是4个时钟周期内。反正连续写两次就对了。SWD位要关闭,对应的IO口才能使用。

4:时钟设置问题:在设置时钟时,如需要外部时钟,又需要EEPROM的系统,一定要开启外部时钟,同时不能关闭内部时钟,因为EEPROM的时钟是由内部时钟提供,关闭后则EEPROM不正常,其它芯片内置的硬件功能,是否由内部时钟提供时钟信号,一定要看清楚手册,否则相应功能会不能工作。为了保险起见,在选用外部时钟时,同时也保持内部时钟启动,应该就没什么问题了。问LGT技术,说不会有不良影响。

5:VCC引脚问题,08A-sop8封装,第5脚ACC与RST复用,在烧写时,第2脚作为VCC。这就引起一个问题量产产品中,如果第2脚有一个高电平信号,芯片就能有电启动了。所以大家在使用时,硬件上尽量将这个脚作为输出使用,并保证这个脚没有倒灌电流输入,否则芯片会无缘无故启动起来了。如果硬件上无法避免,则在这脚串拉一个大的限流电阻,具体阻值需要多少,我没有实险过,反正大到不够芯片启动的电流就行。

6:ISP烧写EEPROM数据,暂时只试过一次是成功的,然后一直没成功过了。这个原因不清楚,因为现在产品中用不到这个功能,所以也没时间去解决,有空再研究,或谁知道原因的,也告诉我一声。我想有可能是系统电压的问题,因为现在我用5V。

7:电源电压,这个芯片用的是1.8-3.6V的电压,这个大家一定要注意了,我没细心看手册。但我现在一直用5V,已经用了一个星期了,没发现有什么奇怪的问题。



暂时问题就这么多,以后使用中遇到什么新问题,继续发上来。大家在使用中遇到什么问题的,也一起整理到这里。一能让其它网友可以在这里查找解决方法,二能让LGT公司继续改进芯片,越做越好,越做越强大。


阿莫论坛20周年了!感谢大家的支持与爱护!!

阿莫论坛才是最爱国的,关心国家的经济、社会的发展、担心国家被别国牵连卷入战争、知道珍惜来之不易的和平发展,知道师夷之长,关注世界的先进文化与技术,也探讨中国文化的博大精深,也懂得警惕民粹主义的祸国殃民等等等等,无不是爱国忧民的表现。(坛友:tianxian)

出0入0汤圆

发表于 2013-7-9 22:44:02 | 显示全部楼层
非常感谢你细致的总结!
对于第一点, 目前的SOP8封装的VCC其实并没有封装出来, 而是用RST脚供电。
这个SOP8是专用于一个VUSB的项目,所以才有这样怪异的封装。 其他封装的08A, 不会有你说的复位现象。

第二点, 也是和你说的复位有关, 你的程序:
i = PINX
if(i == xxx) 中, i 的定义一定要是volatile unsigned char这样, 否则编译出来还是可能有SBIC/SBIS指令, 这种指令才是
导致容易复位的最大可能原因。
另外, 你也可以搜索下编译出来的代码, 看看有没有SBIC/SBIS指令。

非常感谢你对我们的鼓励, 我也建议你试用新的LGT8F88A, 这个芯片的已经完全修复了之前的BUG, 并且I/O的ESD,
抗干扰都是能达到工业级的水准。

出0入0汤圆

发表于 2013-7-10 00:48:35 | 显示全部楼层
LGT 发表于 2013-7-9 22:44
非常感谢你细致的总结!
对于第一点, 目前的SOP8封装的VCC其实并没有封装出来, 而是用RST脚供电。
这个SO ...

LGT8F88A 的IO太多了,来个同样是8PIN的就好了

出0入30汤圆

发表于 2013-7-10 09:38:47 | 显示全部楼层
renpeng009 发表于 2013-7-10 00:48
LGT8F88A 的IO太多了,来个同样是8PIN的就好了

+1
                                       

出0入0汤圆

发表于 2013-7-10 15:14:13 | 显示全部楼层
LGT 发表于 2013-7-9 22:44
非常感谢你细致的总结!
对于第一点, 目前的SOP8封装的VCC其实并没有封装出来, 而是用RST脚供电。
这个SO ...

我老早就写过一个修改版的头文件。加入inline函数解决这个问题了。

出0入0汤圆

发表于 2013-7-10 17:55:00 | 显示全部楼层
renpeng009 发表于 2013-7-10 00:48
LGT8F88A 的IO太多了,来个同样是8PIN的就好了

+1                                                                        

出0入0汤圆

 楼主| 发表于 2013-7-11 03:09:59 | 显示全部楼层
看122,回5,大家看帖不顶帖,呵呵.

出0入0汤圆

 楼主| 发表于 2013-7-11 03:11:32 | 显示全部楼层
LGT 发表于 2013-7-9 22:44
非常感谢你细致的总结!
对于第一点, 目前的SOP8封装的VCC其实并没有封装出来, 而是用RST脚供电。
这个SO ...

IO口这个真没注意.我改用你的方法试试.88A能尽快有SOP8封装就好了.还有,大约什么时候推出?引脚与08A一样吗?如果一样,我可以先出产品.如果不一样,推出时间短的话,可以等等.

出0入0汤圆

发表于 2013-7-31 22:59:29 | 显示全部楼层
   出了SOP8后 IO复用 又和08A一样。。 有点纠结。。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-17 06:48

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

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