C project in Embedded Systems Professional Track provided by egFWD
powered by Udacity
in collaboration with Sprints
.
The project is developed using Visual Studio Code
+
GNU GCC Compiler
.
-It is a simulation for the Mini pay device or(ATMs) Transactions.
-I implemented the SALE transaction only by simulating the card, terminal(ATM), and server using the C programming language
.
-Card Module is responsible for storing the card data which is Card Holder Name, Primary Account Number, and Card Expiry Date.
-Terminal (ATM) Module is responsible for user interfacing. The module stores the transaction date and checks whether the card is expired or valid. Also, it stores the transaction amount and checks if it exceeds the max limit allowed for the ATM.
-Server Module is responsible for authentication and account verification. It checks if the account is found within the server database if the account state whether Active , Blocked or Invalid_Account and if the account has a sufficient amount to withdraw or not.
-Card Holder Name must be Uppercase chars and 24 chars maximum .
-Card Expiry Date must be in form MM/YY.
-Primary Account Number must be 16 chars all numbers .
-Transaction Date must be in form MM/YY.
-Transaction Amount must be a positive non-zero value.
-Terminal Max Amount must be set as an initialization for the Terminal or through the configuration in the Terminal.h file .
-No constraints on input data.