Tic-tac-toe is a classic game which requires no introduction. It is a pen and paper game played between 2 players (marked on paper as ‘X’ & ‘O’).The board setup consists of a 3×3 grid on which each player alternates between each moves. The player who succeeds in placing three respective marks in a horizontal, vertical, or diagonal row wins the game.This project is an attempt to recreate the classic game in a digital format. To spice things up a bit, instead of using the regular 2 player setup it uses an inbuilt AI mechanism to compete against the player. The project uses an 8×8 LED matrix to display the player’s move. The LED matrix is controlled by a display driver – MAX7219. The MAX7219 takes care of all the multiplexing, decoding and refresh circuitry via SPI interface connected to Attiny85.
This project uses cheap Hitachi HD44780 based 16×2 LCD to display regional Indian language. These displays are designed for English text only, but they have [[wysiwyg_imageupload::]]provisions to display custom characters. On the LCD, each character is 8 pixels high by 5 pixels wide. Using a custom character designer, regional fonts were converted to hex codes, later to be used in the project. In order to understand the theory behind custom character generation we have to take a look at the memory mapping of HD44780.To display user information on regional language the characters need to be mapped onto a standard keyboard. In this case, the custom characters are mapped to a standard US-EN keyboard. When defining new character set, ASCII values of keys are assigned uniquely to each new custom character in ascending order [order is important as binary search is employed!]. Keep on reading to find out how the circuit is coded and how the connections are made.
The project described here is a digital implementation of “book cricket game” which students normally use to play in their childhood time. The heart of the project is 8 bit MCU from AVR family called ATtiny85. ATtiny85 are small and cheap microcontrollers which are convenient for running simple programs with low footprint. The software used for programming the MCU is Ardunio which is a popular open source IDE. The overall design is kept to a least for simplicity and ease to use. The main components used in the circuitry are 16X2 LCD which is used to display the characters in 2 lines with maximum of 16 characters in one line, a serial in parallel out shift register HEF4094, ATtiny85, 2 push buttons and 7805 voltage regulator which regulates the voltage supply to maximum of 5 volts. Shift register HEF4094 is used because normally when LCD is used it requires 7 connections to the pins on the display. But if shift register is used the number of connections to the MCU can be reduced to only 3 wires.
This project aims to automate the process of talking attendance on pen and paper and prevent any fraudulent entry. It uses RFID tags to record attendance. Each student is assigned a unique tag, which he/she is required to swipe over the reader to give his/her attendance. This system benefits both the teacher and student as its quick and hassle free. This setup can be used in any educational institution regardless of whichever board they follow. Data is stored in a CSV file which keeps track of each day’s attendance. The main component of the system is the RFID reader which transmits a 12-byte ASCII string via the TTL-level SOUT pin. This helps to identify a student from the rest, as each TAG generates a unique ASCII string. This String is then fed to the AVR’s RX line which processes it for marking his/her attendance.