Analytics

2010年1月16日 星期六

1/16,spidev_write,使用簡記

user space code :

unsigned long int ret=0;
int fd;
uint8_t buf[ ]; // 直接把1byte的資料放在這裡面

fd = open(spidev0.0,O_RDWR);

__u32 size =ARRAY_SIZE(buf);
ret = write(fd,buf,size);
printf("ret=%lu\n",ret);

close(fd);


測試結果:
用示波器看訊號都有出來
不管是要寫幾個byte的資料
但是比較奇怪的是
如果寫一個byte
ret =1
寫三個或五個
ret = 4294967295

@@"

2010年1月6日 星期三

測試自己加入的kernel module

首先在build kernel時,
#make menuconfig
記得要到Device Drivers -> Generic Driver Options
將Userspace firmware loading support設為<*>,也就是built-in