位置:51电子网 » 技术资料 » 显示光电

用HT82J97E实现带震动的USB Joystick的设计

发布时间:2007/8/24 0:00:00 访问次数:697


                                             吴烁

    本文主要介绍了HT82J97E针对USB Joystick而设计的硬件功能。

    USB低速设备发展到现在已经相当成熟。带震动的Joystick在市场上將會越來越普遍,为了让开发者更能简化程序和提高开发效率,盛群半导体设计出了HT82J97E,用以开发USB DEVICE。

    功能及特点

    

    图1.方框图

    HT82J97E为八位高性能精简指令集单片机。专为USB产品而设计的。集成了USB SIE,支持USB和PS2端口复用。适用于Joystick和Mouse设备。主要功能和特点如下:

    1.  工作电压:Fsys=6M/12MHz : 4.4V~5.5V;

    2.  支持USB低速标准,有USB中断,可以从每个endpoint读取8*8位资料;

    3.  最多可有20个双向输入/输出口,都可以通过选择是否带有上拉电阻,这样可以节省成本;

    4.  2K*14位程序存储ROM、96*8位数据存储RAM和4层硬件堆栈;

    5.  PWM输出PWM1,PWM2(频率范围是23Hz~23KHz);

    6.  16位可编程定时/计数器,具有溢出中断;

    7.  6通道8位A/D转换器;

    8.  HALT功能和唤醒功能能减小功耗;

    9.  低电压复位功能和Watch Dog定时器;

    10. 3.3V标准输出,可以连接到USB D-,PC就可以判断其为USB低速设备;

    USB和PS2端口共享

    通过寄存器实现USB和PS2端口的切换

    SELPS2=1BH.4 , SELUSB=1BH.5

    SELPS2=1,SELUSB=0,工作在PS2状态;

    SELPS2=0,SELUSB=1,工作在USB状态;

    USB中断

    USB中断是由USB以下列出事件触发,相关的中断请求位(USBF:INTC.4)被置位。

    1.  PC访问USB FIFO;

    2.  接受来自PC的USB暂停信号;

    3.  接受来自PC的USB恢复信号;

    4.  USB复位信号

    为Joystick震动设计的PWM输出

    PWM1DR(0CH)为PWM1占空比缓存器,PWM2(0DH)为PWM2占空比缓存器

    PWMBR(18H)为PWM基础周期缓存器

    PWM占空比计算:

    基础周期=(4/Fsys)*(PWMBR+1)或(1/Fsys)*(PWMBR+1) (PWMBR=1~255)

    4/Fsys或1/Fsys通过PORT_PC(16H)的PWM_S来定义。

    PWM_S为1,1/Fsys;PWM_S为0,4/Fsys。

    PWM周期=256*基础周期

    PWM1占空比=(PWM1DR+1)/256*100%  (PWM1DR=0~255)

    PWM2占空比=(PWM2DR+1)/256*100%  (PWM1DR=0~255)

    通过设定PORTC_PC(16H)的PWM1_EN位或PWM2_EN位来允许PWM功能。

    PWM1_EN为1,允许PWM1输出;PWM1_EN为0,不允许PWM1输出;

    PWM2_EN为1,允许PWM2输出;PWM2_EN为0,不允许PWM2输出。

    由以上方法,可以输出不同频率和Duty的PWM,输出控制给电机后得到的转动速度不同,这样使Joystick有不同的震动效果。

    A/D转换

    参考电压可以通过USR(0X1B) VRSEL位来进行选择。

    VRSEL为0,VRH=PB7口电压,VRL=PB6口电压;

    VRSEL为1,VRH=VDD,VRL=0。

    这样让A/D转换更加灵活,能更好的适用于开发者使用。

    软件设计

&nb


                                             吴烁

    本文主要介绍了HT82J97E针对USB Joystick而设计的硬件功能。

    USB低速设备发展到现在已经相当成熟。带震动的Joystick在市场上將會越來越普遍,为了让开发者更能简化程序和提高开发效率,盛群半导体设计出了HT82J97E,用以开发USB DEVICE。

    功能及特点

    

    图1.方框图

    HT82J97E为八位高性能精简指令集单片机。专为USB产品而设计的。集成了USB SIE,支持USB和PS2端口复用。适用于Joystick和Mouse设备。主要功能和特点如下:

    1.  工作电压:Fsys=6M/12MHz : 4.4V~5.5V;

    2.  支持USB低速标准,有USB中断,可以从每个endpoint读取8*8位资料;

    3.  最多可有20个双向输入/输出口,都可以通过选择是否带有上拉电阻,这样可以节省成本;

    4.  2K*14位程序存储ROM、96*8位数据存储RAM和4层硬件堆栈;

    5.  PWM输出PWM1,PWM2(频率范围是23Hz~23KHz);

    6.  16位可编程定时/计数器,具有溢出中断;

    7.  6通道8位A/D转换器;

    8.  HALT功能和唤醒功能能减小功耗;

    9.  低电压复位功能和Watch Dog定时器;

    10. 3.3V标准输出,可以连接到USB D-,PC就可以判断其为USB低速设备;

    USB和PS2端口共享

    通过寄存器实现USB和PS2端口的切换

    SELPS2=1BH.4 , SELUSB=1BH.5

    SELPS2=1,SELUSB=0,工作在PS2状态;

    SELPS2=0,SELUSB=1,工作在USB状态;

    USB中断

    USB中断是由USB以下列出事件触发,相关的中断请求位(USBF:INTC.4)被置位。

    1.  PC访问USB FIFO;

    2.  接受来自PC的USB暂停信号;

    3.  接受来自PC的USB恢复信号;

    4.  USB复位信号

    为Joystick震动设计的PWM输出

    PWM1DR(0CH)为PWM1占空比缓存器,PWM2(0DH)为PWM2占空比缓存器

    PWMBR(18H)为PWM基础周期缓存器

    PWM占空比计算:

    基础周期=(4/Fsys)*(PWMBR+1)或(1/Fsys)*(PWMBR+1) (PWMBR=1~255)

    4/Fsys或1/Fsys通过PORT_PC(16H)的PWM_S来定义。

    PWM_S为1,1/Fsys;PWM_S为0,4/Fsys。

    PWM周期=256*基础周期

    PWM1占空比=(PWM1DR+1)/256*100%  (PWM1DR=0~255)

    PWM2占空比=(PWM2DR+1)/256*100%  (PWM1DR=0~255)

    通过设定PORTC_PC(16H)的PWM1_EN位或PWM2_EN位来允许PWM功能。

    PWM1_EN为1,允许PWM1输出;PWM1_EN为0,不允许PWM1输出;

    PWM2_EN为1,允许PWM2输出;PWM2_EN为0,不允许PWM2输出。

    由以上方法,可以输出不同频率和Duty的PWM,输出控制给电机后得到的转动速度不同,这样使Joystick有不同的震动效果。

    A/D转换

    参考电压可以通过USR(0X1B) VRSEL位来进行选择。

    VRSEL为0,VRH=PB7口电压,VRL=PB6口电压;

    VRSEL为1,VRH=VDD,VRL=0。

    这样让A/D转换更加灵活,能更好的适用于开发者使用。

    软件设计

&nb

相关IC型号

热门点击

 

推荐技术资料

按钮与灯的互动实例
    现在赶快去看看这个目录卞有什么。FGA15N120AN... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!