转载时请注明出处:%B5%FB%CF%FE%C3%CE/blog/item/1aa1050958898c2e6a60fbd0.html蝶晓梦(vowstar@gmail.com)
今天终于琢磨出来怎么在Linux下烧录AT89s52.下面是我的方法…当然可能有更好的方法.这里以Ubuntu为例子,先安装avrdude.用下面的命令一次装全吧:
sudo apt-get install gcc-avr binutils-avr avrdude avr-libc
然后编辑avrdude.conf:
sudo gedit /etc/avrdude.conf
在最后面加入AT89s52的相关信息(这是Joy Shukla写的)
#———————————————————— # Below chips by added by me .. Joy Shukla(joy_shukla@yahoo.in) # these chips can be programmed with my usbasp programmer(changed atmega8 program) # after adding avrdude support in this file .. #————————————————————
#———————————————————— # AT89S52 #———————————————————— part id = “8052”; desc = “AT89S52”; signature = 0x1E 0x52 0x06; 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 0 0 1 0 0 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” size = 8192; paged = no; min_write_delay = 4000; max_write_delay = 9000; readback_p1 = 0xff; readback_p2 = 0xff; read = ” 0 0 1 0 0 0 0 0″, ” x x x a12 a11 a10 a9 a8″, ” a7 a6 a5 a4 a3 a2 a1 a0″, ” o o o o o o o o”;
write = ” 0 1 0 0 0 0 0 0″, ” x x x a12 a11 a10 a9 a8″, ” a7 a6 a5 a4 a3 a2 a1 a0″, ” i i i i i i i i”; mode = 0x21; delay = 12; ;
memory “signature” size = 3; read = “0 0 1 0 1 0 0 0 x x x 0 0 0 a1 a0”, “0 0 0 0 0 0 0 0 o o o o o o o o”; ; ; #———————————————————— 然后保存现在就可以烧录AT89S52的单片机了,例如我想烧录放在桌面上的编译好的跑马灯程序,用命令
sudo avrdude -p 8052 -c usbasp -e -U flash:w:’/home/vowstar/桌面/跑马灯.hex’
即可
效果如图:
开发板上的效果:
,刺是与生俱来的,上帝在赐予优越感同时捆-绑的附属品;