コード例 #1
0
int at24cxx_self_test(void)
{
    int ret;
    uint8_t buf[128],buf1[128],buf2[128];
    ret = at24cxx_read(0, buf, sizeof(buf));
    if(ret)
    {
        return ret;
    }
    memset(buf1,'Y',sizeof(buf1));
    ret = at24cxx_write(0, buf1, sizeof(buf1));
    if(ret)
    {
        return ret;
    }
    ret = at24cxx_read(0, buf2, sizeof(buf2));
    if(ret)
    {
        return ret;
    }
    ret = at24cxx_write(0, buf, sizeof(buf));
    if(ret)
    {
        return ret;
    }
    if(!memcmp(buf1, buf2, sizeof(buf1)))
    {
        return 0;
    }
    return 1;
}
コード例 #2
0
ファイル: main.c プロジェクト: bbtmtl/wds-spi
int main()
{
    char c;
    char str[200];
    int i;
	int address;
	int data;
    unsigned int mid, pid;
	
    uart0_init();   // 波特率115200,8N1(8个数据位,无校验位,1个停止位)

	SPIInit();
	OLEDInit();
	OLEDPrint(0, 0, "Hello World SPI!");

	SPIFlashReadID(&mid, &pid);
	printf("SPI FLASH : Mid = 0x%2x, Pid = 0x%2x\n\r", mid, pid);

	sprintf(str, "SPI FLASH: %2x,%2x", mid, pid);
	OLEDPrint(2, 0, str);

	SPIFlashInit();
	SPIFlashEraseSector(4096);
	SPIFlashEraseSector(1024);
	SPIFlashProgram(4096, "Happy NEW YEAR !", 20);
	SPIFlashProgram(1024, "Chinese New Year", 20);

	SPIFlashRead(1024, str, 18);
	printf("SPI Flash read from 1024: %s\n\r", str);
//	OLEDPrint(4, 0, str);
	
	SPIFlashRead(4096, str, 18);
	printf("SPI Flash read from 4096: %s\n\r", str);
	//OLEDPrint(6, 0, str);

	Test_Adc();
	i2c_init();
	at24cxx_write(0,0x11);
	data = at24cxx_read(0);
	if (data == 0x11)
	    OLEDPrint(4, 0, "I2C OK!!!!");
	else
	    OLEDPrint(4, 0, "I2C ERROR!");	
	    
    return 0;
}
コード例 #3
0
ファイル: main.c プロジェクト: commshare/ARMDriver
int main()
{
    char c;
    char str[200];
    int i;
	int address;
	int data;
    
    uart0_init();   // 波特率115200,8N1(8个数据位,无校验位,1个停止位)
    
    i2c_init();
    
    while (1)
    {
        printf("\r\n##### AT24CXX Menu #####\r\n");
        printf("[R] Read AT24CXX\n\r");
        printf("[W] Write AT24CXX\n\r");
        printf("Enter your selection: ");

        c = getc();
        printf("%c\n\r", c);
        switch (c)
        {
            case 'r':
            case 'R':
            {
                printf("Enter address: ");
                i = 0;
                do
                {
                    c = getc();
                    str[i++] = c;
                    putc(c);
                } while(c != '\n' && c != '\r');
                str[i] = '\0';

                while(--i >= 0)
                {
                    if (str[i] < '0' || str[i] > '9')
                        str[i] = ' ';
                }

                sscanf(str, "%d", &address);
				printf("\r\nread address = %d\r\n", address);
				data = at24cxx_read(address);
				printf("data = %d\r\n", data);
                    
                break;
            }
            
            case 'w':
            case 'W':
            {
                printf("Enter address: ");
                i = 0;
                do
                {
                    c = getc();
                    str[i++] = c;
                    putc(c);
                } while(c != '\n' && c != '\r');
                str[i] = '\0';
				printf("\r\n");

                while(--i >= 0)
                {
                    if (str[i] < '0' || str[i] > '9')
                        str[i] = ' ';
                }

                sscanf(str, "%d", &address);
				//printf("get str %s\r\n", str);

                printf("Enter data: ");
                i = 0;
                do
                {
                    c = getc();
                    str[i++] = c;
                    putc(c);
                } while(c != '\n' && c != '\r');
                str[i] = '\0';
				printf("\r\n");
				//printf("get str %s\r\n", str);

                while(--i >= 0)
                {
                    if (str[i] < '0' || str[i] > '9')
                        str[i] = ' ';
                }

                sscanf(str, "%d", &data);
				//address = 12;
				//data = 13;
				printf("write address %d with data %d\r\n", address, data);
				
				at24cxx_write(address, data);

                break;
            }
        }
        
    }
    
    return 0;
}
コード例 #4
0
ファイル: main.c プロジェクト: kungfu-monkey/myboot
int main()
{
	unsigned int num;

	
	unsigned char ret = 0;
	
	#ifdef  MMU_ON
	mmu_init();
	#endif
	led_init();
	key_init();
	irq_init();
	uart0_init();
	lcd_init();	
	i2c0_init();
	
		
	lcd_clear_screen(0x000000);
	dm9000_init();
	
	printf("First write address of 0x0,");
	at24cxx_write(0x0, 0xAA);  //往设备内存0地址写入0xAA
	ret = at24cxx_read(0x0);   //读设备内存0地址里面的数据
	printf("the value in address 0x0 = %x\r\n",ret);
	
	printf("Second write address of 0x1,");
	at24cxx_write(0x1,0x33);
	ret = at24cxx_read(0x1);
	printf("the value in address 0x1 = %x\r\n",ret);
	
	
	
//	dm9000_arp();
	
	while(1)
		{
			printf("\r\n");
			printf("========= Boot for S5pv210 Main Menu =========\r\n");
			printf("=========  designed by KungfuMonkey  =========\r\n");
			printf("\r\n");
			printf("1.ARP Request for PC MAC\r\n");
			printf("2.Download Linux Kernel to SDRAM\r\n");
			printf("3.Run the linux\r\n");
			
			scanf("%d\r\n",&num);
			printf("%d\r\n",num);
			
			
			switch(num)
			{
				case 1:
					arp_request();
					break;
					
				case 2:
					tftp_send_request("zImage");
					break;
					
				case 3:
				  boot_linux();					
					break;

					
				default:
					printf("Error: wrong selection!\r\n");
					break;
			}
		}
	return 0;
}