Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
11.02.2011, 13:32
|
#331
|
Гражданин KAZUS.RU
Регистрация: 04.04.2007
Сообщений: 941
Сказал спасибо: 571
Сказали Спасибо 113 раз(а) в 85 сообщении(ях)
|
Re: Atmel - в цинковый ящик?!!!
Сообщение от kison
|
...Так что взвод флажка от периферии в АВР для реализации софтового прерывания это очень кривой костыль....Что собственно я и хотел сказать....
|
Раз хотел - давно сказал бы , ну а раз этого нет , значит и врать не надо .А порядок взвода открыто написан в самом аппноуте и его просто надо применять по инструкции а не изобретать свои хитромудрые способы чтобы потом если не получилось то говорить - вот видите , какой здесь кривой костыль .
__________________
Короче асма кода нет !
Последний раз редактировалось pinco; 11.02.2011 в 13:36.
|
|
|
|
11.02.2011, 13:36
|
#332
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: Atmel - в цинковый ящик?!!!
Сообщение от pinco
|
значит и врать Вам не надо .
|
Остапа понесло ![Улыбка](images/smilies/icon_smile.gif) В чем я неправ то? Вы тоже считаете что образец от
Сообщение от omercury
|
in temp,TIFR
sbr temp,TOV0
out TIFR,temp
|
это правильный код? А если нет - расскажите в чем ошибка и как его переделать, чтоб он стал правильным. И возможно ли это в принципе.
|
|
|
|
11.02.2011, 13:40
|
#333
|
Супер-модератор
Регистрация: 15.10.2007
Сообщений: 3,530
Сказал спасибо: 172
Сказали Спасибо 1,560 раз(а) в 810 сообщении(ях)
|
Re: Atmel - в цинковый ящик?!!!
|
|
|
|
11.02.2011, 13:42
|
#334
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: Atmel - в цинковый ящик?!!!
Сообщение от pinco
|
А порядок взвода открыто написан в самом аппноуте
|
В каком апноуте? Ссылку в студию.
|
|
|
|
11.02.2011, 13:45
|
#335
|
Гражданин KAZUS.RU
Регистрация: 04.04.2007
Сообщений: 941
Сказал спасибо: 571
Сказали Спасибо 113 раз(а) в 85 сообщении(ях)
|
Re: Atmel - в цинковый ящик?!!!
Сообщение от kison
|
Причем ладно для STM8 неверные, так и для АВР растактовка неправильная. Ну где CALL выполняется за 3 такта?
|
Для обоих взято строго из их документации и больше нигде , и ничего от себя не добавлял , все доки у Вас же есть , вроде как на обои контроллеры , ну так сами и смотрите .Для STM8 посмотрел CALL еще раз (Programming manual.pdf , документ PM0044 страница 53/148 ) - 6 тактов , как с куста , все верно .Теперь для AVR-а - уж AVR-кины мануалы надеюсь не надо указывать , они и так почти у каждого есть - ну так вот , там написано 4 такта , а 3 такта это относится к RCALL , но все равно быстрее ,чем у STM8 , не так ли ?
__________________
Короче асма кода нет !
Последний раз редактировалось pinco; 11.02.2011 в 14:17.
|
|
|
|
11.02.2011, 13:53
|
#336
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: Atmel - в цинковый ящик?!!!
Сообщение от pinco
|
Для обоих взято строго из их документации и больше нигде
|
Ну так для примера.
STM8 JP $1000 2 такта АВР JMP 3 такта (это иксмега, для обычных - 4 такта)
JP(X) 2 такта ICALL 3 такта
JP($10,X) 2 такта АВР отдыхает
JP($1000,X) 2 такта АВР опять отдыхает
и т.д.
Там и по Y можно косвенно переходить, не только по Z. У АВР только одна пара - Z.
И хотелось бы все же увидеть апнот с описанием софтовых прерываний у АВР.
Также в 303 сообщении я просил подтвердить однотактовость INC и DEC. Условия там описаны.
Последний раз редактировалось kison; 11.02.2011 в 13:56.
|
|
|
|
11.02.2011, 14:11
|
#337
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: Atmel - в цинковый ящик?!!!
Сообщение от pinco
|
они и так почти у каждого есть - ну так вот , там написано 4 такта , а 3 такта это относится к RCALL , но все равно быстрее ,чем у STM8 , не так ли ?
|
RCALL быстрее на такт. CALL так же. JMP (JP) у АВР медленнее.
Я все жду апнот с софтовыми прерываниями или пример безглючного кода, пример с INC/DEC и еще чго нибудь. Типа проверки переменной на 0, расположенной на стеке со смещением. Или кроме бла-бла-бла ничего не будет?
И завязывайте с порочной практикой редактирования сообщений, на которые уже есть ответы.
Последний раз редактировалось kison; 11.02.2011 в 14:21.
|
|
|
|
11.02.2011, 14:25
|
#338
|
Гражданин KAZUS.RU
Регистрация: 04.04.2007
Сообщений: 941
Сказал спасибо: 571
Сказали Спасибо 113 раз(а) в 85 сообщении(ях)
|
Re: Atmel - в цинковый ящик?!!!
Сообщение от kison
|
Также в 303 сообщении я просил подтвердить однотактовость INC и DEC. Условия там описаны.
|
Да те же 4 такта для INC , и те же 4 такта для DEC для STM8 , a для AVR-а обе комнды по 1 такту всего . ну сколько раз еще смотреть-то ? Команда сравнения с нулем 1 такт у AVR-а и 4 такта у STM8 ! А эти все ну очень часто используются в циклах , да и в просто в проге .Сам найди строчечку с DEC ,или с INC в доке для STM8 и в доке для AVR-а- а теперь посмотри сколько они занимают тактов для одного , а потом для другого контроллера ...
__________________
Короче асма кода нет !
Последний раз редактировалось pinco; 11.02.2011 в 14:29.
|
|
|
|
11.02.2011, 14:34
|
#339
|
Гражданин KAZUS.RU
Регистрация: 04.04.2007
Сообщений: 941
Сказал спасибо: 571
Сказали Спасибо 113 раз(а) в 85 сообщении(ях)
|
Re: Atmel - в цинковый ящик?!!!
Сообщение от kison
|
STM8 JP $1000 2 такта АВР JMP 3 такта (это иксмега, для обычных - 4 такта)
JP(X) 2 такта ICALL 3 такта
JP($10,X) 2 такта АВР отдыхает
JP($1000,X) 2 такта АВР опять отдыхае
|
Ага , а теперь прикинь твои любимые STM8 16 Мгц-овые по времени все это выполнят за 125 нс , а XMega на 33 Мгц со своими 3 тактами за 90 нс всего-то , -- ну и кто кого там рвет и кто отдыхает ?
__________________
Короче асма кода нет !
|
|
|
|
11.02.2011, 14:35
|
#340
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: Atmel - в цинковый ящик?!!!
Сообщение от pinco
|
Да те же 4 такта для INC , и те же 4 такта для DEC для STM8
|
Я уже просил пример. Вот Вам примеры INC. Дайте им аналог в АВР
Код:
|
INC A ; увеличиваем регистр 1 такт
INC INC $1000; увеличиваем переменную по адресу $1000, 1 такт
INC(X); увеличиваем косвенно адресуемую переменную, 1 такт. |
Будет что нибудь конкретное? Например аналоги с растактовкой
Сообщение от pinco
|
Команда сравнения с нулем 1 такт у AVR-а и 4 такта у STM8 !
|
И тут.
Код:
|
TNZ A ; проверка регистра, 1 такт.
TNZ $1505; проверка ячейки памяти, 1 такт
TNZ (X); проверка косвенно адресуемой ячейки памяти, 1 такт.
TNZ ($15,SP); проверка ячейки памяти на стеке со смещением - 1 такт. |
Аналоги будут?
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 08:19.
|
|