本代码为编码开关代码,编码开关也就是数字音响中的 360度旋转的数字音量以及显示器上用的(单键飞梭开 关)等类似鼠标滚轮的手动计数输入设备。 我使用的编码开关为5个引脚的,其中2个引脚为按下 转轮开关(也就相当于鼠标中键)。另外3个引脚用来 检测旋转方向以及旋转步数的检测端。引脚分别为a,b,c b接地a,c分别接到P2.0和P2.1口并分别接两个10K上拉 电阻,并且a,c需要分别对地接一个104的电容,否则 因为编码开关的触点抖动会引起轻微误动作。本程序不 使用定时器,不占用中断,不使用延时代码,并对每个 细分步数进行判断,避免一切误动作,性能超级稳定。 我使用的编码器是APLS的EC11B可以参照附件的时序图 编码器控制流水灯最能说明问题,下面是以一段流水 灯来演示。
上传时间: 2017-07-03
上传用户:gaojiao1999
在数字通信中,采用差错控制技术(纠错码)是提高信号传输可靠性的有效手段,并发挥着越来越重要的作用。纠错码主要有分组码和卷积码两种。在码率和编码器复杂程度相同的情况下,卷积码的性能优于分组码。 卷积码的译码方法主要有代数译码和概率译码。代数译码是基于码的代数结构;而概率译码不仅基于码的代数结构,还利用了信道的统计特性,能充分发挥卷积码的特点,使译码错误概率达到很小。 卷积码译码器的设计是由高性能的复杂译码器开始的,对于概率译码最初的序列译码,随着译码约束长度的增加,其译码错误概率可达到非常小。后来慢慢地向低性能的简单译码器演化,对不太长的约束长度,维特比(Viterbi)算法是非常实用的。维特比算法是一种最大似然的译码方法。当编码约束度不太大(小于等于10)或者误码率要求不太高(约10-5)时,Viterbi译码算法效率很高,速度很快,译码器也较简单。 目前,卷积码在数传系统,尤其是在卫星通信、移动通信等领域已被广泛应用。 本论文对卷积码编码和Viterbi译码的设计原理及其FPGA实现方案进行了研究。同时,将交织和解交织技术应用于编码和解码的过程中。 首先,简要介绍了卷积码的基础知识和维特比译码算法的基本原理,并对硬判决译码和软判决译码方法进行了比较。其次,讨论了交织和解交织技术及其在纠错码中的应用。然后,介绍了FPGA硬件资源和软件开发环境Quartus Ⅱ,包括数字系统的设计方法和设计规则。再有,对基于FPGA的维特比译码器各个模块和相应算法实现、优化进行了研究。最后,在Quartus Ⅱ平台上对硬判决译码和软判决译码以及有无交织等不同情况进行了仿真,并根据仿真结果分析了维特比译码器的性能。 分析结果表明,系统的误码率达到了设计要求,从而验证了译码器设计的可靠性,所设计基于FPGA的并行Viterbi译码器适用于高速数据传输的场合。
上传时间: 2013-04-24
上传用户:tedo811
随着数字电视日益深入人心,高清概念越来越为人所熟知。带有高清视频功能的产品已经逐步走向人们的工作和生活,高清视频处理已经从理论研究走向系统实际应用。毫无疑问,无论是从观众的视觉还是从产业的角度来看,高清视频已经成为数字视频技术发展的必然趋势。本文研究了整个编解码系统中ARM控制模块的软件设计,最终完成以PC机为终端控制平台,经ARM控制模块将命令发送给核心编解码芯片MB86H51,使其完成相应的操作。、本文主要的工作有如下几个方面: 1、根据ARM各型号芯片的特点,结合本系统的实际需求,最终选定Atmel公司的AT91SAM9261作为ARM控制板的核心处理芯片,并深入了解该芯片的工作原理和内部结构。 2、根据本系统中所选用的DataFlash型号及外围电路连接情况等诸多因素,并结合Atmel公司所提供的AT91SAM9261一级BootLoader参考代码,编写调试符合本系统启动运行的一级BootLoader引导程序,也称为Bootstrap引导程序,最终成功实现引导U-Boot程序。 3、深入分析了U-Boot和Linux的体系结构和编译过程,结合AT91SAM9261芯片的特点和实际外围电路的连接情况,修改U-Boot和Linux中主要的编译参数,并进行重新编译,最终成功移植到系统板中。 4、在ITU-T提供的H.264标准的参考解码程序JM8.6的基础上,详细研究了H.264视频编码标准以及具体的解码器结构和解码流程,并结合DirectX技术,开发了一款基于PC机的H.264解码播放器,用于验证存储在PC机上的H.264压缩码流的正确性。
上传时间: 2013-04-24
上传用户:acon
在数字通信中,采用差错控制技术(纠错码)是提高信号传输可靠性的有效手段,并发挥着越来越重要的作用。纠错码主要有分组码和卷积码两种。在码率和编码器复杂程度相同的情况下,卷积码的性能优于分组码。 卷积码的译码方法主要有代数译码和概率译码。代数译码是基于码的代数结构;而概率译码不仅基于码的代数结构,还利用了信道的统计特性,能充分发挥卷积码的特点,使译码错误概率达到很小。 卷积码译码器的设计是由高性能的复杂译码器开始的,对于概率译码最初的序列译码,随着译码约束长度的增加,其译码错误概率可达到非常小。后来慢慢地向低性能的简单译码器演化,对不太长的约束长度,维特比(Viterbi)算法是非常实用的。维特比算法是一种最大似然的译码方法。当编码约束度不太大(小于等于10)或者误码率要求不太高(约10-5)时,Viterbi译码算法效率很高,速度很快,译码器也较简单。 目前,卷积码在数传系统,尤其是在卫星通信、移动通信等领域已被广泛应用。 本论文对卷积码编码和Viterbi译码的设计原理及其FPGA实现方案进行了研究。同时,将交织和解交织技术应用于编码和解码的过程中。 首先,简要介绍了卷积码的基础知识和维特比译码算法的基本原理,并对硬判决译码和软判决译码方法进行了比较。其次,讨论了交织和解交织技术及其在纠错码中的应用。然后,介绍了FPGA硬件资源和软件开发环境Quartus Ⅱ,包括数字系统的设计方法和设计规则。再有,对基于FPGA的维特比译码器各个模块和相应算法实现、优化进行了研究。最后,在Quartus Ⅱ平台上对硬判决译码和软判决译码以及有无交织等不同情况进行了仿真,并根据仿真结果分析了维特比译码器的性能。 分析结果表明,系统的误码率达到了设计要求,从而验证了译码器设计的可靠性,所设计基于FPGA的并行Viterbi译码器适用于高速数据传输的场合。
上传时间: 2013-04-24
上传用户:zhenyushaw
/*--------- 8051内核特殊功能寄存器 -------------*/ sfr ACC = 0xE0; //累加器 sfr B = 0xF0; //B 寄存器 sfr PSW = 0xD0; //程序状态字寄存器 sbit CY = PSW^7; //进位标志位 sbit AC = PSW^6; //辅助进位标志位 sbit F0 = PSW^5; //用户标志位0 sbit RS1 = PSW^4; //工作寄存器组选择控制位 sbit RS0 = PSW^3; //工作寄存器组选择控制位 sbit OV = PSW^2; //溢出标志位 sbit F1 = PSW^1; //用户标志位1 sbit P = PSW^0; //奇偶标志位 sfr SP = 0x81; //堆栈指针寄存器 sfr DPL = 0x82; //数据指针0低字节 sfr DPH = 0x83; //数据指针0高字节 /*------------ 系统管理特殊功能寄存器 -------------*/ sfr PCON = 0x87; //电源控制寄存器 sfr AUXR = 0x8E; //辅助寄存器 sfr AUXR1 = 0xA2; //辅助寄存器1 sfr WAKE_CLKO = 0x8F; //时钟输出和唤醒控制寄存器 sfr CLK_DIV = 0x97; //时钟分频控制寄存器 sfr BUS_SPEED = 0xA1; //总线速度控制寄存器 /*----------- 中断控制特殊功能寄存器 --------------*/ sfr IE = 0xA8; //中断允许寄存器 sbit EA = IE^7; //总中断允许位 sbit ELVD = IE^6; //低电压检测中断控制位 8051
上传时间: 2013-10-30
上传用户:yxgi5
RSA算法 :首先, 找出三个数, p, q, r, 其中 p, q 是两个相异的质数, r 是与 (p-1)(q-1) 互质的数...... p, q, r 这三个数便是 person_key,接著, 找出 m, 使得 r^m == 1 mod (p-1)(q-1)..... 这个 m 一定存在, 因为 r 与 (p-1)(q-1) 互质, 用辗转相除法就可以得到了..... 再来, 计算 n = pq....... m, n 这两个数便是 public_key ,编码过程是, 若资料为 a, 将其看成是一个大整数, 假设 a < n.... 如果 a >= n 的话, 就将 a 表成 s 进位 (s
标签: person_key RSA 算法
上传时间: 2013-12-14
上传用户:zhuyibin
* 高斯列主元素消去法求解矩阵方程AX=B,其中A是N*N的矩阵,B是N*M矩阵 * 输入: n----方阵A的行数 * a----矩阵A * m----矩阵B的列数 * b----矩阵B * 输出: det----矩阵A的行列式值 * a----A消元后的上三角矩阵 * b----矩阵方程的解X
上传时间: 2015-07-26
上传用户:xauthu
utf8编码,解码程序,实现了utf8,unicode,ansi之间的转换函数,还提供了一个utf8字符串迭代器,使用这个迭代器可以方便的遍历utf8所表示的每一个真实字符
上传时间: 2013-12-24
上传用户:huannan88
(1) 、用下述两条具体规则和规则形式实现.设大写字母表示魔王语言的词汇 小写字母表示人的语言词汇 希腊字母表示可以用大写字母或小写字母代换的变量.魔王语言可含人的词汇. (2) 、B→tAdA A→sae (3) 、将魔王语言B(ehnxgz)B解释成人的语言.每个字母对应下列的语言.
上传时间: 2013-12-30
上传用户:ayfeixiao
1.有三根杆子A,B,C。A杆上有若干碟子 2.每次移动一块碟子,小的只能叠在大的上面 3.把所有碟子从A杆全部移到C杆上 经过研究发现,汉诺塔的破解很简单,就是按照移动规则向一个方向移动金片: 如3阶汉诺塔的移动:A→C,A→B,C→B,A→C,B→A,B→C,A→C 此外,汉诺塔问题也是程序设计中的经典递归问题
上传时间: 2016-07-25
上传用户:gxrui1991