曼码接收程序,常用在无线信号的编码与解码中,给大家分享:

rxi()

{

// this routine gets called every time TMR0 overflows

if(T0IF) //定时器中断程序

{

TMR0 = PERIOD; // 装计时器初值

T0IF = 0; // 清定时器溢出标志

XTMR++; // 外部的系统时钟计时器加1

RFcount++; // 脉冲宽度计数器加1

return;

}

if(RAIF) //端口电平变化中断程序

{

if (RFFull) // 如果接收位满就退出

return;

RFBit = RFIn; // 取样信号接收的值

RAIF = 0;

switch (RFstate) // 当前状态

{

case TRFDATAUP:

switch (RFcount)

{

case 4:

case 5:

case 6:

case 7:

PORTA = PORTA;//启动端口电平中断

break;

case 8:

case 9:

case 10:

case 11:

case 12:

B[Bptr] <<= 1; // rotate

if ( RFBit==0) //如是有效的下跳变则该位的数据值为1,上跳变为0

{

B[Bptr]+=1; // shift in bit

}

if ( ( ++BitCount & 7) == 0)

Bptr++; // advance one byte

if (BitCount == NBIT)

{

RFstate = TRFreset; // finished receiving

RFFull = 1;

}

RFcount=0; //重新记时

PORTA = PORTA;//启动端口电平中断

break;

default: //超时或不足则退出接收

RFstate = TRFSYNC; // reset state machine in all other cases

RFcount = 0;

Bptr = 0;

BitCount = 0;

PORTA = PORTA;//启动端口电平中断

}

break;

case TRFSYNC:

if ( RFBit)

{ // rising edge detected +---+ +---..

// | | |

// +----------------+

if ( ( RFcount < SHORT_HEAD) || ( RFcount >= LONG_HEAD))

{

RFstate = TRFreset;

PORTA = PORTA;//启动端口电平中断

break; // too short/long, no header

}

else

{

RFcount =0; // restart counter

RFstate= TRFDATAUP;

PORTA = PORTA;//启动端口电平中断

}

}

else

{ // still low

RFcount=0;

PORTA = PORTA;//启动端口电平中断

}

break;

case TRFreset:

default:

RFstate = TRFSYNC; // reset state machine in all other cases

RFcount = 0;

Bptr = 0;

BitCount = 0;

PORTA = PORTA;//启动端口电平中断

break;

} // switch

} //电平中断

} // rxi

void InitReceiver()

{

IOCA = 2;

T0IF = 0;

T0IE = 1; // TMR0 overflow interrupt

RAIE = 1; //使能端口电平变化中断

GIE = 1; // enable interrupts

RFstate = TRFreset; // reset state machine in all other cases

RFFull = 0; // start with buffer empty

XTMR = 0; // start extended timer

TMR0 = PERIOD; // 装计时器初值

PORTA = PORTA;//启动端口电平中断

}

