嵌入式开发板与硬件通信
时间:10-02
整理:3721RD
点击:
我把zigbee协调器连接到飞凌6410开发板上,产生了一个设备文件/dev/1-1。
然后我用read()读写这个设备文件,读出来的是一串数字,像33554706,134217728,1610679299,
33621504,34144515等
我用fread读写那个设备文件,读出来的是一些箭头,笑脸等怪异的字符
[img]file:///C:/Users/Administrator/AppData/Roaming/Tencent/Users/1624115345/QQ/WinTemp/RichOle/S[Z@1U$JS%60NI89PW%7BE7O[ZI.jpg[/img]
这是怎么回事?难道是编码过?
有没有曾经做过类似的项目的?或者编写过zigbee数据采集程序的?
那个开发板上读写zigbee 协调器传过来的数据这样的程序该怎么写,该我一点思路
急求指点!
源程序贴出来如下
#include <stdio.h>
#include <string.h>
int main()
{
FILE *fp = NULL;
char Buf[65535];
/*³õÊŒ»¯Buf*/
strcpy(Buf,"memdev is char dev!");
printf("BUF: %s\n",Buf);
/*Žò¿ªÉ豞ÎÄŒþ*/
fp = fopen("/dev/1-1","r+");
if (fp == NULL)
{
printf("Open 1-1 Error!\n");
return -1;
}
/*Çå³ýBuf*/
strcpy(Buf,"Buf is NULL!");
printf("Read BUF1: %s\n",Buf);
/*¶Á³öÊýŸÝ*/
fread(Buf, sizeof(Buf), 1, fp);
/*Œì²âœá¹û*/
printf("Read BUF2: %s\n",Buf);
fclose(fp);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
int main(void)
{
int fd,num;
fd = open("/dev/1-1",O_RDWR);
if(fd != -1)
{
while(1)
{
read(fd,&num,sizeof(int));
printf("the 1-1 is %d/n",num);
if(0 == num)
{
close(fd);
break;
}
}
}
else
{
printf("device open failure/n");
}
return 0;
}
然后我用read()读写这个设备文件,读出来的是一串数字,像33554706,134217728,1610679299,
33621504,34144515等
我用fread读写那个设备文件,读出来的是一些箭头,笑脸等怪异的字符
[img]file:///C:/Users/Administrator/AppData/Roaming/Tencent/Users/1624115345/QQ/WinTemp/RichOle/S[Z@1U$JS%60NI89PW%7BE7O[ZI.jpg[/img]
这是怎么回事?难道是编码过?
有没有曾经做过类似的项目的?或者编写过zigbee数据采集程序的?
那个开发板上读写zigbee 协调器传过来的数据这样的程序该怎么写,该我一点思路
急求指点!
源程序贴出来如下
#include <stdio.h>
#include <string.h>
int main()
{
FILE *fp = NULL;
char Buf[65535];
/*³õÊŒ»¯Buf*/
strcpy(Buf,"memdev is char dev!");
printf("BUF: %s\n",Buf);
/*Žò¿ªÉ豞ÎÄŒþ*/
fp = fopen("/dev/1-1","r+");
if (fp == NULL)
{
printf("Open 1-1 Error!\n");
return -1;
}
/*Çå³ýBuf*/
strcpy(Buf,"Buf is NULL!");
printf("Read BUF1: %s\n",Buf);
/*¶Á³öÊýŸÝ*/
fread(Buf, sizeof(Buf), 1, fp);
/*Œì²âœá¹û*/
printf("Read BUF2: %s\n",Buf);
fclose(fp);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
int main(void)
{
int fd,num;
fd = open("/dev/1-1",O_RDWR);
if(fd != -1)
{
while(1)
{
read(fd,&num,sizeof(int));
printf("the 1-1 is %d/n",num);
if(0 == num)
{
close(fd);
break;
}
}
}
else
{
printf("device open failure/n");
}
return 0;
}
怎么没人关注?
急求指导啊