×
单片机 > 单片机程序设计 > 详情

OMAP-L138之建立ARM工程

发布时间:2022-09-14 发布时间:
|

开发环境:WIN7 64 + CCS5.5 + OMAPL138_StarterWare_1_10_04_01

开发平台:OMAP-L138 Development Kit (LCDK)

1.启动CCS5.5,设置工作空间。

2.建立工程,File->New->CCS Project,工程属性设置如下图。

3.将StarterWare中GPIO例子中的代码复制到main.c中。

#include "gpio.h"

#include "psc.h"

#include "soc_OMAPL138.h"

#include "lcdkOMAPL138.h"

/****************************************************************************/

/* LOCAL FUNCTION PROTOTYPES */

/****************************************************************************/

static void Delay(volatile unsigned int delay);

/****************************************************************************/

/* GLOBAL VARIABLES */

/****************************************************************************/

/****************************************************************************/

/* LOCAL FUNCTION DEFINITIONS */

/****************************************************************************/

int main(void)

{

/* The Local PSC number for GPIO is 3. GPIO belongs to PSC1 module.*/

PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON,

PSC_MDCTL_NEXT_ENABLE);

/* Pin Multiplexing of pin 12 of GPIO Bank 6.*/

GPIOBank6Pin12PinMuxSetup();

/* Sets the pin 109 (GP6[12]) as input.*/

GPIODirModeSet(SOC_GPIO_0_REGS, 109, GPIO_DIR_OUTPUT);

while(1)

{

GPIOPinWrite(SOC_GPIO_0_REGS, 109, GPIO_PIN_LOW);

Delay(1000000);

GPIOPinWrite(SOC_GPIO_0_REGS, 109, GPIO_PIN_HIGH);

Delay(1000000);

}

}

/*

** briefThis function checks the insertion status of the MMC/SD card

** in the device and prints related statements on the serial

** commuincation console of the external device.

**

*/

/*

** brief This function can be called to generate a delay.

*/

static void Delay(volatile unsigned int delay)

{

while(delay--);

}

4.设置工程属性,加入include搜索路径。

5.设置工程属性,加入lib文件。

6.使用StarterWare中的CMD文件替换默认的CMD文件。

-stack0x8000 /* SOFTWARE STACK SIZE */

-heap 0x2000 /* HEAP AREA SIZE */

-e Entry

/* SPECIFY THE SYSTEM MEMORY MAP */

MEMORY

{

DDR_MEM: org = 0xC1080000 len = 0x2F7FFFF /* RAM */

}

/* SPECIFY THE SECTIONS ALLOCATION INTO MEMORY */

SECTIONS

{

.init: {

system_config.lib (.text)

} load > 0xC1080000

.text : load > DDR_MEM /* CODE */

.data : load> DDR_MEM

.bss : load > DDR_MEM /* GLOBAL & STATIC VARS */

RUN_START(bss_start),

RUN_END(bss_end)

.const : load > DDR_MEM /* SOFTWARE SYSTEM STACK */

.cinit : load > DDR_MEM /* SOFTWARE SYSTEM STACK */

.stack : load > 0xC3FF7FFC /* SOFTWARE SYSTEM STACK */

}

7.编译工程,设置omapl138.ccxml如下。

8.开发板上电,链接开发板。

在最后一项的ARM核上,右键->Connetc Target。

9.Load Program。RUN……灯已经开始闲了。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
STM32单片机的复用端口初始化的步骤及方法