xwkm 发表于 2013-2-3 20:30:00

KTool 更新,LGT8F08A已经支持

本帖最后由 xwkm 于 2013-2-3 22:04 编辑

bootloader已经更新到了防锁功能。KTool支持了LGT8F08A的编程,看:

虽然说刷8K速度还是不够快……
代码下载:

LGT8F08A SOP28(bug version) Test complete

xwkm 发表于 2013-2-3 20:33:18

PS,这一次支持还不够完美:LGT的熔丝暂时不支持写。EEPROM也暂时不支持

xwkm 发表于 2013-2-4 14:01:08

为啥这么多看贴不回的……

onlytest 发表于 2013-2-5 15:07:06

支持,下了回头研究

xsh2005105326 发表于 2013-2-5 15:42:17

不知道LZ的附件是啥格式。

xwkm 发表于 2013-2-5 15:49:21

xsh2005105326 发表于 2013-2-5 15:42 static/image/common/back.gif
不知道LZ的附件是啥格式。

tar.bz2。用好压解。PS我用linux的

xsh2005105326 发表于 2013-2-5 15:51:20

xwkm 发表于 2013-2-5 15:49 static/image/common/back.gif
tar.bz2。用好压解。PS我用linux的

下载后是这样的

elecfun 发表于 2013-2-5 15:56:51

xsh2005105326 发表于 2013-2-5 15:51 static/image/common/back.gif
下载后是这样的

直接改名就行了。

xwkm 发表于 2013-2-5 16:21:23

xsh2005105326 发表于 2013-2-5 15:51 static/image/common/back.gif
下载后是这样的

测试通过了没。我想收集一点LGT V-USB的稳定问题。
顺带说下。最好先使用bootloader。原理图在http://www.amobbs.com/thread-5518786-1-1.html

jhdtry 发表于 2013-2-6 14:38:38

快过年了,送年礼啊。顶起

xwkm 发表于 2013-2-6 19:05:03

jhdtry 发表于 2013-2-6 14:38 static/image/common/back.gif
快过年了,送年礼啊。顶起

这个是破解出来的ISP协议……

xwkm 发表于 2013-2-8 17:18:18

已经放弃了在CDC方面了。发送搞定了,内核居然不支持接收!

csdnct 发表于 2013-2-10 11:51:52

KTool 到底是什么东西,用来干嘛的, 好多个帖子都说KTool ,始终没明白是干嘛的。

xwkm 发表于 2013-2-10 13:02:06

csdnct 发表于 2013-2-10 11:51 static/image/common/back.gif
KTool 到底是什么东西,用来干嘛的, 好多个帖子都说KTool ,始终没明白是干嘛的。 ...

