В общем такая проблема: сабжевый программатор не хочет шить at90s1200. Именно не работает загрузка программы. Если зашиваю по параллельному HV интерфейсу - всё ОК, считывание зашитой программы и вермификация и ч/з параллельный и ч/з последовательный интерфейсы ОК. как это выглядит : [pp232@chaos src]$ avrdude -p 1200 -c bsd -U flash:w:adc_at.hex:i
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x009001 avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed To disable this feature, specify the -D option. avrdude: erasing chip avrdude: reading input file "adc_at.hex" avrdude: writing flash (70 bytes):
Writing | # | 1% 0.00s ***failed; Writing | ## | 4% 0.06s ***failed; Writing | #### | 7% 0.12s ***failed; Writing | ##### | 10% 0.18s ***failed; Writing | ###### | 12% 0.24s ***failed; Writing | ######## | 15% 0.29s ***failed; Writing | ######### | 18% 0.35s ***failed; Writing | ########### | 21% 0.41s ***failed; Writing | ############ | 24% 0.47s ***failed; Writing | ############## | 27% 0.53s ***failed; Writing | ############### | 30% 0.58s ***failed; Writing | ################ | 32% 0.64s ***failed; Writing | ################## | 35% 0.70s ***failed; Writing | ################### | 38% 0.76s ***failed; Writing | ##################### | 41% 0.82s ***failed; Writing | ###################### | 44% 0.87s ***failed; Writing | ######################## | 47% 0.93s ***failed; Writing | ######################### | 50% 0.99s ***failed; Writing | ########################## | 52% 1.05s ***failed; Writing | ############################ | 55% 1.11s ***failed; Writing | ############################# | 58% 1.16s ***failed; Writing | ############################### | 61% 1.22s ***failed; Writing | ################################ | 64% 1.28s ***failed; Writing | ################################## | 67% 1.34s ***failed; Writing | ################################### | 70% 1.40s ***failed; Writing | ###################################### | 75% 1.46s ***failed; Writing | ######################################### | 81% 1.52s ***failed; Writing | ########################################## | 84% 1.58s ***failed; Writing | ############################################ | 87% 1.64s ***failed; Writing | ############################################# | 90% 1.69s ***failed; Writing | ################################################ | 95% 1.75s ***failed; Writing | ################################################# | 98% 1.81s ***failed; Writing | ################################################## | 100% 1.87s
avrdude: 70 bytes of flash written avrdude: verifying flash memory against adc_at.hex: avrdude: load data flash data from input file adc_at.hex: avrdude: input file adc_at.hex contains 70 bytes avrdude: reading on-chip flash data:
Reading | ################################################## | 100% 0.02s
avrdude: verifying ... avrdude: verification error, first mismatch at byte 0x0001 0xc0 != 0x00 avrdude: verification error; content mismatch
avrdude done. Thank you.
чтение показывает, что каждый чётный байт записывается неправильно. Если записывать однородные файлы (типа 256 раз подряд 0xc0 - да любое одинаковое значение) - то запись ОК, если записывать по порядку возрастающие байты от 0 до 0xff - то опять каждый чётный байт записывается неверно.
Такая заморочка только с at90s1200, шью этой же прогой 8-ю atmeg'у без проблем. Кто-нить сталкивался с такой проблемой ?
|