ATtiny13A 101 применение

jeka_tm
jeka_tm аватар
Онлайн
Зарегистрирован: 19.05.2013

вот этот кусок вас не смущает?


  if(millis()-time<50 && pwm==0 && eep<=180){
    pwm=eep;
  }

 

Unreturned
Offline
Зарегистрирован: 04.05.2013

maksim пишет:

Программирование  ->  constrain()

#include <EEPROM.h>                     

byte eep,b1,b2=0;                       
int pwm=0;                             
unsigned long time,timeB1,timeB2;

void setup()
{
     pinMode(0,OUTPUT);
}
void loop()
{
      pwm=constrain(pwm,0,255);          //ограничиваем диапазон pwm от 0 до 255
     time=millis();             //запускаем таймер и очевидные проверки,
     eep=EEPROM.read(0);        //проверить, запустилисть мы с нуля или нет
     if(millis()-time<50&&pwm==0)
   {
     if(eep<=180)                //если у нас шим был больше 180, то сбрасываем в базовые значения
     pwm=eep;
   }
     
  
     b1=digitalRead(3);          //кнопки
     b2=digitalRead(4);

     if(b1==HIGH)               //определяем нажатие клавиш, 50мс для антидребезга и +1 для счётчика
  {
       if (millis()-timeb1>50)
      {
       timeB1=millis();
       pwm++;
      }
  }
 
    if(b2==HIGH)                //определяем нажатие клавиш...      
  {
       if (millis()-timeB2>50)
     {
        timeB2=millis();
        pwm--;
     }
  }
     
     analogWrite(0, pwm);      //пишем значение шим

     if (digitalRead(2)==LOW)  //определяем есть ли напряжение до стабилизатора.
     {                         //(на тиньке висит толстый кондёр, если с блока
       EEPROM.write(0,pwm);    //питания пропадёт напруга - пишем текущее значение в еепром)
       delay(500);             //ну это буду подбирать в зависимости от толщины кондёра
     }
 }

спасибо за науку, но - как и в первом приведённом вариате. максимальное значение НЕ сбрасывается, а минимальное сбрасывается. если прописать pwm=constrain(pwm,1,255); то работает как надо, НО нет 0% шима. 

если не использовать еепром - тоже работает адекватно и с 0% шима.

если переменную pwm присвоить byte, то и максимальное значение сбрасывается...

может попробовать писать в две ячейки еепрома? уже незнаю что и думать, из разряда - должно работать, а не работает.

Unreturned
Offline
Зарегистрирован: 04.05.2013

jeka_tm пишет:

вот этот кусок вас не смущает?




  if(millis()-time<50 && pwm==0 && eep<=180){
    pwm=eep;
  }

 

если от старта девайса прошло меньше 50мс, плюс pwm  в базовом значении да ещё и шим на момент выключения был не более 180, то запускаем движок со значением из еепрома. что я сделал не так?

jeka_tm
jeka_tm аватар
Онлайн
Зарегистрирован: 19.05.2013

да прочитайте внимательнее. у вас это крутится в loop. и получается от старта девайса только первый раз, а потом постоянно повторяется. прочтете внимательнее и поймете почему постоянно шим становится равным eep

Unreturned
Offline
Зарегистрирован: 04.05.2013

jeka_tm пишет:

да прочитайте внимательнее. у вас это крутится в loop. и получается от старта девайса только первый раз, а потом постоянно повторяется. прочтете внимательнее и поймете почему постоянно шим становится равным eep

знаю не по наслышке, что такое "замылился глаз". могу не видеть очевидных вещей, в данном условии если millis()-time больше 50мс (хоть сейчас и проверил на 5мс) то шим НЕ приравнивается к еер. 

иначе регулировка с кнопок не работала бы и движок крутился со скоростью из еепрома, так?

ну для меня то это решение очевидно, я же и спросил - где я ошибаюсь?

 

jeka_tm
jeka_tm аватар
Онлайн
Зарегистрирован: 19.05.2013

попробуйте для начала так





#include <EEPROM.h>                     