曼切斯特编码c语言,曼彻斯特编码的接收C51程序相关推荐

  1. 曼彻斯特编码|查分曼彻斯特编码|不归零码

    从网上搜集的资料 不是我原创    曼彻斯特编码(Manchester Encoding),也叫做相位编码(PE),是一个同步时钟编码技术,被物理层使用来编码一个同步位流的时钟和数据.曼彻斯特编码被用 ...

  2. 计算机网络---非归零码、曼彻斯特编码和差分曼彻斯特编码

    题目: 在数据通信技术中,将利用模拟信道通过调制解调器传输模拟信号的方法称为频带传输:将利用数字信道直接传输数字信号的方法称为基带传输. 基带传输中,数字信号的编码方式主要有三种:非归零码.曼彻斯特编 ...

  3. 数据通信基础 - 数据编码(曼彻斯特编码 和 差分曼彻斯特编码)

    文章目录 1 概述 2 常见编码方案 2.1 曼彻斯特编码 和 差分曼彻斯特编码 2.2 4B/5B 编码 2.3 各种编码效率 3 扩展 3.1 单极性码 和 极性码 3.2 双极性码 3.3 归零 ...

  4. 不归零制编码、曼彻斯特编码和差分曼彻斯特编码实验

    计算机网络中的物理层数字信号的编码 不归零制编码.曼彻斯特编码和差分曼彻斯特编码 不归零制(NRZ):正电平代表1, 负电平代表0 曼彻斯特编码: 位周期中心的向上跳变代表0, 位周期中心的向下跳变代 ...

  5. 曼彻斯特编码与差分曼彻斯特编码

    曼彻斯特编码 定义 也叫相位编码(PE) ,是一种同步时钟编码技术. 特点 第一种G. E. Thomas, Andrew S. Tanenbaum1949年提出的,它规定0是由低-高的电平跳变表示, ...

  6. 常用数字信号编码之反向不归零码码、曼彻斯特编码、差分曼彻斯特编码

    数字信号编码是要解决数字数据的数字信号表示问题,即通过对数字信号进行编码来表示数据.数字信号编码的工作一般由硬件完成,常用的编码方法有以下:反向不归零码码.曼彻斯特编码.差分曼彻斯特编码. 反向不归零 ...

  7. 计算机网络曼彻斯特编码与差分曼彻斯特编码

    曼彻斯特编码与差分曼彻斯特编码 (1)两种编码在中间均需要进行一次跳变 (2)曼彻斯特编码:吉大原则为负到正为1,正到负为0 (3)差分曼彻斯特编码:为0时发生跳变,为1时不发生跳变,在此处跳变的含义 ...

  8. 五、数据编码:曼侧斯特编码,差分曼彻斯特编码的区别 , 4B/5B编码 ——网络工程师成长之路

    计算机网络常见的八大数据编码 单极性码 与 极性码 双极性码 归零编码 不归零码 1变 0 不变 双相码 曼侧斯特编码 : 差分曼侧斯特编码 : 差分曼彻斯特编码: 有 0 无 1 两种曼彻斯特编码的 ...

  9. 曼彻斯特编码、差分曼彻斯特编码怎么画;曼彻斯特编码、差分曼彻斯特编码的画法

    网上看了很多讲解,总感觉不是很全面,在此小结一下. 先看个例子:试画出Ox52B7的曼彻斯特编码及差分曼彻斯特编码 首先 :Ox52B7= 0101 0010 1011 0111 B 曼彻斯特编码画法 ...

最新文章

  1. cloudstack 4.0 XenServer 日常简单故障处理
  2. LA3942字典树+递推
  3. aMCMC for Horseshoe: algorithms
  4. tomcat 启动异常 The web application [ROOT] registered the JDBC driver [xxx] but failed to unregister it
  5. mysql的快照速度_mysql 快照读 当前度
  6. JSON格式数据与数据组件
  7. 美国在理论计算机科学的研究重视,清华麻省理工香港中文联建理论计算机科学研究中心...
  8. linux内核zfs,Linus Torvalds 不建议使用 ZFS On Linux
  9. 如何在Mac上恢复已删除或丢失的分区
  10. 如何完整离线保存网页,包括网页完整特效?
  11. UI设计流程是什么?来看看UI设计完整的设计流程吧
  12. 告别人工智能的追随角色
  13. 计算机测色配色应用,计算机测配色方法及注意事项
  14. App工厂之痛:一个知识问答社区的死亡样本
  15. 【​观察】做好数据到介质的连接者 新数据时代浪潮存储的行与思
  16. 把数字翻译成字符串(递归,动态规划)
  17. 中国二线城市有哪些比较知名的芯片设计企业
  18. 使用梯度上升法求解 PCA 问题
  19. 快速学习-RocketMQ-“Request-Reply”特性
  20. S2B2C模式是什么?与其他电商模式有何区别?

热门文章

  1. R方是什么+R方为负什么意思
  2. pydub 中文文档
  3. 【机器学习】 逻辑回归原理及代码
  4. python 类静态属性_python面向对象之静态属性/静态方法/类方法/组合
  5. 探针技术-JavaAgent 和字节码增强技术-Byte Buddy
  6. 漫谈大数据时代的个人信息安全(二)——“逢脸造戏”
  7. python dic 字典排序
  8. 基于翔云OCR云平台的人脸识别(1)
  9. 【机器视觉锁付整体解决方案】用户主界面CCD参数设置
  10. 关于“前言中不允许有内容”的XML错误