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

 
 
> Счетчик машинных циклов
NewMaestro
сообщение Jun 14 2007, 21:57
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 76
Регистрация: 17-03-07
Из: Минск
Пользователь №: 26 243



Если я правильно понял, то EWB не предоставляет возможности посчитать сколько прошло машинных циклов от одной точки программы до другой. Люди, посоветуйте, как тайминги рассчитывать, когда такого счетчика нет. Я привык, что в MPLAB IDE он был. Это довольно удобно!

В EWB для AVR есть функция для организации задержек __delay_cycles(); А в компиляторе для NEC этой функции нет. Как сделать задержку с точностью +-1 маш.цикл без таймера, если нет функции __delay_cycles(); и если нет нет счетчика, чтобы цикл измерить?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
rezident
сообщение Jun 14 2007, 22:46
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Во, блин, проблема - нет функции __delay_cycles() - нету так напишите сами! Кстати, шутка DRUID3 лишь отчасти. Если нужны задержки с точностью до такта, то действительно NOP-ами иногда подбирать приходится.
Насчет отсутствия счетчика циклов не совсем понял. В какой версии для какого камня отсутствует? В отладчике (debugger) такого вроде и не было, но в симуляторе ИАР счетчик циклов должен быть.
Go to the top of the page
 
+Quote Post
NewMaestro
сообщение Jun 15 2007, 06:45
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 76
Регистрация: 17-03-07
Из: Минск
Пользователь №: 26 243



Цитата
Во, блин, проблема - нет функции __delay_cycles() - нету так напишите сами!


А Вы мне блоксхемку подскажите. Так, чтоб с точностью до цикла. А то я, в отличие от Вас, новичок в этом деле.

Цитата
Кстати, шутка DRUID3 лишь отчасти. Если нужны задержки с точностью до такта, то действительно NOP-ами иногда подбирать приходится.
Насчет отсутствия счетчика циклов не совсем понял. В какой версии для какого камня отсутствует? В отладчике (debugger) такого вроде и не было, но в симуляторе ИАР счетчик циклов должен быть.


Камень NEC 78K0. Подскажите где искать в симуляторе.
Go to the top of the page
 
+Quote Post
rezident
сообщение Jun 15 2007, 09:48
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(NewMaestro @ Jun 15 2007, 12:45) *
А Вы мне блоксхемку подскажите. Так, чтоб с точностью до цикла. А то я, в отличие от Вас, новичок в этом деле.
Камень NEC 78K0. Подскажите где искать в симуляторе.

Функция задержки с точностью до цикла зависит от архитектуры и сисемы команд целевого кристалла. К сожалению с МК фирмы NEC я не знаком даже отдаленно.
Go to the top of the page
 
+Quote Post
NewMaestro
сообщение Jun 15 2007, 18:55
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 76
Регистрация: 17-03-07
Из: Минск
Пользователь №: 26 243



Цитата
Функция задержки с точностью до цикла зависит от архитектуры и сисемы команд целевого кристалла.


AVR-вариант компилятора функцию __delay_cycles() при аргументе 1, 2 (до нескольких) представляет в виде nop-ов, а при больших значениях уже цикл генерит и память юзает. Написали ж программеры... предусмотрели все...

Цитата
К сожалению с МК фирмы NEC я не знаком даже отдаленно.


А че? Народ базарит, кто работал, что японские микроконтроллеры рулят smile.gif Ну типа NEC, Renesas - вещи что надо и что на нашем рынке они не завоевали популярность исключительно по историко-экономическим причинам. Не считали японцы нас достойыми потребителями долгое время и не целились на наш рынок. Тем не менее на мировом рынке, говорят, NEC в несколько раз рвет ATMEL. A Renesas рвет вообще всех. smile.gif
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 15:27
Рейтинг@Mail.ru


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