嵌入式作业
华师2020秋《嵌入式应用开发》客观题作业

华师2020秋《嵌入式应用开发》客观题作业单项选择题1、下面哪个环境变量表示命令行中输入的所有参数串:()(2 分)A.$?B.$$C.$*D.$@我的答案:D得分:2分2、下列哪一项不是嵌入式操作系统的特点:()(2 分)A.占有资源少B.低成本C.高可靠性D.交互性我的答案:D得分:2分3、Linux内核配置过程中,下面哪项命令建立依赖关系:()(2 分)A.make configB.make menuconfigC.make depD.make clean我的答案:C得分:2分4、为了方便认识,还是建议将shell脚本的后缀名最好为:()(2 分)A.exeB.docC.cD.sh我的答案:D得分:2分5、用命令列出下面的文件列表,请问那一个文件是符号链接文件:()(2分)A.-rw------- 2 hel-s users 56 Sep 09 11:05 helloB.-rw------- 2 hel-s users 56 Sep 09 11:05 goodbeyC.drwx------ 1 hel users 1024 Sep 10 08:10 zhangD.lrwx------ 1 hel users 2024 Sep 12 08:12 cheng我的答案:D得分:2分6、chmod的数字设置可以改变:()(2 分)A.文件的访问特权B.目录的访问特权C.文件/目录的访问特权D.设备的访问特权我的答案:C得分:2分7、VIM编辑器中执行存盘退出的命令为:()(2 分)A.:qB.:sqC.:q!D.:wq我的答案:D得分:2分8、GCC的正确编译流程为:()(2 分)A.预处理-编译-汇编-链接B.预处理-编译-链接-汇编C.预处理-链接-编译-汇编D.编译-预处理-汇编-链接我的答案:A得分:2分9、下面关于Shell的说法不正确的是:()(2 分)A.操作系统的外壳B.用户与系统内核之间的接口C.一个命令解释程序D.一种和C语言类似的程序我的答案:D得分:2分10、chmod 命令的权限模式使用八进制形式,每个八进制的三个二进制位从高到低分别表示为有无:()(2 分)A.读写执行B.写读执行C.执行读写D.执行写读我的答案:A得分:2分11、可实现文件重命名的命令是:()(2 分)A.cpB.mvC.lnD.rename我的答案:B得分:2分12、VIM编辑器中不包括下面哪种模式:()(2 分)A.编辑模式B.命令模式C.插入模式D.输出模式我的答案:D得分:2分13、对于Linux操作系统,下面哪项说法是错误的:()(2 分)A.是一种开源的操作系统B.提供了强大的应用程序开发环境C.可以免费使用D.不支持Sparc硬件平台我的答案:D得分:2分14、使用shell时,默认的环境变量放在哪里:()(2 分)A.~/.profileB.~/.bashC./etc/profile.dD.~/bash我的答案:A得分:2分15、可通过接受标准输入作为输出内容来创建简单文件的命令是:()(2分)A.touchB.catC.viD.gedit我的答案:B得分:2分16、user1和user2,同属于users组。
嵌入式作业题答案

嵌入式系统原理及应用作业题答案第1章嵌入式系统概述1. 什么是嵌入式系统?嵌入式系统的组成?答:嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
组成:嵌入式处理器、外围设备、操作系统、应用软件。
2. 典型的嵌入式处理器有哪些?3. 答:微处理器、微控制器、DSP处理器、片上系统SOC。
4. 典型的RTOS操作系统有哪些?5. 答:嵌入式LinUX、卩CLinUX、WindoWS Embedded CE、WindoWS Embedded ComPaCt 7 > μC/OS-II > μC/OS-III、VXWorks、eCos 等。
6. 列举身边的嵌入式应用产品?7. 嵌入式系统的设计可以分成四个阶段:需求分析、架构设计和概要设计、详细设计和开发、测试反馈。
第2章COrteX-M体系结构8. ARM COrteX系统的处理器分为: A 、__________ R ____ 、____ M ____ 。
9. ARM COrteX-M3为32位微控制器,请问32位指的是CPlJ字长。
10. 3、COrteX-M3处理器能够以小端格式或大端格式访问存储器中的数据字,而访问代码时始使用小端格式______11. ARM COrteX-M3体系结构采用哈佛总线结构,拥有独立的指令总线和数据总线,可以让取指与数据访问并行进行。
12. CM3寄存器分为通用寄存器,包括R0~R15和特殊功能寄存器,包括程序状态寄存器、异常屏蔽寄存器、控制寄存器。
13. 寄存器R13是堆栈指针寄存器。
14. 寄存器R14是程序连接寄存器。
15. 寄存器R15是程序PG16. CM3的堆栈指针分为__MSP__ _=PSP r O存储器堆栈堆栈分为:向上生长(即向高地址方向生长)的递增堆栈;向下生长(即向低地址方向生长),称为递减堆栈。
嵌入式系统及应用 第1次 作业 (作业同单元自测(2)-(10) 2019-10-20

嵌入式系统及应用单元自测(2)1. 下列哪个不是嵌入式系统的特点:( D )。
A. 专用性B. 资源受限C. 功耗约束D. 常由外接交流电电源供电2. 下列哪些不是嵌入式系统:( D )。
A. 移动电话、手机B. MP3C. MIDD. 深蓝超级计算机3. 关于嵌入式组成,下面说法错误的是:( A )。
A. 嵌入式系统的中间层是位于操作系统与应用程序之间。
B. 嵌入式系统包括硬件和软件C. 嵌入式系统包含了一个计算机系统基本部件D. 并不是每个嵌入式系统都拥有独立的操作系统单元自测(3)1. 指令和数据共享同一总线的体系结构是( A )。
A. 冯•诺依曼结构B. 哈佛结构C. RISCD. CISC2. 下面不属于嵌入式处理器的是:( A )。
A. Intel Core(酷睿)处理器B. Intel Atom处理器C. MCS-51单片机D. ARM处理器3. 在嵌入式处理器与外部设备接口中,使用2根线实现多对多双向收发的是:( B )。
A. UARTB. I2CC. SPID. USB4. 假设使用奇偶校验位,UART发送一个字节的数据,从idle状态开始(及数据线为高),到允许进行下一次发送动作态为止,至少需要( D )个时钟节拍。
A. 8B. 9C. 10D. 11单元自测(4)1. 关于嵌入式处理器内核性能,下面说法正确的是:( C )A. DMIPS反映处理器内核的功耗性能。
B. DMIPS越高反映处理器内核架构的越先进。
C. “DMIPS/主频”越高反映处理器内核架构的越先进。
D. 内核的动态功耗性能一般用mW来衡量。
2. 关于体系结构与实现结构,下面说法正确的是:( C )A. x86是一种实现结构。
B. x86架构处理器的实现结构都是一样的。
C. 体系结构相同的处理器器其指令集是相同或兼容的。
D. 不同处理器要想拥有相同或兼容的指令集,其实现结构也必须一样。
3. 关于SIMD说法错误的是:( B )。
南开大学《嵌入式系统》在线作业02

《嵌入式系统》在线作业通过调用cudaMemcpy()函数想实现将数据从CPU拷贝到GPU,那么cudaMemcpy()中的参数应该选择()A:cudaMemcpyHostToHostB:cudaMemcpyDeviceToHostC:cudaMemcpyDeviceToDeviceD:cudaMemcpyHostToDevice参考选项:D对响应时间有严格要求的嵌入式系统是()A:嵌入式实时系统B:嵌入式多线程系统C:嵌入式多内核系统D:嵌入式轮转询问系统参考选项:A当block是2D的时候,每个线程的thread index的计算公式为()A:thread index = blockIdx.x * blockDim.x + threadIdx.y * blockDim.x + threadIdx.x;B:thread index = blockIdx.x * blockDim.x * blockDim.y+ threadIdx.y + threadIdx.x;C:thread index = blockIdx.x * blockDim.x * blockDim.y+ threadIdx.y * blockDim.x + threadIdx.x;D:thread index = blockIdx.x * blockDim.x * blockDim.y+ threadIdx.y * threadIdx.x;参考选项:C实现共享资源互斥的方法很多,不同之处在于互斥的影响范围和程度不同。
其中对任务调度上锁,但不禁止中断的方法是?A:关中断B:测试并置位指令C:禁止任务抢占D:使用信号量参考选项:C关于嵌入式操作系统及其特点,以下叙述中错误的是()。
A:嵌入式操作系统是在嵌入式硬件上提供一个应用程序的运行平台B:嵌入式硬件资源相对有限,因此操作系统内核较小C:嵌入式操作系统通常具有较好的可移植性D:嵌入式操作系统往往需要控制硬件装置,因此,不用考虑实时性参考选项:DGPU对比于CPU的特点不包含()A:Cache比较小,主要用于提高内存throughputB:控制逻辑比较简单,没有分支预测C:GPU的运算核较复杂且个数很少D:GPU需要巨大数量的线程来容忍内存延迟参考选项:C在嵌入式系统设计中,用来进行系统初始代码调试的接口称为()。
地大20春《嵌入式操作系统》在线作业二_31929

(单选题)1: Linux安装时可以选择的安装模式描述正确的是()。
A: 光盘安装
B: 硬盘安装
C: 网络安装
D: 以上全对
正确答案: D
(单选题)2: 下列不属于嵌入式操作系统的是()。
A: Windows CE
B: VxWorks
C: windowsXP
D: UC/OS
正确答案: C
(单选题)3: 专门用于信号处理方面的处理器是()。
A: 嵌入式微控制器(MCU)
B: 嵌入式数字信号处理器(DSP)
C: 嵌入式微处理器
D: 嵌入式片上系统
正确答案: B
(单选题)4: Boot Loader的启动方式描述正确的是()。
A: 网络启动方式
B: 磁盘启动方式
C: Flash启动方式
D: 以上全对
正确答案: D
(单选题)5: 多线程程序的优点描述正确的是()。
A: 提高应用程序响应
B: 使多CPU系统更加有效
C: 改善程序结构
D: 以上全对
正确答案: D
(单选题)6: U-Boot可支持的主要功能描述正确的是()。
A: 系统引导
B: 设备驱动
C: 上电自检功能
D: 以上全对
正确答案: D
(单选题)7: Uc/OS操作系统的特点描述错误的是()。
A: 实时操作系统。
安全生产10不吊

安全生产10不吊
一、不吊嵌入操作:操作人员在进行高空作业时,应严禁用吊车等设备进行嵌入式操作,以免造成设备损坏、人员伤亡等安全事故。
二、不吊过量载重:在进行吊装作业时,应按照设备的额定载重进行操作,严禁超载作业,以免造成设备过载,引发事故。
三、不吊不良品:在进行吊装作业时,应对所吊载物进行严格检查,有问题的不良品应立即通知相关人员处理,严禁将不良品进行吊装,以免引发事故。
四、不吊悬挂不牢固物品:在进行吊装作业时,应确保所吊载物的悬挂点牢固可靠,严禁使用不牢固的吊索、吊钩等设备进行吊装,以免导致吊装物品掉落、伤人等安全事故。
五、不吊压破气体容器:在进行吊装作业时,严禁吊装压破、损坏的气体容器,以免引发爆炸、中毒等危险。
六、不吊高温物品:在进行吊装作业时,应切勿吊装高温物品,以免造成设备受热损坏、人员烫伤等安全事故。
七、不吊尖锐物品:在进行吊装作业时,应切勿吊装尖锐物品,以免发生物品脱落、伤人等安全事故。
八、不吊有飞溅物品:在进行吊装作业时,应切勿吊装有飞溅危险的物品,以免造成人员眼睛、皮肤等部位受伤的事故。
九、不吊有磁性物品:在进行吊装作业时,应切勿吊装有磁性的物品,以免对设备产生干扰、损坏等安全问题。
十、不吊未标明重量的物品:在进行吊装作业时,应切勿吊装未标明重量的物品,以免造成设备过载、事故发生等危险。
嵌入式作业

第3章指令系统1. 若DS=3000H,BP=2000H,SI=1000H,[32000H]=00H,[32001H]=40H,SS=3000H,[31000H]=20H,[31001H]=60H,[33000H]=50H,[33001H]=60H,说明下列各条指令执行后,AX中的内容是什么?并说明各条指令中源操作数的寻址方式。
(1) MOV AX,DS (2) MOV AX,[2000H](3) MOV AX,[SI] (4) MOV AX,[BP](5) MOV AX,[BP+SI]2. 指出下列指令中的非法指令。
(1) MOV BX,AL (2) MOV CS,2000H(3) PUSH 4567H (4) XCHG VAR1,VAR2(5) ADD AL,148H (6) MOV DS,2000H(7) MOV BH,SI (8) SUB 38H,AL3. 若SP=2000H,AX=3355H,BX=4466H,试指出下列指令或程序段执行后有关寄存器的内容。
(1) PUSH AX执行后AX=?,SP=?(2) PUSH AXPUSH BXPOP DXPOP CX执行后AX=?,CX=?,DX=?,SP=?4. 请按下面的要求写出相应的汇编指令或指令序列。
(1) 将1234H送入DS中。
(2) 将5678H与AX中的数相加,结果放在AX中。
(3) 将DATAX和DATAY相加,其和放在DATAY中。
(4) 将AX中的高4位变为全0。
(5) 将BX中的低2位变为全1。
(6) 将CX中的D3~D7位取反。
5. 若AL=0FFH,BL=03H,指出下列指令执行后标志AF、OF、ZF、SF、PF、CF的状态。
(1) ADD BL,AL (2) INC BL(3) SUB BL,AL (4) NEG BL(5) AND BL,AL (6) MUL BL(7) CMP BL,AL (8) IMUL BL(9) OR BL,AL (10)XOR BL,BL6. 已知存储器中有两个压缩BCD码6543和4672存放在从BUF开始的连续4个单元中(高字节放在高地址单元),试编制两数相减的程序,结果存放在后面的两个单元中。
山东科技大学嵌入式系统设计作业习题

《嵌入式系统设计》作业习题第一章:嵌入式系统概述1 .和PC系统机相比嵌入式系统不具备以下哪个特点(C)。
A、系统内核小B、专用性强C、可执行多任务D、系统精简2 .嵌入式系统有硬件和软件部分构成,以下(C)不属于嵌入式系统软件。
A.系统软件B.驱动C.FPGA编程软件D.嵌入式中间件3 .以下哪个不是嵌入式系统设计的主要目标?(D)A低成本B低功耗C实时要求高D超高性能4 .下面哪个系统不属于嵌入式系统(C)A、MP3播放器B、GPS接收机C、“银河”巨型计算机D、“银河玉衡”核心路由器5 .下面关于哈佛结构描述正确的是(A)A程序存储空间与数据存储空间分离B存储空间与IO空间分离C程序存储空间与数据存储空间合并D存储空间与IO空间合并6 .嵌入式操作系统的主要目标并不包括(A)A强大多任务支持B实时处理能力C代码体积D与硬件的交互能力7 .以下属于嵌入式操作系统的是(BC)A、LinUX操作系统B、μC∕0S∙ll操作系统C、VXWorkS操作系统D、UbUntU操作系统8 .嵌入式系统的基本定义为:以O中心,以()为基础,O可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的O系统。
应用计算机技术软硬件专用计算机9 .以MCU为核心的嵌入式产品至少应包括(BCD)A、显示部分B、输入部分C、输出部分D、通信部分10、一般而言,嵌入式系统的构架可以分为4个部分:分别是(处理器)、存储器、输入/输出和软件,一般软件亦分为操作系统相关和(应用软件)两个主要部分。
第二章:STM32微控制器概述LCorteX-M处理器采用的架构是(D)(A)v4T(B)v5TE(C)v6(D)v72 .Cortex-M3的提供的流水线是(B)(A)2级(B)3级(C)5级(D)8级3 .Cortex-M3系列处理器支持Thumb-2指令集。
(对)4.STM32系歹IJMCU在使用电池供电时,提供3.3~5V的低电压工作能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 实现功能单片机通过引脚P3^3接收红外信号,解码并判断发射出的按键值,将按键值显示在数码管上。
2 硬件系统设计采用STC89C52做为控制芯片,晶振选择11.0592MHZ ;红外接收头选择HS0038;用三极管控制数码管的选择。
单片机通过74HC245驱动共阳极数码管。
P1.0/T21P1.1/T2EX 2P1.23P1.34P1.45P1.56P1.67P1.78RST 9P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT113P3.4/T014P3.5/T115P3.6/WR 16P3.7/RD 17XTAL218XTAL119GND 20P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P2.7/A1528PSEN 29ALE 30EA 31P0.7/AD732P0.6/AD633P0.5/AD534P0.4/AD435P0.3/AD336P0.2/AD237P0.1/AD138P0.0/AD039VCC 40U1STC89C52Y111.0592MHz C220pC320p+5C10.1uFRST +5DB_0DB_1DB_2DB_3DB_5DB_6DB_7DB_4R1R2R3R4L4L3L2L1IRD单片机电路IRDC50.1uF+5OUT 1GND 2VDD 3U4HS0038红外接收器R3610K R3518DB0DB1DB2DB3DB4DB5DB6DB7Q29012R21KLEDS2LEDS1DB0DB1DB2DB3DB4DB5DB6DB7Q19012R11Ka bf cg d e 10985423a bc d e f g7dpdp 16com com DS2LED-7SEGa bf cg d e 10985423a bc d e f g7dpdp 16com com DS1LED-7SEGDB0DB1DB2DB3DB4DB5DB6DB7DB_0DB_1DB_2DB_3DB_5DB_6DB_7DB_4DIR 1A12B217A34B415A56B613A78B811GND10A89B712A67B514A45B316A23B118OE19VCC 20U374HC245C40.1uF+5+5+5R27330R28330R29330R30330R31330R32330R33330R34330R 34.7K R 44.7K R 54.7K R 64.7K R 74.7K R 84.7K R 94.7K R264.7KLEDS1LEDS2+5V缓冲电路LED硬件系统设计2.1 单片机最小系统P1.0/T 21P1.1/T 2EX 2P1.23P1.34P1.45P1.56P1.67P1.78R ST 9P3.0/R X D 10P3.1/T XD 11P3.2/IN T012P3.3/IN T113P3.4/T 014P3.5/T 115P3.6/W R 16P3.7/R D 17X TA L218X TA L119G ND 20P2.0/A 821P2.1/A 922P2.2/A 1023P2.3/A 1124P2.4/A 1225P2.5/A 1326P2.6/A 1427P2.7/A 1528PS EN 29A LE 30EA 31P0.7/A D 732P0.6/A D 633P0.5/A D 534P0.4/A D 435P0.3/A D 336P0.2/A D 237P0.1/A D 138P0.0/A D 039V CC 40U 1ST C89C 52Y 111.0592MHz C 220pC 320p+5C 10.1u FR ST +5D B_0D B_1D B_2D B_3D B_5D B_6D B_7D B_4R 1R 2R 3R 4L4L3L2L1IRD单片机电路LE DS 1LE DS 2单片机采用STC89C52,最小系统如上图所示,晶振选择11.0592MHZ 。
2.2 红外接收电路IRDC50.1uF+5OUT 1GND 2VDD 3U4HS0038红外接收器R3610K R3518红外接收元件采用HS0038,它可以将遥控器发出的红外线解码,输出的电平与发射码的电平反相。
2.3 数码管显示电路DB0DB1DB2DB3DB4DB5DB6DB7Q29012R21KLE DS2LE DS1DB0DB1DB2DB3DB4DB5DB6DB7Q19012R11Ka bf cgd e 10985423a bcd e f g7dp dp 16com comDS2LE D-7SEGa bf cgd e 10985423a bcd e f g7dp dp 16com com DS1LE D-7SEG+5VLEDLED 显示电路,LEDS1和LEDS2是位选控制端,分别接单片机的P1.0和P1.1。
选择共阳极数码管。
由于单片机的灌电流有限,所以要加缓冲电路,如下图所示D B0D B1D B2D B3D B4D B5D B6D B7D B_0D B_1D B_2D B_3D B_5D B_6D B_7D B_4D IR 1A 12B217A 34B415A 56B613A 78B811G ND10A 89B712A 67B514A 45B316A 23B118O E19V CC 20U 374H C245C40.1uF+5+5+5R27330R28330R29330R30330R31330R32330R33330R34330R 34.7K R 44.7K R 54.7K R 64.7K R 74.7K R 84.7K R 94.7K R 264.7K缓冲电路芯片选择74HC245,该芯片可以增加单片机的驱动能力。
3 软件设计下图是遥控器的发射码可以看出发射码由引导码,2字节用户码,2字节按键码组成。
引导码的高低电平持续时间都是4500us ,用户码和按键码的位1的高低电平持续时间分别是560us ,1680us ;位0的高低电平持续时间都是560us 。
键按下一帧发射码持续按键时的另一帧发射码192Tm192Tm引导码用户码用户码键码键码的反码4.5ms 4.5ms Tm TmTm 3Tm 引导码位“0”位“1”Tm=256/Fosc=0.56ms ,Fosc=455kHz波形64Tm遥控器发射码设计思想:单片机接收到的电平与遥控器发出的电平正好是反相的,所以单片机外部中断设置为下降沿触发,引导码到来时触发中断,通过检测到的高低电平时间可以判断输入信号是干扰,还是数字位1或者0。
接收到数字位1的低电平持续时间是560us ,高电平持续时间是1680us 。
数字为0的高低电平持续时间都是560us 。
接受的8bit 数组成一个字节,与规定的字节对比就可以得到按下的按键值。
然后再显示到数码管上。
流程图:程序设计#include <reg52.h>typedef unsigned char uint8; typedef unsigned int uint16; sbit Ir_Pin = P3^3;sbit LEDS1= P1^0; //数码管位选位开始根据第三个字节,和第四个字节的值判断按键值 第四个字节检测 初始化 第三个字节检测数码管动态显示数码管显示 第二个字节检测中断N存储数据 引导码时间检测N 移位次数>8 N高低电平在时间范围内变量右移一位 根据高低电平时间来确定数字位是1还是0 第一个字节检测检测 软件设计流程图sbit LEDS2= P1^1;uint8 Ir_Buf[4]; //存储解码数据uint16 code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};uint8 key_num=0;void init(){TMOD=0x11; //定时器选择16位模式IT1=1; //外部中断1下降沿触发中断EA=1;EX1=1; //允许外部中断1}void delay(){uint8 i=0;uint16 j=0;for(i=0;i<10;i++)for(j=0;j<110;j++); //设置延时}void LED (uint8 i) //动态显示数字{uint8 x,y=0;x=i/10;y=i%10;LEDS1=!LEDS1;P0=table[x];delay();LEDS2=!LEDS2;P0=table[y];}void main(){init(); //初始化while(1){LED(key_num);}}/*获取低电平时间*/uint16 Ir_Get_Low(){TL1 = 0;TH1 = 0;TR1 = 1;while (!Ir_Pin && (TH1&0x80)==0); //&&两边先计算!Ir_Pin再计算(TH0&0x80)==0;判断两者是否全为真,实际意义是:Ir_Pin等于0并且TH0小于0x80时循环,直到Ir_Pin等于1或TH0达到一定值时返回计数器值。
TR1 = 0; //停止计时return (TH1 * 256 + TL1);}/*获取高电平时间*/uint16 Ir_Get_High(){TL1 = 0;TH1 = 0;TR1 = 1;while (Ir_Pin && (TH1&0x80)==0);TR1 = 0;return (TH1 * 256 + TL1);}/****************************红外中断处理程序********************************/ void _hongwai_() interrupt 2{uint16 temp;uint8 i,j,buf2,buf3;temp = Ir_Get_Low();if ((temp < 7833) || (temp > 8755)) //引导脉冲低电平8500~9500usreturn;temp = Ir_Get_High();if ((temp < 3600) || (temp > 4700)) //引导脉冲高电平4000~5000usreturn;for (i=0; i<4; i++) //4个字节{for (j=0; j<8; j++) //每个字节8位{temp = Ir_Get_Low();/*200~800us,若低电平时间没在此范围内说明不是要接受的信号,退出中断*/if ((temp < 184) || (temp > 737))return;temp = Ir_Get_High();/*200~2000us,若高电平时间没在此范围内说明不是要接受的信号,退出中断*/if ((temp < 184) || (temp > 1843))return;/*高低电平都在规定时间范围内时接收,内部变量向右移一位,若最后高电平时间*/Ir_Buf[i] >>= 1;if (temp > 1032) //若高电平持续时间在1120us以上那么这次接收到的是1Ir_Buf[i] |= 0x80;}}buf2=Ir_Buf[2];buf3=Ir_Buf[3];if (buf2==0x16&&buf3==0xe9)key_num=1;else if(buf2==0x0c&&buf3==0xf3)key_num=2;else if(buf2==0x18&&buf3==0xe7)key_num=3;else if(buf2==0x5e&&buf3==0xa1)key_num=4;else if(buf2==0x08&&buf3==0xf7)key_num=5;else if(buf2==0x1c&&buf3==0xe3)key_num=6;else if(buf2==0x5a&&buf3==0xa5)key_num=7;else if(buf2==0x42&&buf3==0xbd)key_num=8;else if(buf2==0x52&&buf3==0xad)key_num=9;else if (buf2==0x4a&&buf3==0xb5)key_num=10;else if (buf2==0x40&&buf3==0xbf)key_num=11;else if (buf2==0x43&&buf3==0xbc)key_num=12;else if (buf2==0x44&&buf3==0xbb)key_num=13;else if(buf2==0x19&&buf3==0xe6)key_num=14;}作业参考单片机开发板的红外解码程序,采用分别检测高低电平持续时间来判断发射位是1还是0,8个发射位组成一个字节,通过字节对比就可以知道红外发射的按键值。