main.c
来自「easyarm2103开发板资料」· C语言 代码 · 共 84 行
C
84 行
/***********************************************Copyright (c)*********************************************
** Guangzou ZLG-MCU Development Co.,LTD.
**
** http://www.zlgmcu.com
**
**--------------File Info---------------------------------------------------------------------------------
** File name: main.c
** Last modified Date: 2007-09-20
** Last Version: 1.0
** Descriptions: The main() function example template
**
**--------------------------------------------------------------------------------------------------------
** Created by:
** Created date:
** Version:
** Descriptions:
**
**--------------------------------------------------------------------------------------------------------
** Modified by:
** Modified Date:
** Version:
** Descriptions:
**
*********************************************************************************************************/
#include "config.h"
/*********************************************************************************************************
定义一个LED灯的GPIO管脚
*********************************************************************************************************/
#define LED1 P0_17
#define LED2 P0_18
/*********************************************************************************************************
** Function name: main
** Descriptions: 用户主函数,用户写程序需要注意以下几个步骤
** 1.用户要对自己操作的管脚进行管脚功能设置,设置文件为pinConfig.h
** 2.如果用户代码需要中断,需要打开内核中断,函数为:IRQEnable(); FIQEnable();
** 3.用户有中断,需要设置VIC,设置函数请参考IRQManage.h
** 4.其他功能实现用户可参考相关驱动的头文件或使用说明文档
** Input parameters: NONE
** Output parameters: NONE
** Returned value: NONE
*********************************************************************************************************/
int main (void)
{
uint8 temp[20];
uint32 i;
IRQEnable(); /* 打开内核中断 */
i2cInit(0, "Speed=100000", NULL); /* 初始化I2C */
irqVicSet(I2C0_VIC, 5, i2c0Isr);
i2cWrite(0, 0xa0, (uint8*)"lpc2200", 0, I2C_ONE_BYTE, sizeof("lpc2200"));
/* 对E2PROM写入数据 */
while( i2cGetFlag(0) == I2C_BUSY ); /* 等待写完成, */
/* 可用短延时来完成 */
for ( i=0; i<50000; i++); /* 等待E2PROM写入完成 */
memset(temp,0,20); /* 清空临时变量 */
i2cRead(0, 0xa0, temp, 0, I2C_ONE_BYTE, sizeof("lpc2200")); /* 读取E2PROM */
while( i2cGetFlag(0) == I2C_BUSY ); /* 等待读完成 */
while (1) {
if (strcmp((char*)temp, "lpc2200") == 0) { { /* 校验成功则间隔点亮 */
gpioCpl(LED1);
gpioCpl(LED2);
}
for(i = 0; i < 5000000; i++);
} else {{
gpioClr(LED1);
gpioClr(LED2);
} /* 校验失败则一直点亮 */
}
}
return 0;
}
/*********************************************************************************************************
END FILE
*********************************************************************************************************/
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?