面向物联网的传感器应用开发技术-5-5-五向开关传感器应用开发课件_第1页
面向物联网的传感器应用开发技术-5-5-五向开关传感器应用开发课件_第2页
面向物联网的传感器应用开发技术-5-5-五向开关传感器应用开发课件_第3页
面向物联网的传感器应用开发技术-5-5-五向开关传感器应用开发课件_第4页
面向物联网的传感器应用开发技术-5-5-五向开关传感器应用开发课件_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、面向物联网的传感器应用开发技术5-5 五向开关传感器应用开发项目场景说明五向开关简介驱动芯片介绍项目实践项目场景从电子游戏诞生至今,手柄一直是玩家和游戏沟通中最重要的一个工具。这30多年来,随着游戏理念和形态的不断进步,游戏手柄的设计也在不断地发生着改变。这些游戏手柄蕴含着人体工程、工业设计美学等让人如痴如醉的东西所存在。任务目标本项目设计中主要是五向开关的使用,硬件结构主要由CC2530微处理器、五向开关组成,功能上主要是左右调节方向,上下调节前进后退,通过串口显示操作命令。五向开关简介五向开关是设置有五个固定触点,能够对多个单元的断开与接通进行控制的一种开关,适用于礼品、家用电器及其它电子

2、产品五向开关特征在于,它具有在内底部上设有中央固定触点、公用触点以及设置于所述中央固定触点的周边上的多个周边固定触点的外壳、分别相对地设置在所述中央固定触点及周边固定触点上的多个金属制的活动触点簧片,所述活动触点簧片经常与所述公用触点接通,所述活动触点簧片通过金属制的连接部而连接成一体并且通过操作杆的操作使至少其中一个活动触点簧片与相对的中央固定触点或周边固定触点接通。驱动芯片ZLG7290检测每个按键的连击次数,其基本功能如下:键盘去抖动处理当键被按下和放开时,可能会出现电平状态反复变化,称作键盘抖动。若不作处理会引起按键盘命令双键互锁处理当有两个以上按键被同时按下时 ZLG7290 只采样

3、优先级高的按键(优先顺序S1S2S64,如同时按下 S2 和 S18 时采样到 S2)连击键处理当某个按键按下时,输出一次键值后,如果该按键还未释放,该键值连续有效,就像连续压按该键一样,这种功能称为连击。连击次数计数可区别出单击或连击 判断连击次数可以检测被按时间,以防止某些功能误操作。功能键处理功能键能实现 2 个以上按键同时按下来扩展按键数目或实现特殊功能。 如 PC 机上的”Shift” 、”Ctrl“、”Alt” 键。项目分析本项目设计中主要是五向开关的使用,硬件结构主要由CC2530微处理器、五向开关组成,功能上主要是左右调节方向,上下调节前进后退,通过串口显示操作命令。CC253

4、0五向开关ZLG7290串口项目硬件图驱动芯片ZLG7290CS和五向开关原理图: 五向开关项目逻辑框图项目实现数码管驱动芯片ZLG7290CS初始化void zlg7290_init(void)iic_init(); /I2C初始化P0SEL &= 0 x08; /设置P0_3为普通IO模式P0DIR &= 0 x08; /设置P0_3为输入模式P2INP &= 0X20;P0INP &= 0X08;IEN1 |= 0 x20; /端口0中断使能P0IEN |= 0 x08; /端口P0_3外部中断使能PICTL |= 0 x01; /端口P0_3下降沿触发 EA = 1; /使能总中断项目

5、实现数码管驱动芯片ZLG7290CS读寄存器函数unsigned char zlg7290_read_reg(unsigned char cmd)unsigned char data = 0; /定义数据delay_ms(1);iic_start(); /启动总线if(iic_write_byte(ZLG7290ADDR & 0 xfe) = 0) /地址设置if(iic_write_byte(cmd) = 0) /命令输入iic_start();if(iic_write_byte(ZLG7290ADDR | 0 x01) = 0) /等待数据传输完成data = iic_read_byte(

6、0); /读取数据iic_stop();return data; /返回数据项目实现数码管驱动芯片ZLG7290CS写数据函数void zlg7290_write_data(unsigned char cmd, unsigned char data)delay_ms(1);iic_start(); /启动总线if(iic_write_byte(ZLG7290ADDR & 0 xfe) = 0) /地址设置if(iic_write_byte(cmd) = 0) /命令输入iic_write_byte(data); /等待数据传输完成iic_stop();项目实现主函数控制程序void main(void)xtal_init(); /系统时钟初始化 zlg7290_init(); /键盘驱动芯片初始化uart1_init(0 x00,0 x00); /串口初始化while(1)if(get_keyval() = UP)uart1_send_string(gorn);if(get_keyval() = DOWN)uart1_send_string(backrn);if(get_keyval() = LEFT)uart1_send_string(leftrn);if(get_keyval() = RIGHT)uart1_sen

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论