![Квадратично уравнение с 2 бутона: 5 стъпки Квадратично уравнение с 2 бутона: 5 стъпки](https://i.howwhatproduce.com/images/011/image-31591-j.webp)
Съдържание:
2025 Автор: John Day | [email protected]. Последно модифициран: 2025-01-23 14:36
![Image Image](https://i.howwhatproduce.com/images/011/image-31591-2-j.webp)
![](https://i.ytimg.com/vi/VnkT-tziP_Y/hqdefault.jpg)
Въведение
добре дошли в първия ми инструктаж!
Започнах този проект, за да разширя познанията си по програмиране. Често просто обединявате различен изходен код, за да създадете необходимата програма. Целта ми беше да напиша собствен програмен код за взаимодействие с инструмент. Хареса ми да създам прост инструмент за изчисляване. Преди месец подкрепих приятел да реши квадратно уравнение.
Базинга! това е случаят на употреба!
Използвах повторно стара метална кутия. Предпочитах минималистичния вид и интерфейса на инструментите. това е причината просто да използвам 2 бутона за въвеждане. Конкурсът ще бъде показан от обикновен LCD дисплей.
Консумативи
списък на материалите:
кутия
2 бутона Аркаден стил
Arduino Nano или подобен
LCD дисплей 1602 с I2C адаптер
превключвател за включване/изключване
проводници
2x 10k Ohm резистор
батерия 9v блок
конектор за 9v батерия
макет
различни (парче дърво, метален ъгъл, кабелни връзки, винт, шайби)
инструменти:
трион
поялник
пробивна машина
компютър за програмиране
Стъпка 1: Математически фон
![Софтуер Софтуер](https://i.howwhatproduce.com/images/011/image-31591-3-j.webp)
Математически фон
Квадратното уравнение с 2 бутона показва стойностите, при които квадратната функция пресича оста X. Квадратичната функция не може да пресича ос X никога, веднъж или два пъти.
Има различни начини за изчисляване на тези стойности. За моя инструмент използвам формулата PQ (не съм сигурен дали този израз ще се използва по целия свят).
Квадратното уравнение има формата:
ax²+bx+c = 0
За да изчислите точките на пресичане, разделете формата на a x²+px+q = 0 с p = b/a; q = c/a
формулата PQ:
x1 = -p/2 + sqrt ((p/2) ² -q)
x2 = -p/2 -sqrt ((p/2) ² -q)
Резултатът x може да получи 0, 1 или 2 стойности. Това зависи от стойността под квадратния корен.
Ако стойността е> 0, тогава PQ-формулата има две решения.
Стойността е 0, тогава PQ-формулата има едно решение
е стойността <0, тогава формулата PQ няма решение. Функцията не пресича оста X.
Стъпка 2: Софтуер
Софтуер
За програмиране използвах официалния Arduino IDE. Целта ми беше да създам своя собствена софтуерна програма. Моят интерфейс трябва да има два бутона. Един бутон за преминаване между различни нива, втори бутон за промяна на стойностите в различните нива.
За да реша PQ-формулата, създавам горната структура:
Със сигурност не преоткривам колелото. За създаването на кода използвах модула:
- разобличаване
- дисплей
Най -големите предизвикателства бяха следните точки:
- Как мога да избера знака? Реших това предизвикателство с функцията по модул (връзка). Кодът разделя входа на 2. Входът е нечетно число, стойността става отрицателна, в противен случай числото е положително.
- След като премина през всички нива, трябва да обявя всички стойности на 0.
- Показваният текст просто изтрива изпратените знаци. Ако кодовете изпращат дума с 4 знака, само тези 4 знака ще бъдат презаредени. Ако думата преди имаше повече знаци, знаците ще останат. За да поправите това, показаният текст ще бъде запълнен с празни места. Всички 16 последователни знака ще бъдат презаредени.
Окончателният код е приложен.
Стъпка 3: Хардуер
![Хардуер Хардуер](https://i.howwhatproduce.com/images/011/image-31591-4-j.webp)
![Хардуер Хардуер](https://i.howwhatproduce.com/images/011/image-31591-5-j.webp)
![Хардуер Хардуер](https://i.howwhatproduce.com/images/011/image-31591-6-j.webp)
![Хардуер Хардуер](https://i.howwhatproduce.com/images/011/image-31591-7-j.webp)
Хардуер
Частите са изброени по -горе. За този проект хардуерът е прост. Трябва ми само микропроцесор Arduino, 2 бутона и дисплей. Добре, ако искате да поставите в кутия, имате нужда и от кутия и захранване.
Използвам повторно стара метална кутия. Пробих дупка в бутона за включване на превключвателя за захранване. Капакът на кутията има 3 дупки. Пробих две дупки за големите бутони и изрязах прозорец за дисплея. Залепвам малко парче дърво зад капака, за да има повече неща за поправяне на дисплея и бутоните. За да подобрите външния вид, кутията има стикери.
За захранване препоръчвам акумулаторни 9V блок батерии. Свързвам батерията чрез превключвателя на захранването към Arduino. Батерията е фиксирана към кутията с малък метален ъгъл. Конекторът за батерията е фиксиран само чрез кабелни връзки.
Микропроцесорът е клонинг на Arduino nano. За този случай на използване ефективността е достатъчна. Attiny 85, например микропроцесор Digispark, беше отхвърлен. Arduino е „хляб на дъска“до дисплея.
Дисплеят е 1602 LCD дисплей. можете да използвате 16 знака в два реда. Можете да намерите този дисплей в много различни машини и инструменти. Има два различни начина за използване на този дисплей. Можете да свържете дисплея директно към контролера или можете да използвате добавка за комуникация с дисплея чрез I2C. I2C е стандартен протокол. Използвах го, защото е по -лесно да свържете дисплея към контролера. Нуждаете се само от 4 кабела вместо 16, VCC до 5V, GND до GND, SDA до A4, SCL до A5. Дисплеят е фиксиран с винтове към капака на кутията.
Бутоните са огромни! те имат типичния стил на аркадна игра. Харесва ми! Бутоните са свързани към цифрови щифтове 4 и 7. Моля, не забравяйте 10K резистори!
За да отворя капака, например за смяна на батерията, използвах по -дълги кабели, включени в макета.
Стъпка 4: Окабеляване
![Електрически инсталации Електрически инсталации](https://i.howwhatproduce.com/images/011/image-31591-8-j.webp)
Стъпка 5: Бъдещо подобрение
Бъдещо подобрение
След завършване на проект винаги откривате грешки или функции за подобрение. Щастлив съм да намеря няколко точки в този проект, които бих подобрил за в бъдеще.
За следващия път бих подобрил експлоатацията в кутията. Поправих дисплея, превключвателя на захранването и бутоните в началото на този проект. В крайна сметка имах малко проблеми да намеря достатъчно място за батерията и микропроцесора в кутията. Когато поставям бутона и дисплея повече навън, няма да имам проблеми с мястото за частите в кутията.
В момента нямам случай на използване за решаване на квадратно уравнение. За да подобря инструмента, бих искал да разширя инструмента с допълнителни математически неща, например основно изчисление или формули като биноминална формула или изречение на Питагор.
Препоръчано:
Реле с два бутона: 3 стъпки
![Реле с два бутона: 3 стъпки Реле с два бутона: 3 стъпки](https://i.howwhatproduce.com/images/001/image-1189-j.webp)
Реле с два бутона: Тази статия ви показва как да включите и изключите превключвателя с бутон. Тази схема може да се направи с два превключвателя. Натискате един превключвател и крушката се включва. Натискате друг превключвател и крушката се изключва. Този Ins
Как да използвате стъпков двигател 28BYJ-48 с 3 бутона: 5 стъпки
![Как да използвате стъпков двигател 28BYJ-48 с 3 бутона: 5 стъпки Как да използвате стъпков двигател 28BYJ-48 с 3 бутона: 5 стъпки](https://i.howwhatproduce.com/images/001/image-2258-5-j.webp)
Как да използвате стъпков двигател 28BYJ-48 с 3 бутони: Искате ли да управлявате своя стъпков двигател с помощта на бутони? Това може да направи по посока на часовниковата стрелка, обратно на часовниковата стрелка и след това да спре функцията? Тогава това видео е за вас
Поправяне на бутона за задържане на Ipod Nano!: 4 стъпки
![Поправяне на бутона за задържане на Ipod Nano!: 4 стъпки Поправяне на бутона за задържане на Ipod Nano!: 4 стъпки](https://i.howwhatproduce.com/images/003/image-6327-j.webp)
Поправяне на бутона за задържане на Ipod Nano !: добре, така че малко закъснях с тенденцията на ipod. умишлено така, предполагам. но в крайна сметка се поддадох и купих старо нано в ebay. и разбира се, като часовников механизъм, това нещо ми се разпадна няколко месеца по -късно. каквото и да направих, нано смяташе, че
Моят опит към мелодията на зумера на бутона на Arduino: 11 стъпки
![Моят опит към мелодията на зумера на бутона на Arduino: 11 стъпки Моят опит към мелодията на зумера на бутона на Arduino: 11 стъпки](https://i.howwhatproduce.com/images/008/image-22654-j.webp)
Моят опит към мелодията на зумера на бутона на Arduino: В този урок ще ви покажа как един бутон може да стартира мелодия. През учебната година много от живота ни се управляват от звънци или тонове, които ни казват кога е време за тръгване или време за тръгване. Повечето от нас рядко спират и мислят как тези различни
Atollic TrueStudio-Включете светодиода чрез натискане на бутона с помощта на STM32L100: 4 стъпки
![Atollic TrueStudio-Включете светодиода чрез натискане на бутона с помощта на STM32L100: 4 стъпки Atollic TrueStudio-Включете светодиода чрез натискане на бутона с помощта на STM32L100: 4 стъпки](https://i.howwhatproduce.com/images/011/image-30724-j.webp)
Atollic TrueStudio-Включете светодиода чрез натискане на бутон с помощта на STM32L100: В този урок на STM32 ще ви разкажа как да четете GPIO щифт на STM32L100, така че тук ще направя такъв на борда Led glow by just натискане на бутона