ATtiny2313代替90S2313的方法

ARM

36人已加入

描述

ATtiny2313代替90S2313的方法

我们原来的一产品是用90S2313,现在必需要用TINY2313,原来的程序是用汇编,现在仍然用汇编,前几天第一次购到TINY2313,先用串口下载线,下载失败,连芯片都没认出,后用双龙有244的下载线,用双龙上位机软件,认出了芯片写上了熔丝位,下载了代码(原来的90S代码),上机不能运行,这时我想看一下写入芯片的代码,看一下是否已写入.
  好了问题出来了,不能读,连芯片都不认了.提示是 请检查电源 时钟 下载线的连接,只好换了片新的,认出了芯片,这次不用双龙上位机软件,而用马牧石的mucodeISP 0.18认出了芯片,写上了熔丝位,下载了代码.上机还是不能运行,而改用90s2313生产同样的程序,运行正常,再读写入芯片的代码,完了!第二片芯片就义了.
  只能翻数据手册,发现熔丝位写错了因为我们原来的产品是用6M外部晶振,CKSEL3..0为"1101"而我写入为"0000"因数据手册说"0000"为外部晶振(这里还有些不明白,只要CKSEL3..0写入"0000"就死锁).
  第三片芯片上手了,我已准备好你也光荣了吧.写上了熔丝位"1101",下载了代码.上机能运行,但不正常,再读写入芯片的代码,能读出代码,这说明第三片还能为我服务,立即写入非常简单的几条语句程序运行,正常,这时我抽出原来程序一段来运行(汇编的),此时发现比原来的程序慢十倍左右,看来问题出在CKDIV8,翻数据手册并立即将该位的编程取消使其不编程"1",再写原代码,一切运行正常.
 通过这次替代得出,只要熔丝位写对,可以直接替换,另外上位机软件我建议使用马牧石mucodeISP 0.18. 其最大好处是用中文说明了熔丝位的意义


ATtiny2313 编程问题
请注意,ATtiny2312的Rev.A并行编程接口有问题,因此它是不支持的。
警告:请避免设定熔丝位禁止ISP接口,这将造成芯片不能进一步编程。
时钟源和预分频
ATtiny2313有多种时钟源的选择和预分频设置, 记住在以下情况下可以使用 STK500/AVRISP 对器件进行ISP编程:
(1) ATtiny2313的预分频时钟源大于32KHz
(2)ATtiny2313的预分频时钟源等于或者小于STK500/AVRISP设定的晶振值

用STK500,这里面设置都说得很清楚:

ATtiny
ATtiny
ATtiny
ATtiny
ATtiny
下载读写和运行程序都十分正常的

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
评论(0)
发评论
zhang892507297 2012-08-28
0 回复 举报
问一下AT90S2313芯片的代码在哪里下的,最好是能发我一份,邮箱:850641546@qq.com 收起回复

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分