Отговори на тема  [ 21 мнения ]  Отиди на страница Предишна  1, 2
ARM GCC CDT 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Юни 05, 2006 12:48 pm
Мнения: 4406
Местоположение: където небето среща земята, ракията е Jameson, а бирата Guinness
Мнение Re: ARM GCC CDT
TheWizard написа:
Има ли някаква причина при ARM като чета пойнер на структура да се бави ядрото с тва четене

Най вероятната причина е, че при повечето арм микроконтролери имаш AXI Light шина, което позволява само един мастър в един момент от време. Демек както Миро ти е писал може да е дма, може да е друго да иска достъп през axi-то и седиш и чакаш какво да се прави...

_________________
... ако трети ден не ти се работи... това означава, че е сряда !


Вто Окт 31, 2017 8:45 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4715
Мнение Re: ARM GCC CDT
зарязвам го за сега така - да портна и другите фунции...
неща да бъркам по-надълбоко да не омажа нещата

_________________
main[-1u]={1};


Вто Окт 31, 2017 8:56 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Яну 26, 2005 1:01 pm
Мнения: 1952
Местоположение: Варна
Мнение Re: ARM GCC CDT
А как всъщност мериш тези времена?

_________________
Най-опасният враг на истината и свободата е мнозинството.


Сря Ное 01, 2017 12:04 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4715
Мнение Re: ARM GCC CDT
begin = get_micro() <-- е системен таймер
n пъти function();
end = get_micro()
end - begin / n

не е супер точно в РТОС но дава някакво инфо... всъщност си е точно щото гет_микро е таймер

_________________
main[-1u]={1};


Сря Ное 01, 2017 7:06 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Яну 26, 2005 1:01 pm
Мнения: 1952
Местоположение: Варна
Мнение Re: ARM GCC CDT
Той отговора се е промъкнал вече в съзнанието ти, остава само да го потвърдиш.
Едва ли е заради някакъв DMA трансфер. Заради някакви неизвестни особености на МЦУ-то още по-малко.
Можеше да сложиш поне едно забраняване/разрешаване глобално на прекъсванията и да поставиш n = 1, само за проба. Със сигурност ще получиш резултат 0 или 1 при мерене с микросекунден таймер.
Въпроса е при това положение ще можеш ли да bit-bang-ваш този DHT22.

_________________
Най-опасният враг на истината и свободата е мнозинството.


Сря Ное 01, 2017 10:05 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4715
Мнение Re: ARM GCC CDT
е баш тва направих
irq = LockIRQ();
RestoreIRQ(irq);

DHT-то го заковах - чета го "стабилно" на всеки 2 сек ( DHT-to е със "стандартната" библиотека за Ардуино )
обаче достъпа до рама пак си е така

readPin() към 5 микро
writePin() към 7 микро

сложих му и сим - даже се регистрира :)


Прикачени файлове:
IRQ.png
IRQ.png [ 573.87 KiB | Прегледано 1671 пъти ]

_________________
main[-1u]={1};
Сря Ное 01, 2017 10:46 am
Профил ICQ
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 21 мнения ]  Отиди на страница Предишна  1, 2

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни