作成日:2011-5-15

LPCXpresso IDEの使い方 その3 〜新たしいProject の作成方法〜

新しいプロジェクトの作成方法

前回の LPCXpresso IDEの使い方 その2 〜サンプルプロジェクトのインポートとデバッグ〜では、サンプルプロジェクトをインポートしました。

今回は自分で新しいプロジェクトを作成します。
まず、LPCXpressoを起動して 新しくWorckspsceを作ってください。新しいWorkspaceの作り方は前回のサンプルのインポートの手順と同じです。私はLPC1769_GPIO+Systickという名前にしました。(次回、このスケルトンプログラムにGPIOとSystickタイマーでLチカプログラムを書いてみたいと思うので。)
まず、CMSIS をインポートします。これは前回 zip の Exsample をインポートしたやりかたと同じです。
左下の”Import Exsample project(s)” をクリック。
クリックするとWindowが現れます。ハードディスク内にコピーされている
C:\nxp\lpcxpresso_3.6\Examples\NXP\LPC1000\LPC17xx\CMSISv1p30_LPC17xx.zip
を選択。Nextボタンをクリック。CMSISv1p30_LPC17xx にチェックが入っていることを確認して、Finishをクリック。
次に、左下の Quick start内 New project → NXP LPC1700 → NXP LPC1700 C Project をクリック。
New_workspace

プロジェクトの名前を入力、ここでは "GPIO_Systick"にしました。Nextボタンをクリック。
New_project_name.png

デバイスの選択、使用しているLPCXpressoのデバイス型番を選択し、Nextボタンをクリック。赤くなっているデバイスは Flsh ROM の容量が128kB以上あるデバイスです。LPCXpresso IDEは128KB制限がかかっているので、これ以上大きな容量をダウンロードする場合は code_red から有償版を購入する必要があります。128KBあればかなり大きなプログラムが作れます。
New_project_device_name.png

CMSIS selection にチェックが入っている事を確認してください。Enable CRP in the target image はどちらでも構いませんが、今回は使わないのでチェックは外してあります。 User source directory は "src" になっています。そのままでOKです。
Finishボタンをクリック。
New_project_other_option

CRP は コード・リード。プロテクションの略で、コードを読めなくする機能です。レベル設定ができます。
User source directory の名前のフォルダに プログラムのファイルを入れます。

これで準備は完了しました。では、プログラムを作りましょう。
main.cファイルには、あらかじめ下記が作られています。
/*
===============================================================================
 Name        : main.c
 Author      : 
 Version     :
 Copyright   : Copyright (C) 
 Description : main definition
===============================================================================
*/

#ifdef __USE_CMSIS
#include "LPC17xx.h"
#endif

#include 
#include 

// Variable to store CRP value in. Will be placed automatically
// by the linker when "Enable Code Read Protect" selected.
// See crp.h header for more information
__CRP const unsigned int CRP_WORD = CRP_NO_CRP ;

// TODO: insert other include files here

// TODO: insert other definitions and declarations here

int main(void) {
	
	// TODO: insert code here

	// Enter an infinite loop, just incrementing a counter
	volatile static int i = 0 ;
	while(1) {
		i++ ;
	
	return 0 ;
}
これでスケルトンプログラムは完成です。このプログラムは"i"が無限ループでインクリメントされてるだけです。

次回はこのスケルトンプログラムに ファンクション設定/ GPIO設定/ SysTick_Handlerの割り込みハンドラの設定 をして Lチカを自分で作ってみます。
作成日:2011-5-15