为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

红外线的键盘

2017-11-10 26页 doc 93KB 37阅读

用户头像

is_841159

暂无简介

举报
红外线的键盘红外线的键盘 单片机原理及应用 课程设计说明书 题目:基于红外线的键盘参数设置程序设计 学生姓名: 学 号: 院 (系): 专 业: 指导教师: 2011年 12月 22日 目 录 1. 选题背景 ................................................................................................................................. 1 1.1 概述.....................
红外线的键盘
红外线的键盘 单片机原理及应用 课程设计说明书 题目:基于红外线的键盘参数设置程序设计 学生姓名: 学 号: 院 (系): 专 业: 指导教师: 2011年 12月 22日 目 录 1. 选题背景 ................................................................................................................................. 1 1.1 概述................................................................................................................................ 1 2. 论证 ................................................................................................................................. 1 2.1 方案一 ........................................................................................................................... 2 2.2 方案二 ........................................................................................................................... 2 2.3 方案论证 ...................................................................................................................... 2 3. 过程论述 ................................................................................................................................. 2 3.1 设计思路 ...................................................................................................................... 2 3.2 硬件部分 ...................................................................................................................... 3 3.2.1 整体说明 .......................................................................................................... 3 3.2.2 红外遥控编码 ................................................................................................. 3 3.2.3 红外接收解码 ................................................................................................. 4 3.2.4 数码管显示部分 ............................................................................................ 5 3.2.5 RS232通信电路 ............................................................................................. 5 3.2.6 单片机 .............................................................................................................. 6 3.2.7 硬件总体电路图 ............................................................................................ 7 3.3 软件部分 ...................................................................................................................... 7 3.3.1 有关字码的初始化........................................................................................ 8 3.3.2 编写每个键值功能........................................................................................ 8 3.3.3 编写红外及其延时程序 ............................................................................ 11 13 3.3.4 编写数码管延时程序 ................................................................................. 3.3.5 编写主程序 ................................................................................................... 13 4. 结果分析 ............................................................................................................................... 14 4.1 设计运行结果与分析 ............................................................................................. 14 4.2 问题及解决方法....................................................................................................... 15 5. 课程设计 ...................................................................................................................... 16 6. ............................................................................................................................... 17 参考文献资料 1. 选题背景 随着社会的进步、科技的发展,电视机、影碟机等多媒体设备已经成为了我们生活中的一部分, 如今人们对生活的要求越来越高,与之对应的是远程遥控控制设备的应运而生。 1.1 概述 单片机的诞生标志着计算机正式形成了通用计算机系统和嵌入式计算机系统两大分支。单片机单芯片的微小体积和低的成本,可广泛地嵌入到如玩具、家用电器、机器人、仪器仪、汽车电子系统、工业控制单元、办公自动化设备、金融电子系统、舰船、个人信息终端及通讯产品中,成为现代电子系统中最重要的智能化工具。 本次课程设计利用红外线设计键盘硬件接口电路,与软件设计相配合,设计基于红外线的键盘参数设置系统,实现按下键盘上的某个按键,八位数码管显示所设置的相应的数字的功能,其中按下按键0,八位数码管的最高位显示按键0,低五位显示01234,其它位不显示;按下按键1,八位数码管的最高位显示按键1,低五位显示12345;按下按键2,八位数码管的最高位显示按键2,低五位显示23456,其它位不显示;按下按键3,八位数码管的最高位显示按键3,低五位显示34567,其它位不显示;按下按键4,八位数码管的最高位显示按键4,低五位显示45678,其它位不显示;按下按键5,八位数码管的最高位显示按键5,低五位显示56789,其它位不显示;按下按键6,八位数码管的最高位显示按键6,低五位显示02468,其它位不显示;按下按键7,八位数码管的最高位显示按键7,低五位显示13579,其它位不显示。 1.2 设计指导思想 红外键盘是以红外线发光LED,发射波长940nm的红外线不可见光,来传送信号。整个遥控系统分为发射端以及接收端两部分,发射端经过红外线发射LED送出红外线控制信号,这些信号经过红外线接收模块端接收进来,并对其控制信号做译码而做相对的动作输出,完成遥控功能。 2. 方案论证 通过查找资料、研究,现有下列两种方案,具体如下: 1 2.1 方案一 为实现红外线的键盘参数设置程序设计,本设计采用两个模块,红外线发射模块和红外线接收模块。在红外线发射模块中,主要由红外键盘组成,当按下键盘上的某一按键后,遥控器上的控制芯片便进行编码产生一组句柄,结合载波电路的载波信号而合成信号,经过放大器提升功率而推动红外线发射二极管,将红外线信号发射出去。在红外线接收模块中,主要由单片机组成,当红外线合成信号进入红外线接收模块,在其输入端便可以得到原先数字控制编码,只要经过单片机程序进行译码,便可以得知按下了哪一按键,而做出相应的控制处理,完成红外线遥控的动作。本方案在软件编写过程中采用C语言编程,在段码、位选值、键值初始化之后,采用查询的方式进行相应数值输出显示。 2.2 方案二 本方案仍然把红外线的键盘参数设置程序设计的任务分为两大块,红外线发射部分和红外线接受部分,利用单片机来实现对信号的处理控制,最终使相应的设计参数显示在八位数码管上,最高位显示键盘按键编号,低五位显示显示所设定的参数,其它两位不显示。编译程序用汇编语言进行编写,汇编语言简单、思路清晰,运用移位的编程方式使结果显示在数码管上。 2.3 方案论证 方案一思路清晰,操作起来分模块进行,有利于团队的合作、互相学习提高,所运用内容基本是在理论课上学习过的,通过这次的实际设计,有利于在实践中体会所学理论知识的公用,方案一运用数组的编程方式使相应结果正确显示在八位数码管上,数组的编写方式思路简单,比较容易实现,而用移位的方式编写的程序烧进单片机运行后数码管的数字很容易出现紊乱的现象,综上采用方案一进行设计。 3. 过程论述 本次课设由硬件和软件两部分组成,其中硬件部分包括红外遥控编码、红外接收解码、数码管显示、RS232通信控制电路和单片机;软件部分由延时程序、红外中断程序和主程序组成。 3.1 设计思路 本设计把红外线的键盘参数设置程序设计的任务分为两大块,红外中断部分 2 和数码管动态显示部分。在显现的过程中利用单片机的P3.2口来接收红外遥控器的键值,通过键值实现对信号的相应处理,最终使相应的参数显示在八位数码管上,具体显示方式为:最高位显示键盘按键编号,低五位显示显示所设定的参数,其它两位不显示。下面从硬件部分和软件部分来进行详细阐述。 3.2 硬件部分 硬件部分包括红外遥控编码、红外接收解码、数码管显示、RS232通信控制电路和单片机。 3.2.1 整体说明 硬件部分中,由外部振荡电路进行计数,复位电路进行复位,单片机接收红外发射部分发射出的信号并进行处理,然后由P2口承担位选,由P0口承担段选,使数码管正确显示单片机所处理的信息。硬件部分整体框图如下: 外部振荡电路位选 控制8 部分位 数 码89C52管复位电路单片机显 示段选部控制分部分红外发射部分 图3-1 硬件总体框图 3.2.2 红外遥控编码 红外遥控编码部分包括键盘矩阵、编码调制、LED红外发送器。 遥控发射器专用芯片很多,根据编码格式可以分成两大类,现以兼容NEC的uPD6121G芯片发射码格式的芯片组成发射电路为例说明编码原理。当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有以下特征: 采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”。 其中“0”和“1”组成的32位二进制码经38kHz的载频进行二次。调制以提高发射效率,达到降低电源功耗的目的。PD6121G产生的遥控编码是连续的32 3 位二进制码组,其中前16位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。芯片厂商把用户识别码固定为十六进制的一组数;后16位为8位操作码(功能码)及其反码。UPD6121G最多额128种不同组合的编码。遥控器在按键按下后,周期性地发出同一种32位二进制码,周期约为108ms。一组码本身的持续时间随它包含的二进制“0”和“1”的个数不同而不同,大约在45,63ms之间。当一个键按下超过36ms,振荡器使芯片激活,将发射一组108ms的编码脉冲,这108ms发射代码由一个起始码(9ms),一个结果码(4.5ms),低8位地址码(9ms,18ms),高8位地址码(9ms,18ms),8位数据码(9ms,18ms)和这8位数据的反码(9ms,18ms)组成。如果键按下超过108ms仍未松开,接下来发射的代码(连发代码)将仅由起始码(9ms)和结束码(2.5ms)组成。 3.2.3 红外接收解码 (1)一体化红外线接收器是一种集红外线接收和放大于一体,不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,它适合于各种红外线遥控和红外线数据传输。 图3-2 一体化红外线接收器实物图 图中3个引脚从左到右依次是信号输出、地线(GND)、电源(+5V)。 (2)红外解码的实质就是识别“0”和“1” 从位的定义我们可以发现“0”、“1”均以0.56ms的低电平开始,不同的是高电平的宽度不同,“0”为0.56ms,“1”为1.68ms,所以必须根据高电平的宽度区别“0”和“1”。如果从0.56ms低电平过后,开始延时,0.56ms以后,若读到的电平为低,说明该位为“0”,反之则为“1”,为了可靠起见,延时必须比0.56ms长些,但又不能超过1.12ms,否则如果该位为“0”,读到的已是下 4 一位的高电平,因此取(1.12ms+0.56ms)/2=0.84ms最为可靠,一般取0.84ms左右均可。 (3) 根据码的格式,应该等待9ms的起始码和4.5ms的结果码完成后才能读码。 红外接收模块中,由IR端口接收红外键盘发射出的信息,然后经过P3.2口传送给单片机进行信息处理。 IR J1IR DP32/C52Demodulator IRLINK REM p3212C273 CONN-SIL3104 图3-3 红外接收部分电路图 3.2.4 数码管显示部分 本部分由74ALS573锁存器、八个100欧限流电阻、八个数码管、八个LED组成。当52单片机接收到由红外键盘发射出的信息时,执行相应的子程序,然后由数码管显示相应的参数。 ABCDEFKMNPRSTUDP1234GHABCDEFKMNPRSTUDP1234GH P2.7P2.6J14P2.5P2.4JUMPERU?P11100ΩP0.0R0LED0219D0Q0P0.1R1LED1318D1Q1P0.2R2LED2417D2Q2P0.3R3LED3516D3Q3P0.4R4LED4615D4Q4J21P0.5R5LED5714D5Q5P0.6R6LED6813D6Q6P0.7R7LED7912D7Q7P10VCC11LE1OE74ALS573 图3-4 数码管显示部分电路图 P2.3P2.23.2.5 RS232通信电路 P2.1P2.0 由RS232通信电路来控制开发板程序的运行。 5 C8 0.1u U213 P1C1+C1- C5110u1114DCDT1INT1OUT61213DSRR1OUTR1IN2107RXDT2INT2OUTRRXD798RTSR2OUTR2IN3TXD82CTSVS+TTXD46DTRVS-9RIC2+C2-C7C4 ERROR45MAX23210u1nFCOMPIMC6 0.1u 图3-5 RS232通信电路图 3.2.6 单片机 在本设计中52单片机中的重要部分为振荡电路、复位电路、段选口、位选口等。其中由振荡电路产生计数脉冲进行计数;复位电路实现主程序跳转、重新开始执行的功能;段选口由P0口承担,给数码管输入段码信息使数码管显示相应数值;位选口由P2口承担,由其控制数码管的显示位置。 C1P0.0U1P0.11939XTAL1P0.0/AD020pFP0.238P0.1/AD1P0.3X137P0.2/AD2P0.4CRYSTAL1836XTAL2P0.3/AD3C2P0.535P0.4/AD4P0.634P0.5/AD5P0.73320pFP0.6/AD6932RSTP0.7/AD7P2.0C310uP2.121P2.0/A8P2.222P2.1/A9P2.323P2.2/A10P2.42924PSENP2.3/A11P2.53025ALEP2.4/A12P2.63126EAP2.5/A13P2.727P2.6/A1428P2.7/A15 110P1.0/T2P3.0/RXDR1211P1.1/T2EXP3.1/TXD1K312P1.2P3.2/INT0413P1.3P3.3/INT1514P1.4P3.4/T0AT89C52615P1.5P3.5/T1716P1.6P3.6/WR817P1.7P3.7/RD 图3-6 52单片机电路图 6 3.2.7 硬件总体电路图 图3-7 硬件总体电路图 3.3 软件部分 程序是单片机的灵魂,在连接好电路的前提下,将编写好的程序烧进单片机,使其实现相应的功能,具体由延时程序、红外中断程序和主程序组成。 3.3.1 有关字码的初始化 红外按键、共阴数码管、八位数码管的位选都有相应的字码,所以要将字码初始化,编写在程序中才能使用它们,实现特定的控制。具体初始化如下: Ucharjianma[]={0x16,0x0C,0x18,0x5E,0x08,0x1C,0x5A,0x42,0x52,0x4A} ;//红外键码表 Ucharduanma[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F, 0x77,0x7C,0x39,0x5E,0x79,0x71}; //共阴数码管段码表 Uchardispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F}; //位 7 选控制表 3.3.2 编写每个键值功能 编写每个键值所对应的功能 void fun0(uint n) {uint i; while(P2!=0xFF) P2=0xFF; for(i=0;i<5;i++) { P2=dispbit[i]; P0=duanma[i]; delay(5); } P2=0x7F; P0=duanma[n]; delay(5); } void fun1(uint n) { uint i; while(P2!=0xFF) P2=0xFF; for(i=0;i<5;i++) { P2=dispbit[i]; P0=duanma[i+1]; delay(5); } P2=0x7F; P0=duanma[n]; delay(5); } void fun2(uint n) { 8 uint i; while(P2!=0xFF) P2=0xFF; for(i=0;i<5;i++) { P2=dispbit[i]; P0=duanma[i+2]; delay(5); } P2=0x7F; P0=duanma[n]; delay(5); } void fun3(uint n) { uint i; while(P2!=0xFF) P2=0xFF; for(i=0;i<5;i++) { P2=dispbit[i]; P0=duanma[i+3]; delay(5); } P2=0x7F; P0=duanma[n]; delay(5); } void fun4(uint n) { uint i; while(P2!=0xFF) P2=0xFF; for(i=0;i<5;i++) 9 { P2=dispbit[i]; P0=duanma[i+4]; delay(5); } P2=0x7F; P0=duanma[n]; delay(5); } void fun5(uint n) { uint i; while(P2!=0xFF) P2=0xFF; for(i=0;i<5;i++) { P2=dispbit[i]; P0=duanma[i+5]; delay(5); } P2=0x7F; P0=duanma[n]; delay(5); } void fun6(uint n) { uint i; while(P2!=0xFF) P2=0xFF; for(i=0;i<5;i++) { P2=dispbit[i]; P0=duanma[2*i]; delay(5); 10 } P2=0x7F; P0=duanma[n]; delay(5); } 开始void fun7(uint n) { uint i; unit i=0 while(P2!=0xFF) P2=0xFF; for(i=0;i<5;i++) N { i<5, P2=dispbit[i]; Y P0=duanma[2*i+1]; 执行具体程序, delay(5); i++ } P2=0x7F; P0=duanma[n]; 显示按键的键号 delay(5); } 图3-8 子程序流程图 3.3.3 编写红外及其延时程序 编写红外程序,以及其所用到的延时程序。红外中断程序的作用是返回遥控 按键的键值;而延时程序的作用是消除抖动,以免产生误操作。具体程序如下: void IR_IN() interrupt 0 using 0 { unsigned char j,k,N=0; EX0=0; delay1(15); if (IRIN==1) { EX0 =1; return; 11 } //确认IR信号出现 while (!IRIN) //等IR变为高电平,跳过9ms的前导低电平 信号。 {delay1(1);} for (j=0;j<4;j++) //收集四组数据 { for (k=0;k<8;k++) //每组数据有8位 { while (IRIN) //等 IR 变为低电平,跳过4.5ms的前导高 电平信号。 {delay1(1);} while (!IRIN) //等 IR 变为高电平 {delay1(1);} while (IRIN) //计算IR高电平时长 { delay1(1); N++; if (N>=30) { EX0=1; return;} //0.1ms计数过长自动离开。 } //高电平计数完毕 IRCOM[j]=IRCOM[j] >> 1; //数据最高位补“0” if (N>=8) {IRCOM[j] = IRCOM[j] | 0x80;} //数据最高位补“1” N=0; } //end for k } //end for j if (IRCOM[2]!=~IRCOM[3]) {EX0=1;return;} EX0=1; } void delay1(unsigned char x) //x*0.14MS { unsigned char i; 12 while(x--) { for (i = 0; i<13; i++) {} } } 等待红外中断 延时判断中断真假N Y 储存按键键值 返回按键键值 等待下次中断 图3-9 红外中断程序流程图 3.3.4 编写数码管延时程序 程序中设计了一个1ms的延迟时间当作基础时间,以说明数码管实际的亮灭 时间,具体程序为: void delay(uint n) { uint i,j; for(i = 0;i< n;i++) for(j=114;j>0;j--); } 3.3.5 编写主程序 在主程序的循环中主要工作为等待红外线中断信号的出现,并依据中断传来 的按键字码执行相应的程序。具体程序如下: #include 13 #define uchar unsigned char #define uint unsigned int void delay1(uchar x); //x*0.14MS void delay(uint n); uchar IRCOM[7]; sbit IRIN = P3^2; //红外接收器数据线声明 main() {P2=0xFF; //关闭数码管显示 IE = 0x81; //允许总中断中断,使能 INT0 外部中 断 TCON = 0x01; //触发方式为脉冲负边沿触发 while(1) { switch(IRCOM[2]) { case 0x16:fun0(0);break; case 0x0c:fun1(1);break; case 0x18:fun2(2);break; case 0x5E:fun3(3);break; case 0x08:fun4(4);break; case 0x1C:fun5(5);break; case 0x5A:fun6(6);break; case 0x42:fun7(7);break; 图3-10 主程序流程图 default:break; } } } 4. 结果分析 通过对所编写的程序进行调试,从中发现问题并寻找相应的解决方法,最终得到相应结果。 4.1 设计运行结果与分析 本实验是基于红外线的键盘参数设置程序设计,它是在连接好电路的前提 14 下,将编写好的程序烧写进单片机,进行运行,最终得到的实验结果如下: 按下键盘数字0,八位数码管最高位显示按键数0,低五位显示所设置的自然数01234,其他两位不显示; 按下键盘数字1,八位数码管最高位显示按键数1,低五位显示所设置的自然数12345,其他两位不显示; 按下键盘数字2,八位数码管最高位显示按键数2,低五位显示所设置的自然数23456,其他两位不显示; 按下键盘数字3,八位数码管最高位显示按键数3,低五位显示所设置的自然数34567,其他两位不显示; 按下键盘数字4,八位数码管最高位显示按键数4,低五位显示所设置的自然数45678,其他两位不显示; 按下键盘数字5,八位数码管最高位显示按键数5,低五位显示所设置的自然数56789,其他两位不显示; 按下键盘数字6,八位数码管最高位显示按键数6,低五位显示所设置的偶数02468,其他两位不显示; 按下键盘数字7,八位数码管最高位显示按键数7,低五位显示所设置的奇数13579,其他两位不显示; 本设计基本达到试验要求,可以利用红外线键盘成功设置相应参数并由八位数码管显示出来,但是所实现的功能比较单一、没有复杂的变化,实用性不强,这是所需要改进的。 4.2 问题及解决方法 在课程设计中遇到了很多问题,这是很正常的现象,遇到问题、思考问题、解决问题这个过程让我们对理论知识有了更深的理解与应用,同时也提高解决问题的能力。 问题一:编写完程序并烧进单片机,连接好相应线路后,按下按键进行红外遥控,红外不起作用,数码管没显示。 解决方法:检查延时程序是否编写正确,检查外部中断1即P3.2口是否有效,检查数码管是否损坏,检查线路是否连接正确,排线是否完好。 问题二:位控制信号出现问题,起初用到了两个74ALS573,其中一个控制段选,一个控制位选,但是在编写好程序后由于以前没有用过单片机开发板所以不会正确连线。 解决方法:通过查看硬件电路图后,知道硬件系统(电路板)中只有一个74ALS573,所以改写程序,具体方法是段选控制位不变,改位选信号控制由P2 15 口来承担。 问题三:数码管动态显示,在起初编写的程序中,由于牵涉到位选问题,并且在改写好程序后,数码管在能在一位上进行动态变化,即使给P2口赋以0xFE后,使用左或者右移一位都不能实现动态显示。 解决方法:改为由数组控制,即把要显示的位选的值以数组的形式表示,在给段码赋值的同时,也给具体想显示的位赋值。通过此方法,解决了数码管的动态显示问题。 问题四:八位数码管在显示时显示结果正确,但是出现闪动现象。 解决方法:改变延时时间使延时时间缩短来消除数码管显示的闪动现象。 问题五:在显示时只能显示第一个按键的子程序中的键值,而其他键值的子程序无法实现显示。 解决方法:检查执行完一次程序后,中断是否还被允许执行,数码显示管是否允许显示。 5. 课程设计总结 本次课程设计的任务是基于红外线的键盘参数设置程序设计,完成这个任务的过程分为设计构思、具体设计、实验调试三大部分,通过这三大部分的实际操作学习,收获很多。 设计是一个工程中的核心部分,但是起初是没有思路的,大脑里只有凌乱的各种知识,但不能把他们有机组合起来,构思出一个系统,因此通过查阅相关红外线控制系统设计的资料、上网学习等途径明白了红外线控制系统的基本构成方法,然后把这些和我们平时所学的理论知识结合起来,运用我们平时学习的编程思路、方法和8052单片机来实现红外线的键盘参数设置功能。 具体设计部分,最重要的是编写程序部分,用汇编语言编写实现一个复杂的功能程序会有几百行之多,不利于查错调试,因此采用C语言编写相关程序,由于没有用C编写过控制单片机的程序,所以第一个任务就是学习用C语言编写,通过这个过程的学习,体会到不同的语言的编程思想都是大同小异的,只有学习好某一种编程语言,才能融会贯通,理解不同编程语言的异同,从而很好的利用一种新的工具进行设计。 在编写完程序,烧进单片机后,实验结果并没有出来,查错、调试是很漫长的过程,本次试验遇到延时程序设置值不正确、不会正确使用单片机开发板、数码管显示闪动等问题,在改错的过程中也是一个提高的过程,通过不断的查错调试,才能对这次设计的各个环节有深入的理解与认识,发现自己在理论和实践中所欠缺的问题,从而查漏补缺。 16 6. 心得体会 单片机课程设计任务分发下来了,研究的课题是“基于红外线的键盘参数设置程序设计”。设计课题一发下来时,我感到有点迷茫,真不知道该从哪里下手。 之前其实经常看到电视、影碟机上配备的遥控器,无线远程操作的感觉确实很好、很方便,但是我从来也没有研究过其工作原理,只是知道它是利用红外线来进行具体操作的。 对于这次课设,意味着我要真正承担起自己的责任。因为经过学生的推选,我被选为了组长,我不能让他们失望。在做课设期间,我为各科的学习,复习,考试忙碌,但是我还有另外一个重任就是为我组的课程设计做准备。我选择的题目是:“红外线键盘”,而这次要通过开发板来实现这个功能,利用开发板带的遥控器,使用红外设备,来控制数码管的变化。所以我只能暂时把我的娱乐活动放到一边,在别人过着滋润的生活的时候,研究开发板,分析红外连接控制的程序。我时刻告诉自己,我就是队友的最后一道墙,我要让自己的团队发挥最大的威力,来完美的完成这次课程设计。 所以在这次课设的进行当中,我首先从事红外线的研究,以探索如何实现红外中断的功能;其次,红外的具体实现之后,我研究了开发板的硬件电路图,以实现具体的连线和框图布局;再次,我结合上述两步以及平时的知识,画出了结构框图,等到一切都准备好的时候,我就开始编写程序,依据程序连接好电路图,进行实时调试,验证,再调试,使其实现课设要求的具体功能;最为重要的是,通过编写的程序画具体的程序流程图,使程序变得通俗易懂。 但是在具体的实现过程中,遇到了很多问题,比如延时程序不匹配,不能实现红外中断;动态显示只能在一位数码管上连续变化,不能实现不同位置的数码显示;显示抖动厉害;只能实现红外按键的第一次显示,对第二乃至第三次的按键不做处理等问题,通过对这些问题的解决,我获益匪浅,也让我意识到了用C程序编写的步骤,分块程序分块调试的好处以及检查错误的方法,硬件连接的方法。 最后在这里我要感谢张老师这个学期对我的指导,如果不是他的指导,我就完成不了这个课设任务,如果不是他对我的指导,我就不会下苦功去学Visio,不会学习protues的网络标号以及程序的具体编写方法,就凭这些,他就足以成为我的目标,使我为成为一个具有多能力,动手能力超强的人而奋斗。 17 参 考 文 献 [1] 陈明荧.《8051单片机课程设计实训教材》.清华大学出版社.2004 [2] 魏立峰.《单片机原理与应用技术》.北京大学出版社.2006 [3] 吴戈.《案例学单片机C语言开发》.人民邮电出版社.2008 [4] 夏路易.《单片机技术.电子工业出版社》.2008 [5] 赵建领.《51单片机开发与应用技术详解》.电子工业出版社.2009
/
本文档为【红外线的键盘】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索