byte eep,B1,B2=0;                       
byte pwm=0;                             
unsigned long time,timeB1,timeB2;

void setup()
{
  pinMode(0,OUTPUT);
  eep=EEPROM.read(0);
  pwm=eep;
}
void loop()
{
  B1=digitalRead(3);          //кнопки
  B2=digitalRead(4);

  if(B1==HIGH)               //определяем нажатие клавиш, 50мс для антидребезга и +1 для счётчика
                             // ++++ кнопка по моему некорректно в некоторых случаях будет обрабатываться
  {
    if (millis()-timeB1>50)
    {
      timeB1=millis();
      if (pwm < 255){        //++++ это чтобы не переполнялся PWM и не переходил в ноль после 255
        pwm++;
      }
    }
  }

  if(B2==HIGH)                //определяем нажатие клавиш...      
  {
    if (millis()-timeB2>50)
    {
      timeB2=millis();
      if(pwm>0){
         pwm--;               //++++ чтобы не было скачка с 0 на 255
      }
    }
  }

  analogWrite(0, pwm);      //пишем значение шим

  if (digitalRead(2)==LOW)  //определяем есть ли напряжение до стабилизатора.
  {                         //(на тиньке висит толстый кондёр, если с блока
    EEPROM.write(0,pwm);    //питания пропадёт напруга - пишем текущее значение в еепром
    delay(500);             //ну это буду подбирать в зависимости от толщины кондёра
  }
}

 

Unreturned
Offline
Зарегистрирован: 04.05.2013

jeka_tm пишет:

попробуйте для начала так







#include <EEPROM.h>                     

byte eep,B1,B2=0;                       
byte pwm=0;                             
unsigned long time,timeB1,timeB2;

void setup()
{
  pinMode(0,OUTPUT);
  eep=EEPROM.read(0);
  pwm=eep;
}
void loop()
{
  B1=digitalRead(3);          //кнопки
  B2=digitalRead(4);

  if(B1==HIGH)               //определяем нажатие клавиш, 50мс для антидребезга и +1 для счётчика
                             // ++++ кнопка по моему некорректно в некоторых случаях будет обрабатываться
  {
    if (millis()-timeB1>50)
    {
      timeB1=millis();
      if (pwm < 255){        //++++ это чтобы не переполнялся PWM и не переходил в ноль после 255
        pwm++;
      }
    }
  }

  if(B2==HIGH)                //определяем нажатие клавиш...      
  {
    if (millis()-timeB2>50)
    {
      timeB2=millis();
      if(pwm>0){
         pwm--;               //++++ чтобы не было скачка с 0 на 255
      }
    }
  }

  analogWrite(0, pwm);      //пишем значение шим

  if (digitalRead(2)==LOW)  //определяем есть ли напряжение до стабилизатора.
  {                         //(на тиньке висит толстый кондёр, если с блока
    EEPROM.write(0,pwm);    //питания пропадёт напруга - пишем текущее значение в еепром
    delay(500);             //ну это буду подбирать в зависимости от толщины кондёра
  }
}

 

вот о чём я и говорил - простейшее и очевидное решение, а я протупил. ОГРОМНОЕ ЧЕЛОВЕЧЕСКОЕ СПАСИБО!!!

jeka_tm
jeka_tm аватар
Онлайн
Зарегистрирован: 19.05.2013

был рад помочь. у самого такое бывает

Unreturned
Offline
Зарегистрирован: 04.05.2013

поигрался с шимом, 37,5 не понравилось, на затворе полевика прямоугольники ломаются, полевик греется. если уменьшать ядром, то получается 4,6кгц - движок песни поёт.

взгруснулось, заглянул в даташит - вообще депресняк. полез в гугль, койчего накопал. расположу здесь, чтоб не потерять.





void setup()
{
PORTB=0x00;  //записать в весь порт В 0
DDRB=0x01;   //настроить порт В 0x01: по другому 000001 (1 означает выход, 0 вход)
TCCR0A=0xC1; // настраиваем аппартанный шим на PB0 с частотой 17кГц
TCCR0B=0x01; //делитель
OCR0A=0x00; //обнуляем пин
}

