嵌入式爱好者

查看: 18878|回复: 3

[硬件咨询] eeprom测试不成功

[复制链接]

16

主题

32

帖子

79

积分

AM335x通行证

扫一扫,手机访问本帖
发表于 2016-8-27 14:38:55 | 显示全部楼层 |阅读模式
OK335xD开发板运行测试程序时,出现如图错误时怎么回事?
GY)%VMUXECH~W4RDA%O%J9K.png
回复

使用道具 举报

0

主题

972

帖子

900

积分

i.MX6Q通行证i.MX6UL通行证TCU通行证AM335x通行证

发表于 2016-8-27 16:56:35 | 显示全部楼层
你是在核心板的ds2460里面写东西吗,这个你只可以读取是不可以写入的

点评

提供的测试代码里面怎么会有写??? 而且执行./eeprom -r 命令的时候会出现error eeprom_read: Bad address  详情 回复 发表于 2016-8-28 10:40
技术支持电话:0312-3119192
技术支持邮箱:Hardware@forlinx.com
点评回复 支持 反对

使用道具 举报

16

主题

32

帖子

79

积分

AM335x通行证

 楼主| 发表于 2016-8-28 10:40:18 | 显示全部楼层
飞凌-peacelove 发表于 2016-8-27 16:56
你是在核心板的ds2460里面写东西吗,这个你只可以读取是不可以写入的
  1. #include<sys/types.h>
  2. #include<fcntl.h>
  3. #include<sys/stat.h>
  4. #include<unistd.h>
  5. #include<stdio.h>
  6. #include<string.h>
  7. #include<errno.h>
  8. #include<stdlib.h>
  9. #define BUF_SIZE         256

  10. /* ./eeprom -w  forlinx
  11.    ./eeprom -r  */

  12. int main(int argc, char **argv)
  13. {
  14.         int ret = 0;
  15.         char arr[BUF_SIZE] = {'0'};
  16.         char buf[BUF_SIZE] = {'0'};
  17.        
  18.         int fd = open("/dev/eeprom", O_RDWR);
  19.         if (fd < 0) {
  20.                 perror("open eeprom device:");
  21.                 exit(1);
  22.         }
  23.        
  24.         if(argc < 2)
  25.         {
  26.                 printf("please input correct argument\n");
  27.                 exit(1);
  28.         }       

  29.         if(!strcmp(argv[1],"-w"))
  30.         {
  31.                 if(argc != 3)
  32.                 {
  33.                         printf("please input like this : ./eeprom -w  forlinx\n");
  34.                         exit(1);
  35.                 }
  36.                 strcpy(arr,argv[2]);

  37.                 ret = write(fd,arr,strlen(arr));
  38.                 if(ret < 0)
  39.                 {
  40.                         fprintf(stderr,"error eeprom_write: %s\n",strerror(errno));
  41.                         exit(1);
  42.                 }
  43. //                printf("write ret = %d\n",ret);

  44. //                ret = lseek(fd,30,SEEK_SET);
  45. //                ret = write(fd,arr,strlen(arr) + 1);
  46. //                if(ret < 0)
  47. //                {
  48. //                        fprintf(stderr,"error eeprom_write: %s\n",strerror(errno));
  49. //                        exit(1);
  50. //                }
  51. //                printf("write ret = %d\n",ret);
  52.         }
  53.         if(!strcmp(argv[1],"-r"))
  54.         {
  55.                 if(argc != 2)
  56.                 {
  57.                         printf("please input like this : ./eeprom -r\n");
  58.                         exit(1);
  59.                 }
  60.                 ret =  read(fd,buf,BUF_SIZE);
  61.                 if(ret < 0)
  62.                 {
  63.                         fprintf(stderr,"error eeprom_read: %s\n",strerror(errno));
  64.                         exit(1);
  65.                 }
  66.                 printf("the value in  buf is  %s\n",buf);

  67.                 ret = lseek(fd,6,SEEK_SET);       
  68.                 ret =  read(fd,buf,BUF_SIZE);
  69.                 if(ret < 0)
  70.                 {
  71.                         fprintf(stderr,"error eeprom_read: %s\n",strerror(errno));
  72.                         exit(1);
  73.                 }
  74.                 printf("lseek to the seventh bytes in buf is %s\n",buf);
  75.         }
  76.         close(fd);

  77.         return 0;
  78.        
复制代码




提供的测试代码里面怎么会有写???
而且执行./eeprom -r 命令的时候会出现error eeprom_read: Bad address
点评回复 支持 反对

使用道具 举报

153

主题

3910

帖子

4207

积分

AM5718通行证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FCU1401通行证FCU1301通行证FCU11xx通行证

发表于 2016-8-30 11:17:40 | 显示全部楼层
您好,目前我们的板子上是没有eeprom的,里边有测试代码,是很久以前的开发板有eeprom,现在已经没有这个了,在现在的板子上是不能做这个测试的。
技术支持电话:0312-3119192
技术支持邮箱:Linux@forlinx.com
点评回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-12-20 19:22

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表