Skip to content

KovalRM/KRM_libraries_Arduino

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KRM Library for Arduino

UA

KRM — це допоміжна бібліотека для Arduino, створена для спрощення програмування роботів, електронних пристроїв та навчальних проєктів.

Бібліотека об’єднує власні функції та логіку керування, які часто використовуються в робототехніці, зокрема для роботи з джойстиками, двигунами, драйверами моторів та керування рухом.

🔧 Основний функціонал

• Розширені аналоги map(): Fmap (float), Smap (safe/clamped для long), SFmap (float + clamp)

• Танкова логіка керування (tank drive mix) визначення потужності/напрямку/стопу для лівого та правого двигунів

• Планувальник задач на millis() (без delay)

• Інкрементальний енкодер A/B: KRMEncoder з підтримкою: - attachInterrupt (INT) - PCINT для AVR (ATmega328P / ATmega2560) - ESP32 interrupts

👨‍💻 Автор

Коваль Роман

💡 Ідея бібліотеки

Ідея бібліотеки — зібрати власні зручні функції та логіку в одному місці, щоб:

  • спростити написання коду
  • зробити програми читабельнішими
  • пришвидшити розробку навчальних та практичних Arduino-проєктів

EN

KRM is a helper library for Arduino designed to simplify the programming of robots, electronic devices, and educational projects.

The library brings together custom utility functions and control logic that are commonly used in robotics, particularly for working with joysticks, motors, motor drivers, and motion control.

🔧 Core Features

• Extended alternatives to map(): Fmap (float), Smap (safe / clamped for long), SFmap (float + clamp)

• Tank drive control logic (tank drive mix): calculation of power, direction, and stop state for the left and right motors

millis()-based task scheduler (no delay())

• Incremental A/B encoder: KRMEncoder with support for:

  • attachInterrupt (INT)
  • PCINT for AVR (ATmega328P / ATmega2560)
  • ESP32 interrupts

👨‍💻 Author

Roman Koval

💡 Library Concept

The idea of the library is to collect convenient custom functions and control logic in one place in order to:

  • simplify code writing
  • improve code readability
  • speed up the development of educational and practical Arduino projects
  • improve code readability
  • speed up the development of educational and practical Arduino projects

About

KRM is a helper library for Arduino designed to simplify the programming of robots, electronic devices, and educational projects.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages