Code generator for H8S-2377

The widespread use of micro-controllers in the fields of education and application development have led to the need for a generic initialization code generator tool to aid tertiary students as well as developers. With this aim a generic description methodology for MCUs was developed by researchers a...

Full description

Saved in:
Bibliographic Details
Main Author: Gorthi Prashant Bhanu.
Other Authors: Chng Eng Siong
Format: Final Year Project
Language:English
Published: 2009
Subjects:
Online Access:http://hdl.handle.net/10356/16945
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
Description
Summary:The widespread use of micro-controllers in the fields of education and application development have led to the need for a generic initialization code generator tool to aid tertiary students as well as developers. With this aim a generic description methodology for MCUs was developed by researchers at NTU’s Computer Engineering lab. The description methodology bundled with a java based MCU Initialization Code Generator software was put to test using data from the H8S-2377 MCU. The report begins by stating the purpose and scope of the project followed by a literary review of research in the area of microcontroller initialization code generation. In the subsequent chapters a thorough analysis of the structural aspects of an MCU, the various features of MCU peripherals and initialization sequences is conducted so as to evaluate the completeness of the XML based MCU description methodology. To this effect the dependency problem was identified whereby the setting for certain registers in an MCU is a mathematical function of other register settings. This feature of an MCU register, referred to as a dependency, is not supported by the current description methodology. As a result, the user has to manually calculate the function to initialize the dependent register. A solution to the dependency problem is presented in this report by allowing users to enter the mathematical function in the MCU description, parsing the function in the Code Generator software to evaluate the dependency and subsequently assigning the calculated value to the dependent register in the initialization sequence. The report also presents a reverse engineering feature to the MCU Initialization Code Generator software which allows users to input previously saved initialization sequences and observe the corresponding register settings through the GUI. The report concludes by summarizing the contributions of the project and laying out the future work in the project.