Jump to content

TwisT

Members
  • Content Count

    10
  • Joined

  • Last visited

Community Reputation

0 Обычный

About TwisT

  • Rank
    Новенький
  1. wowa, спасибо за помощь, разобрался, всё работает =) Правда пока что только с AT90S8535, в ATmega надо с сторожевым таймером разобраться (я так думаю), ибо выполнение программы прекращается на первом же _delay_ms()... Если будут ещё вопросы - отпишусь тут
  2. Собрал тестовую схемку с AT90S8535 на макетной плате, подключил к программатору и начал щупать... В аттаче - фото сигналов на ножке PB7 (SCK) и PB5 (MISO). На MOSI тоже что то подобное (как и должно быть). Т.е. порт вроде жив Меня насторожило, что нету ничего на XTAL1 и 2, хотя туда подключен кварц на 8МГц и пара кондёров (всё по даташиту). К тому же, вообще не меняется уровень на RESET (всегда 0 В). Есть идеи, что это может значить? avrdude запускал с ключами "-p 8535 -c stk200 -t -F", при фотографировании осциллограмм выполнял команду "dump flash 0 4096".
  3. Нет, внешний генератор не подключался (да и нету его под руками ). МК работал от встроенного осциллятора. Я в avrdude несколько раз подряд выполнял команду dump flash 0 4096, смотрел на эти случайные данные. В один прекрасный момент начали считываться одни лишь 0xFF. После перезапуска avrdude уже не увидел МК (device not responding). Остальные проги тоже не видят Сейчас на макетке распаиваю колодку для другого МК, попробую с ним, по подробнее опишу симптомы, пощупаю сигналы, попробую на другом компе, если опять ничего не заработает...
  4. Что то мой МК вообще перестал отвечать =\ Читаю одни 0xFF... Как можно выяснить, что накрылось - порт, программатор или сам МК? Буду очень благодарен, если кто то подробно обьяснит, куда копать =)
  5. О, спасибо за совет, скорее всего действительно проблемы с частотой SPI. Сейчас буду пробовать. В avreal она задаётся ключом -o. Не подскажите, как это в avrdude сделать? В описании параметров командной строки на оф. сайте нашёл вот что: Как узнать, чему равна частота встроенного осциллятора (для МК ATmega8535)? В даташите что то не нашёл. И почему период 1 мкс (1 МГц) годится для работы с МК, работающем на частоте 4 МГц?
  6. Приветствую радиолюбителей! Недавно начал осваивать микроконтроллеры, собрал программатор STK200/300 по этой схеме. Для тестирования на отдельную макетную плату кинул ATmega8535, подключил всё это дело к компу, запускаю avrdude - и начинаются непонятные вещи. При чтении одинаковых участков кода каждый раз получаю разные данные О_о Хотел сначала списать это на влияние различных наводок на неэкранированные участки проводов, но 1) назвать получаемые с МК данные совсем уж рандомными не могу, да и сигнатура контроллера верная. 2) провода передачи данных на шлейфе, как и положено, чередуются с "землянными", что по идее увеличивает помехозащищенность шлейфа. Вот вывод avrdude - невооружённым глазом видны различия в одних и тех же участках кода после повторных считываний. Стирание и запись не работает. Да и fuse самопроизвольно меняются... twister@linux03 ~ # avrdude -p m8535 -c stk200 -t avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.00s avrdude: Device signature = 0x1e9308 avrdude> dump eeprom 0 200 >>> dump eeprom 0 200 0000 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f |......... ..| 0010 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f |................| 0020 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f | !"#$%&'()*+,-./| 0030 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f |0123456789:;<=>?| 0040 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f |@ABCDEFGHIJKLMNO| 0050 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f |PQRSTUVWXYZ[\]^_| 0060 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f |`abcdefghijklmno| 0070 70 71 72 73 74 75 76 77 78 79 7a 7b 7c 7d 7e 7f |pqrstuvwxyz{|}~.| 0080 80 81 82 83 84 85 86 87 88 89 8a 8b 8c 8d 8e 8f |................| 0090 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d 9e 9f |................| 00a0 a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af |................| 00b0 b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf |................| 00c0 c0 c1 c2 c3 c4 c5 fe ff |........ | avrdude> erase eeprom >>> erase eeprom avrdude: erasing chip avrdude> dump eeprom 0 200 >>> dump eeprom 0 200 0000 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f |......... ..| 0010 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f |................| 0020 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f | !"#$%&'()*+,-./| 0030 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f |0123456789:;<=>?| 0040 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f |@ABCDEFGHIJKLMNO| 0050 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f |PQRSTUVWXYZ[\]^_| 0060 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f |`abcdefghijklmno| 0070 70 71 72 73 74 75 76 77 78 79 7a 7b 7c 7d 7e 7f |pqrstuvwxyz{|}~.| 0080 80 81 82 83 84 85 86 87 88 89 8a 8b 8c 8d 8e 8f |................| 0090 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d 9e 9f |................| 00a0 a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af |................| 00b0 b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf |................| 00c0 c0 c1 c2 c3 c4 c5 c6 c7 |........ | avrdude> dump flash 0 200 >>> dump flash 0 200 0000 00 00 01 01 02 02 03 03 04 04 05 05 06 06 07 07 |................| 0010 08 08 09 09 0a 0a 0b 0b 0c 0c 0d 0d 0e 0e 0f 0f |.. ....| 0020 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 |................| 0030 18 18 19 19 1a 1a 1b 1b 1c 1c 1d 1d 1e 1e 1f 1f |................| 0040 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 | !!""##$$%%&&''| 0050 28 28 29 29 2a 2a 2b 2b 2c 2c 2d 2d 2e 2e 2f 2f |(())**++,,--..//| 0060 30 30 31 31 32 32 33 33 34 34 35 35 36 36 37 37 |0011223344556677| 0070 38 38 39 39 3a 3a 3b 3b 3c 3c 3d 3d 3e 3e 3f 3f |8899::;;<<==>>??| 0080 40 40 41 41 42 42 43 43 44 44 45 45 46 46 47 47 |@@AABBCCDDEEFFGG| 0090 48 48 49 49 4a 4a 4b 4b 4c 4c 4d 4d 4e 4e 4f 4f |HHIIJJKKLLMMNNOO| 00a0 50 50 51 51 52 52 53 53 54 54 55 55 56 56 57 57 |PPQQRRSSTTUUVVWW| 00b0 58 58 59 59 5a 5a 5b 5b 5c 5c 5d 5d 5e 5e 5f 5f |XXYYZZ[[\\]]^^__| 00c0 60 60 61 61 62 62 63 63 |``aabbcc | avrdude> erase flash >>> erase flash avrdude: erasing chip avrdude> dump flash 0 200 >>> dump flash 0 200 0000 00 00 01 01 02 02 03 03 04 04 05 05 06 06 07 07 |................| 0010 08 08 09 09 0a 0a 0b 0b 0c 0c 0d 0d 0e 0e 0f 0f |.. ....| 0020 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 |................| 0030 18 18 19 19 1a 1a 1b 1b 1c 1c 1d 1d 1e 1e 1f 1f |................| 0040 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 | !!""##$$%%&&''| 0050 28 28 29 29 2a 2a 2b 2b 2c 2c 2d 2d 2e 2e 2f 2f |(())**++,,--..//| 0060 30 30 31 31 32 32 33 33 34 34 35 35 36 36 37 37 |0011223344556677| 0070 38 38 39 39 3a 3a 3b 3b 3c 3c 3d 3d 3e 3e 3f 3f |8899::;;<<==>>??| 0080 40 40 41 41 42 42 43 43 44 44 45 45 46 46 47 47 |@@AABBCCDDEEFFGG| 0090 48 48 49 49 4a 4a 4b 4b 4c 4c 4d 4d 4e 4e 4f 4f |HHIIJJKKLLMMNNOO| 00a0 50 50 51 51 52 52 53 53 54 54 55 55 56 56 57 57 |PPQQRRSSTTUUVVWW| 00b0 58 58 59 59 5a 5a 5b 5b 5c 5c 5d 5d 5e 5e 5f 5f |XXYYZZ[[\\]]^^__| 00c0 60 60 61 61 62 62 63 63 |``aabbcc | avrdude> write flash 65 43 32 32 >>> write flash 65 43 32 32 avrdude (write): error writing 0x2b at 0x00041 cell=0x20 avrdude (write): error writing 0x20 at 0x00042 cell=0x21 avrdude (write): error writing 0x20 at 0x00043 cell=0x21 avrdude> dump flash 0 200 >>> dump flash 0 200 0000 00 70 01 7f 02 7f 03 7f 04 7f 05 7f 06 7f 07 7f |.p..............| 0010 08 7f 09 7f 0a 70 0b 70 0c 70 0d 70 0e 70 0f 70 |.. . p p p p.p.p| 0020 10 70 11 70 12 70 13 70 14 70 15 70 16 70 17 70 |.p.p.p.p.p.p.p.p| 0030 18 70 19 70 1a 70 1b 70 1c 70 1d 70 1e 70 1f 70 |.p.p.p.p.p.p.p.p| 0040 20 70 21 70 22 70 23 70 24 70 25 70 26 70 27 70 | p!p"p#p$p%p&p'p| 0050 28 70 29 70 2a 70 2b 70 2c 70 2d 70 2e 70 2f 70 |(p)p*p+p,p-p.p/p| 0060 30 70 31 70 32 70 33 70 34 70 35 70 36 70 37 70 |0p1p2p3p4p5p6p7p| 0070 38 70 39 70 3a 70 3b 70 3c 70 3d 70 3e 70 3f 70 |8p9p:p;p<p=p>p?p| 0080 40 70 41 70 42 70 43 70 44 70 45 70 46 70 47 70 |@pApBpCpDpEpFpGp| 0090 48 70 49 70 4a 70 4b 70 4c 70 4d 70 4e 70 4f 70 |HpIpJpKpLpMpNpOp| 00a0 50 70 51 70 52 70 53 70 54 70 55 70 56 70 57 70 |PpQpRpSpTpUpVpWp| 00b0 58 70 59 70 5a 70 5b 70 5c 70 5d 70 5e 70 5f 70 |XpYpZp[p\p]p^p_p| 00c0 60 70 61 70 62 70 63 70 |`papbpcp | avrdude> dump flash 0 200 >>> dump flash 0 200 0000 00 70 01 70 02 70 03 70 04 70 05 70 06 70 07 70 |.p.p.p.p.p.p.p.p| 0010 08 70 09 70 0a 70 0b 70 0c 70 0d 70 0e 70 0f 70 |.p p p p p p.p.p| 0020 10 70 11 70 12 70 13 70 14 70 15 70 16 70 17 70 |.p.p.p.p.p.p.p.p| 0030 18 70 19 70 1a 70 1b 70 1c 70 1d 70 1e 70 1f 70 |.p.p.p.p.p.p.p.p| 0040 20 70 21 70 22 70 23 70 24 70 25 70 26 70 27 70 | p!p"p#p$p%p&p'p| 0050 28 70 29 70 2a 70 2b 70 2c 70 2d 70 2e 70 2f 70 |(p)p*p+p,p-p.p/p| 0060 30 70 31 70 32 70 33 70 34 70 35 70 36 70 37 70 |0p1p2p3p4p5p6p7p| 0070 38 70 39 70 3a 70 3b 70 3c 70 3d 70 3e 70 3f 70 |8p9p:p;p<p=p>p?p| 0080 40 70 41 70 42 70 43 70 44 70 45 70 46 70 47 70 |@pApBpCpDpEpFpGp| 0090 48 70 49 70 4a 70 4b 70 4c 70 4d 70 4e 70 4f 70 |HpIpJpKpLpMpNpOp| 00a0 50 70 51 70 52 70 53 70 54 70 55 70 56 70 57 70 |PpQpRpSpTpUpVpWp| 00b0 58 70 59 70 5a 70 5b 70 5c 70 5d 70 5e 70 5f 70 |XpYpZp[p\p]p^p_p| 00c0 60 70 61 70 62 70 63 70 |`papbpcp | avrdude> dump flash 0 200 >>> dump flash 0 200 0000 00 00 01 01 02 02 03 03 04 04 05 05 06 06 07 07 |................| 0010 08 08 09 09 0a 0a 0b 0b 0c 0c 0d 0d 0e 0e 0f 0f |.. ....| 0020 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 |................| 0030 18 18 19 19 1a 1a 1b 1b 1c 1c 1d 1d 1e 1e 1f 1f |................| 0040 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 | !!""##$$%%&&''| 0050 28 28 29 29 2a 2a 2b 2b 2c 2c 2d 2d 2e 2e 2f 2f |(())**++,,--..//| 0060 30 30 31 31 32 32 33 33 34 34 35 35 36 36 37 37 |0011223344556677| 0070 38 38 39 39 3a 3a 3b 3b 3c 3c 3d 3d 3e 3e 3f 3f |8899::;;<<==>>??| 0080 40 40 41 41 42 42 43 43 44 44 45 45 46 46 47 47 |@@AABBCCDDEEFFGG| 0090 48 48 49 49 4a 4a 4b 4b 4c 4c 4d 4d 4e 4e 4f 4f |HHIIJJKKLLMMNNOO| 00a0 50 50 51 51 52 52 53 53 54 54 55 55 56 56 57 57 |PPQQRRSSTTUUVVWW| 00b0 58 58 59 59 5a 5a 5b 5b 5c 5c 5d 5d 5e 5e 5f 5f |XXYYZZ[[\\]]^^__| 00c0 60 60 61 61 62 62 63 63 |``aabbcc | avrdude> dump flash 0 200 >>> dump flash 0 200 0000 00 3f 01 3f 02 3f 03 3f 04 3f 05 3f 06 3f 07 3f |.?.?.?.?.?.?.?.?| 0010 08 3f 09 3f 0a 3f 0b 3f 0c 3f 0d 3f 0e 3f 0f 3f |.? ? ? ? ? ?.?.?| 0020 10 3f 11 3f 12 3f 13 3f 14 3f 15 3f 16 3f 17 3f |.?.?.?.?.?.?.?.?| 0030 18 00 19 3f 1a 3f 1b 3f 1c 3f 1d 3f 1e 3f 1f 3f |...?.?.?.?.?.?.?| 0040 20 00 21 3f 22 3f 23 3f 24 3f 25 3f 26 3f 27 3f | .!?"?#?$?%?&?'?| 0050 28 00 29 3f 2a 3f 2b 3f 2c 3f 2d 3f 2e 3f 2f 3f |(.)?*?+?,?-?.?/?| 0060 30 3f 31 3f 32 3f 33 3f 34 3f 35 3f 36 3f 37 3f |0?1?2?3?4?5?6?7?| 0070 38 10 39 3f 3a 3f 3b 3f 3c 3f 3d 3f 3e 3f 3f 3f |8.9?:?;?<?=?>???| 0080 40 40 41 7f 42 7f 43 7f 44 7f 45 7f 46 7f 47 7f |@@A.B.C.D.E.F.G.| 0090 48 7f 49 7f 4a 7f 4b 7f 4c 7f 4d 7f 4e 7f 4f 7f |H.I.J.K.L.M.N.O.| 00a0 50 7f 51 7f 52 7f 53 7f 54 7f 55 7f 56 7f 57 7f |P.Q.R.S.T.U.V.W.| 00b0 58 40 59 7f 5a 7f 5b 7f 5c 7f 5d 7f 5e 7f 5f 7f |X@Y.Z.[.\.].^._.| 00c0 60 7f 61 7f 62 7f 63 7f |`.a.b.c. | avrdude> quit >>> quit avrdude: safemode: lfuse changed! Was e1, and is now 7f Would you like this fuse to be changed back? [y/n] y avrdude: safemode: and is now rescued avrdude: safemode: hfuse changed! Was d9, and is now 0 Would you like this fuse to be changed back? [y/n] y avrdude: safemode: and is now rescued avrdude: safemode: Fuses OK avrdude done. Thank you. Попробовал записать программу (на этот раз avreal'ом) - результат тот же. tfsoft-3 avr # ./avreal-126r0 -p/dev/parport0 -as +ATMEGA8535 -w /mnt/pub/twist/avr/avr01/main.hex -% -v avreal/LINUX - AVR controllers LPT programmer by Redchuk Alexandr v1.26rev0 (Jul 10 2008 17:50:25) [url="http://www.ln.ua/~real/avreal"]http://www.ln.ua/~real/avreal[/url] bug-reports, suggestions and so on mail to avreal@real.kiev.ua Command: -p/dev/parport0 -as +ATMEGA8535 -w /mnt/pub/twist/avr/avr01/main.hex -% -v % Parallel port `/dev/parport0' found, ioctl interface activated % assume that LPT data writes not faster then 1uS % Atmel adapter for STK*00 found % STK mode % osc = 800kHz -> setup=3, hold=3,2 % Reset % PgmOn reply FF FE 53 00 % Synchronised after 1 try % GetID reply 00 30 00 1E % GetID reply 00 30 00 93 % GetID reply 00 30 00 08 % Read ID: 0x1E9308 Device connected, MEGA8535 detected % ReadLock command 58 00 00 00 % ReadLock reply 00 58 00 FF Chip not locked % ReadOsccal command 38 00 00 00 % ReadOsccal reply 00 38 00 B1 % ReadOsccal command 38 00 01 00 % ReadOsccal reply 00 38 00 B2 % ReadOsccal command 38 00 02 00 % ReadOsccal reply 00 38 00 A8 % ReadOsccal command 38 00 03 00 % ReadOsccal reply 00 38 00 AB % ReadFuses command 50 00 00 00 % ReadFuses reply 00 50 00 E1 % ReadFuses command 58 00 00 00 % ReadFuses reply 00 58 00 FF % ReadFuses command 58 08 00 00 % ReadFuses reply 00 58 08 82 Fuses OSCCALs = B1 B2 A8 AB BODLEVEL = 1 BODEN = 1 SUT = 2 CKSEL = 1 BLB1 = 3 BLB0 = 3 S8535C = 1 WDTON = 0 CKOPT = 0 EESAVE = 0 BOOTSZ = 1 BOOTRST = 0 Programming CODE memory done Verifying CODE memory % 00000000: expected 14, read 00 % 00000001: expected C0, read 00 % 00000002: expected 2D, read 01 ... % 00000079: expected F7, read 3C % 0000007A: expected F7, read 3D % 0000007B: expected CF, read 3D failed, 124 errors done Reset pin released Adapter disabled Прилагаю фотку получившегося устройства (на макетке два контроллера, к программатору подключен только ATmega8535, второй - AT90S8535 - отключен полностью). Помогите пожалуйста разобраться в этой проблеме. Заранее спасибо за любую помощь.
  7. Проще тумблер с двумя парами контактов поставить Одни отрубают нагрузку, другие - питание БП. Можно и два отдельных тумблера, но тогда можно и забыть отключить нагрузку в первую очередь...
  8. И в журнале и на сайте опечатка, а никто не заметил? Сейчас повпаиваю транзисторы обратно, попробую поменять номинал...
  9. Спасибо! Небольшой вопрос - можно ли для питания интегральных стабилизаторов использовать накальный трансформатор с двумя последовательно соединенными обмотками по 6.3 В? В наличии имеется только такой...
  10. Извиняюсь за поднятие старой темы, но меня интересует вопрос - собирал ли кто нибудь именно этот вариант схемы с опубликованной там печатной платой. Я собрал, но напряжение на выходе = напряжению на входе, ничего не регулируется По ссылке Andrey Z по большей части обсуждаются другие конструкции БП, а в журнале "Радио" отличия в схеме довольно значительные, печатку надо будет переделывать...
×
×
  • Create New...