Table 1Each software module performs certain functions. Each module has the proper functions for its intended behavior. Maintenance is fairly simple.
| Module | Description | Functions |
| Main.c | Main program | main ( ) |
| Phonebook.c | Contains the functions used to build the application user interface | Verify_PhoneBook_PIN ( ) Init_PhoneBook ( ) Read_PhoneBook ( ) Receive_PhoneBook ( ) Open_PhoneBook ( ) View_PhoneBook ( ) Save_PhoneBook_SIM ( ) Save_PhoneBook_Flash ( ) Send_PhoneBook ( ) |
| SIM.c | Contains the functions that handle dialog with the SIM smart card at the application level | SIM_Select_File ( ) SIM_Verify_PIN ( ) SIM_Read_Record ( ) SIM_Update_Record ( ) Is_Empty_Record ( ) Get_Name ( ) Get_Phone ( ) Erase_Record ( ) Put_Name ( ) Put_Phone ( ) Copy_Name ( ) Copy_Phone ( ) |
| ISO7816.c | Implements the functions that enable communication with the SIM smart card according to the ISO 7816-3 standard | ISO7816_Init ( ) ISO7816_ReceiveByte ( ) ISO7816_SendByte ( ) Send_Header ( ) Get_Acknowledge ( ) Send_Data ( ) Get_Response ( ) Get_StatusWord ( ) Incoming_APDU ( ) Outgoing_APDU ( ) Reset_SIM ( ) Get_ATR ( ) |
| Conio.c | Contains the functions for input/output to the console | Get_Key ( ) Get_Keyboard_Input ( ) Display_Message ( ) Display_Name ( ) Display_Phone ( ) |
| RS232.c | Enables communication to the outside world via the RS-232 port for the M16C/62P | RS232_Init ( ) RS232_ReceiveByte ( ) RS232_SendByte ( ) RS232_SendString ( ) |
| ADC.c | Enables the ADC to be set up in Repeat mode and start/stop the converter | ADC_Init ( ) ADC_Start ( ) ADC_Value ( ) ADC_Stop ( ) |
| SKP_LCD.c | Enables the ACM0802C LCD module to be driven to display messages and the phone book information | InitDisplay ( ) DisplayString ( ) LCD_write ( ) DisplayDelay ( ) DisplayShift ( ) |
| Flash_API.c | Contains the high-level functions used to write/erase data to/from the M16C/62Ps flash memory | FlashErase ( ) FlashWrite ( ) |
| MCU_init.c | Executes all microprocessor initializations at start-up | mcu_init ( ) |