avatar_Бандерівець

Программирование микроконтроллеров

Автор Бандерівець, 20-08-2011, 21:51:48

Попередня тема - Наступна тема

0 Користувачі і 2 Гостей дивляться цю тему.

m16

непредсказуемо  поведёт себя программа.  что делает процессор по команде ret - c вершины стэка извлекается два байта (которые процессор понимает как адрес)  и записываются в счётчик команд и по этому адресу передаётся управление .

Игорь

Цитата: m16 від 27-09-2011, 09:40:38
непредсказуемо  поведёт себя программа.... c вершины стэка извлекается два байта ... и по этому адресу передаётся управление .
Спасибо за очередной флажок на минном поле :)
Буду избегать таких ситуаций.
Віриш ти в Бога чи ні, йому байдуже.
Важливо, щоб Бог в тебе вірив, а не навпаки.

m16

также нужно следить за пушами и попами. каждому   PUSH  должен быть свой POP

         call     state
....................
state:      push    r0
             push   r1
.....
             pop     r1
             pop     r0
             ret




ошибка такого рода приведёт к тому что после выполнения подпрограммы регистры r0 и  r1 поменяются значениями
          call     state
....................
state:      push    r0
             push   r1
......
             pop     r0
             pop     r1
             ret



в этом случае (забытый рор) по команде ret в счётчик команд попадёт хзч  , но никак не адрес возврата из пп.  стэк дело тонкое , глаз да глаз нужен
            сall     state
....................
state:      push    r0
             push   r1
.......
             pop     r1
             ret

БандерівецьTopic starter

#168
Растут у меня объемы электроники

Borbos

#169
Кто интересуется программированием на С в интегрированной среде разработки CodeVisionAVR.
Здесь книга с подробным описанием и диск с примерами.
http://rutracker.org/forum/viewtopic.php?t=3383796
Но моё мнение это плохая,хоть и лёгкая в освоении прога.
ɐwʎ ɔ vǝmоɔ dиw

Borbos

А вот это хорошая,но для меня пока сложная в освоении.
IAR Embedded Workbench for AVR32 4.10 Full
http://rutracker.org/forum/viewtopic.php?t=3665783
ɐwʎ ɔ vǝmоɔ dиw

БандерівецьTopic starter

#171
Цитата: Borbos від 30-09-2011, 22:47:36
А вот это хорошая,но для меня пока сложная в освоении.
IAR Embedded Workbench for AVR32 4.10 Full
http://rutracker.org/forum/viewtopic.php?t=3665783
Это evaluation версия, а не full. Full отличается от evaluation наличием исходников всех библиотек.

Вот здесь полная версия http://rutracker.org/forum/viewtopic.php?t=3359408
IAR Embedded Workbench for AVR V5.51.1 Full

БандерівецьTopic starter

#172
Поставил я IAR, ну что сказать, лично я не готов писать хидеры стандартных библиотек CVAVR и avr studio для IAR ради экономии нескольких байт, кроме того я уже не говорю про документацию и исходники. Я уже немного написал кода, пока размер моей проги в памяти atmega32 занимает 3%, компилятор CVAVR, по поводу памяти я пока совсем не парюсь, если что - есть атмега 64 или 128. Заниматься мазохизмом ради экономии нескольких байт это не мое.
Я остаюсь на avr studio.

Borbos

Цитата: vovanxp від 01-10-2011, 14:26:08

Я остаюсь на avr studio.

Мне кажется для начинающих самое то,софт бесплатный,с описанием проблем нет.
ɐwʎ ɔ vǝmоɔ dиw

БандерівецьTopic starter

#174
Поставил avr studio 5, это бомба, с одной анти-мега-бомбой не работает на нем jtag ice clone,

БандерівецьTopic starter

#175
CVAVR я сменил на IAR, спаял JTAG, на видео отладка в IARе

m16

а стрингом сообщение слабо вывести?

БандерівецьTopic starter

Цитата: m16 від 07-10-2011, 11:31:01
а стрингом сообщение слабо вывести?
нет не слабо, не успел еще, я просто хотел показать отладку на камне и свою отладочную систему.

m16

ну шо я могу сказать , с почином коллега

БандерівецьTopic starter

#179
Вот такая проблема появилась

SMF spam blocked by CleanTalk