LINUX下Joystick编程详解 (joystick linux 编程)

随着计算机技术的不断发展,各种外设设备的适配也成为了一个越来越重要的问题。而游戏手柄作为一种典型的外设设备,在娱乐、游戏等领域得到了广泛的应用。而如何在LINUX系统中编程控制游戏手柄,则成为了众多开发者探讨的一个问题。本文将结合实例,详细介绍在LINUX系统下的Joystick编程。

一、常用的编程库

对于LINUX系统下的Joystick编程,开发者可以根据实际情况选择不同的编程库。其中,最常用的库有:

1. SDL(Simple DirectMedia Layer)库:SDL是一套跨平台多媒体应用开发库,封装了各种媒体文件的播放、图像的处理、音频播放、游戏手柄等输入设备的支持。

2. Joystick库:Joystick库是一个基于LINUX系统的输入设备接口库。这个库主要为Joystick编程提供了优秀的开发环境,包括手柄的测试、校准和编程运行。

二、环境搭建

在进行LINUX下的Joystick编程之前,需要先安装相关的软件包和依赖项。本文将以Ubuntu16.04系统为例,介绍相关的安装和环境搭建步骤:

1. 安装相关的库

在终端中输入以下命令进行安装:

sudo apt-get update

sudo apt-get install libsdl1.2-dev joystick

2. 配置系统环境变量

在终端中输入以下命令,查看Joystick设备的路径

cat /proc/bus/input/devices

通过查看路径,可以得知准备连接的Joystick设备的名称和对应的路径

3. 编写示例代码

在进行Joystick编程之前,需要编写一个测试代码,检查Joystick设备是否已经连接成功。

下面是一个完整的Joystick测试程序,仅需在终端中输入以下命令即可运行:

gcc -o joystick joystick_test.c `sdl-config –cflags –libs`

代码解析:

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#define JOYSTICK_DEVNAME “/dev/input/js0”

static int open_joystick(const char *devname)

{

int fd = -1;

fd = open(devname, O_RDON | O_NONBLOCK);

if (fd

printf(“open %s fled, %s\n”, devname, strerror(errno));

return -1;

}

}

int mn(int argc, char* argv[])