void loop()
{
OCR0A=127;//50% шима
}

в итоге получил частоту 17кгц, правда шим в инверте, но это всё фигня, главное движок не слышно, полевик не греется и на меандр любо-дорого посмотреть 

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

А мне нравится 3-5 кГц звук ШИМ, ну не то чтобы слушал день и ночь, но когда двиг поёт на такой частоте как-то даже прикольней чтоле.

Андрей01
Offline
Зарегистрирован: 04.11.2013

Спрасибо за интересную тему, сам атмегу 8 запрограмировал так, вопрос - при установке архива в Arduino-1.0.4 у меня встало только 2мк (Аттини 13 9.6MHz и Аттини 13   1MHz (defauld)) так и должно быть?

А так очень интересна цена ее -25р в Перми, остальные стоят наравне с атмега 8.

axill
Offline
Зарегистрирован: 05.09.2011

Андрей01 пишет:

А так очень интересна цена ее -25р в Перми, остальные стоят наравне с атмега 8.

в Китае десяток тини13 можно купить за 4.5 доллара (порядка 18 рублей по сегодняшнему курсу за штуку). Десяток мег стоит 8 за простую и 10 за мегу8 с индексом А (усовершенствованная версия)

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Тоесть только 2 тиньки и всё?

"Итак, для начала нам нужно скачать(силка из 2-го поста) данный архив(взято отсюда) положить файлы по адресу "\Documents\Arduino\hardware\" должно получится чтото типо "C:\Users\Администратор\Documents\Arduino\hardware\attiny13\cores\core13". "

Андрей01
Offline
Зарегистрирован: 04.11.2013

Вроде всё правильно, или кроме архива на тиньку надо остальные файлы скачать?

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Остальные файлы? Вы о чём? Там по силке текстовый файл с подсказкой и архив который нужно распаковать.

Андрей01
Offline
Зарегистрирован: 04.11.2013

Хм, ну тогда получается правильно, главное, чтоб мк неумертвить из за незалитой инфы. Надо будет купить и залить скеч на моргание светика в мк.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Андрей01 пишет:

Хм, ну тогда получается правильно, главное, чтоб мк неумертвить из за незалитой инфы. Надо будет купить и залить скеч на моргание светика в мк.

По моему опыту умертвить можно если играться с опцией зашить загрузчик, а так ничего произойти не должно.
Выбирайте дефолтные (Attiny13 1 MHz (default)) настройки и всё.

 

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Народ, почему-то не получается нормально ресетить тиньку по ватчдогу, вот код:

#include <avr/io.h>
#include <avr/wdt.h> // здесь организована работа с ватчдогом
#include <avr/sleep.h> // здесь описаны режимы сна
#include <avr/power.h>
//#include <avr/interrupt.h> // работа с прерываниями

