文档库 最新最全的文档下载
当前位置:文档库 › 旋转编码开关-数字电位器

旋转编码开关-数字电位器

旋转编码开关-数字电位器
旋转编码开关-数字电位器

标签:无标签

旋转编码开关(Rotary Encoder switch)

这种旋转编码开关(Rotary Encoder switch),一个使用3脚的,后面一个使用5脚的,大家可能对这种玩意都不是很了解,但涉及到有调整的地方,这个玩意使用真是很爽,我弄了2个,研究了一下,供大家参考~

5脚的ALPS:

具有左转,右转,按下三个功能。4、5脚是中间按下去的开关接线 1 2 3脚一般是中间2脚接地,1、3脚上拉电阻后,当左转、右转旋纽时,在1、3脚就有脉冲信号输出了。

着这是标准资料:

在单片机编程时,左转和右转的判别是难点,用示波器观察这种开关左转和右转时两个输出脚的信号有个相位差,见下图:

由此可见,如果输出1为高电平时,输出2出现一个高电平,这时开关就是向顺时针旋转; 当输出1 为高电平,输出2出现一个低电平,这时就一定是逆时针方向旋转.

所以,在单片机编程时只需要判断当输出1为高电平时,输出2当时的状态就可以判断出是左旋转或是右旋转了。

还有另外一种3脚的,除了不带按钮开关外,和上面是一样的使用。

参考:

#include "reg51.h"

#define uint unsigned int

sbit CodingsWitch_A=P1_1;

sbit CodingsWitch_B=P1_2;

uint CodingsWitchPolling()//

{

static Uchar Aold,Bold; //定义了两个变量用来储蓄上一次调用此方法是编码开关两引脚的电平

static Uchar st; //定义了一个变量用来储蓄以前是否出现了两个引脚都为高电平的状态

uint tmp = 0;

if(CodingsWitch_A&&CodingsWitch_B)

st = 1; //

if(st) //如果st为1执行下面的步骤

{

if(CodingsWitch_A==0&&CodingsWitch_B==0) //如果当前编码开关的两个引脚都为底电平执行下面的步骤

{

if(Bold) //为高说明编码开关在向加大的方向转

{

st = 0;

tmp++; //

}

if(Aold) //为高说明编码开关在向减小的方向转

{

st = 0;

tmp--; //设返回值

}

}

}

Aold = CodingsWitch_A; //

Bold = CodingsWitch_B; //储

return tmp; //

}

//编码器计数程序

void encoder_cnt(void)

{

uchar temp;

temp = PIND; //取端口D管脚信号

couch_clr = (temp & 0x08); //取编码器清零信号

if(couch_clr != false) //有编码器清零信号

{

couch_num = 0; //水平床码清零

}

else

{

if(encoder_cnt_en == false) //编码器计数模块没有启动 {

pr_couch_ba = temp & 0x03; //取编码器A、B相电平信号

}

else

{

couch_ba = temp & 0x03; //取编码器A、B相电平信号

if(pr_couch_ba == 0x00)

{

if(couch_ba == 0x01)

{

couch_num++; //水平床码加1 }

else if(couch_ba == 0x10)

{

couch_num--; //水平床码减1 }

}

else if(pr_couch_ba == 0x01)

{

if(couch_ba == 0x11)

{

couch_num++; //水平床码加1 }

else if(couch_ba == 0x00)

{

couch_num--; //水平床码减1 }

}

else if(pr_couch_ba == 0x10)

{

if(couch_ba == 0x00)

{

couch_num++; //水平床码加1 }

else if(couch_ba == 0x11)

{

couch_num--; //水平床码减1 }

}

else if(pr_couch_ba == 0x11)

{

if(couch_ba == 0x10)

{

couch_num++; //水平床码加1 }

else if(couch_ba == 0x01)

{

couch_num--; //水平床码减1 }

}

}

pr_couch_ba = couch_ba;

}

}

编码器及其计数模块原理

该文件只允许会员下载! 登录 | 注册

飘扬的旋转编码器的检测程序(MCS51)

//旋转编码器检测程序,A/B信号分别接在了INT0和INT1上//程序作者:BG4UVR

//2005年1月15用KEIL编译、硬件测试通过

//注意:编码器的信号,程序未做消抖处理。测试中,A/B信号上各//接了一只104的瓷片电容,工作很正常。如果不接电容,请自行编//写信号消抖程序。

#include

sbit led="0xB1";//有一只LED接在了RXD引脚上,用来指示正反转;

main()

{

EA=1; //总中断允许

EX0=1; //外部中断0允许

IT0=1; //外部中断0为边沿触发方式

while(1);;

}

/*********************

编码器中断函数

入口:无

出口:无

*********************/

void encoder(void) interrupt 0 { //外部中断0

if (INT1){

led=1;

}else{

led=0;

}

}

whimsy 的AVR程序

//外部中断0,用于编码开关解码,解码图: A接中断脚(AVR的PD2),以此为基准,B用来判断方向(连到AVR的PA1), C接地

//A -|

// | -----|__________|----------|____________

//C -|

//

//B -|

// | ----------|__________|----------|____________

//C -|

// CW ===>>> ROTATION

//外部中断设置(ISC01=0,ISC00=1): INT0 引脚上任意的逻辑电平变化都将引发中断

#pragma interrupt_handler int0_isr:2

void int0_isr(void)

{

//external interupt on INT0

GICR=0; //禁止外部中断

if ((PIND & 0x04)==0) //先判断是高电平产生的中断还是低点平的中断

if ((PINA & 0x02)==0) //再判断B线上的电平

{

keycounter--;

keydirection="0";

}

else

{

keycounter++;

keydirection="1";

}

else

if ((PINA & 0x02)==0)

{

keycounter++;

keydirection="1";

}

else

{

keycounter--;

keydirection=0;

}

GICR=0x40;

系统分类: 电子制造 | 用户分类: 无分类 | 来源: 转贴 | 【推荐给朋友】 | 【添加到收藏夹】

在EC10上实现四位BCD拨码开关数据输入

在EC10上实现四位BCD拨码开关设定值输入 概要: 本文使用EC10的源型输入功能,利用四个输入口和四个输出口来实现一组四位拨码开关设定值的读入,并且可以在此基础上实现更多位拨码开关设定值的读入,还可在这个程序编制过程中体会到如何在PLC控制系统中节省输入口的一些技巧。 关键词:BCD码、拨码开关、PLC、源型输入、漏型输入 一、拨码开关简介 如果PLC控制系统中的某些控制参数或数据经常需要人工修改,可使用拨码开关与PLC进行连接,在PLC外部进行数据设定或修改。如下图所示的四位一组的拨码开关,每一位拨码开关可以输入十进制的0-9,或者是十六进制的0-A。 BCD拨码开关是十进制输入,BCD码(即2-10十进制)输出,又称为8421拨码开关。每位BCD拨码开关可输入1位10进制数,4片BCD拨码开关拼接可得4位10进制输入拨码组。每个BCD拨码开关后面有5个接点,其中C为输入控制线,另外4根是BCD 码输出信号线。拨盘拨到不同的位置时,输入控制线C分别与4根BCD码输出线中的某根或某几根接通。其接通的BCD码输出线状态正好与拨盘指示的10进制数相一致,符合2-10进制编码关系。 拨码开关外形图拨码开关接线端子图 二、PLC的源型输入 EC10系列PLC提供给用户进行输入方式的选择,端子排上的S/S端子用来选择信号的输入方式,可以设置成源型输入方式或漏型输入方式。将S/S端子与+24V端子相连,即设置为漏型输入方式,可以连接NPN型传感器,PLC的+24V端子和COM端子配合,提供给输入元件24V直流电源;将S/S端子和COM端子相连,即设置为源型输入方式,可以连

接PNP 型传感器,这时外部输入元件将使用外部辅助电源。 EC20出厂设置为漏型输入,但可通过改焊PLC 内部接口板上的JP0、JP1、JP2三个跳线(0欧姆SMT 电阻)来实现源型输入,参照板上的丝印说明(√表示焊接,×表示断开): JP0 JP1 JP2 源型输入方式 √ × × 漏型输入方式(出厂设置) × √ √ 在主模块中,所以的输入端口只能采用同一种输入方式(源型或漏型),如果EC20需要采用源型输入方式,请在订货时咨询供应商,不要擅自改动,以免造成损坏。 在本文中,要利用四个PLC 输入端口实现四位拨码开关设定值的读入,因此将使用四个PLC 输出口来分别控制四位拨码开关的依次读入,所以对于PLC 输入口而言,是采用源型输入方式。 下图为源型输入方式的EC10主模块输入端口内部等效电路图 三、设备及连线 设备器材说明:EC10-1614BTA 1台 四位拨码开关 1只 二极管IN4001 16只 PLC 接线图: 各种信号输入设备

如何使用编码开关

如何使用旋转编码开关2? 作者:佚名来源:不详录入:Admin更新时间:2008-7-27 16:18:51点击数:2 【字体:】 我前面介绍的2篇文章:“自己动手做收音机(LC72131)”和“电脑USB接口LCD液晶显示板(LCD Smartie)”都使用了这种旋转编码开关(Rotary Encoder switch),一个使用3脚的,后面一个使用5脚的,大家可能对这种玩意都不是很了解,但涉及到有调整的地方,这个玩意使用真是很爽,我弄了2个,研究了一下,供大家参考~ 5脚的ALPS: 具有左转,右转,按下三个功能。4、5脚是中间按下去的开关接线 1 2 3脚一般是中间2脚接地,1、3脚上拉电阻后,当左转、右转旋纽时,在1、3脚就有脉冲信号输出了。 着这是标准资料:

在单片机编程时,左转和右转的判别是难点,用示波器观察这种开关左转和右转时两个输出脚的信号有个相位差,见下图: 由此可见,如果输出1为高电平时,输出2出现一个高电平,这时开关就是向顺时针旋转; 当输出1 为高电平,输出2出现一个低电平,这时就一定是逆时针方向旋转. 所以,在单片机编程时只需要判断当输出1为高电平时,输出2当时的状态就可以判断出是左旋转或是右旋转了。 还有另外一种3脚的,除了不带按钮开关外,和上面是一样的使用。

参考: #include "reg51.h" #define uint unsigned int sbit CodingsWitch_A=P1_1; sbit CodingsWitch_B=P1_2; uint CodingsWitchPolling()// { static Uchar Aold,Bold; //定义了两个变量用来储蓄上一次调用此方法是编码开关两引脚的电平 static Uchar st; //定义了一个变量用来储蓄以前是否出现了两个引脚都为高电平的状态 uint tmp = 0; if(CodingsWitch_A&&CodingsWitch_B) st = 1; // if(st) //如果st为1执行下面的步骤 { if(CodingsWitch_A==0&&CodingsWitch_B==0) //如果当前编码开关的两个引脚都为底电平执行下面的步骤 { if(Bold) //为高说明编码开关在向加大的方向转 { st = 0; tmp++; // } if(Aold) //为高说明编码开关在向减小的方向转

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

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

BMB的跳变沿是怎样的——上升沿表示正转,下降沿表示反转。只要用代码把这个描述清楚就OK了,这个器件就基本可以顺利地操作了。 没有多余的再说了,直接附上代码: #include #define uchar unsigned char #define uint unsigned int sbit BMA=P1^4; sbit BMB=P1^5; sbit BMC=P1^6; sbit P27=P2^7; sbit P26=P2^6; sbit P25=P2^5; uchar code table[]={0xC0,0xF9,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;x>0;x--) for(y=110;y>0;y--); } void display() //显示子程序 { P0=table[count%10]; //个位 P27=0; delay(10); P27=1; P0=table[count%100/10]; //十位 P26=0; delay(10); P26=1; P0=table[count/100]; //百位 P25=0; delay(10); P25=1; } //************************************************

8421BCD码

8421BCD码 计算机内毫无例外地都使用二进制数进行运算,但通常采用8进制和十六进制的形式读写。对于计算机技术专业人员,要理解这些数的含义是没问题,但对非专业人员却不那么容易的。由于日常生活中,人们最熟悉的数制是十进制,因此专门规定了一种二进制的十进制码,称为BCD码,它是一种以二进制表示的十进制数码。 8421BCD [编辑本段] 一、8421BCD码 二进制编码的十进制数,简称BCD码(Binarycoded Decimal). 这种方法是用4位二进制码的组合代表十进制数的0,1,2,3,4,5,6 ,7,8,9 十个数符。4位二进制数码有16种组合,原则上可任选其中的10种作为代码,分别代表十进制中的0,1,2,3,4,5,6,7,8,9 这十个数符。最常用的BCD码称为8421BCD 码,8.4.2.1 分别是4位二进数的位取值。右图为十进制数和8421BCD编码的对应关系表: 1、BCD码与十进制数的转换 BCD码与十进制数的转换.关系直观,相互转换也很简单,将十进制数75.4转换为BCD码如: 75.4=(0111 (0101.0100)BCD 若将BCD码1000 0101.0101转换为十进制数如: (1000 0101.0101)BCD=85.5 注意:同一个8位二进制代码表示的数,当认为它表示的是二进制数和认为它表示的是二进制编码的十进制数时,数值是不相同的。 例如:00011000,当把它视为二进制数时,其值为24;但作为2位BCD码时,其值为18。 又例如00011100,如将其视为二进制数,其值为28,但不能当成BCD码,因为在8421BCD码中,它是个非法编码. 2、BCD码的格式 计算机中的BCD码,经常使用的有两种格式,即分离BCD码,组合BCD码。

旋转编码开关(Rotary Encoder switch)-使用说明及程序

旋转编码开关(Rotary Encoder switch)-使用说明及程序 具有左转,右转,按下三个功能。4、5 脚是中间按下去的开关接线 1 2 3 脚一般是中间2 脚接地,1、3 脚上拉电阻后,当左转、右转旋纽时,在1、3 脚就有脉冲信号输出了。 着这是标准资料:

在单片机编程时,左转和右转的判别是难点,用示波器观察这种开关左转和右转时两个输出 脚的信号有个相位差,见下图: 由此可见,如果输出1 为高电平时,输出2 出现一个高电平,这时开关就是向顺时针旋转; 当输出1 为高电平,输出2 出现一个低电平,这时就一定是逆时针方向旋转. 所以,在单片机编程时只需要判断当输出1 为高电平时,输出2 当时的状态就可以判断出是左 旋转或是右旋转了。 还有另外一种3 脚的,除了不带按钮开关外,和上面是一样的使用。

参考: #include "reg51.h" #define uint unsigned int sbit CodingsWitch_A=P1_1; sbit CodingsWitch_B=P1_2; uint CodingsWitchPolling()// { static Uchar Aold,Bold; //定义了两个变量用来储蓄上一次调用此方法是编码开关两引 脚的电平 static Uchar st; //定义了一个变量用来储蓄以前是否出现了两个引脚都为高电 平的状态 uint tmp = 0; if(CodingsWitch_A&&CodingsWitch_B) st = 1; // if(st) //如果st 为1 执行下面的步骤 { if(CodingsWitch_A==0&&CodingsWitch_B==0) //如果当前编码开关的两个引脚 都为底电平执行下面的步骤 { if(Bold) //为高说明编码开关在向加大的方向转 { st = 0; tmp++; // } if(Aold) //为高说明编码开关在向减小的方向转

8421BCD码

84 写。易的 码, 一、 制码 有15,6进数 D 码 00 0 二进 为1 421 放格 421BC 计算机内毫对于计算机 的。由于日常称为BCD 码 、8421BC 二进制编码码的组合代表6种组合,原,7,8,9 数的位取值。1、BCD 码BCD 码与十 码如: 75.4=(01110101.0101)B 注意:同一个进制编码的十例如:00018。 又例如000 BCD 码中,2、BCD 码计算机中的 所谓分离B 格式为: _ _ _1 0 CD 码 毫无例外地都机技术专业人常生活中,人们码,它是一种CD 码 码的十进制数表十进制数的原则上可任选这十个数符 右图为十进码与十进制数十进制数的转1 (0101.010BCD =85.5 个8位二进制十进制数时,11000,当把011100,如将它是个非法 码的格式 的BCD 码,经BCD 码,即用0 0 _ _ _ 都使用二进制员,要理解这们最熟悉的数种以二进制表 数,简称BCD 0,1,2,3选其中的10符。最常用的进制数和842数的转换 转换.关系直观00)BCD 若将 制代码表示的数值是不相把它视为二进将其视为二进法编码 . 经常使用的有用一个字节的_0 0 1 0 其数进行运算这些数的含义数制是十进制表示的十进制D 码(Binaryco ,4,5,6 种作为代码的BCD 码称为21BCD 编码观,相互转换将BCD 码10的数,当认为同的。 进制数时,其进制数,其值有两种格式,的低四位编码其中_表示无,但通常采用义是没问题,制,因此专门制数码。 oded Decim ,7,8,9 ,分别代表十为8421BCD 码的对应关系换也很简单,000 0101.0为它表示的是其值为24;但值为28,但不即分离BC 码表示十进制无关值。 8进制和十六但对非专业门规定了一种mal). 这种方十个数符。十进制中的0D 码,8.4.2.1表: 将十进制数101转换为十二进制数和认但作为2位B 不能当成BC D 码,组合制数的一位,六进制的形式业人员却不那种二进制的十方法是用4位4位二进制,1,2,3,1 分别是4位数75.4转换为十进制数如: 认为它表示的BCD 码时, CD 码,因为BCD 码。 例如数82的式读 么容十进制位二进数码4, 位二为BC (10的是其值为在8的存

8421旋转编码开关规格书.

深圳市荃鼎科技有限公司 8421 ROTARY DIP SWITCH 10X10 8421 旋转编码开关 (1对4, 3对3或3对2脚,正码, 反码) 产品特点: 内部触点釆用进口特殊材料,寿命长,极小的接触电阻,做工精细。引脚类别有:直插DIP,贴片SMD,直角侧调直插,3对3脚或3对2脚,1对4脚。柄高度为: 0mm/3mm/7mm。可替代进口同类产品。 ■ 产品材质: 1:上盖与本体:PBT或PCT UL94V-0等级耐高温工程塑料,蓝色或黑色。 2:旋转柄:PA66 UL94V-0等级高强度耐高温尼龙。3对3 (或3对2)为白色, 4对1为黃色,反码统一为红色。 3:固定触点与可动触点:铜片镀金。 4:外引脚:铜片镀锡(或铜片镀金)。 ■产品性能: 1:工作电流:50mA, 24VDC 2:接触电阻:100m Q Max 3:绝缘电阻:1000MQ Min at 100VDC 4:耐压值:250VAC Min for 1 minute 5:工作温度:一25°C~70°C 6:储存温度:—40°C~85°C 7:使用寿命:20000次 8:操作力:500gf—cm Max 9:防水等级:1矗7 产品应用范围:信息地址开关,预置电路,数据存储设备,计算机及外圉设备,PIN OUT (3:3) or (3: 2) PIN OUT (1:4) ERD 30160-M (Flat Type) ERD 30107-2 (Shaft Type)(Shaft Type)(Shaft Type)

自动化控制,时间继电器,仪器仪表等。

1:手焊:30瓦以下设备:摄氏350度以下不超过3秒钟或摄氏270度以内 不超过5秒钟。 2:回流焊:摄氏265度至摄氏275度10秒钟以内。 3:波峰焊:270度5秒以内。 贴片型焊接温度:如图 0????0mmFLAT 平柄 3.. ..3mm 柄 7.. ..7mm 柄 Max. 260 * C MO °C laox ISO 七 Time Csec> 选型表(orderinformation): ERD XX XX X X —X 安装方式 正反码选择 2?… ..直插式DIP M... ....贴片式SMT 1A.. …?侧调2.54行距 IB.. …侧调5.08行距 无: 正码 Real code F :反码 Complement 转柄长度选择

旋转编码器工作方式图解

旋转编码器 旋转编码器是由光栅盘(又叫分度码盘)和光电检测装置(又叫接收器)组成。光栅盘是在一定直径的圆板上等分地开通若干个长方形孔。由于光栅盘与电机同轴,电机旋转时,光栅盘与电机同速旋转,发光二极管垂直照射光栅盘,把光栅盘图像投射到由光敏元件构成的光电检测装置(接收器)上,光栅盘转动所产生的光变化经转换后以相应的脉冲信号的变化输出。 编码器码盘的材料有玻璃、金属、塑料等。玻璃码盘是在玻璃上沉积很薄的刻线,其热稳定性好,精度高。金属码盘直接以通和不通刻线,不易碎,但由于金属有一定的厚度,精度就有限制,其热稳定性也比玻璃的差一个数量级。塑料码盘成本低廉,但精度、热稳定性、寿命均要差一些。 编码器以信号原理来分,有增量式编码器(SPC)和绝对式编码器(APC),顾名思义,绝对式编码器可以记录编码器在一个绝对坐标系上的位置,而增量式编码器可以输出编码器从预定义的起始位置发生的增量变化。增量式编码器需要使用额外的电子设备(通常是PLC、计数器或变频器)以进行脉冲计数,并将脉冲数据转换为速度或运动数据,而绝对式编码器可产生能够识别绝对位置的数字信号。综上所述,增量式编码器通常更适用于低性能的简单应用,而绝对式编码器则是更为复杂的关键应用的最佳选择--这些应用具有更高的速度和位置控制要求。输出类型取决于具体应用。 一:增量式旋转编码器工作原理 增量式旋转编码器通过两个光敏接收管来转化角度码盘的时序和相位关系,得到角度码盘角度位移量的增加(正方向)或减少(负方向)。

增量式旋转编码器的工作原理如下图所示。 图中A、B两点的间距为S2,分别对应两个光敏接收管,角度码盘的光栅间距分别为S0和S1。 当角度码盘匀速转动时,可知输出波形图中的S0:S1:S2比值与实际图的S0:S1:S2比值相同,同理,当角度码盘变速转动时,输出波形图中的S0:S1:S2比值与实际图的S0:S1:S2比值仍相同。 通过输出波形图可知每个运动周期的时序为: 我们把当前的A、B输出值保存起来,与下一个到来的A、B输出值做比较,就可以得出角度码盘转动的方向, 如果光栅格S0等于S1时,也就是S0和S1弧度夹角相同,且S2等于S0的1/2,那么可得到此次角度码盘运动位移角度为S0弧度夹角的1/2,再除以所用的时间,就得到此次角度码盘运动的角速度。 S0等于S1时,且S2等于S0的1/2时,1/4个运动周期就可以得到运动方向位和位移角度,如果S0不等于S1,S2不等于S0的1/2,那么要1个运动周期才可以得到运动方向位和位移角度了。

8421BCD码简介

8421BCD码 编辑 二进制编码的十进制数,简称BCD码(Binarycoded Decimal)。这种方法是用4位二进制码的组合代表十进制数的0,1,2,3,4,5,6 ,7,8,9 十个数符。4位二进制数码有16种组合,原则上可任选其中的10种作为代码,分别代表十进制中的0,1,2,3, 4,5,6,7,8,9 这十个数符。最常用的BCD码称为8421BCD 码,8.4.2.1 分别是4位二进数的位取值。右图为十进制数 和8421BCD编码的对应关系表: 1、BCD码与十进制数的转换 BCD码与十进制数的转换关系很直观,相互转换也很简 单,将十进制数75.4转换为BCD码:7->0111,5->0101, 4->0100所以拼成8421BCD码的结果是:(0111 0101.0100)BCD;若将BCD码1000 0101.0101转换为十进 制数:1000->8,0101->5,0101->5所以结果是:(85.5)D。 注意:同一个8位二进制代码表示的数,当认为它表示的是二进制数和认为它表示的是二进制编码的十进制数时,数值是不相同的。 例如:00011000,当把它视为二进制数时,其值为24;但作为2位BCD码时,其值为18。 又例如00011100,如将其视为二进制数,其值为28,但不能当成BCD码,因为在8421BCD码中,它是个非法编码。 2、BCD码的格式 计算机中的BCD码,经常使用的有两种格式,即分离BCD码,组合BCD码。 所谓分离BCD码,即用一个字节的低四位编码表示十进制数的一位,例如数82的存放格式为: _ _ _1 0 0 0 _ _ _ _0 0 1 0 其中_表示无关值。 组合BCD码,是将两位十进制数,存放在一个字节中,例82的存放格式是1000 0010 3、BCD码的加减运算 由于编码是将每个十进制数用一组4位二进制数来表示,因此,若将这种BCD码直接交计算机去运算,由于 计算机总是把数当作二进制数来运算,所以结果可能会出错。例:用BCD码求38+49。 解决的办法是对二进制加法运算的结果采用"加6修正,这种修正称为BCD调整。即将二进制加法运算的结果修正为BCD码加法运算的结果,两个两位BCD数相加时,对二进制加法运算结果采用修正规则进行修正。修正规则: (1)如果任何两个对应位BCD数相加的结果向高一位无进位,若得到的结果小于或等于9,则该位不需修正;若得到的结果大于9且小于16时,该位进行加6修正。 (2)如果任何两个对应位BCD数相加的结果向高一位有进位时(即结果大于或等于16,注意不是修正时的进位),该位进行加6修正.

EC11编码开关1.5mm行程按压开关

EC11编码开关1.5mm 行程按压开关 编码器型号EC110501N2D-HA1 应用领域汽车音响,汽车导航、调音台、多媒体音响\功放,家用电器等 特点体积小,密封性好,可靠性高,有多种不同的规格供选择。 主要功能调频、调节音量、调节温度、功能切换等。 主要格规参数 外形尺寸:∮11mm 额定电压:DC5V; 定位数:16/20/30/32个; 脉冲数:8/15/16/20; 工作温度:-40°C to85°C; 旋转寿命:30000次以上;EC11规格参数 一、MECHANICAL CHARACTERISTIC机械特性 1、Detent Torque定位点力矩:20-200gf.cm 2、Number and position of detent定位点数及位置:16/20/30/32点定位 3、Shaft wobble轴摆动:0.2mm MAX 4、Shaft play in rotational wobble轴的回转方向摆动:2°MAX 二、ELECTRICAL CHARACTERISTIC电气特性 1、Resolution分解能力:8/16/15/20个脉冲/360° 2、Phase difference相位差:≥3ms 3、Rated voltage额定电压:DC5V 4、Insulation Resistance绝缘电阻:10M?1Minute at DC250V 5、Dielectric Voltage耐电压:1Minute at AC50V 三、ENDURANCE CHARACTERISTIC耐久特性 1、Rotational life回转寿命:30,000cycles Min Note:In this catalog,if some parame ters lr drawings are different from the"Approval sheet",it's subject to the"Approval sheet". 注明:如说明书与承认书规格参数、图面有异,均以承认书为准。

8421码到余三循码的转换电路仿真课设报告

东北大学秦皇岛分校计算机与通信工程院 电子线路课程设计 具有数显的数码转换电路(8421码—余3循环码)

课程设计任务书 专业:通信工程学号:4101015 学生姓名:吴玉新 设计题目:具有数显的码制转换电路8421码—余3循环码一、设计实验条件 高频实验室 二、设计任务及要求 1. 要求输入为8421码。输出为余三循环码 2. 输出要具有数显功能 三、设计报告的内容 1.前言 数字电路课程设计是继“数字电路”课后开出的实践环节课程其目的是训练学生综合运用学过的数字电路的基本知识独立设计比较复杂的数字电路能力。设计建立在硬件和软件两个平台的基础上。硬件平台是可编程逻辑器件所选器件可保存在一片芯片上设计出题目要求的数字电路。软件平台是multisim通过课程设计学生要掌握使用EDA电子设计自动化工具设计数字电路的方法包括设计输入便宜软件仿真下载及硬件仿真等全过程。数字电路课程设计在于更好的让学生掌握这门课程并且了解其实用性知道该门课程和我们的生活息息相关并且培养学生的动手能力让学生对该门课程产生浓厚的兴趣。 2.设计内容及其分析 (1)方案一 1.设计思路 设计8421转余三循环码主要是考虑怎样找到二者之间的联系。列出真值表后,根据值为1的那些项列出表达式,用最小项之和表示。然后根据卡诺图进行

化简,得出最简表达式。最后根据表达式,在Multisim上画图仿真,用灯的灭(表示0)和亮(表示1)来表示码制的转换。即可得到8421码对余三循环码的转换。 真值表: 表1 8421转余三循环码真值表 根据真值表得出表达式: X4=A——C X3=B——C——+ A——BCD+A——B——D—— X2=A B——C——D——+A——B+A——C+A——D X1=A B——C——+A——BD+A——BC 根据表达式画出逻辑电路图:

8421旋转编码开关规格书.

深圳市荃鼎科技有限公司 PIN OUT (3:3) or(3:2)PIN OUT (1:4) ERD 30160-M (Flat Type) ERD 30107-2 (Shaft Type) ERD 40107-2 (Shaft Type) ERD40167-1A (Shaft Type) 产品特点: 内部触点采用进口特殊材料,寿命长,极小的接触电阻,做工精细。引脚类别有:直插DIP,贴片SMD,直角侧调直插,3对3脚或3对2脚,1对4脚。柄高度为:0mm/3mm/7mm。可替代进口同类产品。 产品材质: 1:上盖与本体:PBT或PCT UL94V-0等级耐高温工程塑料,蓝色或黑色。 2:旋转柄:PA66 UL94V-0等级高强度耐高温尼龙。3对3(或3对2)为白色,4对1为黄色 4对1为黄色,反码统一为红色。 3:固定触点与可动触点:铜片镀金。 4:外引脚:铜片镀锡(或铜片镀金)。 产品性能: 1:工作电流:50mA,24VDC 2:接触电阻:100mΩMax 3:绝缘电阻:1000MΩMin at 100VDC 4:耐压值:250V AC Min for 1 minute 5:工作温度:—25℃~70℃ 6:储存温度:—40℃~85℃ 7:使用寿命:20000次 8:操作力:500gf—cm Max 9:防水等级:IP67 产品应用范围:信息地址开关,预置电路,数据存储设备,计算机及外围设 备,自动化控制,时间继电器,仪器仪表等。

1 焊接方式: 1:手焊:30瓦以下设备:摄氏350度以下不超过3秒钟或摄氏270度以内 不超过5秒钟。 2:回流焊:摄氏265度至摄氏275度10秒钟以内。 3:波峰焊:270度5秒以内。 贴片型焊接温度:如图 选型表(order information): ERD XX XX X X—X 安装方式 2......直插式DIP M.......贴片式SMT 1A.....侧调2.54行距 1B.....侧调5.08行距 正反码选择无:正码Real code F:反码Complement 转柄长度选择 0....0mmFLAT平柄 3....3mm柄 7....7mm柄

CHERRY拨码开关

Assemblies and combinations Individual switches in combination with endcaps can easily be built into block assemblies by integrated snap pins.Spacers and housings can be integrated in any given sequence. Special circuit boards If you require a specially constructed PCB (special material, terminals, layout etc.), please consult the factory. Circuitry Standard circuitry is break-before-make (bbm).For make-before-break (mbb), please consult the factory. Codes For standard codes please refer to individual switch series. Further and special codes available upon request. Description Colors and legends The standard switch color is black. The wheels are black with white characters. Special colors for housings,wheels and legends are available upon request. We are able to print letters,symbols or figures according to individual requirements. Mounting of components Many standard codes are available with an extended PCB for mounting of diodes or resistors. Stops Cherry provides many standard combinations of rotation-limiting stops to help tailor our switches exactly to your application.In series PE stops can be installed in the field. Truth tables

EC11按压开关编码器

EC11 按压开关编码器 编码器型号EC111001S6D-HA1 应用领域汽车音响,汽车导航、调音台、多媒体音响\功放,家用电器等 特点体积小,密封性好,可靠性高,有多种不同的规格供选择。 主要功能调频、调节音量、调节温度、功能切换等。 主要格规参数 外形尺寸:∮11mm 额定电压:DC5V; 定位数:16/20/30/32个; 脉冲数:8/15/16/20; 工作温度:-40°C to85°C; 旋转寿命:30000次以上;EC11规格参数 一、MECHANICAL CHARACTERISTIC机械特性 1、Detent Torque定位点力矩:20-200gf.cm 2、Number and position of detent定位点数及位置:16/20/30/32点定位 3、Shaft wobble轴摆动:0.2mm MAX 4、Shaft play in rotational wobble轴的回转方向摆动:2°MAX 二、ELECTRICAL CHARACTERISTIC电气特性 1、Resolution分解能力:8/16/15/20个脉冲/360° 2、Phase difference相位差:≥3ms 3、Rated voltage额定电压:DC5V 4、Insulation Resistance绝缘电阻:10M?1Minute at DC250V 5、Dielectric Voltage耐电压:1Minute at AC50V 三、ENDURANCE CHARACTERISTIC耐久特性 1、Rotational life回转寿命:30,000cycles Min Note:In this catalog,if some parame ters lr drawings are different from the"Approval sheet",it's subject to the"Approval sheet". 注明:如说明书与承认书规格参数、图面有异,均以承认书为准。

旋转编码开关控制程序

#include #include #define uchar unsigned char #define uint unsigned int sbit BMC=P0^0; sbit P1_0=P1^0; sbit P1_1=P1^1; sbit P1_2=P1^2; sbit P1_3=P1^3; unsigned char dis_code[12]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90, 0X7F,0xff}; char count=0; void delay(unsigned char ms)// 延时子程序 { unsigned char i; while(ms--) { for(i = 0; i< 250; i++) { _nop_(); _nop_(); _nop_(); _nop_(); } } } void display (unsigned char j)//数码管显示 { j=2; while (j--) { P1_3 = 0; //显示在第四位 P2 = dis_code[(count%10)];//在第四位显示个位 delay(1); P1_3 = 1; P1_2 = 0; //显示在第三位 P2 = dis_code[(count%100)/10];//在第三位显示十位

delay(1); P1_2 = 1; P1_1 = 0; //显示在第二位 P2 = dis_code[count/100];//在第2位显示十位 delay(1); P1_1 = 1; } } void main() { EA=1; //总中断允许 EX0=1; //外部中断0允许 IT0=1; //外部中断0为边沿触发方式 while(1) { display(2); if(BMC==0) //按下旋转编码开关则计数清零 { count=0; } } } void encoder(void) interrupt 0//外部中断0 旋转码开关中断程序{ if(INT1==1) { count++; if(count>30) { count=0; } } if(INT1==0) { count--; if(count<0) {

脉冲编码开关

360°旋转编码开关编码器脉冲编码开关(一周20个脉冲) 旋转式编码开关 以前主板上常见的一排开关用作跳线调节频率的,也叫编码开关、拨码开关,输出二进制BCD码。鼠标上用的这种叫旋转式编码开关。 这种元件目前主要用在廉价的鼠标滚轮上,作为滚动的传感器。这种传感器是出于降低成本来使用的。 较好的鼠标滚轮是光栅结构,即:一个发光二极管、一个接受管,之间是滚轮的光栅,滚轮滚动时光栅不断阻挡和透过光线,使接受管获得脉冲信号,从而实现感知滚轮滚动的效果。同时还需要一些机械结构来实现滚轮的支撑和滚动时有段落的手感。 而这种廉价的替代品结构则简单的多,一个元件就实现了感知滚动、支撑滚轮和

滚动时的段落感。 旋转编码开关拆解 转盘下的底座。可见圆形的三分之一是一块儿整体的金属片,剩下的三分之二是间断的金属片。转盘滑动时,转盘背面的簧片在底座的金属片上间断的导通和断开,形成脉冲信号,来实现感知鼠标滚轮滚动的效果。 受到wantcity 朋友的指点,我又仔细观察了一下底座上金属片的结构:三分之一是一整块儿金属片对应一个管脚0,三分之一是断续齿状金属片对应一个管脚a,另三分之一断续齿状金属片对应另一个管脚b。转盘旋转时,会保证转盘上的一个触点在连续金属片上,一个触点连接在管脚a或者b的金属齿上,第三个触点在齿的空挡部位。也就是保证在旋转的每一格都会接通a和0或者b和0。每旋转过一格,就会产生导通a到b或者b到a切换。这种切换经过鼠标的编码,告诉电脑鼠标滚轮是向上旋转还是向下旋转。 此外,还有一种带柄的编码开关,有些还集成一个按钮,(能左右转能按下)常用于电子仪器的面板(例如电子示波器的旋钮,高档音响的旋钮等),用于快速调节参数。 数字电位器脉冲开关旋转开关旋转编码器的使用方法?

NDS数字编码开关使用说明

NDS数字编码开关使用说明 一. 档位怎么调整: 答:我们的产品在出货的时候已经在A和W的位置放了两个自攻螺丝用来限位,客户可以通过自行改变螺丝的位置来达到自己需要的挡位。比如您使用型号为01J 的数字编码开关,01J代表2进制编码,每挡15度,这样的话:360度/15度=24档,一周360度最大可以分成24挡,如果您只要16个挡位,您只要在第17个位置把限位用的自攻螺丝拧进去就可以了,这样当旋钮转到16档时候,由于17挡被挡住了就再过不去了,从而达到自己需要的挡位。 二. 二进制编码,二进制补码,格雷码等是什么意思,请详细解释答: (1) 2进制编码的10进制数 在计算机中所使用的数是2进制数,而2进制数对于我们来说不直观,

所以在输入输出时通常还是用10进 制数表示。这样,就需要用2进制编码去代替10进制数。 一位10进制数用4位2进制编码表示,表示的方法很多,常用的有8421BCD码。 8421BCD码有10个不同的数字符号,但它是逢“10”进位的,所以,它是10进制数;但它的每一位是 用4位2进制编码来表示的,因此,称为2进制编码的10进制数(BCD,Binary Coded Decimal)。 例如:(0100 1001 0111 1000.0001 0100 1001)BCD。 4 9 7 8. 1 4 9 可以很方便地认出为:4978.149。 故只要熟悉了BCD的10位编码,立即可以很容易地实现10进制与B CD码之间的转换。 必须明确,BCD码与2进制之间的转换不是直接的,要先经过10进制。即:BCD码先转换为10进制码然后再 转换为2进制,反之亦然。 (2) 补码的定义是什么呢? 简单说是正数不变,负数取反加一。 如9=B的补码是 -9补码就是+1=

旋转式编码开关(飞梭)的工作原理

旋转式编码开关的工作原理 一、旋转式编码器(开关)原理及使用方法 在电子产品设计中,经常会用到旋转编码开关,也就是所说的旋转编码器、数码电位器、Rotary Encoder 。它具有左转,右转功能,有的旋转编码开关还有按下功能。为了了解旋转开关的编程,以EC11型编码开关为例,介绍一点原理和使用方法: 二只脚:这边是按压式开关,按下通,松开断。 三只脚:1 2 3脚一般是中间2脚接地,1、3脚上拉电阻后,当左转、右转旋转时,在1、3脚就有脉冲信号输出了。在单片机编程时,左转和右转的判别是难点,用示波器观察这种开关左转和右转时两个输出脚的信号有个相位差,如图2。 由此可见,如果输出1为低电平时,输出2出现一个高电平,这时开关就是向顺时针旋转;当输出1 为高电平,输出2出现一个低电平,这时就一定是逆时针方向旋转。所以,在单片机编程时只需要判断当输出1为高电平时,输出2当时的状态就可以判断出是左旋转或是右旋转了。1脚与2脚同时为高电平时,说明开关没有动作。 二、旋转编码开关的程序设计方法 现在很多仪器和设备采用了旋转编码开关做为输入装置。常用的旋转编码开关有3个输出端子,常用的参数:转一周时输出的脉冲数(比如16,24)。 应用电路原理图和输出波形如下图所示: 由此可见,如果A 下跳沿时,B 为低则表示顺时针旋转;如果A 下跳沿时,B 为高电平则表示逆时针旋转。与CPU 的连接方法:将A 端口接MCU 的外部中断管脚(下跳沿触发),将B 端口接MCU 的输入IO 。 轴旋转方 向 信号 虚线表示波形设定点位置 A(AC 端子间) 顺时针方 向 C.W. B(BC 端子间) A(AC 端子间) 逆时针方 向 C.C.W B(BC 端子间)

VFGL旋转开关功能对照表

VFGL旋转开关功能对照表 MON1与MON0之故障及功能对照表 MON1 →0 MON0 →0 →状态表示→E0 没有异常 →E1 速度异常过低时检出(SW_TGBL) →E2 速度过大时检出(SW_TGBH) →E3 逆转时检出(SW_TGBR) →E4 AST异常时检出(SW_AST) →E5 逆变器过电流时检出(SS_IOCFO) →E6 整流器过电压时检出(SS_COVH) →E7 整流器电压不足时检出(SS_LVLT) →E8 #LB线圈故障断电时检出(SS_CFLB) →E9 #5线圈故障断点检出(SW_CF5) →EA 抱闸接点ON/OFF故障时检出(SW_CFBK) →EB 机厢直接传输信号异常(ST_STSCE) →EC 厅站直接传输信号异常(ST_STSHE) →ED 系统异常(ST_SYER) →EE 驱动不能再启动(SD_DNRS) →EF 控制不能再启动(SW_NRS)

VFGL旋转开关功能对照表 故障检查记录时,MON1与MON0之对照表 MON1 →1 或5 *1 MON0 →0 →控制S/W NRS →E00 没有异常 不能再启动原因→E01 温度异常(SW_THMFT) →E02 紧急停止运行纪录1次(SW_EST1) →E03 CC-WDT3次检出(SS_CCWC3) →E04 SLC-WDT3次检出(SS_SLCWC3) →E05 过电流检出(SW_SOCR) →E06 回生电阻负荷大(SW_SOLR) →E07 41DG闸锁线路异常(SW_E41) →E08 终端限位异常(SW_TSCK) →E09 PAD异常检出(SW_PAD) →E0A 称数值异常检出(SW_WGER) →E0B E1板异常(SW_E1FBC) →E0C UHS/DHS开关异常(SW_UDHSE) →E0D DZ检查回路异常(SW_DZCER) →E0E #5接触器短接故障(SW_5ONER) →E0F #LB 接触器短接故障(SW_LBONER) →1 →状态表示→E10 没有异常 →E11 复位后重试不能(SW_RSRTC) →E12 士力铊16次异常检出(ST_SELD) →E13 直接传输CPU传送异常(ST_STER) →E14 电容器异常检出(ST_CAPC) →E15 手动按钮异常(ST_HDOK) →E16 模式与测试数据偏差异常(SD_OVJP) →E17 #LB线圈连续5次异常断电检出(ST_DFLB) →E18 #5线圈连续5次异常断电检出(ST_DF5) →E19 抱闸接点回路连续5次异常检出(ST_DFBK1) →E1A抱闸接点2回路连续5次异常检出(ST_DFBK2) →E1B整流器电压不足5次检出(ST_DFLV) →E1C E1-1板失效(ST_ARME1) →E1D 逆变器风扇故障(ST_ARME2) →E1E E1-2板失效(ST_ARME3) →E1F 逆变器风扇或E1板故障(ST_ARME4) →2 →状态表示→E20 无异常 →E21 #5接触器短接故障(SW_E5) →E22 紧急停止运行纪录2次(SW_EST2) →E23 系统异常(ST_SYER) →E24 回复后再尝试检出(ST_RSRQH) →E25 集机驱动板异常(SS_GDFH) →E26 DT_CT异常(SD_CTER) →E27 #RL回路短路故障(SW_RLONER) →E28 湿度感应器异常(SC_FSWERR) →E29 完成防潮湿操作(SC_FSWFDM) →E2A #PWD连续3分钟断开指令(SW_PWDFT) →E2B 折叠式围栏开关(SW_HRSOKI) →E2C 制动器拖曳结束(ST_BKSNG) →E2D 制动器重试故障(SW_RFBK2) →E2E士力铊错误运行16次检出(ST_SELE) →E2F #BK回路短路故障(SW_AKER) *1 MON1=1 :没有锁存记忆;MON1=5 :附有锁存记忆

相关文档
相关文档 最新文档