Injection System Behavior

This simple example present ability of the system modeled by state machine to execute different tasks by injecting behavior. It is based on 8 bit field transition matrix which stores information about system behavior. If we change transition matrix, system behavior will be changed also. Current example provides only 4 states (A, B, C and D) and 4 external commands (interrupts, events or signals). This example present generic solution for all systems modeled by state machine.




Usage examples:

1) Embedded Robotics: external commands are signals from sensors: IR sensors, mechanical sensors, ultrasonic sensors and so on.
2) Human - Machine games.
3) Low level driver / firmware software etc.

Generally, this idea could be used for each system which includes component able to store information about states (like micro-controller unit).

This example is written in ANSI C programming language and supports all hardware platforms powered by MikroElektronika. Unit test are written in Microsoft Visual C++ x86 compiler.

Block diagram.



Archive available for download contains two files: Behavior1.bin and Behavior2.bin. Both files are 29 bytes long and contains transition matrix - system behavior. To inject transition matrix into system please use USART Terminal as integral part of 8051 IDE environment. Communication is done over UART lib - RS232.

Responsibility of priority encoder (CD4532) is to encode external signals regarding transition matrix encoding rules. Below scheme is related to mechanical sensor (micro switches). For analog sensors (like IR) analog to digital converter outputs should be connected to priority encoder inputs (D0...D7).


Popular posts from this blog

Electrolytic capacitors and design rules

Fake VC830L digital multimeter

How to design LM324 Astable Multivibrator