最近公司要求使用mega169芯片做汽车仪表,有机会重新使用avr,对avr有了些新的认识。
很多经验来源于ouravr
1、内置eeprom是否稳定,开始用eeprom存储里程,频繁开关机时丢数据严重。
解决:等待写完标志后,加空指令,我加了5个。测试没出现一次丢数据。
2、液晶显示问题,mega169驱动液晶,波型极差,无法用于低温环境。
解决:提高帧频可以基本正常使用了。
解决:在所有液晶管脚对地接10nf电容。
3、使用单定时器模拟多通道比较输出驱动6个十字线圈。
使用timer2和通用管脚控制6个十字线圈运行,感觉mega169的速度还可以,8M时驱动6个线圈没问题。
4、使用avrx的问题
这个比较郁闷,开始时用了avrx,感觉还可以,不过后来avrx的中断与线圈驱动的中断抢资源,ram空间也不够了,只好放弃。
项目正在做着,有空再交流。。。
很多经验来源于ouravr
1、内置eeprom是否稳定,开始用eeprom存储里程,频繁开关机时丢数据严重。
解决:等待写完标志后,加空指令,我加了5个。测试没出现一次丢数据。
2、液晶显示问题,mega169驱动液晶,波型极差,无法用于低温环境。
解决:提高帧频可以基本正常使用了。
解决:在所有液晶管脚对地接10nf电容。
3、使用单定时器模拟多通道比较输出驱动6个十字线圈。
使用timer2和通用管脚控制6个十字线圈运行,感觉mega169的速度还可以,8M时驱动6个线圈没问题。
4、使用avrx的问题
这个比较郁闷,开始时用了avrx,感觉还可以,不过后来avrx的中断与线圈驱动的中断抢资源,ram空间也不够了,只好放弃。
项目正在做着,有空再交流。。。