数字旋转编码开关的原理及使用方法

上传人:无*** 文档编号:156809686 上传时间:2022-09-27 格式:DOC 页数:4 大小:62KB
收藏 版权申诉 举报 下载
数字旋转编码开关的原理及使用方法_第1页
第1页 / 共4页
数字旋转编码开关的原理及使用方法_第2页
第2页 / 共4页
数字旋转编码开关的原理及使用方法_第3页
第3页 / 共4页
资源描述:

《数字旋转编码开关的原理及使用方法》由会员分享,可在线阅读,更多相关《数字旋转编码开关的原理及使用方法(4页珍藏版)》请在装配图网上搜索。

1、数字旋转编码开关的原理及使用方法 在电子产品设计中,经常会用到旋转编码开关,比如数码电位器等,它的英文名翻译过来就是Rotary Encoder Switch。在写这个元件的驱动程序之前,我google、baidu了一些它的使用说明资料,知道了它具有左转、右转和按下三个功能,有五个脚,它的外形如下图所示: (1)1、3脚要外接上拉电阻,一般10K就足矣;(2)2脚一般接地就行;(3)4、5脚是下按键的开关接线(按下时,4脚为低电平);我调试这个元件时的实物接线示意图为:其实它使用起来并不难,我看到网上的资料大都说操作它时判断正转和反转是一个难点,在这里我希望博友在看了我的代码后会觉得这其实只是

2、一个“传说”!我的代码会把这个问题说的清清楚楚、简简单单的!我觉得其实判断正转和反转的关键就是:当BMA为低电平时,BMB的跳变沿是怎样的上升沿表示正转,下降沿表示反转。只要用代码把这个描述清楚就OK了,这个器件就基本可以顺利地操作了。没有多余的再说了,直接附上代码:#include #define uchar unsigned char#define uint unsigned intsbit BMA=P14;sbit BMB=P15;sbit BMC=P16;sbit P27=P27;sbit P26=P26;sbit P25=P25;uchar code table=0xC0,0xF9,

3、0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;uchar count=0;uchar flag;uchar Last_BMB_status;uchar Current_BMB_status;/*void delay(uchar z) /大约1ms的延时 uchar x,y; for(x=z;x0;x-) for(y=110;y0;y-);/*void display() /显示子程序 P0=tablecount%10; /个位 P27=0; delay(10); P27=1; P0=tablecount%100/10; /十位 P26=0; delay(10)

4、; P26=1; P0=tablecount/100; /百位 P25=0; delay(10); P25=1;/*void main() TMOD=0x01; /定时器0,工作方式1 TH0=0xD8; TL0=0xF0; /给定时器装上初值,10ms中断一次 ET0=1; /打开定时器中断 EA =1; /打开总中断 TR0=1; /启动定时器0 while(1) Last_BMB_status=BMB; while(!BMA) /BMA为低电平时 Current_BMB_status=BMB; flag=1; /标志位置为1说明编码开关被旋转了 if(flag=1) flag=0; /时

5、刻要注意这一点!给标志位清零 if(Last_BMB_status=0)&(Current_BMB_status=1) /BMB上升沿表示正转 count+; if(count=255) count=0; if(Last_BMB_status=1)&(Current_BMB_status=0) /BMB下降沿表示反转 count-; if(count=0) count=255; /*void timer0() interrupt 1 /定时器0的中断服务程序 TH0=0xD8; TL0=0xF0; /再次装入初值 display(); /每隔10ms显示一次 if(!BMC) /按下旋转编码开关则计数清零 count=0;

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!