int main( void )
{
  DDRB = 0b10111;  // порти PB0-PB2 и PB4 встановленні на вихід, PB3 на вхід.
  PORTB = 0x00;  // установим низкий уровень на всех портах
  WDTCR |= _BV(WDE); // разрешаем WDTIE

  /*
   PB3 делитель 5 кОм и 1 кОм(земля) + подстроечный резистор на 500 Ом 
   PB4 реле
   PB0 1-й светодод 100% заряда - 12.5 В.
   PB1 2-й светодод 65% заряда - 11.7 В.
   PB2 3-й светодод 35% заряда - 11.1 В.
   */
if(analogReadOversampled() <= 401 ) { // для обеспечения гистерезиса после отключения
    // при 11.7 В просыпаемся 
    PORTB |= (1<<2); // подмигнём, типа спим но питание есть
    system_sleep_8S();
 }
  
  /*for(byte i = 0; i <= 2; i++){    // диагностика
   PORTB = 1<<i;
   delay(500); //_delay_ms(50);
   }*/
   
  while(1){
    //wdt_enable(WDTO_1S); // защита от зависаний, не сбросим через
    // если не сбросим тогда будет ресет 
    PORTB &= ~(1<<0);
    PORTB &= ~(1<<1);  // гасимо світлодіоди 100% 65% 35%
    PORTB &= ~(1<<2);
    
    int voltage = analogReadOversampled(); 
    
    if(voltage >= 358 && voltage <= 512) { 
      PORTB |= (1<<4);  // Якщо  напруга більше ніж 10.5 і менше чим 15 В вмикаємо реле і запускаємо виконання циклу
      if(voltage >= 445 ) {  // якщо  напруга більше ніж 13 В то мигаємо усіма світлодіодами 
        delay((((542 - voltage) / 4) * 50)); 
      } // інтенсивність мигання залежить від величини напруги, є 4 режими інтенсивності
      if(voltage >= 428 ) { 
        PORTB |= (1<<0); 
      }  // 1-й світолодіод 100% заряда - 12.5 В.
      if(voltage >= 401 ) { 
        PORTB |= (1<<1); 
      }  // 2-й світолодіод 65% заряда - 11.7 В.
      if(voltage >= 378 ) {
        PORTB |= (1<<2); 
      }  // 3-й світолодіод 35% заряда - 11.1 В.  
      if(voltage <= 377 ) { 
        PORTB |= (1<<2);    // якщо напруга нижче 11.1 В. тоді мигаємо світлодіодом 30% інтенсивність залежить від величина нипруги   
        delay((((voltage - 350) / 4) * 50)); // інтенсивність залежить від величина напруги   
        PORTB &= ~(1<<2); 
      }
      delay(10); 
      //wdt_reset(); // если дошли до сюда тогда
      // сбросим защиту от зависаний
    }   
    else { 
      //PORTB &= ~(1<<4); // для мосфета
      system_sleep_8S(); 
    } // інакше реле вимикаємо і засинаємо до ресету
  }
  return 0;
}

unsigned int ADC_READ(){  // ініціалізуємо АЦП
  ADMUX = 3; // ADC pin
  ADCSRA |= 1<<ADEN;
  ADCSRA |= 1<<ADSC;
  while(!(ADCSRA & (1<<ADIF)));
  ADCSRA |= 1<<ADIF; 
  byte low  = ADCL;
  byte high = ADCH;
  ADCSRA &= ~(1 << ADEN);  // вимикаємо АЦП
  return (high << 8) | low;
}

void system_sleep_8S(){ // сон на 8 сек
  PORTB = 0x00; // потушым все диоди и откл. реле
  wdt_reset(); // сбрасываем ватчдог
  wdt_enable(WDTO_1S); // разрешаем ватчдог 8 сек(1 сек для отладки)
  //WDTCR |= (1<<WDE); // разрешаем прерывания по ватчдогу. Иначе будет резет.
  //sei(); // разрешаем прерывания
  set_sleep_mode(SLEEP_MODE_PWR_DOWN); // если спать - то на полную
  while(1) {
    sleep_enable(); // разрешаем сон
    sleep_cpu(); // спать!
  }
}

// оверсемплинг для большей точности и меньших шумов
unsigned int analogReadOversampled(){
  unsigned long aSum = 0;   // the sum of all analog readings
  for(int i = 0; i < 16; i++) 
    aSum += ADC_READ(); // read and sum 16 ADС probes
  return aSum >> 4;   // ..
}

Суть проблемы, хотел сделать чтобы тинька при определённом напряжении заводила ватчдог и уходила в сон, потом просыпалась, проверяла не поднялось ли напряжение выше гистерезиса, я решил делать это в сетапе, если поднялось тогда "поехали" а нет так опять заводим ватчдог и сон...

Как говорит один юзер:

dimaris пишет:

Проверил новый скейтч, работа следующая: при напряжении больше 12 вольт- быстро мигает РВ4, ниже 12 но выше 11,5 вообще все мигает, от 11,5 до 10,7 мигают РВ4 РВ2 РВ1, ниже 10,7 все молчит.

У меня пока нету железа и соответственно протестировать в реальном железе не получается, а протеус у меня как-то работает непонятно...

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Обновил файлы ядра "Version 0.18.5".

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Убрал мелькую ошибку в файлах ядра, просто перекачайте.

Илья МГУ
Offline
Зарегистрирован: 18.03.2014

Джентльмены, просветите тёмного: 

Вот как залитвать бутлоадер в ATtiny13A или там 85, всё всё ясно. Мне, так проще через AVR8 Burn-O-Mat , благо наловчился с АТмегами.

А вот скетч из ИДЕшки как в неё загрузить? Неужели, соединение проводов такое же как при загрузке бутлоадера? Ну, как по этой ссылке:

http://research.andbas.com/2012/09/arduino-isp-programmer-for-attiny-45-...

MaksMS
Offline
Зарегистрирован: 11.03.2013

ATtiny так таковые загрузчики не поддерживают - у них даже нет соотвествующих фьюзов. Загрузчик можно использовать только через костыли .а для ATtiny13 вообще не имеет смысла - там и так очень мало флеша.

Так что прошивать проще через ардуино или через программаторы,например через дешевый USBasp

Илья МГУ
Offline
Зарегистрирован: 18.03.2014

MaksMS пишет:

ATtiny так таковые загрузчики не поддерживают - у них даже нет соотвествующих фьюзов. Загрузчик можно использовать только через костыли .а для ATtiny13 вообще не имеет смысла - там и так очень мало флеша.

Так что прошивать проще через ардуино или через программаторы,например через дешевый USBasp

 

Всё, вопрос снят. Загрузчики эти малышки очень даже поддерживают. Вот путёвая ссылка:

http://e.mail.ru/cgi-bin/link?check=1&refresh=1&cnf=b1ba56&url=http%3A%2...

Всё как у больших, загрузка скетча из Идешки, бутлоадера через ИСП, или дудку. Буду пробовать этот самый диджиспарк.

MaksMS
Offline
Зарегистрирован: 11.03.2013

Илья МГУ пишет:

MaksMS пишет:

ATtiny так таковые загрузчики не поддерживают - у них даже нет соотвествующих фьюзов. Загрузчик можно использовать только через костыли .а для ATtiny13 вообще не имеет смысла - там и так очень мало флеша.

Так что прошивать проще через ардуино или через программаторы,например через дешевый USBasp

 

Всё, вопрос снят. Загрузчики эти малышки очень даже поддерживают. Вот путёвая ссылка:

http://e.mail.ru/cgi-bin/link?check=1&refresh=1&cnf=b1ba56&url=http%3A%2...

Всё как у больших, загрузка скетча из Идешки, бутлоадера через ИСП, или дудку. Буду пробовать этот самый диджиспарк.

/p

Вы хоть ссылки давайте не из личного почтового ящика. Пользователи к вам в ящик не смогут зайти ,если только логин и пароль тут опубликуете :)

На счет загрузчика :  подойдет только к аттини85 ,занимает 2кб флеша. Использует программный USB.

Илья МГУ
Offline
Зарегистрирован: 18.03.2014

MaksMS пишет:

Вы хоть ссылки давайте не из личного почтового ящика. Пользователи к вам в ящик не смогут зайти ,если только логин и пароль тут опубликуете :)

Сорри, путаю педали :) вот эта ссылка: http://arduino-uno.ru/blog/ideas/6.html

dimaris
dimaris аватар
Offline
Зарегистрирован: 27.03.2012

У меня вопрос по коду из #47 поста. А можно заставить контроллер еще что нибудь параллельно делать? Менять логический уровень на ноге с запоминанием это хорошо, а вот скажем другими ногами дергать или измерять что-то независимо от ожидания нажатия на кнопку? 

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Конечно, можно генерировать прерывание по нажатию на кнопку, соответственно пока кнопка не нажата исполняется основной код, когда нажимаем тогда исполняется тот кусочек кода что в векторе прерывания(как бы функция)... как-то так.

http://www.youtube.com/watch?v=NP1K_jPg3jg
 

dimaris
dimaris аватар
Offline
Зарегистрирован: 27.03.2012

Подскажите как на attiny13 реализовать внешнее прерывание? Что-то никак не получается, ругается на attachInterrupt. Или я что-то не так делаю.

AS
Offline
Зарегистрирован: 12.03.2014

