[Suzaku:00115] Re: パルス信号の解析方法
吉田勤彦
email@hidden
2004年 10月 10日 (日) 15:20:05 JST
吉田ともうします。
ご返答ありがとうございます
ioctlを使用するのはxmbserial.c内でしょうか。
>At Sun, 10 Oct 2004 01:55:19 +0900,
>吉田勤彦 wrote:
>[...]
>> 現在、パルス信号を入力し、そのテューティ比をFPGAで解析し、その値を
>> uClinux上に読み込みたいと考えております。
>>
>> この場合、入力信号は1bitですので、UARTでないのでopb_gpioを使用するので
>> はないかと想像しているのですが実際はどうなのでしょうか。
>
>opb_gpioで良いと思います。opbにつなぐ部分を自作するなら別ですが、gpio
>と入力ピンの間に duty比を解析するロジックを入れると簡単だと思います。
>
>> さらに uClinuxのdevice fileとしてアクセスする場合はどのようにすれば
>> よいのでし ょうか。さすがにシリアル通信ではないので先日ありましたよ
>> うな xmbserial.cの編集とは違いますよね。
>
>ioctlを使って、こんな感じでできます。
>
>#include <stdlib.h>
>#include <stdio.h>
>#include <sys/types.h>
>#include <sys/stat.h>
>#include <fcntl.h>
>#include <linux/ibm_ocp_gpio.h>
>
>int main()
>{
> int fd;
> int val;
>
> fd = open("/dev/gpio", O_RDWR);
> ioctl(fd, IBMGPIO_IN, &val);
> printf("%#x\n", val);
> val = 0xaa;
> ioctl(fd, IBMGPIO_OUT, &val);
> ioctl(fd, IBMGPIO_IN, &val);
> printf("%#x\n", val);
> return 0;
>}
>
>device driverや、vendor Makefileの patchは dist-suzaku3用です。
>XPAR_SYSTEM_GPIO_BASEADDRは環境に合せて変えてください。
>--
> yashi
>
> linux-2.4.x/include/asm-microblaze/xparameters.h | 4 ++--
> vendors/AtmarkTechno/SUZAKU/Makefile | 2 +-
> 2 files changed, 3 insertions(+), 3 deletions(-)
>
>Index:
>uClinux-dist-20040408-suzaku3/linux-2.4.x/include/asm-microblaze/xparameters.h
>===================================================================
>---
>uClinux-dist-20040408-suzaku3.orig/linux-2.4.x/include/asm-microblaze/xparameters.h 2004-01-20 09:17:24.000000000 +0900
>+++
>uClinux-dist-20040408-suzaku3/linux-2.4.x/include/asm-microblaze/xparameters.h 2004-10-10 03:12:56.759596848 +0900
>@@ -54,8 +54,8 @@
> /******************************************************************/
>
> #define XPAR_XGPIO_NUM_INSTANCES 1
>-#define XPAR_SYSTEM_GPIO_BASEADDR 0xFFFF5000
>-#define XPAR_SYSTEM_GPIO_HIGHADDR 0xFFFF50FF
>+#define XPAR_SYSTEM_GPIO_BASEADDR 0xFFFFb000
>+#define XPAR_SYSTEM_GPIO_HIGHADDR 0xFFFFb0FF
> #define XPAR_SYSTEM_GPIO_DEVICE_ID 0
>
> #define XPAR_GPIO_0_BASEADDR XPAR_SYSTEM_GPIO_BASEADDR
>Index: uClinux-dist-20040408-suzaku3/vendors/AtmarkTechno/SUZAKU/Makefile
>===================================================================
>---
>uClinux-dist-20040408-suzaku3.orig/vendors/AtmarkTechno/SUZAKU/Makefile 2004-10-04 08:34:01.000000000 +0900
>+++
>uClinux-dist-20040408-suzaku3/vendors/AtmarkTechno/SUZAKU/Makefile
> 2004-10-10 03:26:46.063259011 +0900
>@@ -32,7 +32,7 @@ endif
> DEVICES = \
> tty,c,5,0 console,c,5,1 mem,c,1,1 kmem,c,1,2 null,c,1,3 \
> \
>- ttyS0,c,4,64 \
>+ ttyS0,c,4,64 gpio,c,10,185 \
> \
> zero,c,1,5 random,c,1,8 urandom,c,1,9 \
> \
>_______________________________________________
>suzaku mailing list
>email@hidden
>http://lists.atmark-techno.com/mailman/listinfo/suzaku
suzaku メーリングリストの案内