Змінюй хід війни! Допомагай ЗСУ!

программа микроконтроллера AtTiny2313

🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #21
A = PORT (кнопка 1)
B = PORT (кнопка 2)

IF A = 1 and B = 1 THEN Portb = &B00000000

так наверное?
 
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #22
у данному випадку я б зробив два переривання - натиск та відпуск кнопки, а у головному циклі б крутив движок між ними

пс - що це за чудо-мова? інтуітивно якось зрозуміло, але я хз як там компілятор з нуля розбирається
 
Останнє редагування:
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #23
A = PORT (кнопка 1)
B = PORT (кнопка 2)

IF A = 1 and B = 1 THEN Portb = &B00000000

так наверное?

дописал в шапку
Config Portd.2 = Input
Config Portd.3 = Input
Shag1 Alias Portd.2
Shag2 Alias Portd.3

потом в тело
If Shag1 = 1 And Shag2 = 1 Then
Portb = &B00000000
End If

ни каких изменений...
 
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #24
Чикс, компилятор сам перестроит порт на вход, потому что кнопки висят на аппаратных интах и вся программа в обработчиках прерывания.

Ладно, сделаем через жопу:
If Knopka1=1 then
If Knopka2=1 then Portb=0 EndIf
EndIf

Но в таком случае таки придется перестроит порт на вход.
 
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #25
Чикс, компилятор сам перестроит порт на вход, потому что кнопки висят на аппаратных интах и вся программа в обработчиках прерывания.

Ладно, сделаем через жопу:
If Knopka1=1 then
If Knopka2=1 then Portb=0 EndIf
EndIf

Но в таком случае таки придется перестроит порт на вход.

invalid datatype....
 
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #26
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #27
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #28
У меня там And не было
 
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #29
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #30
Ааааа, гоню. Knopka1 это метка для перехода на обработчик прерывания. Надо как то обозвать их.
Если в шапке
дописал в шапку
Config Portd.2 = Input
Config Portd.3 = Input
Shag1 Alias Portd.2
Shag2 Alias Portd.3

Тогда
If Shag1=1 then
If Shag2=1 then Portb = &B00000000 EndIf
EndIf
 
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #31
Ааааа, гоню. Knopka1 это метка для перехода на обработчик прерывания. Надо как то обозвать их.
Если в шапке


Тогда
If Shag1=1 then
If Shag2=1 then Portb = &B00000000 EndIf
EndIf

да в том то и соль что с дописыванием этого кода ничего не меняется вообще по сравнению с исходным кодом...
как работало так и работает.....

блин придется использовать тупо с дописыванием
после Led = 0
Portb = &B00000000

Или может есть кто доделает исходный код - за небольшое вознаграждение))))
 
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #32
Может быть вместо
Shag1 Alias Portd.2
Shag2 Alias Portd.3

должно быть
Shag1 Alias Pind.2
Shag2 Alias Pind.3

Физически в МК три регистра DDR для настройки направления работы порта, PORT для выдачи сигналов на выход и PIN для приема сигнала извне.
 
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #33
Может быть вместо
Shag1 Alias Portd.2
Shag2 Alias Portd.3

должно быть
Shag1 Alias Pind.2
Shag2 Alias Pind.3

Физически в МК три регистра DDR для настройки направления работы порта, PORT для выдачи сигналов на выход и PIN для приема сигнала извне.

Елы палы!!!!! точно!!!!

дописал в шапку
Config Pind.2 = Input
Config Pind.3 = Input
Shag1 Alias Pind.2
Shag2 Alias Pind.3

потом в тело
Do

If Shag1 = 1 And Shag2 = 1 Then
Portb = &B00000000
End If
Loop


Все окейно вроде))
 
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #34
Ну и заипца :)
 
  • 🔴 21:27 Повітряна тривога в м. Харків та Харківська територіальна громадаСлідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #35
Делал так, в таком варианте двигатель начинает заметно шуметь, т.к. у меня стоит Waitus 200, т.е. оболроты больше чем как в приведенном коде, что не хотелось бы....



Синтаксис понял(в php пишу частенько),
но не совсем вкурю как его превратить в удобоваримый код BASCOM-AVR
синтаксис AVR пока не весь понял - это первый микроконтроллер у меня)))
Почему именно баском?
С есть для AVR и неплохо работает. Хотя я бы выбрал ассемблер :)
 
Назад
Зверху Знизу