PCCar.ru - Ваш автомобильный компьютер

Вернуться   PCCar.ru - Ваш автомобильный компьютер > MP3Car ТехИнфа > AndroidCar > Питание

Результаты опроса: Писать ли про развитие проекта, или пофиг, есть свой и работает.
Пиши дальше 210 96.33%
Не пиши, лучше займись чем нибудь (другим) полезным. 8 3.67%
Голосовавшие: 218. Вы ещё не голосовали в этом опросе

Ответ
 
Опции темы Поиск в этой теме
Старый 22.06.2017, 10:59   #1051
awtoap
Гуру
 
Аватар для awtoap
 
Регистрация: 19.09.2009
Возраст: 46
Город: Мелитополь
Регион: Украина
Сообщений: 2,022
awtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to behold
По умолчанию

Цитата:
При всем уважении, но по моему нет ни одного ответа от awtoap, где бы он не обо$рал все, что связанно с ардуино. Я понимаю, что ардуино для начинающих, но зачем эта агрессия? Не надоело еще?
Але...ты ниче не попутал? Я за нее от силы пару раз упоминал за все время тут.
awtoap вне форума   Ответить с цитированием
Старый 22.06.2017, 11:33   #1052
jonikus81
Старший Пользователь
 
Аватар для jonikus81
 
Регистрация: 07.09.2015
Возраст: 43
Город: Алматы
Регион: Казахстан
Машина: MMC DELICA 94 (булка)
Сообщений: 209
jonikus81 is a jewel in the roughjonikus81 is a jewel in the roughjonikus81 is a jewel in the roughjonikus81 is a jewel in the rough
По умолчанию

Цитата:
Сообщение от awtoap Посмотреть сообщение
Але...ты ниче не попутал? Я за нее от силы пару раз упоминал за все время тут.
Видимо спутал. Извиняюсь. Стало неприятно, когда Вы приравняли все счетчи ардуино к быдлокоду. Мне с моим расстройством памяти этот быдлокод дается с огромными усилиями и трудом(поймут единицы). А тут тебя еще и к быдлу ровняют.
jonikus81 вне форума   Ответить с цитированием
Старый 22.06.2017, 15:48   #1053
oleg707
Гуру
 
Аватар для oleg707
 
Регистрация: 16.04.2014
Возраст: 40
Город: Gdynia
Регион: другой - для добавления сообщить ab
Сообщений: 2,548
oleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond repute
По умолчанию

