Обсуждаем контроллеры компании Atmel.
Ответить

Как пошагово проверить написанное... Среда CodeVisionAVR.

Сб янв 04, 2014 15:21:05

Здравствуйте.
Подскажите по русски на примере простой программы, как пошагово-построчно по коду проверить написанную программу.
Вот например на таком примере, я написал программу мигания светодиодом

Код:
/*****************************************************

Chip type               : ATtiny13
AVR Core Clock frequency: 9,600000 MHz
*****************************************************/

#include <tiny13.h>

#include <delay.h>
unsigned char i=0;

void main(void)
{

#pragma optsize-
CLKPR=0x80;
CLKPR=0x00;
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif

PORTB=0x00;
DDRB=0x03;



while (1)
      {
                PORTB.0=1;

                delay_ms(200);

                PORTB.0=0;

                delay_ms(200);
//
                if(++i==10) while (PINB.0==0){ delay_ms(50); }; // здесь произойдет затык  (строку написал для примера, если как-бы я совершил ошибку в программе)

      }
}


Что получится ..... Компиляция программы ОК! . Протеус покажет ОК, но программа остановится на моей ошибке.

Вот не пойму как вы все, в этих отладчиках можете увидеть, я так понимаю это должен быть Atmel Studio или AVR Studio .

К сожалению даже на таком простом уровне , без русского языка, мне там ничего не понятно.
Последний раз редактировалось Aмstroн Сб янв 04, 2014 18:23:23, всего редактировалось 1 раз.

Re: Как пошагово проверить написанное... Среда CodeVision

Сб янв 04, 2014 16:06:43

В протеусе то и можно пошагово смотреть за каждой командой.

Re: Как пошагово проверить написанное... Среда CodeVision

Сб янв 04, 2014 16:19:44

О, это было бы дело, протеус у меня 7.10 русифицирован, теперь бы только узнать какую настройку там активировать, и какой тип файла он тестирует .НЕХ?

Re: Как пошагово проверить написанное... Среда CodeVision

Сб янв 04, 2014 16:31:13

В свойства МК вставляй не .НЕХ файл, а файл .ELF, тогда появляется возможность открыть окно SOURCE CODE, и пожалуйста кнопками F10 и F11 прогоняй программу в пошаговом режиме.

Re: Как пошагово проверить написанное... Среда CodeVision

Сб янв 04, 2014 16:41:58

Опять я ..., у меня такой не делается
СпойлерИзображение


Только COF OBJ ROM

Re: Как пошагово проверить написанное... Среда CodeVision

Сб янв 04, 2014 16:48:34

Тогда .OBJ, Странно, я думал ОБЖ в асме, а ЕЛЬФ в Си, а у вас получается ОБЖ в Си.

Re: Как пошагово проверить написанное... Среда CodeVision

Сб янв 04, 2014 17:15:21

Что то, у меня тут опять не хватает
СпойлерИзображение

Re: Как пошагово проверить написанное... Среда CodeVision

Сб янв 04, 2014 17:25:19

Он пишет, что из твоего кода еще ни одна строка не начала работать. Просто запусти симуляцию, а потом нажми паузу и увидишь в каком месте она остановится, потом ставишь брекпоинт в нужном месте проги, потом останавливаешь симуляцию и включаешь её опять, программа остановится на твоём брекпоинте, отсюда можно уже пошагово прогонять.

Re: Как пошагово проверить написанное... Среда CodeVision

Сб янв 04, 2014 18:18:13

Ниче не получается , к сообщению прикрепил исходник и проект в протеусе с этим простым примером.
Может у меня не установлены какие то дополнительные модули?
Попробуйте пожалуйста с моего проекта произвести отладку...
Вложения
Zatyk_SP.rar
(32.18 KiB) Скачиваний: 106

Re: Как пошагово проверить написанное... Среда CodeVision

Сб янв 04, 2014 18:45:39

Aмstroн писал(а):Ниче не получается

1. Используйте *.cof файл.
2. Запустите симуляцию.
3. Нажмите паузу.
4. Если не появится листинг, вверху окна AVR Source Code выберите Ваш файл *.c. Вариант второй, нажмите F11, программа сделает один шаг и остановится уже в листинге.
---
Паузу можно нажать даже до запуска симуляции. То есть п.2 пропустить.

Re: Как пошагово проверить написанное... Среда CodeVision

Сб янв 04, 2014 18:55:13

Вставил КОФ файл, все работает:
Изображение

Re: Как пошагово проверить написанное... Среда CodeVision

Сб янв 04, 2014 22:15:22

Спасибо c *.cof файлом все работает.
Ответить