![]() |
Advanced Robot Control System
5.1-REV.51SF170515
|
PCIe-AC01用デバイスドライバ [詳解]
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/kthread.h>
#include <linux/sched.h>
#include <linux/delay.h>
#include <linux/proc_fs.h>
#include <linux/cdev.h>
#include <asm/uaccess.h>
マクロ定義 | |
#define | PCIE_AC01_DEV_NAME "pcie_ac01" |
デバイス名 [詳解] | |
#define | PCIE_AC01_VERSION "REV.1020170130\0" |
バージョン情報 [詳解] | |
#define | PCIE_AC01_MEMSIZE 4096 |
PCIe-AC01のメモリサイズ [詳解] | |
#define | PCIE_AC01_MAX_AXIS 16 |
最大モータ軸数 [詳解] | |
#define | PCIE_AC01_TIMEOUT 200 |
[μs程度] ビジーウェイト用タイムアウト [詳解] | |
#define | MAX_BUFLEN 64 |
列挙型 | |
enum | ReadDataList { Read_Status = 0x0001, Read_DaxisCurrent = 0x0002, Read_QaxisCurrent = 0x0004, Read_EncoderData = 0x0008, Read_EchoBack = 0x0010 } |
readデータの定義 [詳解] | |
enum | WriteDataList { Write_Command = 0x0001, Write_DaxisCurrentRef = 0x0002, Write_QaxisCurrentRef = 0x0004, Write_EchoForward = 0x0010 } |
writeデータの定義 [詳解] | |
enum | TransVarAddr { AxisCommand = 0x0, DaxisCurrentRef = 0x1, QaxisCurrentRef = 0x2, EchoForward = 0xF } |
送信変数アドレスの定義 [詳解] | |
enum | RecvVarAddr { AxisStatus = 0x0, DaxisCurrent = 0x1, QaxisCurrent = 0x2, EncorderData = 0x3, EchoBack = 0xF } |
受信変数アドレスの定義 [詳解] | |
enum | AxisCommandList { Req_Status = 0x10000000, Req_DaxisCurrent = 0x10000001, Req_QaxisCurrent = 0x10000002, Req_EncoderData = 0x10000003, Req_EchoBack = 0x1000000F } |
コマンドリストの定義 [詳解] | |
関数 | |
MODULE_DESCRIPTION ("ARCS PCIe-AC01 Device Driver") | |
MODULE_AUTHOR ("Yuki YOKOKURA, Siderwarehouse Industries") | |
MODULE_LICENSE ("Dual BSD/GPL") | |
module_param (MemAddress, ulong, S_IRUGO) | |
module_init (PCIeAC01_module_init) | |
module_exit (PCIeAC01_module_creanup) | |
変数 | |
unsigned char | cdev_buf [MAX_BUFLEN] |
PCIe-AC01用デバイスドライバ
#define MAX_BUFLEN 64 |
#define PCIE_AC01_DEV_NAME "pcie_ac01" |
デバイス名
#define PCIE_AC01_MAX_AXIS 16 |
最大モータ軸数
#define PCIE_AC01_MEMSIZE 4096 |
PCIe-AC01のメモリサイズ
#define PCIE_AC01_TIMEOUT 200 |
[μs程度] ビジーウェイト用タイムアウト
#define PCIE_AC01_VERSION "REV.1020170130\0" |
バージョン情報
enum AxisCommandList |
enum ReadDataList |
enum RecvVarAddr |
enum TransVarAddr |
enum WriteDataList |
MODULE_AUTHOR | ( | "Yuki | YOKOKURA, |
Siderwarehouse Industries" | |||
) |
MODULE_DESCRIPTION | ( | "ARCS PCIe-AC01 Device Driver" | ) |
module_exit | ( | PCIeAC01_module_creanup | ) |
module_init | ( | PCIeAC01_module_init | ) |
MODULE_LICENSE | ( | "Dual BSD/GPL" | ) |
module_param | ( | MemAddress | , |
ulong | , | ||
S_IRUGO | |||
) |
unsigned char cdev_buf[MAX_BUFLEN] |