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 + -
显示快捷键?