Цитата:
Сообщение от awtoap Посмотреть сообщение
код
PHP код:
void UPRAVLENIE_PINAMI() // функция перевода логических параметров в реальные состояния пинов   // http://arduino.ru/Tutorial/Upravlenie_portami_cherez_registry  // https://geektimes.ru/post/255744/ Ускоряем свою Arduino   /* http://robotosha.ru/arduino/digitalwrite-optimizing-arduino.html */
{// UPRAVLENIE_PINAMI ~~~//тут мы сначала пишем  в переменную регистры, а потом сделаем PORTB = PORTBregistr; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
// PORTBregistr - обрабатывем регистры порта B атмеги

        
if (LED == ){ PORTBregistr |= 1<<5;     } //PORTB |= 1<<5; //установит "1" (сигнал высокого уровня) на выводе PB5. //digitalWrite(13, HIGH);   // turn the LED on (HIGH is the voltage level)
             
else { PORTBregistr &= ~(1<<5);  } //PORTB &= ~(1<<5); //установит "0" (сигнал низкого уровня) на выводе PB5. //digitalWrite(13, LOW);    // turn the LED off by making the voltage LOW
     
if (SAMOZAPITKA == 1){ PORTBregistr |= (<< 1); } else {PORTBregistr &= ~((<< 1));}         //PB1 управление самозапиткой блока питания IN4///1 = есть самозапитка; 0 = нет самозапитки //http://microsin.net/programming/avr/accessing-avr-ports-with-winavr-gcc.html
           
if (SLEEP == 1){ PORTBregistr |= (<< 2); } else {PORTBregistr &= ~((<< 2));}         //byte SLEEPpin = 10; /* PB2  управление транзюком сна VT4 (на датчик холла))*/ //1 = потух экран(есть масса на пине сна); 0 = штатная работа планшета (нет массы на пине сна)
           
if (HUB == 0)  { PORTBregistr |= (<< 3); } else {PORTBregistr &= ~((<< 3));}         //HUB =0;//byte HUBpin = 11; /* PB3 управление транзюком питания хаба*/ // 1-есть питание, 0 - нет питания
           
if (OTG == 1)  { PORTBregistr |= (<< 4); } else {PORTBregistr &= ~((<< 4));}         //bool OTG = 0; //byte OTGpin = 12; /* 16pin = PB4 = pin D12 MISO управление транзюком OTG Q1*/ //1 = есть масса на OTG; 0 = нет массы на OTG

// PORTDregistr - обрабатывем регистры порта D атмеги

       
if (PlanshBAT == 1){ PORTDregistr |= (<< 6); } else {PORTDregistr &= ~((<< 6));}         //bool PlanshBAT = 0; //byte PlanshBATpin = 6; /* 10pin = PD6 = pin D6 PWM    включить 1 канал KIW            ..... управление питания БАТАРЕИ планшета через управляющую ногу IN2-5pin*/ //0 = нет питания; 1 = есть питание ( БАТАРЕИ планшета)
     
if (REGISTRATOR == 1){ PORTDregistr |= (<< 4); } else {PORTDregistr &= ~((<< 4));}         //bool REGISTRATOR = 0;   //byte REGISTRATORpin = 4; /* 2 pin = PD4 = pin D4 выход 12В для работы видеорегистратора (D4 -IN1)*/ 
 
if (II_KIW_pin_POGO == 1){ PORTDregistr |= (<< 2); } else {PORTDregistr &= ~((<< 2));}         //bool II_KIW_pin_POGO = 0;   //byte II_KIW_pin_POGOpin = 2; /*  32pin = PD2 = pin D2         включить 2 канал KIW    управление SS2 выходом питания  +5V (2 канал kiw3312s) на пого пин(или USB), чтоб планшет думал, что идет зарядка*/ //0 = нет 5V на POGO; 1 = есть 5V на POGO
             
if (REM == 1){ PORTDregistr |= (<< 7); } else {PORTDregistr &= ~((<< 7));}         //bool REM = 0; //byte REMpin = 7;          /* 11pin = PD7 = pin D7 выход сигнала REM (+12v) (IN3)*/ //0 = нет 12В на выходе REM; 1 = есть 12В на выходе REM
 
            //Serial.print ("PORTBregistr, BIN = "  ); Serial.println (PORTBregistr, BIN); // вывели порт B атмеги на монитор порта
            //Serial.print ("PORTDregistr, BIN = "  ); Serial.println (PORTDregistr, BIN); // вывели порт D атмеги на монитор порта
PORTD PORTDregistr//прописали порту D атмеги в регистры команду на запись нулей и единиц.
PORTB PORTBregistr//прописали порту B атмеги в регистры команду на запись нулей и единиц.
}//конец UPRAVLENIE_PINAMI ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
вот кусок кода из моего ардуино, это оптимальный код?


Цитата:
Сообщение от jonikus81 Посмотреть сообщение
ATmega2560 за глаза должно хватить... В связке с сериал менеджером можно реализовать кнопки, а так же обратную связь с андроидом (кнопки, виджеты и тд). Ног вполне достаточно.
то есть еще на сериал атмеги2560 вешать тот же ch340g, а с него уже делать выход на юсб(хаб)?
Или лучше прицепить блютуз модуль? ( hc06 тот же)
На планшет, соответственно, сериал менеджер.
oleg707 вне форума   Ответить с цитированием
Старый 22.06.2017, 18:54   #1054
jonikus81
Старший Пользователь
 
Аватар для jonikus81
 
Регистрация: 07.09.2015
Возраст: 43
Город: Алматы
Регион: Казахстан
Машина: MMC DELICA 94 (булка)
Сообщений: 209
jonikus81 is a jewel in the roughjonikus81 is a jewel in the roughjonikus81 is a jewel in the roughjonikus81 is a jewel in the rough
По умолчанию

Цитата:
Сообщение от oleg707 Посмотреть сообщение
то есть еще на сериал атмеги2560 вешать тот же ch340g, а с него уже делать выход на юсб(хаб)?
Или лучше прицепить блютуз модуль? ( hc06 тот же)
На планшет, соответственно, сериал менеджер.
Если делать "народный" БП, что бы каждый мог прошить дома не имея программатора тупо через ЮСБ, то да, ch340g нужно ставить (но бутлоадер все равно придется шить через ISP единожды в начале). Тут МК через CH340G в хаб и все.
Если делать "себе" и шить программатором через ISP(юзеры без программатора мимо), то можно подключить HS-05(06) и общаться по блютусу, но звук по блютусу уже не пустишь на магнитолу, так как блютус планшета будет занят.

