How to create new project from scratch in Keil 5

Jonathan Valvano

Create a new folder. Place it anywhere. I group all my associated Keil projects in one master folder.

Graphical user interface, application

Description automatically generated

Create a new uVision project from scratch by executing Project->NewuVisionProject... from within Keil

Navigate to new folder and define the name of the project. In this example, the new project will be named FunNewProject located in the folder NewProject

Select Texas Instruments,  Tiva C series, and TM4C123x series

Select device as TM4C123GH6PM (fourth from bottom of the list)

Graphical user interface, text, application

Description automatically generated

 

Observe the run-time environment. This simple project will not use any of the Keil CMSIS or libraries except for the compiler.

Graphical user interface, text, application

Description automatically generated

 

Add a new c code file that will contain main program. The file name can be any .c file (e.g., main.c). You will add it to Source group 1. Alternatively, you could copy a main.c file from another project and AddExistingFiles...

Copy-paste files as needed from previous projects. You will need startup.s and tm4C123gh6pm.h (although you could place a common tm4C123gh6pm.h in an inc folder)

https://www.dropbox.com/s/yuqlxvdpg94a58v/startup.s?dl=1

 

Add startup.s to project source. You will need to select Asm Source File as the search type.

Make sure floating point initialization code is commented out in the startup.s file. This initialization code can be found in the Reset_Handler,

Execute Project->OptionsForTarget and go to the Target tab. Set clock to 16 MHz, and turn off floating point

Graphical user interface

Description automatically generated

Write a simple main program and build.

To use the Keil simulator with the EE319K hardware, this DLL needs to be your Keil_v5\ARM\BIN folder, wherever you installed Keil 5.

https://www.dropbox.com/s/hz7np6pxg1rabk3/LaunchPadDLL.dll?dl=1

Execute Project->OptionsForTarget and go to the Debug tab. Set simulation or real board, set debugger to Stellaris ICDI

Try running the blank program in the simulator or on the real board.

Include the header file and write a simple program that performs I/O. Run on the program in the simulator or on the real board.

Optional step: Change name of target and source code group.

Double-click Target 1 and Source Group 1 to rename

Graphical user interface, text, application

Description automatically generated