реклама на сайте
подробности

 
 
> Помогите моргнуть лампочкой
Slev
сообщение Oct 20 2009, 08:53
Сообщение #1





Группа: Участник
Сообщений: 6
Регистрация: 18-09-09
Пользователь №: 52 449



Эта супер-программа должна моргать лампочкой со скважностью ~0,5 сек.
Собираю всё в EWB 3.21, шью - PonyProg2000.
Не получается заставить её работать в верхних 4 кб mega128.
Во фьюзах ставлю галочки у BOOTRST и BOOTSZ1.
Подправил адреса в xcl-файле (с 1F000 ).

Подскажите где я промахнулся...

Код
#include <iom128.h>
#include <ina90.h>
//-------------------------------------------------------
void main(void)
{
long t=0;
  
  __disable_interrupt();
  
   MCUCR=(1<<IVCE);MCUCR=(1<<IVSEL);

  PORTG = 0xff;
  DDRG |= 0x08;

  __enable_interrupt();
          
  while(1){    
    if(t++ > 100000){
      PORTG ^= 0x08;
      t=0;
    }
  }
}
//--------------------------------------------------------

Проект также прилагается.
Прикрепленные файлы
Прикрепленный файл  Micro.rar ( 16.14 килобайт ) Кол-во скачиваний: 24
 
Go to the top of the page
 
+Quote Post
2 страниц V  < 1 2  
Start new topic
Ответов (15 - 21)
Slev
сообщение Oct 21 2009, 09:39
Сообщение #16





Группа: Участник
Сообщений: 6
Регистрация: 18-09-09
Пользователь №: 52 449



memphis, твоя прошивка работает !

А в чём ты собираешь? Можно посмотреть получившийся листинг и map-файл?

Может это у меня из-за старого иара...

Или в настройках проекта я что-то не то делаю...
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Oct 21 2009, 09:46
Сообщение #17


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(Slev @ Oct 21 2009, 12:39) *
Может это у меня из-за старого иара...

Или в настройках проекта я что-то не то делаю...
Так загрузите ваш HEX в студию, поставьте галочку "стартовать из бут-области", укажите адрес начала этой области и пройдите в дизассемблере по шагам. Сразу все и увидите.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Oct 21 2009, 09:57
Сообщение #18


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(Slev @ Oct 21 2009, 12:39) *
memphis, твоя прошивка работает !


IAR AVR 5.10A/W32 (5.10.1.5)
Уже больше года как пользуюсь им.

К сожалению скинуть фйлы не могу (создавал их путём коментирования кусков основного проекта).
Могу скинуть полный файл настройки линкера и советую обновить иар (если обновите до версии ewavr-ev-web-510A могу помочь сделать его здоровым).
Также можно покопаться в настройках вашего линкера или проекта вцелом - разгадка гдето там....
Go to the top of the page
 
+Quote Post
Slev
сообщение Oct 21 2009, 10:22
Сообщение #19





Группа: Участник
Сообщений: 6
Регистрация: 18-09-09
Пользователь №: 52 449



И ещё, самый первый вектор у нас разный: у меня 0С 94 70 F8, у тебя 00 0С 94 78 F8!

Самое интересное: просто изменил в своей прошивке 70 на 78 и ... лампочка заморгала!!!

По адресу F870 (1F0E0) у меня лежит C_STARTUP, по адресу F878 (1F0F0) - cstartup_call_main

Может со стартапом чего-то не то?

Цитата(mempfis_ @ Oct 21 2009, 13:57) *
К сожалению скинуть фйлы не могу (создавал их путём коментирования кусков основного проекта).


Я ж листинги компилера и линкера прошу, а не исходники.

Кстати, а какую библиотеку используешь? Может у меня библиотека не правильная (dl3s-ec.r90)?
Go to the top of the page
 
+Quote Post
SysRq
сообщение Oct 21 2009, 10:45
Сообщение #20


Чайник, 1 литр
****

Группа: Свой
Сообщений: 655
Регистрация: 17-05-06
Из: Moscow
Пользователь №: 17 168



В нерабочем коде (дизасм ja tools\reavr):
Код
    ldi    r16,kA5
    out    p3D,r16 // SPL
    ldi    r16,k00
    out    p3E,r16 // SPH


Куда-то в Extended IO оно ведет вместо оперативки..
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Oct 21 2009, 11:00
Сообщение #21


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



ОК. map и lst в архиве.
По поводу библиотек - особо не вникал в этот вопрос.
Go to the top of the page
 
+Quote Post
Slev
сообщение Oct 21 2009, 12:14
Сообщение #22





Группа: Участник
Сообщений: 6
Регистрация: 18-09-09
Пользователь №: 52 449



Нашёл!
Проблема была не с CODE, а с DATA! Сегменты начинались не со 100, а с 60 (издержки ручной правки xcl-файла от mega32)...

Всем спасибо!
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 21:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.01391 секунд с 7
ELECTRONIX ©2004-2016