Поиск сообщества
Показаны результаты для тегов 'Код'.
Найдено: 10 результатов
-
дано: библиотека кнопок вида: //кнопки #include "GyverButton.h" GButton b1(A0); GButton b2(A1); GButton b3(A2); GButton b4(A3); GButton b5(A4); GButton b6(A5); GButton b7 (2); GButton b8 (3); Собственно вопрос в том, как правильно объявить масив из кнопок, чтобы легко можно было конструкцию вида: b1.tick(); b2.tick(); b3.tick(); b4.tick(); b5.tick(); b6.tick(); b7.tick(); b8.tick(); if (b1.isPress()) bitWrite(buttons, 1 -1,1); if (b1.isRelease()) bitWrite(buttons, 1 -1,0); if (b2.isPress()) bitWrite(buttons, 2 -1,1); if (b2.isRelease()) bitWrite(buttons, 2 -1,0); if (b3.isPress()) bitWrite(buttons, 3 -1,1); if (b3.isRelease()) bitWrite(buttons, 3 -1,0); if (b4.isPress()) bitWrite(buttons, 4 -1,1); if (b4.isRelease()) bitWrite(buttons, 4 -1,0); if (b5.isPress()) bitWrite(buttons, 5 -1,1); if (b5.isRelease()) bitWrite(buttons, 5 -1,0); if (b6.isPress()) bitWrite(buttons, 6 -1,1); if (b6.isRelease()) bitWrite(buttons, 6 -1,0); if (b7.isPress()) bitWrite(buttons, 7 -1,1); if (b7.isRelease()) bitWrite(buttons, 7 -1,0); if (b8.isPress()) bitWrite(buttons, 8 -1,1); if (b8.isRelease()) bitWrite(buttons, 8 -1,0); заменить на: for(i=1;i<=8;i++){ if (b{i].isPress()) bitWrite(buttons, i -1,1); if (b[i].isRelease()) bitWrite(buttons, i -1,0); } как мне объявить массив из пользовательских переменных и возможно ли это вообще с учетом разных входных данных конструктора? Благодарю всех ответивших!
-
МК ATMEGA16 и индикаторы ( Ошибка в коде, не могу решить )
Sambler опубликовал тема в МК для начинающих
У меня была похожая тема, я решил проблему установив в include util/delay.h Но возникла еще одна ошибка, не могу понять, что оно хочет p.s. Я обещал, что предыдущая - последняя тема, но я ошибся, не думал, что тут 2 разные программы будут. В этот раз 100 процентов последняя тема и пойду сдавать работы Ы)- 11 ответов
-
- микроконтроллер
- atmega16
-
(и ещё 1 )
C тегом:
-
Хочу научиться мастерству раскодировки автомагнитол. Имеется магнитола Volksvagen, магнитола не моя, владелец не знает, несколько раз был введен не верный код, повторный ввод кода возможен через час. http://codedradio.info/?i=bn&st=7+612+002+044 Наименование: VW Модель: NAVIGATION LOWLINE MP3 Защита: CODE 0000-1999 Номер: 1K0 035 191D 7 612 002 044 Производитель: BLAUPUNKT Процессор: D70F3079 + STA2052 Память: M95320 smd + M25P10 smd Серийный номер: VWZ1Z2G7410210 Есть дамп из флеш памяти M25P10, считать дамп из eeprom M95320, через программатор CH341A не получается. (не знаю толком что выбрать в списке чипов (поиск чипа), пробывал методом тыка, но это не увенчалось успехом.) Собственно как раскодировать магнитолу?
- 1 ответ
-
- Volksvagen
- Автомагнитола
- (и ещё 6 )
-
Добрый день. Подскажите есть устройство на плате для регулирования дроссельной заслонки от Калины. Довольно специфическое, индивидуальная разработка, аналогов не купить. Основывается на микроконтроллере ATXMEGA128A3U AU 1651. Возможно ли скопировать залитый в него код что бы изготовить данное устройство ? Или это невозможно в принципе ?
- 20 ответов
-
- микроконтроллер
- код
-
(и ещё 1 )
C тегом:
-
Помогите, пжл. Сделал простенькую паяльную станцию на stm32f103c8t6. Регулировка сделана ПИД-регулятором. Все работает для заданной программно температуры. Добавил две кнопки + и -. //Опрос кнопок if (GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_9) == 0) { setTemp -= 5; } if (GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_10) == 0) { setTemp += 5; } //ПИД регулятор if (setTemp >= 0) { regTmpErr = setTemp - measureT; // вычисление ошибки рассогласования regTmpInt = regTmpInt + regTmpErr * koeffRegTmpInt; // интегральная часть if (regTmpInt < 0) regTmpInt = 0; // ограничение снизу if (regTmpInt > MAX_PWM) regTmpInt = MAX_PWM; // ограничение сверху regTmpPr = regTmpErr * koeffRegTmpPr; // пропорциональная часть regTmpDif = (regTmpErr - regTmpErrPrev) * koeffRegTmpDif; // дифференцирующая часть regTmpErrPrev = regTmpErr; // перегрузка предыдущей ошибки pwmVal = (u16) regTmpInt + regTmpPr + regTmpDif; // сумма составляющих if (pwmVal < DEAD_TIME) pwmVal = 0; //мертвое время ШИМ if (pwmVal > (MAX_PWM - DEAD_TIME)) pwmVal = MAX_PWM; TIM_PWMOutput(pwmVal); } else { pwmVal = 0; TIM_PWMOutput(pwmVal); } Но при нажатии, происходит, что-то для меня непонятное: нажал + температура начинает расти без остановки, - соответственно вниз температура. Что я не правильно делаю?
-
Сколько будет стоить сгенерировать код для Магнитолы BLAUPUNKT модель: VW ALPHA CC VWZ1Z1 7 644 840 060 VWZ1Z1T7042165 в Беларуси?
-
Здравствуйте! Ноутбук не выводит изображение. Подсвечивал экран фонариком, изображения нет. Подключил post карту к плате ноутбука Petronas D 15E Для отключения дискретной графики снимал резистор, R831. Карта показывает код - 54 и моргает диод CLK. Подскажите, пожалуйста, куда копать дальше. Буду очень благодарен.
-
Помогите с прошивкой вылезает ошибка , пытаюсь собрать вот такой девайс http://cxem.net/arduino/arduino148.php
-
Подскажите, если я хочу получить на выходе прибора именно прямой двоичный восьмиразрядный код, что я должен использовать -- шифратор, дешифратор, какой-то определенный, их оба или вообще что-то другое. Вот у меня например есть прибор с которого я снимаю числа в десятеричний системе (подсчитанные импульсы, какое-то значение емкости или другое, как пример) оно подается на счетчик, с его на восьмиразрядный регистр, что может быть дальше? На что нужно обращать внимание работая с таким кодом?
-
Я только начал учить программирование , написал небольшой код для схемы код компилируется и работает ,но вот есть такой баг . Если нажать 2 кнопки, то как надо побегут 2 светодиода . Но если потом пустить обе и нажать первую , снова бегут 2 светодиода . Как это решить? Готовый код не прошу, прошу направить куда копать .Понимаю что по логике должна быть какае-то очистка или сброс на начало . //atmega8 #define F_CPU 8000000 #include <avr/io.h> #include <util/delay.h> void preset(){ DDRB = 0xFF; PORTB = 0x00; DDRC = 0x00; PORTC = 0xFF; } int main(void) { preset(); while(1) { if(PINC&(1<<(PC1&PC0))) { for (int i=0;i<=7;i++) { PORTB = (1<<i) | (2<<i); _delay_ms(300); } } else { if(PINC&(1<<PC0)) { for (int i=0;i<=7;i++) { PORTB = (1<<i); _delay_ms(150); } } else { if(PINC&(1<<PC1)) { for (int i=7;i>=0;i--) { PORTB = (1<<i); _delay_ms(150); } } else PORTB = 0x00; } } } }