Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.03.2017, 14:27   #1
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Ускоряем работу Arduino

Нужно на чистом AVR CИ писать
Admin вне форума   Ответить с цитированием
Старый 08.03.2017, 12:39   #2
Tohin
Moderator
 
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1030
Tohin is a jewel in the roughTohin is a jewel in the roughTohin is a jewel in the rough
По умолчанию Re: Ускоряем работу Arduino

To: Admin, Bulatovor
А статья на Wiki подходит под обе библиотеки (в данной теме и от Archat'a)?
Tohin вне форума   Ответить с цитированием
Старый 08.03.2017, 21:49   #3
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Ускоряем работу Arduino

Не подходит
Вот здесь описание его библиотеки
Admin вне форума   Ответить с цитированием
Старый 20.03.2017, 22:25   #4
zl.th
Junior Member
 
Регистрация: 03.08.2016
Сообщений: 5
Вес репутации: 0
zl.th is an unknown quantity at this point
По умолчанию

Не работает чтение по SPI из сдвигового регистра.
На стандартной либе пашет (SPI.h) которая.
Вывод по SPI работает.

Развернуть для просмотра


#include <CyberLib.h>

uint8_t reg1;

void setup() {
StartSPI(0, 2, 1);
Serial.begin(9600);
D10_Out;
}

void loop() {
D10_Low;
D10_High;
reg1 = ReadSPI();
Serial.println(reg1, BIN);
delay(1000);
}
[свернуть]
zl.th вне форума   Ответить с цитированием
Старый 20.03.2017, 22:51   #5
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию

Попробуйте сначала на низкой скорости StartSPI(0, 128, 1);
Возможно устройство подключенное по SPI не тянет по скорости
Admin вне форума   Ответить с цитированием
Старый 21.03.2017, 06:56   #6
zl.th
Junior Member
 
Регистрация: 03.08.2016
Сообщений: 5
Вес репутации: 0
zl.th is an unknown quantity at this point
По умолчанию

Цитата:
Сообщение от Admin Посмотреть сообщение
Попробуйте сначала на низкой скорости StartSPI(0, 128, 1);
Возможно устройство подключенное по SPI не тянет по скорости
Забыл сказать, низкие скорости так же проверял, это первое, что я сделал.

В выше приведенном коде, программа "зависает" на чтении по SPI, следующая строчка с выводом в сериал не исполняется.

update.

Обнаружил, что в функции StartSPI пин 10 тоже конфигурируется. Зачем? SS пин лучше задавать самому программисту, а если 10 пин занят чем то другим?

update2.

Разобрался, зачем конфиг 10-го пина.

Последний раз редактировалось zl.th; 21.03.2017 в 13:56.
zl.th вне форума   Ответить с цитированием
Старый 03.04.2017, 20:02   #7
zl.th
Junior Member
 
Регистрация: 03.08.2016
Сообщений: 5
Вес репутации: 0
zl.th is an unknown quantity at this point
По умолчанию

Прошло уже много времени, ответа нет. SPI так и не работает, и в моем проекте не критично, но тем не менее.
Дабы была повторяемость, у меня не заработало чтение из сдвиговых регистров 1533ир9 (аналог 74HC165). Регистры подключены каскадом в кол-ве 3-х шт. Код с SPI.h работает, с Cyberlib.h нет. Синтаксис точно соблюден. Кому интересно, копайте.
zl.th вне форума   Ответить с цитированием
Старый 23.08.2017, 10:52   #8
krian
Junior Member
 
Регистрация: 23.08.2017
Сообщений: 4
Вес репутации: 0
krian is an unknown quantity at this point
По умолчанию

В исходном файле CyberLib правопреемник (CarMonitor) ссылается на этот форум.
Поэтому и вопрос сюда к ВАМ.
Я сразу столкнулся с неприятностями. Одним словом - неработает!!!
Подключил библиотеку в свой проект и получил кучу ошибок при компиляции. Думал сначала, что сам напортачил. Потом взял пример, который включен в саму библиотеку. Оказалось, что и там функции не работают.
У меня Arduino 1.8.4 Hourly Bild 2017/08/01
сообщение компилятора:
Blink.ino:11: undefined reference to `delay_ms(unsigned int)'
При вызове функций таймера 1 и чтения аналогового входа сообщения аналогичные.
Чем Вы можете это объяснить?
krian вне форума   Ответить с цитированием
Старый 23.08.2017, 11:11   #9
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию

Возможно что в новых версиях IDE что то изменилось
Admin вне форума   Ответить с цитированием
Старый 25.04.2018, 15:20   #10
xtopolx
Junior Member
 
Регистрация: 25.04.2018
Сообщений: 2
Вес репутации: 0
xtopolx is an unknown quantity at this point
По умолчанию В чем может быть проблемма?

В чем может быть проблемма?

Anlog_input_AVR:15: error: 'A0_Read' was not declared in this scope

float i = A0_Read;



#include "CyberLib.h"
unsigned long timme;
void setup()
{
Serial.begin(57600);

}

void loop()
{
timme = micros();
float i = A0_Read;
timme = micros()-timme;
Serial.println("d");
Serial.println(i);
Serial.println("a");
}
xtopolx вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 23 (пользователей: 0 , гостей: 23)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 03:22. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика