Difference between revisions of "LPC1768: Keil Project For Hex File"
Line 33: | Line 33: | ||
[[File:Lpc1768_Keil_08.png]]<br><br> | [[File:Lpc1768_Keil_08.png]]<br><br> | ||
− | <b>Step9:</b> Add the recently saved file to the project<br> | + | <b>Step9:</b> Add the recently saved file to the project.<br> |
[[File:Lpc1768_Keil_09.png]]<br><br> | [[File:Lpc1768_Keil_09.png]]<br><br> | ||
Line 59: | Line 59: | ||
<b>Step17:</b> Check the project folder for the generated .hex file.<br> | <b>Step17:</b> Check the project folder for the generated .hex file.<br> | ||
[[File:Lpc1768_Keil_17.png]]<br> | [[File:Lpc1768_Keil_17.png]]<br> | ||
+ | |||
+ | After generating the .hex file check the tutoial [[LPC1768: Uploading Hex and Bin files.|LPC1768 Tutorials]]. | ||
<br><br> | <br><br> |
Revision as of 00:42, 26 March 2016
Objective
In this tutorial we will see how to setup a keil project to generate .hex file for LPC1768
Step1: Open the Keil software and select the New Microvision project from Project Menu as shown below.
Step2: Browse to your project folder and provide the project name and click on save.
Step3: Once the project is saved a new pop up “Select Device for Target” opens, Select the controller(NXP:LPC1768) and click on OK.
Step4: Select the controller(NXP:LPC1768) and click on OK.
Step5: As LPC1768 needs the startup code, click on Yes option to include the LPC17xx Startup file.
Step6: Create a new file to write the program.
Step7: Type the code or Copy paste the below code snippet.
#include "LPC17xx.h" | |
#include "rtc.h" | |
#include "lcd.h" | |
int main() | |
{ | |
rtc_t rtc; | |
SystemInit(); | |
/*Connect RS, RW, EN and data bus to PORT0.4 to PORT0.7*/ | |
LCD_SetUp(P2_0,P2_1,P2_2,P_NC,P_NC,P_NC,P_NC,P1_24,P1_25,P1_26,P1_27); | |
LCD_Init(2,16); | |
RTC_Init(); | |
rtc.hour = 10; // 10:40:20 am | |
rtc.min = 40; | |
rtc.sec = 0; | |
rtc.date = 1; //1st Jan 2016 | |
rtc.month = 1; | |
rtc.year = 16; | |
rtc.weekDay = 5; // Friday: 5th day of week considering monday as first day. | |
/*##### Set the time and Date only once. Once the Time and Date is set, comment these lines | |
and reflash the code. Else the time will be set every time the controller is reset*/ | |
RTC_SetDateTime(&rtc); // 10:40:20 am, 1st Jan 2016 | |
/* Display the Time and Date continuously */ | |
while(1) | |
{ | |
RTC_GetDateTime(&rtc); | |
LCD_GoToLine(0); | |
LCD_Printf("time:%2d:%2d:%2d \nDate:%2d/%2d/%2d",(uint16_t)rtc.hour,(uint16_t)rtc.min,(uint16_t)rtc.sec,(uint16_t)rtc.date,(uint16_t)rtc.month,(uint16_t)rtc.year); | |
} | |
} |
Step8: After typing the code save the file as main.c.
Step9: Add the recently saved file to the project.
Step10: Add the main.c along with system_LPC17xx.c.
Step11: Build the project and fix the compiler errors/warnings if any.
Step12: Code is compiled with nor errors. The .hex file is still not generated.
Step13: Click on Target Options to select the option for generating .hex file.
Step14: Set IROM1 start address as 0x0000.
Step15: Enable the option to generate the .hex file
Step16: .Hex file is generated after a rebuild.
Step17: Check the project folder for the generated .hex file.
After generating the .hex file check the tutoial LPC1768 Tutorials.