Найдено 265 результатов

AntonChip
02 сен 2014, 18:08
Форум: Микроконтроллеры AVR
Тема: ШИМ-регулятор на Attiny13
Ответы: 50
Просмотры: 190967

Re: ШИМ-регулятор на Attiny13

denis4411 писал(а):Помогите подправить прошивку на 4 режима: 100%, 60%, 30%, 0%(выключено)
Нудно поменять значения в этой строчке и оставить только 4 значения, должно получиться так

Код: Выделить всё

const unsigned int button_preset[4] = { 0, 19046, 38092, 63488}; // 0%, 30%, 60%, 100%
AntonChip
15 авг 2014, 15:04
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

Вход PB2 это вход АЦП, в зависимости от того какое напряжение на этом входе меняется скважность ШИМ
AntonChip
13 авг 2014, 22:58
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

ШИМ это значит все равно использование прерывания по таймеру, если хочешь чтоб все нормально работало. На сайте есть статья "Использование ШИМ", для примера пойдет. А для контроллера мотора я бы посоветовал использовать аппаратный ШИМ. Кстати контроллер печки я делал на attiny13, с перемен...
AntonChip
13 авг 2014, 19:00
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

Можно без прерываний сделать
AntonChip
13 авг 2014, 09:42
Форум: Микроконтроллеры PIC
Тема: Термометр на PIC12F683 и графическом дисплее NOKIA 3310
Ответы: 7
Просмотры: 18829

Re: Термометр на PIC12F683 и графическом дисплее NOKIA 3310

А мне не понятно, как закодировать свой символ. Объясните, пожалуйста. Символ "R" кодируется так 0xFE, 0x12, 0x12, 0x32, 0xCC это в шестнадцатиричном виде, в двоичном коде будет так: 0b11111110, 0b00010010, 0b00010010, 0b00110010, 0b11001100 , на экране будет выглядеть так, единичка это з...
AntonChip
12 авг 2014, 19:39
Форум: Микроконтроллеры PIC
Тема: Термометр на PIC12F683 и графическом дисплее NOKIA 3310
Ответы: 7
Просмотры: 18829

Re: Термометр на PIC12F683 и графическом дисплее NOKIA 3310

Используются символы 5х8 точек, например символ "R" кодируется так 0xFE, 0x12, 0x12, 0x32, 0xCC. В двоичном коде получается так: 00000 11110 10001 10001 11110 10010 10001 10001 т.е. первый столбец это 0xFE, второй 0x12 и т.д. Если надо поменять слово, в EEPROM ищи комбинацию 0xFE, 0x12, 0x...
AntonChip
12 авг 2014, 16:42
Форум: Микроконтроллеры PIC
Тема: Термометр на PIC12F683 и графическом дисплее NOKIA 3310
Ответы: 7
Просмотры: 18829

Re: Термометр на PIC12F683 и графическом дисплее NOKIA 3310

Для начала нужно проверить прошивку в железе, у меня пока нет возможности, только в Протеусе.
Какое слово нужно вывести?
AntonChip
12 авг 2014, 14:03
Форум: Микроконтроллеры PIC
Тема: Термометр на PIC12F683 и графическом дисплее NOKIA 3310
Ответы: 7
Просмотры: 18829

Термометр на PIC12F683 и графическом дисплее NOKIA 3310

Всем привет. Чтобы убрать надпись Radikaldesig.com достаточно заменить символы в EEPROM(выделенная область) на 0x00. Чтобы вывести свою надпись нужно раскодировать алгоритм вывода символов где на каждый символ приходится по 5 байтов. Ссылка на статью http://radioparty.ru/device-pic/483-thermometer-p...
AntonChip
08 авг 2014, 19:38
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

Scroodge писал(а):Не могу вкурить, мы ведь в установке на порт D уже подали все 0, потушили светодиод PortD=0x00?
Это инициализация, а дальше идет основной цикл
AntonChip
08 авг 2014, 18:46
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

При инициализации контроллера, т.е. после включения питания переменной s_1 присвоено значение 0, значит светодиод не горит при включении питания. Этой командой s_1++ к нашей переменной добавляем единицу при каждом отпускании кнопки. В бесконечном цикле переменную проверяем на значение 0, 1, 2, где у...
AntonChip
07 авг 2014, 21:09
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

Самый простой пример #include <avr/io.h> #include <util/delay.h> int main(void) { DDRB = 0x00; // Кнопка к PB0 PORTB = 0xFF; DDRD = 0xFF; // Светодиод к PD0 PORTD = 0x00; char s_1 = 0; while(1) { if((PINB & ( 1 << PB0)) == 0) { while((PINB & ( 1 << PB0)) == 0){} // Ждем отпускания кнопки _de...
AntonChip
07 авг 2014, 10:42
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

Для формирования разных частот можно использовать 16-ти битный таймер, который работает в режиме СТС , где для управления частотой сигнала в регистр ICR1 заносятся предварительно расчитанные значения, сигнал снимается с выхода OC1A.
AntonChip
18 июл 2014, 22:04
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

Вот пример опроса кнопок по таймеру volatile unsigned char kod_key; ISR (TIMER2_OVF_vect) { if (bit_is_clear(PIND, PD0)) kod_key = 1; else if (bit_is_clear(PIND, PD1)) kod_key = 2; else if (bit_is_clear(PIND, PD2)) kod_key = 3; else if (bit_is_clear(PIND, PD3)) kod_key = 4; else kod_key = 0; } настр...
AntonChip
13 июл 2014, 12:09
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

Все 8 кнопок можно опрашивать по прерыванию таймера, например сделать чтобы прерывание было каждые 10мс, а в самом цикле прерывания смотреть какой сигнал будет с кнопок, лог. 0 или лог. 1. Останется свободных еще 2 таймера, а их использовать для синхронного включения выключения нагрузки.
AntonChip
03 июл 2014, 17:20
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

При нажатии и удержании на кнопку должно быть постоянное переключение выхода или одноразовое? Просто не вникну в суть задачи
AntonChip
02 июл 2014, 11:42
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

А задержки разные между переключениями светодиодов разные, это так и должно быть?
AntonChip
01 июл 2014, 07:38
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

Специально для Рената пример кода синхронного мигания светодиодов, с использованием прерываний от двух таймеров. Кнопки подключены к PC3 - 0, светодиоды к PD3 - 0 #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> char s_1 = 0, s_2 = 0, s_3 = 0, s_4 = 0; volatile char pwm_counter...
AntonChip
19 май 2014, 15:44
Форум: Микроконтроллеры AVR
Тема: Светодиод и кнопка
Ответы: 47
Просмотры: 150072

Re: Светодиод и кнопка

Светодиод подключен к PB0, кнопка подключена к PD0 char temp = 0; while(1) { if(PIND.0 == 0} // Проверяем нажатие кнопки { while(PIND.0 == 0){}// Ждем отпускания кнопки temp++; delay_ms(100); } if(temp) { PORTB.0 = 1; // зажигаем светодиод } if(temp == 0) { PORTB.0 = 0; // гасим светодиод } if(temp ...
AntonChip
13 мар 2014, 18:51
Форум: Микроконтроллеры AVR
Тема: Как совместить 2 проекта: Частотомер и Термометр на DS18B20
Ответы: 4
Просмотры: 12037

Re: Как совместить 2 проекта: Частотомер и Термометр на DS18

Исправить if(counter == 4000)
на if(counter > 4000)

еще неправильно показывает минусовые температуры