Первая ссылка в гугле показывает, как правильно использовать прерывания в этом контроллере. Вот ссылка на полный исходник.

interrupt [TIM0_COMPA] void timer0_compa_isr(void)

 

dimaris
dimaris аватар
Offline
Зарегистрирован: 27.03.2012

В исходнике не подготовленному довольно сложно разобраться. А есть какая нибудь более понятная 'рыба' с приминением прерывания? К сожалению я не программист, но всетаки надеюсь на вашу помощ и понимание.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Вот что-то путное http://kernel.pro/articles/microcontroller/attiny13/ и компилиться без проблем, вектора http://www.stepwood.com/avrsuite/2012/03/13/vektora-preryivaniy-attiny13/ .

Очень качественный видео урок по прерываниях http://www.youtube.com/watch?v=NP1K_jPg3jg 

 

К сожалению пока поюзать эти сылки желания нет, только видео посмотрел, вроде как понятно что и как, но а опыта работы  с прерываниях ещё нету.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Читал где-то что можно как-то в коде изменять частоту камня, получается уменьшение энергопотребления, пожалуйста ткните меня носом как это делается.

MaksMS
Offline
Зарегистрирован: 11.03.2013

Частота управляется через регистр XDIV ,но его как я понял нет во многих atmega в том числе и в attiny..

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Так как я имею возможность править все свои посты то возникла идея, написать во втором посте темы как пишутся ардуиновские функции на Сишке, ведь для ATtiny13 экономия места актуальная для ATtiny13 тема.

renoshnik
Offline
Зарегистрирован: 11.04.2013

Прошу прощения, это http://arduino-uno.ru/blog/ideas/6.html тоже самое, что вы здесь обсуждаете или это уже другая история ???

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Немного разные вещи как по цене, так и по количеству памяти.

Unreturned
Offline
Зарегистрирован: 04.05.2013

HWman пишет:

Так как я имею возможность править все свои посты то возникла идея, написать во втором посте темы как пишутся ардуиновские функции на Сишке, ведь для ATtiny13 экономия места актуальная для ATtiny13 тема.

digitalRead(2); - PINB&(1<<PB2);  //проверяем состояние вывода PB2 например 

if ((PINB&(1<<PB2))==HIGH)
{
}

 

renoshnik
Offline
Зарегистрирован: 11.04.2013

HWman пишет:

Немного разные вещи как по цене, так и по количеству памяти.

я не про контроллер (с этим понятно) я про софтовую часть спрашивал....

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Для тини13 бутлоадер не оправдан из за небольшого количества памяти, может и есть где-то но он будет кушать думаю больше половины памяти контроллера.
Да и в моих инетмагазинах тини85 стоит как АТмега8 в дип корпусе.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Unreturned пишет:

HWman пишет:

Так как я имею возможность править все свои посты то возникла идея, написать во втором посте темы как пишутся ардуиновские функции на Сишке, ведь для ATtiny13 экономия места актуальная для ATtiny13 тема.

digitalRead(2); - PINB&(1<<PB2);  //проверяем состояние вывода PB2 например 

if ((PINB&(1<<PB2))==HIGH)
{
}

 

Взял отсюда http://www.myrobot.ru/articles/p_avrgcc_ver.php

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Снял видеоинструкцию по прошивке тини13 при помощи ардуино:

https://www.youtube.com/watch?v=MS5i7fnlPBM

renoshnik
Offline
Зарегистрирован: 11.04.2013

HWman пишет:

Снял видеоинструкцию по прошивке тини13 при помощи ардуино:

https://www.youtube.com/watch?v=MS5i7fnlPBM

 

отлично ... видео плюсанул ...

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

renoshnik пишет:

отлично ... видео плюсанул ...

Правда получилось как-то затянуто, при пересмотре ставил скорость воспроизведения х1.5 и думаю всё таки видео нужно было ускорить немного при монтаже...

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Ещё одно применение:

https://www.youtube.com/watch?v=WXdDA3vwT7I

Точность в теории должна быть +/- 0.01 В, дискретность 0.01 В.

Жаль что нету 74CH595 потестить.

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013
nik071
Offline
Зарегистрирован: 03.07.2013

Привет всем! У меня на машине погас вентелятор ! Как оказалось у него электронный реоста, с блока двигателя идёт шим ,реостат его мериет и упровляет тоже шим выходным каскадом , скорости 3 причём на выключение тоже есть скважность тобиш 4 значение ,я решил немного поэканомить и заказал тини13 думаю инпульс померию и шимом поупровляю мне интересно как поведет себя таймер ведь он один и мерить и шимом упровлять одновременно ? Я не зною это первый вопрос . А второй даже не знаю с чего начать я скачал кучу архивов пытался распокавать сначало в мои документы в папку ардуино хардвайс но глухо в списке тиньки нет ,потом в программы файла в папку ардуино тоже глухо ,после дня манипуляций а сегодня4 день я выиснил что если в моих документах в папке ардуино создать папку хардвайс то нужно ещё и в ней папку ардуино создать и туда как минимум поместить распакованый архив тагда поевляется Тини но астральные пропадают это раз если распакованый архив поместить в программ файла  ардуино хардвайс ардуино то Тини поевляется вместе с остальными вроде как нормально но комперировать примеры даже блин не хочет ну не как куча красных строк и ни как , я конечно соберу лпт програматор так как не получилось ардуиной мега в качестве испа и как првельно унипрогом попробую залить но кампелировать все равно не получается у вас как-то все просто на видео у меня нет , было бы не плохо если кто ни будь скопировал уже рабочию всю папку ардуно из програм файл и если надо и из моих документов что бы я мог хотя бы компелироват программы . Ещё я много просила как народ мучиется с прошивко тиньки 13 и из за  маленикого количества ног уарт не одерживает толь софтовый не дай бог ногу ресата перекофигурировать надо будет делать высоковольтовыц программ автор но микруха мне нравиться очень маленькая и часто много ног не надо так что хочу до конца разобраться помогите помогите плиз и по русскому у меня 2 было такчо на ошибки ой, тему новую не хотел создовать тут вроде как все есть но у меня не работает а с ардуино мега все замечательно ,не хотел уже распаеную мини про с юисби покупать 600р а тинька 50р

dimaris
dimaris аватар
Offline
Зарегистрирован: 27.03.2012

У тебя какая винда стоит? Я со своей семеркой тоже по началу промучился. Распаковываешь архив с ардуино и при первом запуске она создает свою папку в документах. Вот туда и кидая ядро attiny13.

nik071
Offline
Зарегистрирован: 03.07.2013

на ноуте хп на компе 7винда !!! папка ардуино в моих документах есть в ней в ручную создаю папку хардвайс если суда архив положить состоящий из папки коре(ядро) и фойла с тиньками этот файл я понел обезателен то ничего не происходит а вот если еще и папку ардуино в папке хардвайс создать и уже туда бросить архив то гуд тиньки есть причем астольные проци проподают которые там были но это ладно меня тини интересует поивилась в списке я этого добился открываю пример любой например блинк меняю ногу 13 на 3 или другую а компелировать не хочет затра коперну большой список красным цвето что снижу выводит и файла c пршивко нету .........выложите плиз папку из документов и папку самой програмы которая распоковывается в програм файл ардуино по умолчанию . вроде все просто но чтото глухо вот беда!!!! народ помогите

nik071
Offline
Зарегистрирован: 03.07.2013

причем и одновремено ложил архив просто в папку хардвайс и в созданую там папку ардуино

 

HWman
HWman аватар
Offline
Зарегистрирован: 26.02.2013

Можно глупый вопрос? Моё видео смотрели?

https://www.youtube.com/watch?v=MS5i7fnlPBM

И ещё небольшой совет, уважайте Ваших собеседников, если Вы несильны в Русском то включите проверку правописания(чтобы тут работало ещё нужно нажать "Источник" слева в вверху), а если слов не знаете тогда зайдите сюда https://translate.google.com/?hl=ru .

ЗЫ У меня та же беда, но я не совсем ленюсь проверять что написал.