搜索
bottom↓
回复: 1

USBasp官方源代码疑似错误发现。

[复制链接]

出0入0汤圆

发表于 2013-6-8 10:08:48 | 显示全部楼层 |阅读模式
USBasp是一个很成熟的设计,很早我就想研究和分析一下这个项目可是一直没时间,最近有点小空闲,看了一下源代码,发现了好多问题值得我们分析一下是否需要修改:
1.原理图中的红色二极管和绿色二极管接法跟usbasp.h中定义不同,看上去是颠倒了,但是如果修正
/* macros for gpio functions */
#define ledRedOn()    PORTC &= ~(1 << PC1)
#define ledRedOff()   PORTC |= (1 << PC1)
#define ledGreenOn()  PORTC &= ~(1 << PC0)
#define ledGreenOff() PORTC |= (1 << PC0)
又跟main.c中的
/* all inputs except PC0, PC1 */
DDRC = 0x03;
PORTC = 0xfe;
有不对劲的地方,因此可以判定是原理图红绿颠倒。

2.默认时钟太高
ISP默认时钟为375会导致部分低速芯片无法识别,建议修改成187.5,修改的代码如下:
void ispSetSCKOption(uchar option) {
if (option == USBASP_ISP_SCK_AUTO)
option = USBASP_ISP_SCK_187_5;
if (option >= USBASP_ISP_SCK_93_75) {
ispTransmit = ispTransmit_hw;
sck_spsr = 0;
sck_sw_delay = 1;        /* force RST#/SCK pulse for 320us */
switch (option) {
case USBASP_ISP_SCK_1500:
/* enable SPI, master, 1.5MHz, XTAL/8 */
sck_spcr = (1 << SPE) | (1 << MSTR) | (1 << SPR0);
sck_spsr = (1 << SPI2X);
case USBASP_ISP_SCK_750:
/* enable SPI, master, 750kHz, XTAL/16 */
sck_spcr = (1 << SPE) | (1 << MSTR) | (1 << SPR0);
break;
case USBASP_ISP_SCK_375:
/* enable SPI, master, 375kHz, XTAL/32*/
sck_spcr = (1 << SPE) | (1 << MSTR) | (1 << SPR1);
sck_spsr = (1 << SPI2X);
break;
case USBASP_ISP_SCK_187_5:
default:
/* enable SPI, master, 187.5kHz XTAL/64 (default) */
sck_spcr = (1 << SPE) | (1 << MSTR) | (1 << SPR1);
break;
case USBASP_ISP_SCK_93_75:
/* enable SPI, master, 93.75kHz XTAL/128 */
sck_spcr = (1 << SPE) | (1 << MSTR) | (1 << SPR1) | (1 << SPR0);
break;
}
还有好多问题还没有仔细分析,有时间我就贴出来我们大家讨论一下。

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

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

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

本版积分规则

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

GMT+8, 2024-7-24 01:29

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

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