На головну сторінку Аквафорум
На головну сторінку




Назад   Аквафорум - форум акваріумістів та тераріумістів > Акваріум та обладнання > "Самоделкин" > Аквариумная автоматика

Примітки

 
 
Параметри теми Параметри перегляду
Prev Попередній допис   Наступний допис Next
Старий 07.03.2016, 03:00   #11
Придивляюся
  
 
Реєстрація: 08.01.2008
Звідки Ви: Pinsk, RB
Дописи: 43
сказав Дякую: 5
сказали Дякую 16 раз(и) в 12 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від Multiman Переглянути допис
Нашел интересную тему по оптимизации работы Ардуино:http://cyber-place.ru/showthread.php?t=550 (может было - непомню)
Тогда уж лучше библиотека digitalWriteFast
Из интереса сравнил размер кода мигания для стандартной среды, библиотеки digitalWriteFast и библиотеки CyberLib

//Std lib
//Sketch uses 854 bytes (2%) of program storage space. Maximum is 28*672 bytes.
//Global variables use 9 bytes (0%) of dynamic memory, leaving 2*039 bytes for local variables. Maximum is 2*048 bytes.

//digitalWriteFast (safe Interrupt version)
//Sketch uses 456 bytes (1%) of program storage space. Maximum is 28В*672 bytes.
//Global variables use 9 bytes (0%) of dynamic memory, leaving 2В*039 bytes for local variables. Maximum is 2В*048 bytes.

//CyberLib
//Sketch uses 550 bytes (1%) of program storage space. Maximum is 28*672 bytes.
//Global variables use 13 bytes (0%) of dynamic memory, leaving 2*035 bytes for local variables. Maximum is 2*048 bytes.

К томуже при использовании digitalWriteFast заменить конструкцию вида digitalWrite(13, HIGH); на digitalWriteFast(13, HIGH); можно автоматически во всем файле и для любых пинов за одну команду

Для CyberLib придется заменять digitalWrite(13, HIGH); на D13_High; И так для каждого пина и состояния. Что мягко говоря уже не столь просто. Можно, конечно, воспользоваться более интеллектуальной заменой, скриптами... но уже и не надо...
Добавить #include <digitalWriteFast.h> и сделать указанную выше поиск\замену digitalWrite на digitalWriteFast дело 20 секунд.
Скорость выполнения не проверял... Для данного акваконтроллера не критично.

AlexNT поза форумом   Відповісти з цитуванням
cказали "Дякую" AlexNT за цей допис:
alex_palace (31.03.2016)


Share/Bookmark

 

Мітки
arduino, акваконтроллер


Тут присутні: 1 (учасників - 0 , гостей - 1)
 
Параметри теми
Параметри перегляду

Ваші права у розділі
Ви не можете створювати теми
Ви не можете писати дописи
Ви не можете долучати файли
Ви не можете редагувати дописи

BB-код є Увімк.
Усмішки Увімк.
[IMG] код Увімк.
HTML код Вимк.

Швидкий перехід


Часовий пояс GMT +3. Поточний час: 00:57.


vBulletin 3.8.7 ; Copyright © 2000-2025 Jelsoft Enterprises Limited
Переклад: © Віталій Стопчанський, 2004-2010
(с)Бешлега Олександр Анатолійович, 2002-2025. Використання матеріалів сайту без посилання на джерело заборонено.
Дякуємо за ліцензійну версію форума компанію Барбус, представника торгової марки Sera в Україні.


no new posts