Jump to content

Александр-ovcf-55

Members
  • Content Count

    170
  • Joined

  • Last visited

Community Reputation

-5 Плохой

About Александр-ovcf-55

  • Rank
    Осваивающийся
  • Birthday 04/24/1991

Информация

  • Пол
    Мужчина
  • Город
    Омск

Электроника

  • Стаж в электронике
    3-5 лет
  • Оборудование
    Мультиметр EM3205, Паяльная станция Lukey 852, Топор.

Recent Profile Visitors

1248 profile views
  1. Проверил твою прошивку. Тоже не мыргает. К сожалению нет под рукой. Но вообще есть такая вероятность ? От внешнего кварца тоже не работает.
  2. Injector_check_V1.0.elf: file format elf32-avr Sections: Idx Name Size VMA LMA File off Algn 0 .text 000000a0 00000000 00000000 00000054 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE 1 .comment 00000030 00000000 00000000 000000f4 2**0 CONTENTS, READONLY 2 .debug_aranges 00000020 00000000 00000000 00000124 2**0 CONTENTS, READONLY, DEBUGGING 3 .debug_info 00000145 00000000 00000000 00000144 2**0 CONTENTS, READONLY, DEBUGGING 4 .debug_abbrev 000000d3 00000000 00000000 00000289 2**0 CONTENTS, READONLY, DEBUGGING 5 .debug_line 00000150 00000000 00000000 0000035c 2**0 CONTENTS, READONLY, DEBUGGING 6 .debug_frame 00000024 00000000 00000000 000004ac 2**2 CONTENTS, READONLY, DEBUGGING 7 .debug_str 0000018c 00000000 00000000 000004d0 2**0 CONTENTS, READONLY, DEBUGGING 8 .debug_ranges 00000010 00000000 00000000 0000065c 2**0 CONTENTS, READONLY, DEBUGGING Disassembly of section .text: 00000000 <__vectors>: 0: 0c 94 2a 00 jmp 0x54 ; 0x54 <__ctors_end> 4: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 8: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> c: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 10: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 14: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 18: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 1c: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 20: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 24: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 28: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 2c: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 30: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 34: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 38: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 3c: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 40: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 44: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 48: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 4c: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 50: 0c 94 34 00 jmp 0x68 ; 0x68 <__bad_interrupt> 00000054 <__ctors_end>: 54: 11 24 eor r1, r1 56: 1f be out 0x3f, r1 ; 63 58: cf e5 ldi r28, 0x5F ; 95 5a: d4 e0 ldi r29, 0x04 ; 4 5c: de bf out 0x3e, r29 ; 62 5e: cd bf out 0x3d, r28 ; 61 60: 0e 94 36 00 call 0x6c ; 0x6c <main> 64: 0c 94 4e 00 jmp 0x9c ; 0x9c <_exit> 00000068 <__bad_interrupt>: 68: 0c 94 00 00 jmp 0 ; 0x0 <__vectors> 0000006c <main>: #include <avr/io.h> #include <util/delay.h> int main(void) { DDRD = 0xFF; 6c: 8f ef ldi r24, 0xFF ; 255 6e: 81 bb out 0x11, r24 ; 17 PORTD = 0b00000000; 70: 12 ba out 0x12, r1 ; 18 while(1) { PORTD |= (1<<(PORTD0)); 72: 90 9a sbi 0x12, 0 ; 18 #else //round up by default __ticks_dc = (uint32_t)(ceil(fabs(__tmp))); #endif __builtin_avr_delay_cycles(__ticks_dc); 74: 2f ef ldi r18, 0xFF ; 255 76: 84 e3 ldi r24, 0x34 ; 52 78: 9c e0 ldi r25, 0x0C ; 12 7a: 21 50 subi r18, 0x01 ; 1 7c: 80 40 sbci r24, 0x00 ; 0 7e: 90 40 sbci r25, 0x00 ; 0 80: e1 f7 brne .-8 ; 0x7a <main+0xe> 82: 00 c0 rjmp .+0 ; 0x84 <main+0x18> 84: 00 00 nop _delay_ms(500); PORTD &= ~(1<<(PORTD0)); 86: 90 98 cbi 0x12, 0 ; 18 88: 2f ef ldi r18, 0xFF ; 255 8a: 84 e3 ldi r24, 0x34 ; 52 8c: 9c e0 ldi r25, 0x0C ; 12 8e: 21 50 subi r18, 0x01 ; 1 90: 80 40 sbci r24, 0x00 ; 0 92: 90 40 sbci r25, 0x00 ; 0 94: e1 f7 brne .-8 ; 0x8e <main+0x22> 96: 00 c0 rjmp .+0 ; 0x98 <main+0x2c> 98: 00 00 nop 9a: eb cf rjmp .-42 ; 0x72 <main+0x6> 0000009c <_exit>: 9c: f8 94 cli 0000009e <__stop_program>: 9e: ff cf rjmp .-2 ; 0x9e <__stop_program>
  3. Кстати да сейчас попробую. Может действительно где-то битая область памяти. Ну чтож ты так. Я конечно только начинаю все это осваивать, но не совсем лопата же. Связался с автором уроков по которым учусь программировать МК http://narodstream.ru/programmirovanie-mk-avr/ Но мы и вместе не смогли разобраться в чем тут проблема. Просто выкинуть МК и взять новый, это будет означать лишить себя полезного опыта (вот я вчера до 3 ночи и просидел пытаясь что то набыдлокодить. программы работают но только попадается что то с задержкой и все на этом программа сыпется.)
  4. Не помогло. Знать бы еще что ...
  5. Этот код мне показал что именно с задержкой не хочет работать мой МК. Дребезг был заглушен задержкой 50мс. НИЧЕГО НЕ РАБОТАЛО. Как только закоментил задержку все начала работать как положено. (Да из за ддддребезга кнопки иногда перескакивают зачения НО ВСЕ РАБОТАЕТ) Чешу репу что с задержкой ? #define F_CPU 8000000UL #include <avr/io.h> //#include <util/delay.h> int main() { DDRD = 0; DDRC = 255; PORTD = 255; while(1) { if (!(PIND & 1)) { //_delay_ms(50); if (!(PIND & 1)) { PORTC++; while(!(PIND & 1)); } } } }
  6. Там монтажа особо та и нет. меага в каретке пины выведены. питание подцнплено обе земли и AVCC чере дроссель. и кварц на джамперах. кварц сейчас отключен. монтаж проверил все четко. ресет подтяну 10к. кнопку ресета подпаял сейчас проверим.
  7. Спасибо друг. подключено все хорошо. контакт надежный. тактируя от кварца тоже не мигает. фьюзы прошиты правильно. Видимо контроллер покойный.
  8. #ifndef F_CPU #define F_CPU 8000000UL #endif #include <avr/io.h> #include <util/delay.h> int main(void) { DDRC = 0b00000001; while(1) { PORTC = 0b00000001; _delay_ms(500); PORTC = 0b00000000; _delay_ms(500); } } //Так тоже не мигает. Подкидываю .hex если кому интересно. Injector_check_V1.0.hex
  9. Все когда то учились. Вот. Injector_check_V1.0.hex Так уже и код тупо слизан с сайта. И хозяин этого сайти написал что все у меня с кодом норм. И фьюзы он посмотрел. говорит все должно моргать. А оно не моргает. Прошивки в которых не использую задержки работают. Но без задержек на одних таймерах далеко не уедешь. И мне сейчас нужно именно с задержками а не по прерываниям маргать диодом. Может МК кривой ? с китая все таки. Но другого у меня нет. И сейчас купить не могу. В командировке далеко от города. Тут магазинов нет. Надо как то этот или добить или разобраться. Да и опыт полезен.
  10. Тупанул при копировании. Короче в дном куске задержки не закомментил =)) Сори косяк. С фьюзами косанул =)) Пришлось воткнуть. Сейчас все сделал от внутреннего на 8МГц.. Скинул фотку фьюзов. Хз. я не волшебник только учусь. Пдскажи исходя из скрина. Так они стоят сейчас у меня ATmega16A
  11. Программа точно рабочая. Хелло ворд все таки.
  12. Нет не странно. Протеус это программа а мега реальная железка. Протеус и НЕ555 не правильно симулирует. не исключаю что и библиотеку. к примеру симуляция в авр студио тоже не работает. а при попытке прошагать программу заходит в библиотеку и там колом встает на строчке __builtin_avr_delay_cycles(__ticks_dc);
  13. Разобрался с фьюзами они точно теперь выставлены верно. И железку проверил она тоже исправна. RESET на + подтянут. Закомментировал временные задержки. Если так PORTD = 0x00; //_delay_ms(500); PORTD = 0xFF; //_delay_ms(500); то светодиод горит. Это ИМХО он очень быстро включается. Если так PORTD = 0x00; //_delay_ms(500); PORTD = 0xFF; //_delay_ms(500); то он не горит. Получается что программа не работает с библиотекой delay.
  14. Забыл отписаться. Все заработало именно селектор и подох. Заменили выдрав с донора.
  15. Всем добрый день. Проблема в следующем. Собрал устройство написал программу запустил не работает. Дернул МК мега 16 и решил на нем поморгать диодом. Все подключил кварц на 8. Фьюзы настыкал на работу от кварца. Написал мигалку на Си с билибитекой #include <util/delay.h> . Запускаю в протеусе все работает, запускаю на реальном МК светодиод тупо горит. В чем может быть проблема ? #define F_CPU 8000000 #include <avr/io.h> #include <util/delay.h> int main(void) { DDRD = 0xFF; PORTD = 0b00000000; while(1) { PORTD = 0b00000001; _delay_ms(5000); PORTD = 0b00000000; _delay_ms(5000); } }
×
×
  • Create New...