Последний раз редактировалось admin; 22.06.2017 в 21:34.
jonikus81 вне форума   Ответить с цитированием
Старый 22.06.2017, 19:03   #1055
awtoap
Гуру
 
Аватар для awtoap
 
Регистрация: 19.09.2009
Возраст: 46
Город: Мелитополь
Регион: Украина
Сообщений: 2,022
awtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to behold
По умолчанию

Цитата:
Видимо спутал. Извиняюсь. Стало неприятно, когда Вы приравняли все счетчи ардуино к быдлокоду. Мне с моим расстройством памяти этот быдлокод дается с огромными усилиями и трудом(поймут единицы). А тут тебя еще и к быдлу ровняют.
Не воспринимай так все близко к сердцу...легче по жизни будет. Я тоже не вчера начал программировать и мне это стоило расставания с двумя подругами...это так лирика.

Цитата:
вот кусок кода из моего ардуино, это оптимальный код?
Скорее что нет. Оптимальным будет прямая запись в порт ибо выполняется за одну машинную команду (если память не подводит). Вообще оптимальность по этому куску можешь определить так: как сейчас, откомпилировав и посмотреть размер полученного файла на выходе. Затем заменяешь прямой записью в порт и делаешь тоже самое, что и выше и сравниваешь. В голове у себя откладываешь какой вариант был лучше и пользуешь потом.

ЗЫ. Используй константы пинов, дабы потом не путаться. Типа pinPlanshBAT=6 PortB = | (1 << pinPlanshBAT)...и тд.

Цитата:
то есть еще на сериал атмеги2560 вешать тот же ch340g, а с него уже делать выход на юсб(хаб)?
Или лучше прицепить блютуз модуль? ( hc06 тот же)
На планшет, соответственно, сериал менеджер.
Тыж вроде говорил, что хочешь эмулировать клаву через усб? То мост не подойдет. Если через serialmanager, то можешь и мост прицепить и блюпуп. У нее вроде 2 уарта.
awtoap вне форума   Ответить с цитированием
Старый 22.06.2017, 21:54   #1056
oleg707
Гуру
 
Аватар для oleg707
 
Регистрация: 16.04.2014
Возраст: 40
Город: Gdynia
Регион: другой - для добавления сообщить ab
Сообщений: 2,548
oleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond repute
Question

Цитата:
Сообщение от awtoap Посмотреть сообщение
Не воспринимай так все близко к сердцу...легче по жизни будет. Я тоже не вчера начал программировать и мне это стоило расставания с двумя подругами...это так лирика.



Скорее что нет. Оптимальным будет прямая запись в порт ибо выполняется за одну машинную команду (если память не подводит). Вообще оптимальность по этому куску можешь определить так: как сейчас, откомпилировав и посмотреть размер полученного файла на выходе. Затем заменяешь прямой записью в порт и делаешь тоже самое, что и выше и сравниваешь. В голове у себя откладываешь какой вариант был лучше и пользуешь потом.

ЗЫ. Используй константы пинов, дабы потом не путаться. Типа pinPlanshBAT=6 PortB = | (1 << pinPlanshBAT)...и тд.
прямая запись в порт выполняется за одну машинную команду.
прямая запись в 8 портов ( одного регистра) тоже выполняется за одну машинную команду.
значения , пихаемые в порт меняются по всему скетчу, поэтому, чтобы не дергать порт, значение виртуальное(pinPlanshBAT), а перезапись портов выполняется один раз за цикл через вызов функции.
Плюс удобнее портировать на другую платформу - просто переназначить номера портов в функции.
Я бы сказал, что чуть оптимальнее писать напрямую в порт, не пихая в переменную регистров, но экономия пару тактов буквально, потому не я не заморачивался на 2/16000000 секунды (2 такта на 16МГц)

Цитата:
Тыж вроде говорил, что хочешь эмулировать клаву через усб? То мост не подойдет. Если через serialmanager, то можешь и мост прицепить и блюпуп. У нее вроде 2 уарта.
я хочу кнопки на руль, универсальные.
атмега32u4 умеет usb_hid, то есть будет работать без сериал менеджера.
Если сериалменегер решает проблему без дополнительного проца - тогда проще.
У меня и так юсб портов не хватает:
1 - звук карта
2 - изи кап( камера)
3 - на управляющий процессор ( напрямую или через уарт)
4 - для внешней флешки.

