Graphical Programming Environment for Microcontroller External Circuit Integration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software engineers face challenges in programming microcontrollers to interface with external circuitry due to the need for custom, detailed code that varies with each circuit, lacking standardized structures, and existing graphical programming environments do not facilitate programming of external circuitry interactions.
Innovation Solution
A graphical programming environment with an abstraction layer and thread that allows users to easily manage and control microcontroller peripherals and external hardware, enabling the creation of executable code for microcontrollers to interface with external circuitry through pre-configured code modules and state machines.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If software engineers write custom code to interface microcontrollers with external circuitry, then the microcontroller can communicate with external hardware, but the programming complexity and time required increase significantly
Solution Approach 1:
The patent introduces an abstraction layer as an intermediary between the microcontroller and external circuitry. This layer provides standardized communication protocols and functions that simplify the interface programming, eliminating the need for engineers to write complex custom code for each external device while maintaining reliable communication capabilities.
Solution Approach 2:
The abstraction layer implements universal communication functions that can interface with multiple types of external circuitry through standardized methods. This multi-functional approach allows a single set of communication protocols to handle various external devices, reducing programming complexity while maintaining adaptability.
2Adaptability or versatility
If software engineers write detailed custom code for each external circuit, then specific circuit operations can be controlled, but the development time and effort increase
Solution Approach 1:
The patent implements pre-configured communication protocols and abstraction functions that are prepared in advance. These preliminary structures provide ready-to-use templates for interfacing with external circuitry, allowing engineers to quickly adapt to different devices without writing detailed code from scratch, thus reducing development time while maintaining circuit control versatility.
Solution Approach 2:
The communication interface is segmented into modular abstraction layers with distinct functions. Each layer handles specific aspects of communication (e.g., data transmission, error handling, protocol management) independently, allowing engineers to selectively implement only the necessary functions for each external circuit while reusing standard components, thereby reducing overall development effort.
3Ease of operation
If existing graphical programming environments are used, then programming becomes more visual and accessible, but they cannot facilitate programming of external circuitry interactions
Solution Approach 1:
The patent merges the advantages of graphical programming environments with the capability to program external circuitry interactions. By integrating visual programming interfaces with the abstraction layer framework, the system provides both ease of graphical programming and the versatility to handle external device communications, eliminating the limitation of existing graphical environments.
Data Source
AI summary
A microcontroller, including an input/output pin in communication with an external circuit and a processor in communication with the external circuit through the I/O pin, the processor configured to run a RTOS comprising code that causes the processor to communicate with the external circuit to perform operations. A computerized method that cause a processor to execute a graphical programming environment for creating an executable computer program for execution by a microcontroller in communication with an external circuit, the graphical programming environment comprising a GUI for graphically specifying at least a portion of the computer program, display, a first and second graphical component of a graphical program in the graphical user interface specifying a first and second operation of the microcontroller, and display a link between the first and second graphical component in the GUI to specify how the first and second operation relate for interfacing with the external circuit.