{

unsigned char buttons[32]; //存储按键状态

struct js_event js; //存储Joystick事件

int fd = -1;

int nread;

int i;

int version;

SDL_EventState(SDL_SYSWMEVENT, SDL_ENABLE); //使设备窗口消息生效

SDL_Init(SDL_INIT_JOYSTICK | SDL_INIT_TIMER | SDL_INIT_NOPARACHUTE); //初始化SDL

if ((fd = open_joystick(JOYSTICK_DEVNAME))

exit(-1);

ioctl(fd, IOCGVERSION, &version);

printf(“Joystick driver version: %d.%d.%d\n”,

(version >> 16) & 0xff, (version >> 8) & 0xff, version & 0xff);

fcntl(fd, F_SETFD, FD_CLOEXEC); //绑定一个文件描述符

while (1) {

nread = read(fd, &js, sizeof(js));

if (nread != sizeof(js)) {

break;

}

switch (js.type & ~_EVENT_INIT) {

case _EVENT_AXIS: //表示Joystick的轴事件

break;

case _EVENT_BUTTON: //表示Joystick的按钮事件

if (js.value)

buttons[js.number] = 1; //按键按下

else

buttons[js.number] = 0; //按键释放

break;

default:

break;

}

printf(“X:%3d Y:%3d, “, axis[0], axis[1]);

for (i = 0; i

if (buttons[i])

printf(“B%02d “, i);

}

printf(“\n”);

fflush(stdout);

}

close(fd);

SDL_Quit();

return 0;

}

三、实例操作

除了编写测试代码,开发者还需要实际操作Joystick设备,对其进行测试和调整。

1. 显示Joystick的设备信息

在终端中输入以下命令,查看对应的Joystick设备信息:

cat /proc/bus/input/devices

可以得到相应的Joystick设备信息。需要注意的是,Joystick设备并不是每个设备都有的,需要根据实际情况进行配置和调整。

2. 执行Joystick的AD校准

在终端中输入以下命令,可执行Joystick的AD校准:

jstest /dev/input/js0

3. 修改Joystick设备的权限

在实际应用过程中,有时需要修改Joystick设备的权限,使得所有用户都可以进行使用。

在终端中输入以下命令,修改Joystick设备的权限:

sudo chmod a+rw /dev/input/js0

四、

相关问题拓展阅读:

如何在Ubuntu 10.04 下面安装X-Plane

X-Plane是个好东西,可惜电驴上面下载的安装DVD缺了许多东西,无法安装在Linux下面。网上搜索,发现还没有人在Linux下面玩飞行模拟。经过我的探索,在Ubuntu上面安装成功,把主要过程记录下来,希望对飞友有用。

1. 改造从VeryCD上下载回来的之一个DVD(名为Avenged)。

a. 首先准备好ISO编辑软件,如WinISO之类的。

b. 从官方网站下载Linux下面的安装程序:Linux DVD Installer

c. 把下载的这个zip文件解压缩,然后得到的文件放在原来的DVD文件的根目录下(当然,不放在这里也可以,可以放在系统的任何地方,只是集中在一起就可以做一个强大的安装DVD啦!)

d. 然后在光盘的X-Plane 9目录下面新建目录Linux.

e. 从网上下载四个文件:Airfoil-Maker-i686.zip,Plane-Maker-i686.zip,Briefer-i686.zip,X-Plane-i686.zip,地址如下:

f. 把刚才下载的四个文件放到刚才的Linux目录中去。

g.【此步可以略去,以备后用,我在改造时没有执行,仅为猜测。再下载

/mirror/X-Plane%209.70/All/Resources/plugins/>下面的所有文件放到光盘X-Plane

9/All/Plugins下面】

h. 用ISO软件重写光盘,生成新文件,取名字为XPlane9_Linux.iso

2. 在Ubuntu下面安装XPlane9

a. 挂载刚才的光盘。当然一切基本条件要具备。比如cd /media/”Windows分区的标号”/; 在/mnt下面新建cdrom1目录等等。、

b. 挂载命令:sudo mount -t iso9660 -o loop XPLANE9_Linux.iso /mnt/cdrom1

c. 然后进入目录执行我们刚才添加的Linux DVD Installer就可以了。命令:./Linux_DVD_Installer(就是刚才那个文件名哦)。

d. 如果安装有问题,先看下面的解决方法。

3. 安装和更新问题的解决和安装条件

a. 准备必要的包。执行如下命令:

wget

sudo dpkg -i getlibs-all.deb

sudo getlibs -32 libesd.so.0

下载文件lucid_libs.zip【

】,并解压缩到/usr/lib32/(解压缩和移动命令会吧?不会就查网。)

b.以上步骤也可以用下面的方法代替,如果执行了a,就跳过,【 Linux公社

www.Linuxidc.com

 】 如果安装不能,再返回来执行此步骤。

在新立得软件更新器中安装:ia32libs,libopenal1,joystick。然后到/usr/lib32下面执行:

sudo ln -s libopenal.so.1 libopenal.so.0

c.如果出现”./X-PlaneUpdaterLinux: error while loading shared libraries:

libopenal.so.0: cannot open shared object file: No such file or

directory”这样的问题,就执行:

cd /usr/lib

sudo ln -s libopenal.so.1 libopenal.so.0

d. 安装过程中如果出现缺失什么字体包或者如下面的文件,就到或者Linux v9 Updater。下载后解压缩,然后执行。

等待漫长的更新之后,就可以玩了!

f. 关于自定义风景的安装:

先到下载Linux Installer,然后执行即可。

如果缺乏libstdc++.so.5包的话,就编辑/etc/apt/sources.list,

deb

karmic main

deb-src

karmic main

保存后,执行:

sudo wget -q ‘

‘ -O – | sudo apt-key add –

sudo apt-get update

sudo apt-get install lib32stdc++5然后执行OpenScenery Installer。

执行完之后,把原来windows系统下安装的一切拷贝到Linux下面就万事大吉了!

现在开始泡杯茶,准备起飞!

4. 关于飞行摇杆,我用的是Cyborg X。进入X-Plane进行按钮设置即可。

5. 关于鼠标游移。如果启用摇杆,那么鼠标就游移不定,而且没法用鼠标点击菜单,这个问题暂时不知道怎样解决。不过,我把Alt+Ctrl+Q设置成为了退出游戏,这样到系统这里就可以使用键盘了。

弱电工程里的符号”IDF”是什么意思?

中介配线架 (Intermediate Distribution Frame)是指:   中介配线架(IDF)是一个自立的或者裱在墙上的架子,管理和互相连接位于用户设备和主配线架(MDF)之间的长途通信电缆。举例说明,IDF 可能位于多层建筑顺墙而下的路由电缆直到更底层地板的 MDF。MDF 包括连接到公司或者到其它建筑的电缆。

IDF指分配线架。

IDF代指分配线架。配线架是管理子系统中最重要的组件,是实现垂直干线和水平布线两个子系统交叉连接的枢纽。配线架通常安装在机柜或墙上。通过安装附件,配线架可以全线满足UTP、STP、

同轴电缆

、光纤、音视频的需要。在

网络工程

中常用的配线架有

双绞线

配线架和光纤配线架。

介面装置是使用户和计算机、系统或其它电子信息系统之间产生联系互动的一个硬件器件或零器件系统。

扩展资料

配线架的类型:

1、双绞线配线架

双绞线配线架的作用是在管理子系统中将双绞线进行交叉连接,用在主配线间和各分配线间。

2、光纤配线架

光纤配线架的作用是在管理子系统中将光缆进行连接,通常在主配线间和各分配线间.

3、中介配线架

中介配线架是一个自立的或者裱在墙上的架子,管理和互相连接位于用户设备和主配线架之间的长途通信电缆。MDF包括连接到公司或者到其它建筑的电缆。

参考资料来源:

百度百科-IDF(分配线架)

下面有

:中介配线架(IDF,intermediate distribution frame)是一个自立的或者裱在墙上的架子,管理和互相连接位于用户设备和主配线架(MDF)之间的长途通信电缆。

关键词:IDF intermediate distribution frame 中介配线架

【TechTarget中国原创】中介配线架(IDF,intermediate distribution frame)是一个自立的或者裱在墙上的架子,管理和互相连接位于用户设备和主配线架(MDF)之间的长途通信电缆。举例说明,IDF可能位于多层建筑顺墙而下的路由电缆直到更底层地板的主配线架(MDF)。MDF包括连接到公司或者到其它建筑的电缆。

计算机和网络硬件术语对照表

计算机和网络硬件术语对照表

计算机和网络硬件术语 – A

Abrasive 研磨剂

Accelerator Board 加速板

Access.bus 存取总线

Acoustic Coupler 声音耦合器

ACR:Advanced Communications Riser 高级通讯升级卡

Active Component 主动元件

Active Hub 主动式集线器

Active Matrix Display 主动矩阵显示

ActiveMovie 可视动画控件

Adapter 适配器

ADB:Apple Desktop Bus 苹果电脑总线

A/D Converter:Analog/Digital Converter A/D 转换器

Address Bus 地址总线

AGP:Accelerated Graphics Port 加速图形端口

AGP Pro 新一代加速图形端口

AIDC:Automatic Identification and Data Capture 自动识别和数据获取

AIT:Advanced Intelligent Tape 先进智能磁带

Allocated Memory 存储器配置

Alpha Processor Alpha 处理器

Alpha Test Alpha 测试

Alpha version Alpha 版本

ALU:Arithmetic Logic Unit 算术逻辑单元

AMBA: Advanced Microcontroller Bus Architecture 高级微控制器总线架构

AMD64

American Wire Gauge 美国线规

Amplifier Repeater 放大器

Analog Monitor 模拟监视器

Answer-Only Modem 只答调制解调器

Antistatic Mat 抗静电垫

ANVM:Active Nonvolatile Memory 非易失性存储器

Archimedes 阿基米德

Architecture 架构

Archive Site 存档地址

ARM Architecture ARM 架构

Array Processor 阵列处理器

Arrow Keys 方向键

Artificial brain 人工脑

ASE:Amplified Spontaneous Emission 放大自发辐射光源

ASIC:Application-Specific Integrated Circuit 专用集成电路

Aspect Ratio 画面比例

ASPI:Advanced SCSI Programming Interface 高级SCSI编程接口

Associative Memory 相连存储器

ATA:Advanced Technology Attachment 高级技术配件

ATAPI:AT Attachment Packet Interface ATA 数据包接口

AT AT Bus 总线

Athlon 速龙

AT Keyboard AT 键盘

AUI:Attachment Unit Interface 附加单元接口

AUX:Auxiliary Devices 辅助设备

AVI:Audio Video Interleave 音视频交替

计算机和网络硬件术语 – B

Backbone 骨干网络

Backlighting 逆光

Backplane 背板

Backside Bus 后段总线

Backspace Key 退格键

Backup Server 备份服务器

BEDO DRAM:Burst EDO DRAM 爆发式延伸数据输出动态随机存取存储器

Beta test Beta测试

Beta version Beta版本

BGA:Ball Grid Array 球状矩阵排列

BIOS:Basic Input/Output System 基本输入输出系统

BJT:Bipolar Junction Transistor 双载子接面电晶体

BNC Connector BNC 连接器

Bond-Out Processor 外合处理器

Boot PROM 根可编程只读内存

Bootflash

Bridge 网桥

Brouter 桥接路由器

Bubble-Jet Printer 气泡喷墨打印

Buffer 缓冲区

Burst Mode 突发模式

Bus 总线

Bus Mastering 总线控制能力

Bus Mouse 总线鼠标器

计算机和网络硬件术语 – C

Cable 电缆

Cable Modem 电缆调制解调器

Cache 高速缓存区

Cache Coherence 高速缓存一致性

Caddy Drive 盘托驱动

CAM:Content Addressable Memory 内容可寻址存储器

Candela

Capacitive Keyboard 电容式键盘

CardBus 插卡汇流排

CAS:Column Address Strobe 列地址选通脉冲

Cassette 卡带

Cat-5:Category 5 Cable 5类双绞线

CAT1: Category 1 Cable 1类电缆

CAT2: Category 2 Cable 2类电缆

CAT3: Category 3 Cable 3类电缆

CAT4: Category 4 Cable 4类电缆

CAT5e: Category 5e 5e类

CAT6: Category 6 Cable 6类电缆

CAT7: Category 7 Cabling 7类配线

CCD:Charge-Coupled Device 电荷耦合器件

CD-I Drive:Compact Disc-Interactive Drive 交互式光碟驱动器

CD-R Drive:Compact Disk-Recordable Drive 可记录光碟驱动器

CD-ROM:Compact Disc-Read-Only Memory

CD-RW:CD-Rewritable Drive 可重写光碟驱动器

Celeron 赛扬

Central Processor 中央处理器

Centrino 迅驰

Centronics Interface 平行界面

CFM:Cubic Feet per Minute

CGA:Color Graphics Adapter 色彩图形适配器

Chip 芯片

Chipset 芯片组

Cinepak 编码

CIS:Contact Image Sensor 接触型影像传感器

CISC:Complex Instruction Set Computer 复杂指令集计算机

Clock Rate 时钟频率

Clock Tick 时钟周期

CMOS:Complementary Metal Oxide Semiconductor 互补型金属氧化物半导体

CNR:Communication and Networking Riser 通讯与网络扩展卡

Coaxial Cable 同轴电缆

Color Monitor 彩色监视器

Color Printer 彩色打印机

Common Hardware Reference Platform 共用硬件参考平台

Common Intermediate Format 共享中间格式

Communication Streaming Architecture 传输流架构

Compact Flash 存储器卡

Complex Programmable Logic Device 复杂可编程逻辑器件

Composite Video 复合视频

Computer Cluster 计算机集群

Computer Hardware 计算机硬件

Computer Memory 计算机内存

Concentrator 集线器

Configuration 配置

Connection Pool 连接池

Connector 连接器

Console 控制台

Continuity Test 导通测试

Contrast Ratio 对比度

Control Bus 控制总线

Controller 控制器

Conventional Memory 常规内存

Coprocessor 协处理器

Core Memory 核心内存

Counter/Timer 计数器

CPGA:Ceramic Pin Grid Arrays 陶瓷针栅阵列矩阵

CPI: Cycles per instruction 周期/指令

CPU:Central Processing Unit 中央处理器

CPU Time CPU 时间

C-RIMM:Continuity-RIMM 连续性总线式内存模组

Crippleware 试用软件

Crossover Cable 跨接电缆

Crosstalk 串扰

CRT:Cathode-Ray Tube 阴极射线管

Cryptographic Coprocessor 密码辅助处理器

CSTN:Color Super-Twist Nematic 色彩超扭曲向列型

Cursor Control Keys 光标控制键

Custom-Cut CD 自定义 CD

Cut-Through Switch 直通式交换

计算机和网络硬件术语 – D

DAA:Data Access Arrangement 数据访问阵列

DAC:Digital-to-og Converter 数模转换器

D/A Converter 数字模拟转换器

DAC:Digital Access and Cross-connect System 数字接入交叉连接系统

Daisy Wheel Printer 菊花轮打印机

Dark Fiber 暗光纤

DAS:Direct Attached Storage 直接附加存储

Data Cartridge 数码磁带

Data Processing 数据处理

Data Projector 数据投影仪

DB Connector:Database Bus Connector 数据库总线连接器

DIN Connector:Deutsche Industrie Norm Connector 德国工业标准连接器

Dongle

DSPWare

计算机和网络硬件术语 – E

ECC Memory:Error-Correcting Code Memory 错误更正码内存

Edge Device 边缘设备

EDID:Extended Display Identification Data 扩展显示标识数据

EDO DRAM:扩充数据输出随机存储器

EEPROM:Electrically Erasable Programmable Read-Only Memory 电可插可编程只读存储器

EGA:Enhanced Graphics Adapter 增强图形适配器

EIA-232

EIA-422

EIA-423

EIA-449

EIA-530

EIDE:Enhanced IDE 增强型 IDE

EISA:Extended Industry Standard Architecture 扩充的工业标准体系结构

ELD:Electroluminescent Display 电致发光显示器

ELF Emission 极低频电磁辐射

EM64T:Extended Memory 64-bit Technology 64位内存扩展技术

计算机和网络硬件术语 – F

Faceplate 面板

Fax Machine 传真机

Fax Modem 传真调制解调器

FC-PGA:Flip Chip Pin Grid Array 反转芯片针脚栅格阵列

Feed Drive 馈送驱动

FET:Field-effect Transistors 场效应晶体管

Fiber Plant 光纤设备

Fiber Optics 光纤技术

Fiber-optic Cable 光缆

Fibre Channel 光纤通道

File Server 文件服务器

Filter 过滤器

Fixed-frequency Monitor 固定频率显示器

FPM RAM:Fast Page Mode RAM 页式 RAM

FRAD: Frame Relay Assembler/Disassembler 帧中继拆装设备

计算机和网络硬件术语 – G

Gas-Plaa Display 等离子气体显示器

Gigabit Switch Router 千兆位交换路由器

GPU:Graphic Processing Unit 图形处理单元

Graphic Card 图形卡

Graphics Accelerator 图形加速器

Graphics Adaptor 图形适配器

Graphics Display System 图形显示系统

Graphics Monitor 图形监视器

GSC Bus GSC 总线

计算机和网络硬件术语 – H

Handshaking 握手信号

Handwriting Recognition 手写体识别

Hard Disk 硬盘

Hard Disk Drive 硬盘驱动器

Hard Disk Partition 硬盘分区表

Hardware 硬件

Hardware Handshake 硬件握手

Hardware Monitor 硬件监控器

Hardware Platform 硬件平台

HDD Unit:Hard Disk Drive Unit 硬盘驱动单元

HDTV:High Definiton Television 高清晰度电视

Headless Server 无头服务器

Heat Sink 散热器

High Definition 高清晰度

计算机和网络硬件术语 – I

I/O:Input/Output

I/O Device I/O设备

I/O Space I/O 空间

IOCC:I/O Channel Controller I/O 通道控制器

I2O:Intelligent I/O 智能 I/O

IBM PC

IC:Integrated Circuit 集成电路

ICE:In-Circuit Emulator 内电路仿真器

ICR:Intelligent Character Recognition 人工智能文字识别

IDB: Interface Description Block 接口描述块

IDF:Intermediate Distribution Frame 中介配线架

IEEE 488 标准

IEEE 1284 标准

IEEE 1394 标准

ImageWriter

Impact Printer 打击式打印机

InfiniBand

Instruction pipeline 指令管线

Instruction 指令

Interface Encapsulation 接口封装

Interface Standard 接口标准

Interface 接口

IPC: Instructions Per Clock 指令/时钟

ISA: Industry-Standard Architecture 工业标准架构

ISA Bus: Industry Standard Architecture Bus 工业标准架构总线

计算机和网络硬件术语 – J

Jabber

JavaStation

Jitter 抖动

Joystick 操纵杆

Jukebox 自动放音器

Jumper

Junction Transistor 面结型晶体管

计算机和网络硬件术语 – K

Keyboard 键盘

Killer Micro 杀手级微处理器

KVM Switch:Keyboard、Video、Mouse Switch 切换器

计算机和网络硬件术语 – L

L1 Cache 一级高速缓存

L2 Cache 二级高速缓存

L3 Cache 三级高速缓存

LADDR:Layered Device Driver 分层的驱动程序

Lambda

LAN Free Backup LAN 自由备份

LAN Switch 局域网交换

Laptop Computer 膝上型计算机

Laser 激光

Laser Printer 激光打印机

Layer 2 Switch 第二层交换机

Layer 3 Switch 第三层交换机

Layer 4 Switch 第四层交换机

Line Card 线卡

Linux PC Linux计算机

这里有好多,以后不知道可以随时查

营销运作潜规则

手机的操作系统哪些更好?最有潜力?

一、Windows Mobile系列手机操作系统 Windows mobile 系列操作系统是在微软计算机的Windows操作系统上变化而来的,因此,它们的操作界面非常相似,熟悉计算机Windows系列操作系统的朋友一看到Windows Mobile系列的操作系统就一般会认得它是出于微软之手。Windows Mobile系列操作系统具有功能更强大,多数具备历简大了音频、视频文件播放、上网冲浪、MSN聊天、电子邮件收发等功能。而且,支持该操作系统的智能手机多数都采用了英特尔嵌入式处理器,主频比较高,另外,采用该咐辩操作系统的智能手机在其它硬件配置(如内存、储存卡容量等)上也较采用其它操作系统的智能手机要高出许多,因此性能比较强劲,操作起来速度会比较快。但是,此系列手机也有一定的缺点,如因配置高、功能多而产生耗电量大、电池续航时间短、硬件采用成本高等缺点。Windows Mobile系列操作系统包括SmartPhone以及Pocket PC Phone两种平台。Pocket PC phone主要用于掌上电脑型的智能手机,而SmartPhone则主要为单手智能手机提供操作系统。 (1) SmartPhone操作系统 Microsoft Smartphone是微软基于Microsoft Windows CE内核开发的、为智能手机提供的一种操作系统,与使用手写笔来进行操作的智能手机不同的是,基于该操作系统的手机无需借助手写笔,只需用手机提供的键盘就能完成几乎所有的操作,因此,使用该操作系统的手机用户只需一只手操作即可。基于Smartphone操作系统的智能手机与其它微软操作系统的智能手机在功能上并没有很大区别,多数具有MP3播放、MSN聊天、电子邮件收发等功能,无需借助手写笔来进行操作,携带方便。目前支持该操作系统的智能手机有神达Mio 8390和多普达565等. (2) Pocket PC Phone操作系统 Pocket PC Phone 是目前我们最为常见的微软智能手机操作系统,目前市面上绝大多数基于微软操作系统的智能手机都采用了这一操作系统,例如我们熟悉的联想ET180、ET560、多普达696、大显 CU928、多普达等智能手机即采用了此操作系统。与微软Smartphone不同的是,该操作系统主要借助手写笔来完成大部分的操作。 二、Symbian开放式操作系统 Symbian操作系统提供了灵活的应用界面(UI)框架,不但使开发者得以快速掌握必要的技术,同时还使手机制造商能够推出不同界面的产品。Symbian系统手机可以采用多种应用界面形式:一类在设计上很类似当前最常见的手机,即主要通过键盘进行输入的手机;另一类是使用手写笔进行操作;还有一类是既有键盘又有触摸屏的手机,它具有较大的屏幕和较小的键盘。不同的输入方式和外观设计会对各款手机的主要用途产生很大的影响。应用界面在要求上是由手机和市场决定的。有肢竖了Symbian操作系统,手机制造商和第三方开发者就可以为上述各类手机开发出独具特色的应用界面,例如: (1) 采用数字键盘的手机(Symbian s60) 此类手机需要灵活的应用界面,方便用户使用导航键(Joystick)、软按键或转点通键(Jogdial)操作,诺基亚3650和N-Gage也就是代表他们采用了Series 60应用界面。如诺基亚 6600;诺基亚 7610; 诺基亚 6670等; (2) 采用触摸式屏幕的手机(Symbian UIQ) 这类手机主要采用了UIQ界面,其中以索尼爱立信P802、P908为代表。UIQ是一种可定制的基于手写笔输入的应用界面,很适合支持具有丰富多媒体功能的手机。 (3) 采用完整键盘和超大彩色屏幕的手机(Symbian s80) 此类手机为那些需要在办公室以外编辑信息和查看业务数据的用户提供了先进的移动通信功能。诺基亚9300—9500个人通讯器系列是此类应用界面的典型代表。 三、PALM手机操作系统 PALM是3Com公司的Palm Computing部开发的一种32位的嵌入式操作系统,原本是一家生产掌上电脑及掌上电脑操作系统为主的公司,PALM智能手机所用的PALM操作系统又与PALM掌上电脑所用的操作系统非常相似,因此,基于该操作系统的手机拥有的第三方软件较多,以前用惯了PALM掌上电脑的用户能非常快速地掌握这类的智能手机。 由于PALM一直遵循Less is More(少就是多)这一理念去设计,所以,与微软所推出操作系统要占有大量的系统资源和储存容量不同的是,它本身所占的内存极小,基于PALM操作系统编写的应用程序所占的空间也很小,通常只有几十KB,所以基于PALM操作系统的掌上电脑虽然只有几兆内存却可以运行众多的应用程序。但是,这么一来,它的功能就没那么多,当然,最近PALM似乎也意识到丰富的功能对消费者的吸引力之大,因此,PALM也似乎越来越向提供丰富的功能靠拢,“少就是多”的设计理念逐步削弱。另外,对于中国用户而言,它有一个不足之处是,它的操作系统起初在中国销售的产品仍然要使用中文外挂平台,有相当部分依然是以英文界面为主,在一定程度上影响了基于PALM操作系统的产品在中国市场的大面积进入。目前,基于PALM操作系统的手机有三星SPH-i330、Handspring Treo 650系列等。 四、Linux手机操作系统 与Windows Mobile系列操作系统一样,Linux手机操作系统是由计算机Linux操作系统“变化”而来的。简单地说,Linux是一套免费使用和自由传播的操作系统。它支持32位和64位处理器,在计算机领域中,主要用于配备Intel x86系列CPU的计算机,在手机领域中,较具代表性的产品有摩托罗拉A768。 Linux具有稳定、可靠、安全等优点,有强大的网络功能。在相关软件的支持下,可实现WWW、FTP、DNS、DHCP、E-mail等服务。由于Linux具有源代码开放、这一特点非常重要,因为丰富的应用是智能手机的优越性体现和关键卖点所在。从应用开发的角度看,由于Linux的源代码是开放的,有利于独立软件开发商(ISV)开发出硬件利用效率高、功能更强大的应用软件,也方便行业用户开发自己的安全、可控认证系统。特别是当智能手机大量用作行业应用的移动终端时,Linux在手机操作系统市场中也异军突起,成为一股不容忽视的力量。目前,基于Linux手机操作系统的产品有三星mitssch-i519和摩托罗拉A768、A780、e680等。

joystick linux 编程的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于joystick linux 编程,LINUX下Joystick编程详解,如何在Ubuntu 10.04 下面安装X-Plane,弱电工程里的符号”IDF”是什么意思?,手机的操作系统哪些更好?最有潜力?的信息别忘了在本站进行查找喔。


数据运维技术 » LINUX下Joystick编程详解 (joystick linux 编程)