Тут вопрос нубский, если я подключу сериал менеджер, то смогут ли одновременно работать звуковая и изикап ?
oleg707 вне форума   Ответить с цитированием
Старый 22.06.2017, 22:50   #1057
awtoap
Гуру
 
Аватар для awtoap
 
Регистрация: 19.09.2009
Возраст: 46
Город: Мелитополь
Регион: Украина
Сообщений: 2,022
awtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to beholdawtoap is a splendid one to behold
По умолчанию

Цитата:
Тут вопрос нубский, если я подключу сериал менеджер, то смогут ли одновременно работать звуковая и изикап ?
А какие должны быть проблемы? Хотя это ведро и тут трабла может быть в самом не подходящем месте. Вообще можешь поставить эксперимент через внешний хаб и уже точно будешь знать пашет или нет.

Цитата:
Я бы сказал, что чуть оптимальнее писать напрямую в порт, не пихая в переменную регистров, но экономия пару тактов буквально, потому не я не заморачивался на 2/16000000 секунды (2 такта на 16МГц)
Тут не в скорости дело, а в размере кода! У нас стоит задачи впихнуть не впихуемое.
Либо бери жирный проц изначально с усб, либо разнеси на два проца. Скажем управление логикой питальника на меге 48(8) и передачей ей временных параметров по уарт (спи). А на проце с усб вся остальная требуха.

Также размер кода будет зависеть от организации самого алгоритма твоего девайса. Если говоришь, что часто будет использоваться запись в порт, то оформляй повторяющиеся фрагменты кода через процедуры и функции.
awtoap вне форума   Ответить с цитированием
Старый 23.06.2017, 00:01   #1058
oleg707
Гуру
 
Аватар для oleg707
 
Регистрация: 16.04.2014
Возраст: 40
Город: Gdynia
Регион: другой - для добавления сообщить ab
Сообщений: 2,548
oleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond repute
По умолчанию

Цитата:
Сообщение от awtoap Посмотреть сообщение
А какие должны быть проблемы? Хотя это ведро и тут трабла может быть в самом не подходящем месте. Вообще можешь поставить эксперимент через внешний хаб и уже точно будешь знать пашет или нет.



Тут не в скорости дело, а в размере кода! У нас стоит задачи впихнуть не впихуемое.
Либо бери жирный проц изначально с усб, либо разнеси на два проца. Скажем управление логикой питальника на меге 48(8) и передачей ей временных параметров по уарт (спи). А на проце с усб вся остальная требуха.

Также размер кода будет зависеть от организации самого алгоритма твоего девайса. Если говоришь, что часто будет использоваться запись в порт, то оформляй повторяющиеся фрагменты кода через процедуры и функции.
тогда проще 2560 взять с ch340 и не заморачиваться.

Последний раз редактировалось admin; 23.06.2017 в 11:24.
oleg707 вне форума   Ответить с цитированием
Старый 23.06.2017, 10:25   #1059
jonikus81
Старший Пользователь
 
Аватар для jonikus81
 
Регистрация: 07.09.2015
Возраст: 43
Город: Алматы
Регион: Казахстан
Машина: MMC DELICA 94 (булка)
Сообщений: 209
jonikus81 is a jewel in the roughjonikus81 is a jewel in the roughjonikus81 is a jewel in the roughjonikus81 is a jewel in the rough
По умолчанию

Цитата:
Сообщение от oleg707 Посмотреть сообщение
тогда проще 2560 взять с ch340 и не заморачиваться.
И один проц будет проще прошивать, нежели 2 или 3. Согласен с awtoap, нужны эксперименты, а то теория очень часто разнится с практикой. Хаб желательно более 4х портов.
jonikus81 вне форума   Ответить с цитированием
Старый 23.06.2017, 17:05   #1060
oleg707
Гуру
 
Аватар для oleg707
 
Регистрация: 16.04.2014
Возраст: 40
Город: Gdynia
Регион: другой - для добавления сообщить ab
Сообщений: 2,548
oleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond reputeoleg707 has a reputation beyond repute
По умолчанию

Цитата:
Сообщение от jonikus81 Посмотреть сообщение
Хаб желательно более 4х портов.
места не хватает ((
и на разъёмы юсб тоже
oleg707 вне форума   Ответить с цитированием
Ответ

Метки
arduino, nexus7, блок питания, блок питания планшета


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

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

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



Часовой пояс GMT +4, время: 09:48.


Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot