Jump to content
boys028

Start-Stop Atmega8L

Recommended Posts

Приветсвую всех. Сижу уже месяц наверное в atmel studio и всё пытаюсь организовать запуск двигателя с кнопки. Порты прописать могу, зажечь потушить получается, но вот с кнопкой не получается. А именно нужно: нажал кнопку, отпустил -включилось зажигание, еще раз нажал держишь- стартер крутит пока не отпустишь, на заведенной нажал еще раз кнопку- зажигание выключилось. Помогите пожалуйста.

//START STOP
//ATMEGA 8

#define F_CPU 8000000
#include <avr/io.h>
#include "util/delay.h"
unsigned char zaj=5;
unsigned char starter=10;

void nastroika()
{

DDRC = 0b11111100;
PORTC=0b00000000;


}

int main(void)
{
nastroika();
while(1)
{
//Первое условие
if((!(PINC&(1<<PC0)))&&(zaj==5))			 //Если кнопка нажата, то...
{
_delay_ms(10);			 //задержка для защиты от дребезга
while(!(PINC&(1<<PC0)));	 //Ждем, когда отпустят кнопку
_delay_ms(10);			 //задержка для защиты от дребезга



PORTC= (1<<PC2);		 //Вкл зажигание
zaj=6;
_delay_ms(1000);
}

}



}





post-181820-0-92912200-1456065349_thumb.png

Share this post


Link to post
Share on other sites

ну так и пишите,

if( флаг включенного зажигания установлен && кнопка нажата)

{

включить стартер;

while(поканажата кнопка);

выключить стартер;

}

Share this post


Link to post
Share on other sites

ну так и пишите,

if( флаг включенного зажигания установлен && кнопка нажата)

{

включить стартер;

while(поканажата кнопка);

выключить стартер;

}

Да писал, что то не получается....

Share this post


Link to post
Share on other sites

Литиевые батарейки Fanso для систем телеметрии и дистанционного контроля

Системы телеметрии находят все более широкое применение во многих отраслях на промышленных и коммунальных объектах. Требования, предъявляемые к условиям эксплуатации приборов телеметрии и, как следствие, источников питания для них, могут быть довольно жесткими. Fanso предоставляет широкую линейку продукции, рассчитанной на различные условия эксплуатации, что позволяет подобрать батарейку для каждого конкретного применения, в том числе и для устройств телеметрии.

Подробнее

Ну хтя б нужно сначала включить стартер /зажигание а потом делать защиту от дребезга

Share this post


Link to post
Share on other sites

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

будет вложенное условие.

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

но могу вам сказать точно, с таким подходом программу писать не очень надежно, сильно много делев.

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

все задержки организованы на таймере, на этом же таймере висит опрос кнопок. на другом таймере подсчет оборотов.

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

сделайте несколько подпрограм:

1 запуск двигла в ручном режиме

2 запуск двигла в авто режиме

3 остановка двигла

по состоянию флагов определяйте в какую подпрограмму нужно войти

Share this post


Link to post
Share on other sites
                     

Приглашаем на вебинар Решения для построения ультразвуковых счетчиков жидкостей и газов на базе MSP430

Компэл совместно с Texas Instruments 23 октября 2019 приглашают на вебинар, посвященный системам-на-кристалле для построения ультразвуковых расходомеров жидкостей и газов на базе ядра MSP430. Вебинар проводит Йоханн Ципперер – эксперт по ультразвуковым технологиям, непосредственно участвовавший в создании данного решения. На вебинаре компания Texas Instruments представит однокристальное решение, позволяющее создавать точные недорогие счетчики жидкостей и газов.

Подробнее...

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

будет вложенное условие.

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

но могу вам сказать точно, с таким подходом программу писать не очень надежно, сильно много делев.

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

все задержки организованы на таймере, на этом же таймере висит опрос кнопок. на другом таймере подсчет оборотов.

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

сделайте несколько подпрограм:

1 запуск двигла в ручном режиме

2 запуск двигла в авто режиме

3 остановка двигла

по состоянию флагов определяйте в какую подпрограмму нужно войти

с таймера пока еще что то не разобрался, а за совет спасибо.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By Глеб Панков
      Собирал усилитель от Урала 114 в корпус, и при последней проверке (как оказалось - еще отнюдь не последней!) выявил, что он гудит. То есть не гудит так, как будто это фон сети, нет. Это импульсы частотой 5-6 герц, не выше. Гул появляется, если крутить ручку переменного резистора, который регулирует низкие частоты (по схеме R3).
      Проходные конденсаторы менял на пленку от фильтров блоков питания. R1 был заменен на 1 килоом, переменный резистор по входу - на 33 килоома. Напряжения на анодах V1.1 - 110 вольт, V1.2 - 100 вольт, V2 и V3 - 250 вольт. Напряжения на катодах такие же, как указано на схеме.
      Цепочку C9 R13 трогал - результата не принесло.
      Подскажите, что делать?
       

    • By ryabinin
      Здравствуйте.
      Прошу прощения за корявость изложения, с электроникой на Вы. Возникла следующая задача. Есть параллельно соединённая цепь одноцветных дип-светодиодов. Нужно сделать регулировку яркости диодов через сенсорную кнопку: первое касание включает цепь на максимальной яркости, каждое последующее уменьшает яркость на 25%, пятое касание выключает цепь. На фото - как реализовано подобное в китайском светильнике (кнопка тактовая). В гугле выдаёт более "объёмные" решения. За работающую схему с меня вознаграждение)


    • By BosveL
      Есть оптическая мышь. Её считывающий элемент устроен так, что когда мышка в покое, на светодиод (который подсвечивает этот элемент) подается напряжение 1.35 V и 4 mA. Но когда мышку двигаешь, светодиод загорается сильнее и напряжение на нём составляет уже 1.8 V и 24 mA. Необходимо сделать так, чтобы на ардуино приходила логическая единица, означающая, что мышку двигают. Я думаю это сделать с помощью мосфета, только не могу никак подобрать его. Он должен открываться при указанном напряжении (когда мышь двигается) и посылать через повышающий преобразователь 3.3 вольта (т.е. лог. единицу). Если это можно сделать не с помощью мосфета, подскажите пожалуйста свои мысли и идеи.
      ___
      Это будет маска для сна, которая замечает движение глаз в быстрой фазе сна и зажигает светодиоды (на самой маске). Ставил PIR датчик движения, он не хочет работать так близко, срабатывает в 1 из 5 случаев. А вот мышка подходит идеально. Заменил её светодиод на инфракрасный, теперь она работает в невидимом для человеческого глаза диапазоне. Кстати говоря этот ИК светодиод питается отдельно от мышки (с ней он работать не хочет). и теперь контакты, где был родной светодиод (красный) поступает указанные выше значения. Вот с этих контактов хочу взять логическую единицу.  Весь проект написан на ардуино, наработки скетча имеются. Я новичок, поэтому не могу подобрать мосфет. Искал в инете, понял как это работает, но не могу разобраться как его подобрать. Заранее спасибо за помощь.
    • By Alexandr Miller
      Не могу понять, (отмеченные контакты) это вывод на массу или косяк печати? Если вывод на массу, то почему на некоторых, вывода по 2-3 штуки ?

    • By Alexandr Miller
      Не могу понять, (отмеченные контакты) это вывод на массу или косяк печати? Если вывод на массу, то почему на некоторых вывода по 2-3 штуки ?

  • Сообщения

    • Микросхема "новая" вообще может левак, перемаркировка. Вообще то схема на эту мс есть в даташите и можно было с ней разбираться. Но управление конечно идет с процессора и надо смотреть питания и не греется ли она.
    • Марка Вольтметр В7-27А/1 Страна производитель СССР Год выпуска 1981 Состояние техническое, неисправный показывает перегрузку или набор чисел, внутри все на месте, есть пару замененных электролитических конденсаторов. Как достался так и продаю! Косметика на 4 отсутствует заглушка на верхней крышке есть потертости на корпусе. Комплект сам прибор могу в довесок кинуть различных кабелей, если это вам нужно конечно. Цена по сути металла. 6500 рублей Если есть вопросы все в ЛС и по существу, или на почту istomindimavolga@mail.ru Отправлю ТК выгоднее будет Энергия или ПЭК 400-600 рублей примерно. Можно и почтой но из-за веса может выйти дорого, могу рассчитать предметно! Оплата на карту СБ.  
    • Подозреваю что что то не ладное вот с этой микросхемой aci7210ee909-01.Это блютуз ,радио,мульти медио и управление стерео усилителем.
    • Посмотри вот это реле давления https://akvabak.ru/product/beziskrovoe-rele-davleniya-brd-10m-2-5/ Помимо кучи полезных вещей, там есть и ограничение частоты включений и индикация неисправности ГА как раз по времени наполнения. Меня смущает только цена и электронный датчик давления. Механический надежнее )
    • SamVal   все отлично , сделано и сказано.
    • А чего Вы ожидали? У Вас КРАВ внятно спросил -   
    • Уважаемые! А если использовать без каркасный дроссель. Типа такого Это плохо или хорошо. Чет в НЕТе мало по ним информации. Вот хотелось-бы услышать ваше мнение.
  • Покупай!

×
×
  • Create New...