AVR studio в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Artem333
Встал на лапы
Posts: 119
Joined: Tue Apr 17, 2007 15:24:47
Location: Новосиб

AVR studio в вопросах и ответах

Post by Artem333 »

Возникла необходимость считать таблицу из ПЗУ 8й меги. Проблема в том что компилятор непонятно каким образом определяет адрес массива:

ldi zl,low(vmem)
ldi zh,high(vmem)
lpm

Бился с этим час. В конце-концов выдрал адрес из бинарника, но такое положение не устраивает в написании будущих прог. Кто сталкивался подскажите плз!
Всё просто как самогонный аппарат
Реклама
User avatar
ARV
Ум, честь и совесть. И скромность.
Posts: 18675
Joined: Thu Dec 28, 2006 08:19:56
Location: Новочеркасск
Contact:

Post by ARV »

невнимательно читаешь доки! в сегменте памяти ПРОГРАММ адресация ведется по СЛОВАМ, т.е. по 16 битов (2 байта). Это означает, что для загрузки правильного адреса надо использовать УДВОЕННЫЙ адрес метки:

Code: Select all

    LDI   ZL, low(vmem*2)
    LDI   ZH, high(vmem*2)
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Реклама
Artem333
Встал на лапы
Posts: 119
Joined: Tue Apr 17, 2007 15:24:47
Location: Новосиб

Post by Artem333 »

пытался - не пашет!. Вообще не нашёл закономерности определения адреса. Ставил в различные части программы и анализировал результат- безуспешно
Всё просто как самогонный аппарат
User avatar
ARV
Ум, честь и совесть. И скромность.
Posts: 18675
Joined: Thu Dec 28, 2006 08:19:56
Location: Новочеркасск
Contact:

Post by ARV »

я в чудеса не верю. я работаю только с ассемблером и только с AVR Studio - у меня пашет. ищи ошибку. либо ты чего-то не понимаешь, либо что-то не так делаешь (что в общем-то одно и то же)...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Реклама
Эиком - электронные компоненты и радиодетали
Artem333
Встал на лапы
Posts: 119
Joined: Tue Apr 17, 2007 15:24:47
Location: Новосиб

Post by Artem333 »

Странно что напрямую адрес пашет без проблем. Кстати скоро статью напишу об этом устройстве
Всё просто как самогонный аппарат
Реклама
User avatar
ARV
Ум, честь и совесть. И скромность.
Posts: 18675
Joined: Thu Dec 28, 2006 08:19:56
Location: Новочеркасск
Contact:

Post by ARV »

покажи код в тех местах, где находится сама таблица и где из нее извлекаешь данные... уверен: окажется все проще, чем самогонный аппарат :)
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Реклама
Artem333
Встал на лапы
Posts: 119
Joined: Tue Apr 17, 2007 15:24:47
Location: Новосиб

Post by Artem333 »

это части рабочей проги. Адрес задаётся вручную. Всё пашет
Attachments
007.asm
(2.4 KiB) Downloaded 2854 times
Всё просто как самогонный аппарат
User avatar
ARV
Ум, честь и совесть. И скромность.
Posts: 18675
Joined: Thu Dec 28, 2006 08:19:56
Location: Новочеркасск
Contact:

Post by ARV »

Code: Select all

ld tmph,X+
;**************
ldi zl, low(ln_table*2)
ldi zh, high(ln_table*2)
add zl, tmph
clr vrm2
adc zh, vrm2
lpm
должно работать
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Artem333
Встал на лапы
Posts: 119
Joined: Tue Apr 17, 2007 15:24:47
Location: Новосиб

Post by Artem333 »

Решил проблему переустановкой винды и АВРстудии. Совершенно непонимаю как это связано с определением адреса но теперь пашет как ты написал.

Огромное спасибо за помощь!
Всё просто как самогонный аппарат
User avatar
tych
Э...
Posts: 2792
Joined: Wed Apr 04, 2007 08:39:14
Location: Москва
Contact:

Post by tych »

Ежик в тумане wrote:Контроллер запрограмирован, все работает, подключен к компу, при автозапуске прога работатет и видно состояние регистров в студио4, но не видно состояние регистров АЦП ADCL, ADCH... Или их не реально посмотреть... просто знаю что в мк 51 и проге силабс можно посмотреть и данные ацп. Может знает кто как это посмотреть?
В панели перефириии МК их нужно развернуть наверно щелкнув на ПЛЮСИК.