非官方支持的ISP工具。以及USB开发板( LGT8F08A)。可以用来下载 LGT和USB转LCD(开发中

csdnct 发表于 2013-2-10 14:09:57

xwkm 发表于 2013-2-10 13:02 static/image/common/back.gif
非官方支持的ISP工具。以及USB开发板( LGT8F08A)。可以用来下载 LGT和USB转LCD(开发中 ...

官方的仿真器才几十元,为何要做个非官方的,是官方的有什么bug还是官方的功能不强呢?

xwkm 发表于 2013-2-10 15:47:58

csdnct 发表于 2013-2-10 14:09 static/image/common/back.gif
官方的仿真器才几十元,为何要做个非官方的,是官方的有什么bug还是官方的功能不强呢? ...

官方的不支持linux。而且我没多少钱。最主要的是,我不希望换芯片到处找工具。况且这个硬件可以另做别用。
加上这个方案可以显著降低usbasp的成本

xwkm 发表于 2013-4-1 15:34:01

AVRDUDE.CONF...

#------------------------------------------------------------
# LGT8F08A
#------------------------------------------------------------
part
id = "f8a";
desc = "LGT8F08A";
signature = 0x1B 0x2B 0x08;
chip_erase_delay = 20000;#必须要擦除时间够
pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
"x x x x x x x x x x x x x x x x";

chip_erase = "1 0 1 0 1 1 1 0 x x x x x x x x",
"x x x x x x x x x x x x x x x x";

timeout = 200;
stabdelay = 100;
cmdexedelay = 25;
synchloops = 32;
bytedelay = 0;
pollindex = 3;
pollvalue = 0x53;
predelay = 1;
postdelay = 1;
pollmethod = 0;

    memory "flash"
      paged         = yes;
      size            = 8192;
      page_size       = 64;
      num_pages       = 128;
      min_write_delay = 2000;
      max_write_delay = 3000;
      readback_p1   = 0xff;
      readback_p2   = 0x00;
      read_lo         = "0   0   1   0    0   0   0   0",
                        "0   0   0   0a11 a10a9a8",
                        " a7a6a5a4   a3a2a1a0",
                        "o   o   o   o    o   o   o   o";

      read_hi         = "0   0   1   0    1   0   0   0",
                        "0   0   0   0a11 a10a9a8",
                        " a7a6a5a4   a3a2a1a0",
                        "o   o   o   o    o   o   o   o";
      write_lo      = "0100   0000",
                        "xxxx   xxa9 a8",
                        " a7 a6 a5 a4a3 a2 a1 a0",
                        "iiii   iiii";

      write_hi      = "0100   1000",
                        "xxxx   xxa10 a8",
                        " a7 a6 a5 a4a3 a2 a1 a0",
                        "iiii   iiii";

      mode                = 0x21;
      delay                = 100;
      blocksize      = 64;
      readsize      = 256;
      ;

    memory "eraseeep" #擦EEP
      size            = 1;
        read ="0 1 0 1 1 0 1 0 x x x xx x x x",
                "x x x x x x x a0 o o o oo o o o";
      ;

    memory "eeprom"
      paged         = no; /* leave this "no" */
      page_size       = 4;/* for parallel programming */
      size            = 512;
      min_write_delay = 9000;
      max_write_delay = 9000;
      readback_p1   = 0xff;
      readback_p2   = 0xff;
        read            = "1   0   1   0      0   0   0   0",
                        "0   0   x   x      x   xa9a8",
                        " a7a6a5a4   a3a2a1a0",
                        "o   o   o   o      o   o   o   o";

        mode                = 0x41;
        delay                = 10;
        blocksize        = 128;
        readsize        = 256;
      ;

    #fuses:fuse osccal
    #fuse:7=>LOCK 6 => ENABLE FUSE
    memory "signature"
      size            = 3;
      read            = "0011   0000   xxxx   xxxx",
                        "xxxx   xx a1 a0   oooo   oooo";
      ;

;
#------------------------------------------------------------
#------------------------------------------------------------
# LGT8F88A
#------------------------------------------------------------

part
    id               = "f88";
    desc             = "LGT8F88A";
   has_debugwire = yes;
   flash_instr   = 0xB6, 0x01, 0x11;
   eeprom_instr= 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00,
                   0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF,
                   0x99, 0xF9, 0xBB, 0xAF;
    stk500_devcode   = 0x73;
#    avr910_devcode   = 0x;
    signature      = 0x1e 0x93 0x0a;
    pagel            = 0xd7;
    bs2            = 0xc2;
    chip_erase_delay = 9000;
    pgm_enable       = "1 0 1 01 1 0 0    0 1 0 10 0 1 1",
                     "x x x xx x x x    x x x xx x x x";

    chip_erase       = "1 0 1 01 1 0 0    1 0 0 xx x x x",
                     "x x x xx x x x    x x x xx x x x";

    timeout                = 200;
    stabdelay                = 100;
    cmdexedelay                = 25;
    synchloops                = 32;
    bytedelay                = 0;
    pollindex                = 3;
    pollvalue                = 0x53;
    predelay                = 1;
    postdelay                = 1;
    pollmethod                = 1;

    pp_controlstack   =
        0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F,
        0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F,
        0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B,
        0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00;
    hventerstabdelay    = 100;
    progmodedelay       = 0;
    latchcycles         = 5;
    togglevtg         = 1;
    poweroffdelay       = 15;
    resetdelayms      = 1;
    resetdelayus      = 0;
    hvleavestabdelay    = 15;
    resetdelay          = 15;
    chiperasepulsewidth = 0;
    chiperasepolltimeout = 10;
    programfusepulsewidth = 0;
    programfusepolltimeout = 5;
    programlockpulsewidth = 0;
    programlockpolltimeout = 5;

    memory "eeprom"
      paged         = no;
      page_size       = 4;
      size            = 512;
      min_write_delay = 3600;
      max_write_delay = 3600;
      readback_p1   = 0xff;
      readback_p2   = 0xff;
        read            = "1   0   1   0      0   0   0   0",
                        "0   0   0   x      x   x   xa8",
                        " a7a6a5a4   a3a2a1a0",
                        "o   o   o   o      o   o   o   o";

        write         = "1   1   0   0      0   0   0   0",
                        "0   0   0   x      x   x   xa8",
                        " a7a6a5a4   a3a2a1a0",
                        "i   i   i   i      i   i   i   i";

        loadpage_lo        = "1   1   0   0      0   0   0   1",
                          "0   0   0   0      0   0   0   0",
                          "0   0   0   0      0   0a1a0",
                          "i   i   i   i      i   i   i   i";

        writepage        = "1   1   0   0      0   0   1   0",
                          "0   0   x   x      x   x   xa8",
                          " a7a6a5a4   a3a2   0   0",
                          "x   x   x   x      x   x   x   x";

        mode                = 0x41;
        delay                = 5;
        blocksize        = 4;
        readsize        = 256;
      ;
    memory "flash"
      paged         = yes;
      size            = 8192;
      page_size       = 64;
      num_pages       = 128;
      min_write_delay = 4500;
      max_write_delay = 4500;
      readback_p1   = 0xff;
      readback_p2   = 0xff;
      read_lo         = "0   0   1   0    0   0   0   0",
                        "0   0   0   0a11 a10a9a8",
                        " a7a6a5a4   a3a2a1a0",
                        "o   o   o   o    o   o   o   o";

      read_hi         = "0   0   1   0    1   0   0   0",
                        "0   0   0   0a11 a10a9a8",
                        " a7a6a5a4   a3a2a1a0",
                        "o   o   o   o    o   o   o   o";

      loadpage_lo   = "0   1   0   0      0   0   0   0",
                        "0   0   0   x      x   x   x   x",
                        "x   x   xa4   a3a2a1a0",
                        "i   i   i   i      i   i   i   i";

      loadpage_hi   = "0   1   0   0      1   0   0   0",
                        "0   0   0   x      x   x   x   x",
                        "x   x   xa4   a3a2a1a0",
                        "i   i   i   i      i   i   i   i";

      writepage       = "0   1   0   0      1   1   0   0",
                        "0   0   0   0    a11 a10a9a8",
                        " a7a6a5   x      x   x   x   x",
                        "x   x   x   x      x   x   x   x";

        mode                = 0x41;
        delay                = 6;
        blocksize        = 64;
        readsize        = 256;
      ;

    memory "lfuse"
      size            = 1;
      min_write_delay = 4500;
      max_write_delay = 4500;
      read            = "0 1 0 10 0 0 0   0 0 0 00 0 0 0",
                        "x x x xx x x x   o o o oo o o o";

      write         = "1 0 1 01 1 0 0   1 0 1 00 0 0 0",
                        "x x x xx x x x   i i i ii i i i";
      ;

    memory "hfuse"
      size            = 1;
      min_write_delay = 4500;
      max_write_delay = 4500;
      read            = "0 1 0 11 0 0 0   0 0 0 01 0 0 0",
                        "x x x xx x x x   o o o oo o o o";

      write         = "1 0 1 01 1 0 0   1 0 1 01 0 0 0",
                        "x x x xx x x x   i i i ii i i i";
      ;

    memory "efuse"
      size            = 1;
      min_write_delay = 4500;
      max_write_delay = 4500;
      read            = "0 1 0 10 0 0 0   0 0 0 01 0 0 0",
                        "x x x xx x x x   x x x xx o o o";

      write         = "1 0 1 01 1 0 0   1 0 1 00 1 0 0",
                        "x x x xx x x x   x x x xx i i i";
      ;

    memory "lock"
      size            = 1;
      min_write_delay = 4500;
      max_write_delay = 4500;
      read            = "0 1 0 11 0 0 0   0 0 0 00 0 0 0",
                        "x x x xx x x x   x x o oo o o o";

      write         = "1 0 1 01 1 0 0   1 1 1 xx x x x",
                        "x x x xx x x x   1 1 i ii i i i";
      ;

    memory "calibration"
      size            = 1;
      read            = "0011   1000   000x   xxxx",
                        "0000   0000   oooo   oooo";
      ;

    memory "signature"
      size            = 3;
      read            = "0011   0000   000x   xxxx",
                        "xxxx   xx a1 a0   oooo   oooo";
      ;
;
页: [1]
查看完整版本: KTool 更新,LGT8F08A已经支持