格雷码与二进制的转换

上传人:daj****de 文档编号:180017556 上传时间:2023-01-04 格式:DOCX 页数:5 大小:111.36KB
收藏 版权申诉 举报 下载
格雷码与二进制的转换_第1页
第1页 / 共5页
格雷码与二进制的转换_第2页
第2页 / 共5页
格雷码与二进制的转换_第3页
第3页 / 共5页
资源描述:

《格雷码与二进制的转换》由会员分享,可在线阅读,更多相关《格雷码与二进制的转换(5页珍藏版)》请在装配图网上搜索。

1、二进制格雷码与自然二进制码的互换中 国 科 学 院 光 电 技 术 研 究 所 游 志 宇示例工程下载在精确定位控制系统中,为了提高控制精度,准确测量控制对象的位置是十分重要的。目前,检 测 位 置 的 办 法 有 两 种 : 其 一 是 使 用 位 置 传 感 器 , 测 量 到 的 位 移 量 由 变 送 器 经 A/D 转 换 成 数字 量 送 至系 统进行进一步处理。此方法精度高,但在多路、长距离位置监控系统中,由于其成本昂贵,安装困难 因此并不实用;其二是采用光电轴角编码器进行精确位置控制。光电轴角编码器根据其刻度方法及信 号输出形式,可分为增量式、绝对式以及混合式三种。而绝对式编码

2、器是直接输出数字量的传感器, 它是利用自然二进制或循环二进制(格雷码)方式进行光电转换的,编码的设计一般是采用自然二进 制码、循环二进制码、二进制补码等。特点是不要计数器,在转轴的任意位置都可读出一个固定的与 位置相对应的数字码;抗干扰能力强,没用累积误差;电源切断后位置信息不会丢失,但分辨率是由 二 进 制 的 位 数 决 定 的 , 根 据 不 同 的 精 度 要 求 , 可 以 选 择 不 同 的 分 辨 率 即 位 数 。 目 前 有 10 位 、 11 位 、 12 位 、 13 位 、 14 位 或 更 高 位 等 多 种 。其中采用循环二进制编码的绝对式编码器,其 输出信号是一种

3、数字排序,不是权重码,每 一位没有 确定的大小,不能直接进行比较大小和算术运算,也不能直接转换成其他信号,要经过一次码变换, 变成自然二进制码,在由上位机读取以实现相应的控制。而在码制变换中有不同的处理方式,本文着 重介绍二进制格雷码与自然二进制码的互换。一、格雷码(又叫循环二进制码或反射二进制码)介绍在 数 字 系 统 中 只 能 识 别 0 和 1, 各 种 数 据 要 转 换 为 二 进 制 代 码 才 能 进 行 处 理 , 格 雷 码 是 一 种 无 权 码,采用绝对编码方式,典型格雷码是一种具有反射特性和循环特性的单步自补码,它的循环、单步 特性消除了随机取数时出现重大误差的可能,

4、它的反射、自补特性使得求反非常方便。格雷码属于可 靠性编码,是一种错误最小化的编码方式,因为,自然二进制码可以直接由数/模转换器转换成模拟信 号 , 但 某 些 情 况 , 例 如 从 十 进 制 的 3 转 换 成 4 时 二 进 制 码 的 每 一 位 都 要 变 , 使 数 字 电 路 产 生 很 大 的 尖 峰电流脉冲。而格雷码则没有这一缺点,它是一种数字排序系统,其中的所有相邻整数在它们的数字 表示中只有一个数字不同。它在任意两个相邻的数之间转换时,只有一个数位发生变化。它大大地减 少了由一个状态到下一个状态时逻辑的混淆。另外由于最大数与最小数之间也仅一个数不同,故通常 又叫格雷反射

5、码或循环码。下表为几种自然二进制码与格雷码的对照表:十进制数自然二进制数格雷码十进制数自然二进制数格雷码000000000810001100100010001910011101200100011101010111130011001011101111104010001101211001010501010111131101101160110010114111010017011101001511111000二、二进制格雷码与自然二进制码的互换1、自然二进制码转换成二进制格雷码自然二进制码转换成二进制格雷码,其法则是保留自然二进制码的最高位作为格雷码的最高位 而次高位格雷码为二进制码的高位与次高位相异

6、或,而格雷码其余各位与次高位的求法相类似。某二进制数为禺色耳,其对应的格雷码为-yGGi异或运算:相同为0相异为1其中:最高位保留其他各位 G=+1耳=o,1,2,,例:二进制数为10110 丨 I I I I 格雷码为111012、二进制格雷码转换成自然二进制码 二进制格雷码转换成自然二进制码,其法则是保留格雷码的最高位作为自然二进制码的最高位,而 次高位自然二进制码为高位自然二进制码与次高位格雷码相异或,而自然二进制码的其余各位与次高 位自然二进制码的求法相类似。某二进制格雷码为G2G其对应的自然二进制码为艮S 砂風 异或运算:相同为o 其中:最咼位保留Bn _ = Gn _其他各位瓦_

7、= G-马 尸人2,於10II1三、二进制格雷码与自然二进制码互换的实现方法 1、自然二进制码转换成二进制格雷码A) 、 软 件 实 现 法 (参见 示 例 工 程 中的 Binary to Gray) 根据自然二进制转换成格雷码的法则,可以得到以下的代码:static unsigned int DecimaltoGray(unsigned int x)return x(x1);/以上代码实现了 unsigned int 型数据到格雷码的转换,最高 可转换 32 位自然二进 制码,超出 32 位将溢出。static int DecimaltoGray( int x)return x(x1);/

8、以上代 码实现 了 int 型数据到格 雷码的转 换,最高可 转换 31 位自然二进 制码, 超出 31 位将溢 出。上述代码即可用于 VC 控制程序中,也可以用于单片机 控制程序中。在单片机程序设计时,若采用 汇 编 语 言 编 程 , 可 以 按 相 同 的 原 理 设 计 程 序 ; 若 采 用 C 语 言 编 程 , 则 可 以 直 接 利 用 上 述 代 码 , 但 建 议 用 unsigned int 函 数 。B)、硬件实现法根据自然二进制转换成格雷码的法则,可以得到以下电路图:上 图 所 示 电 路 图 即 可 用 异 或 集 成 电 路 74ls136 实 现 , 也 可 以

9、 利 用 可 编 程 器 件 PLD 等 编 程实 现 。2、二进制格雷码转换成自然二进制码A) 、 软 件 实 现 法 (参 见示 例 工 程 中 的 Gray to Binary )根据二进制格雷码转换成自然二进制码的法则,可以得到以下的三种代码方式 static unsigned int GraytoDecimal(unsigned int x) unsigned int y = x;while(x=1)y社x;return y;static unsigned int GraytoDecimal(unsigned int x) x=x16;x=x8;x=x4;x=X2;x=xl;retu

10、rn x;static unsigned int GraytoDecimal(unsigned int x)int i;for(i=0;(1i)(li);return x;/以上代码实现了 unsigned int型数据到自然二进制码的转换,最高可转换32位格雷码,超出32 位将溢出。将数据类型改为int型即可实现31位格雷码转换。上述代码即可用于 VC 控制程序中,也可以用于单片机控制程序中。在单片机程序设计时,若采用汇编 语言编程,可以按相同的原理设计程序;若采用C语言编程,则可以直接利用上述代码,但建议用unsigned int 函数。B)、硬件实现法根据二进制格雷码转换成自然二进制码的法则, 可以得到以下电路图:MSEUFL1327KOK上图所示电路图即可用异或集成电路74IS136实现,也可以利用可编程器件PLD等编程实现。

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