Только студия не симулирует АЦП и смотреть в них бесполезно как бы.

Используйте VMLAB или PROTEUS.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
User avatar
ARV
Ум, честь и совесть. И скромность.
Posts: 18675
Joined: Thu Dec 28, 2006 08:19:56
Location: Новочеркасск
Contact:

Post by ARV »

tych wrote:Только студия не симулирует АЦП и смотреть в них бесполезно как бы.
нет, не совсем бесполезно! главное студия симулирует - прерывания от АЦП,а битики полезно устанавливать вручную, а не только смотреть. для отладки достаточно.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
User avatar
tych
Э...
Posts: 2792
Joined: Wed Apr 04, 2007 08:39:14
Location: Москва
Contact:

Post by tych »

Я и написал что СМОТРЕТЬ в них бесполезно.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Ежик в тумане
Встал на лапы
Posts: 80
Joined: Wed Nov 28, 2007 09:42:28

Post by Ежик в тумане »

ARV wrote:
tych wrote:Только студия не симулирует АЦП и смотреть в них бесполезно как бы.
нет, не совсем бесполезно! главное студия симулирует - прерывания от АЦП,а битики полезно устанавливать вручную, а не только смотреть. для отладки достаточно.
Смотреть было бы интереснее, а не гадать на коейной гуще что же там в ацп... вручную то понятно - все работает... Придется мучиться с осциллографом :cry:
Спасибо за разъяснения, а то я бы еще долго парилась бы...
User avatar
tych
Э...
Posts: 2792
Joined: Wed Apr 04, 2007 08:39:14
Location: Москва
Contact:

Post by tych »

Ежик в тумане wrote:Придется мучиться с осциллографом :cry:
Используйте VMLAB или PROTEUS. Или метод тестовых сообщений по USART на ПК при отладке.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
User avatar
Denis-d20
Открыл глаза
Posts: 52
Joined: Sat Nov 24, 2007 10:06:53
Location: Украина,хмельницкий
Contact:

Post by Denis-d20 »

Добрый день. Вопрос: создаю в AVRstudio проект начинает компилироватся и на какой-то стадии компиляции AVRstudio виснет не выдавая никаких ошибок при этом :shock:
User avatar
tych
Э...
Posts: 2792
Joined: Wed Apr 04, 2007 08:39:14
Location: Москва
Contact:

Post by tych »

Щас экстрасексы позырят ваш проект ! и скажут...
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
User avatar
Denis-d20
Открыл глаза
Posts: 52
Joined: Sat Nov 24, 2007 10:06:53
Location: Украина,хмельницкий
Contact:

Post by Denis-d20 »

в смысле проект надо скинуть?
User avatar
Lestat
Встал на лапы
Posts: 111
Joined: Sat Mar 31, 2007 13:53:07
Location: Lviv
Contact:

Post by Lestat »

а как в отладчике частоту МК сменить? П.С. я не могу найти
User avatar
ARV
Ум, честь и совесть. И скромность.
Posts: 18675
Joined: Thu Dec 28, 2006 08:19:56
Location: Новочеркасск
Contact:

Post by ARV »

В режиме отладки: меню Debug-AVR Simulator Options
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
User avatar
Mamonth
Вымогатель припоя
Posts: 534
Joined: Mon Jan 16, 2006 08:00:17
Location: Иркутск

Post by Mamonth »

Chip115 wrote:Проблема старта с AVR Studio 4.12
Создаю проект, asm файл, но при компиляции вываливается только одно сообщение, AvrAssembler: Object file is empty and not saved
, подскажите что делаю не так?

Loaded plugin STK500
Loaded plugin Atmel AVR Assembler
Loaded partfile: C:ProgrammeAtmelAVR ToolsPartDescriptionFilesATtiny12.xml
Loaded partfile: C:\Program Files\Atmel\AVR Tools\PartDescriptionFiles\AT90S1200.xml

В исходнике ошибок нет.
В настройках переключил на Assembler Option - AVR Assembler - Version 1
Все равно после попытки компиляции пишет:

AvrAssembler: Object file is empty and not saved
У мну АВР Студия 4.13 сборка 528

При попытке скомпилировать пустой ассемблерный файл под 90S1200 Вываливается та же ошибка. Но когда я написал:

Code: Select all

main:
   rjmp main
То все компилируется без проблем.
Today fine night...
Post Reply

Return to “AVR”