虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

四<b>电压比较器</b>

  • AVR单片机原理及应用

    《AVR单片机原理及应用》详细介绍了ATMEL公司开发的ATmega8系列高速嵌入式单片机的硬件结构、工作原理、指令系统、接口电路、C编程实例,以及一些特殊功能的应用和设计,对读者掌握和使用其他ATmega8系列的单片机具有极高的参考价值 AVR单片机原理及应用》具有较强的系统性和实用性,可作为有关工程技术人员和硬件工程师的应用手册,亦可作为高等院校自动化、计算机、仪器仪表、电子等专业的教学参考书。 目录 第1章 绪论 1.1 AVR单片机的主要特性 1.2 主流单片机系列产品比较 1.2.1 ATMEL公司的单片机 1.2.2 Mkcochip公司的单片机 1.2.3 Cygnal公司的单片机 第2章 AVR系统结构概况 2.1 AVR单片机ATmega8的总体结构 2.1.1 ATmega8特点 2.1.2 结构框图 2.1.3 ATmega8单片机封装与引脚 2.2 中央处理器 2.2.1 算术逻辑单元 2.2.2 指令执行时序 2.2.3 复位和中断处理 2.3 ATmega8存储器 2.3.1 Flash程序存储器 2.3.2 SRAM 2.3.3 E2pROM 2.3.4 I/O寄存器 2.3.5 ATmega8的锁定位、熔丝位、标识位和校正位 2.4 系统时钟及其分配 2.4.1 时钟源 2.4.2 外部晶振 2.4.3 外部低频石英晶振 2.4.4 外部:RC振荡器 2.4.5 可校准内部.RC振荡器 2.4.6 外部时钟源 2.4.7 异步定时器/计数器振荡器 2.5 系统电源管理和休眠模式 2.5.1 MCU控制寄存器 2.5.2 空闲模式 2.5.3 ADC降噪模式 2.5.4 掉电模式 2.5.5 省电模式 2.5.6 等待模式 2.5.7 最小功耗 2.6 系统复位 2.6.1 复位源 2.6.2 MCU控制状态寄存器——MCUCSR 2.6.3 内部参考电压源 2.7 I/O端口 2.7.1 通用数字I/O端口 2.7.2 数字输入使能和休眠模式 2.7.3 端口的第二功能 第3章 ATmega8指令系统 3.1 ATmega8汇编指令格式 3.1.1 汇编语言源文件 3.1.2 指令系统中使用的符号 3.1.3 ATmega8指令 3.1.4 汇编器伪指令 3.1.5 表达式 3.1.6 文件“M8def.inc” 3.2 寻址方式和寻址空间 3.3 算术和逻辑指令 3.3.1 加法指令 3.3.2 减法指令 3.3.3 取反码指令 3.3.4 取补码指令 3.3.5 比较指令 3.3.6 逻辑与指令 3.3.7 逻辑或指令 3.3.8 逻辑异或 3.3.9 乘法指令 3.4 转移指令 3.4.1 无条件转移指令 3.4.2 条件转移指令 3.4.3 子程序调用和返回指令 3.5 数据传送指令 3.5.1 直接寻址数据传送指令 3.5.2 间接寻址数据传送指令 3.5.3 从程序存储器中取数装入寄存器指令 3.5.4 写程序存储器指令 3.5.5 I/0端口数据传送 3.5.6 堆栈操作指令 3.6 位操作和位测试指令 3.6.1 带进位逻辑操作指令 3.6.2 位变量传送指令 3.6.3 位变量修改指令 3.7 MCU控制指令 3.8 指令的应用 第4章 中断系统 4.1 外部向量 4.2 外部中断 4.3 中断寄存器 第5章 自编程功能 5.1 引导加载技术 5.2 相关I/O寄存器 5.3 Flash程序存储器的自编程 5.4 Flash自编程应用 第6章 定时器/计数器 6.1 定时器/计数器预定比例分频器 6.2 8位定时器/计数器O(T/CO) 6.3 16位定时器/计数器1(T/C1) 6.3.1 T/C1的结构 6.3.2 T/C1的操作模式 6.3.3 T/121的计数时序 6.3.4 T/C1的寄存器 6.4 8位定时器/计数器2(T/C2) 6.4.1 T/C2的组成结构 6.4.2 T/C2的操作模式 6.4.3 T/C2的计数时序 6.4.4 T/02的寄存器 6.4.5 T/C2的异步操作 6.5 看门狗定时器 第7章 AVR单片机通信接口 7.1 AVR单片机串行接口 7.1.1 同步串行接口 7.1.2 通用串行接口 7.2 两线串行TWT总线接口 7.2.1 TWT模块概述 7.2.2 TWT寄存器描述 7.2.3 TWT总线的使用 7.2.4 多主机系统和仲裁 第8章 AVR单片机A/D转换及模拟比较器 8.1 A/D转换 8.1.1 A/D转换概述 8.1.2 ADC噪声抑制器 8.1.3 ADC有关的寄存器 8.2 AvR单片机模拟比较器 第9章 系统扩展技术 9.1 串行接口8位LED显示驱动器MAX7219 9.1.1 概述 9.1.2 引脚功能及内部结构 9.1.3 操作说明 9.1.4 应用 9.1.5 软件设计 9.2 AT24C系列两线串行总线E2PPOM 9.2.1 概述 9.2.2 引脚功能及内部结构 9.2.3 操作说明 9.2.4 软件设计 9.3 AT93C46——三线串行总线E2PPOM接口芯片 9.3.1 概述 9.3.2 内部结构及引脚功能 9.3.3 操作说明 9.3.4 软件设计 9.4 串行12位的ADCTL543 9.4.1 概述 9.4.2 内部结构及引脚功能 9.4.3 操作说明 9.4.4 AD620放大器介绍 9.4.5 软件设计 9.5 串行输出16位ADCMAXl95 9.5.1 概述 9.5.2 引脚功能及内部结构 9.5.3 操作说明 9.5.4 应用 9.5.5 软件设计 9.6 串行输入DACTLC5615 9.6.1 概述 9.6.2 引脚功能及内部结构 9.6.3 操作说明 9.6.4 软件设计 9.7 串行12位的DACTLC5618 9.7.1 概述 9.7.2 内部结构及引脚功能 9.7.3 操作说明 9.7.4 软件设计 9.8 串行非易失性静态RAMX24C44 9.8.1 概述 9.8.2 引脚功能及内部结构 9.8.3 操作说明 9.8.4 软件设计 9.9 数据闪速存储器AT45DB041B 9.9.1 概述 9.9.2 引脚功能及内部结构 9.9.3 操作说明 9.9.4 软件设计 9.10 GM8164串行I/0扩展芯片 9.10.1 概述 9.10.2 引脚功能说明 9.10.3 操作说明 9.10.4 软件设计 9.11 接口综合实例 附录1 ICCACR简介 附录2 ATmega8指令表 参考文献

    标签: AVR 单片机原理

    上传时间: 2013-10-29

    上传用户:lanwei

  • MK7A23P_cn

    MK7A23P是带15 位(11bit+4bit)A/D转换器的RISC高性能8位微控制器。它内部包含2K字节的一次性可编程只读存储器、128字节数据存储器、定时器/计数器、中断、LVR(低电压复位)、I/O 口、比较器和PWM输出。

    标签: P_cn MK 23

    上传时间: 2013-12-07

    上传用户:hullow

  • 常用PIC系列单片机速查表

    常用PIC系列产品特性一览表 器件  存储器 类型 字数 EEPROM 数据 存储器 RAM I/O 引脚数  ADC (-Bit) 比较 器 运 放 定时器/WDT 串行接口 最高 速度 MHz 封装 PDIP /SOIC ICSP CCP / ECCP 输出电流 (per I/O) 振荡器 频率 (MHz) 参考 电压 VREF LCD PWM 堆栈 深度 High Voltage Wakeup On Change PIC16C432 OTP 2048x14   128 12   2  1-8bit/1-WDT   20 20 √   25 mA  4       0 0 PIC16C433 OTP 2048x14   128 6 4/8    1-8bit/1-WDT   10 18 √   25 mA         0 0 PIC16C505 OTP 1024x12   72 12      1-8bit/1-WDT   20 14 √   25 mA  4       0 0 PIC16C54 OTP 512x12   25 12      1-8bit/1-WDT   20 18/20    20 mA          0 0 PIC16C54A OTP 512x12   25 12      1-8bit/1-WDT   20 18/20    20 mA         0 0 PIC16C54C OTP 512x12   25 12      1-8bit/1-WDT   40 18/20    20 mA          0 0 PIC16C55 OTP 512x12   24 20      1-8bit/1-WDT   20 28    20 mA          0 0 PIC16C554 OTP 512x14   80 13      1-8bit/1-WDT   20 18/20 √   25 mA          0 0 PIC16C558 OTP 2048x14   128 13      1-8bit/1-WDT   20 18/20 √   25 mA          0 0 PIC16C55A OTP 512x12   24 20      1-8bit/1-WDT   40 28    20 mA          0 0 PIC16C56 OTP 1024x12   25 12      1-8bit/1-WDT   20 18/20    20 mA          0 0 PIC16C56A OTP 1024x12   25 12      1-8bit/1-WDT   40 18/20    20 mA         0 0 PIC16C57 OTP 2048x12   72 20      1-8bit/1-WDT   20 28    20 mA          0 0 PIC16C57C OTP 2048x12   72 20      1-8bit/1-WDT   40 28    20 mA          0 0 PIC16C58B OTP 2048x12   73 12      1-8bit/1-WDT   40 18/20    20 mA          0 0 PIC16C620 OTP 512x14   80 13   2  1-8bit/1-WDT   20 18/20 √   25 mA   √      0 0 PIC16C620A OTP 512x14   96 13   2  1-8bit/1-WDT   40 18/20 √   25 mA   √      0 0 PIC16C621 OTP 1024x14   80 13   2  1-8bit/1-WDT   20 18/20 √   25 mA    √      0 0 PIC16C621A OTP 1024x14   96 13   2  1-8bit/1-WDT   40 18/20 √   25 mA   √      0 0 PIC16C622 OTP 2048x14   128 13   2  1-8bit/1-WDT   20 18/20 √   25 mA   √      0 0 PIC16C622A OTP 2048x14   128 13   2  1-8bit/1-WDT   40 18/20/40 √   25 mA   √      0 0 PIC16C62A OTP 2048x14   128 22      2-8bit/1-16bit/1-WDT I²C/ SPI 20 28/ √ 1 25 mA     1   0 0 PIC16C62B OTP 2048x14   128 22      2-8bit/1-16bit/1-WDT I²C /SPI 20 28 √ 1 25 mA     1   0 0 PIC16C63 OTP 4096x14   192 22      2-8bit/1-16bit/1-WDT USART/I²C /SPI 20 28 √ 2 25 mA     2   0 0 PIC16C63A OTP 4096x14   192 22      2-8bit/1-16bit/1-WDT USART/I²C/SPI 20 28 √ 2 25 mA     2   0 0 PIC16C642 OTP 4096x14   176 22   2  1-8bit/1-WDT   20 28 √   25 mA   √      0 0 PIC16C64A OTP 2048x14   128 33      2-8bit/1-16bit/1-WDT I²C /SPI 20 40/44 √ 1 25 mA     1   0 0 PIC16C65A OTP 4096x14   192 33      2-8bit/1-16bit/1-WDT USART/I²C/SPI 20 40/44 √ 2 25 mA     2   0 0 PIC16C65B OTP 4096x14   192 33      2-8bit/1-16bit/1-WDT USART/I²C/SPI 20 40/44 √ 2 25 mA     2   0 0 PIC16C66 OTP 8192x14   368 22      2-8bit/1-16bit/1-WDT USART/I²C/SPI 20 28 √ 2 25 mA     2   0 0 PIC16C662 OTP 4096x14   176 33   2  1-8bit/1-WDT   20 40/44 √   25 mA   √      0 0 PIC16C67 OTP 8192x14   368 33      2-8bit/1-16bit/1-WDT USART/I²C /SPI 20 40/44 √ 2 25 mA     2   0 0 PIC16C71 OTP 1024x14   36 13 4/8    1-8bit/1-WDT   20 18 √   25 mA         0 0 PIC16C710 OTP 512x14   36 13 4/8    1-8bit/1-WDT   20 18/20 √   25 mA         0 0 PIC16C711 OTP 1024x14   68 13 4/8    1-8bit/1-WDT   20 18/20 √   25 mA         

    标签: PIC 单片机 速查

    上传时间: 2013-10-12

    上传用户:xjy441694216

  • P87LPC767 OTP 单片机原理

    P87LPC767 OTP 单片机原理 P87LPC767 是20 脚封装的单片机适合于许多要求高集成度低成本的场合可以满足许多方面的性能要求作为Philips 小型封装系列中的一员P87LPC767 提供高速和低速的晶振和RC 振荡方式可编程选择具有较宽的操作电压范围可编程I/O 口线输出模式选择可选择施密特触发输入LED 驱动输出有内部看门狗定时器P87LPC767 采用80C51 加速处理器结构指令执行速度是标准80C51 MCU 的两倍特性􀂑 操作频率为20MHz 时除乘法和除法指令外加速80C51 指令执行时间为300600ns VDD=4.5 5.5V 时时钟频率可达20MHz VDD=2.7 4.5V 时时钟频率最大为10MHz􀂑 4 通道多路8 位A/D 转换器在振荡器频率fosc=20MHz 时转换时间为9.3μs􀂑 用于数字功能时操作电压范围为2.7 6.0V􀂑 4K 字节OTP 程序存储器128 字节的RAM 32Byte 用户代码区可用来存放序列码及设置参数􀂑 2 个16 位定时/计数器每一个定时器均可设置为溢出时触发相应端口输出􀂑 内含 2 个模拟比较器􀂑 全双工通用异步接收/发送器UART 及I2C 通信接口􀂑 八个键盘中断输入另加2 路外部中断输入􀂑 4 个中断优先级􀂑 看门狗定时器利用片内独立振荡器,无需外接元件,看门狗定时器溢出时间有8 种选择􀂑 低电平复位使用片内上电复位时不需要外接元件􀂑 低电压复位选择预设的两种电压之一复位可在掉电时使系统安全关闭也可将其设置为一个中断源􀂑 振荡器失效检测看门狗定时器具有独立的片内振荡器因此它可用于振荡器的失效检测􀂑 可配置的片内振荡器及其频率范围和RC 振荡器选项(用户通过对EPROM 位编程选择) 选择RC 振荡器时不需外接振荡器件􀂑 可编程 I/O 口输出模式准双向口,开漏输出,上拉和只有输入功能可选择施密特触发输入􀂑 所有口线均有20mA 的驱动能力􀂑 可控制口线输出转换速度以降低EMI,输出最小上升时间约为10ns􀂑 最少 15 个I/O 口,选择片内振荡和片内复位时可多达18 个I/O 口􀂑 如果选择片内振荡及复位时,P87LPC767 仅需要连接电源线和地线􀂑 串行 EPROM 编程允许在线编程2 位EPROM 安全码可防止程序被读出􀂑 空闲和掉电两种省电模式提供从掉电模式中唤醒功能低电平中断输入启动运行典型的掉电电流为1μA􀂑 低功耗 4MHz-20MHz,1.7-10mA@3.3v 100KHz-4MHz,0.044-1.7mA@3.3v 20KHz-100KHz,9-44μA@3.3v􀂑 20 脚DIP 和SO 封装

    标签: P87 767 LPC OTP

    上传时间: 2013-11-06

    上传用户:xcy122677

  • AVR单片机技术原理

    AVR单片机技术原理 AVR单片机介绍   单片机又称单片微控制器,它是把一个计算机系统集成到一个芯片上,概括的讲:一块芯片就成了一台计算机。单片机技术是计算机技术的一个分支,是简易机器人的核心元件。  1997年,由ATMEL公司挪威设计中心的A先生与V先生利用ATMEL公司的Flash新技术, 共同研发出RISC精简指令集的高速8位单片机,简称AVR。[编辑本段]AVR单片机的优势特征  单片机已广泛地应用于军事、工业、家用电器、智能玩具、便携式智能仪表和机器人制作等领域,使产品功能、精度和质量大幅度提升,且电路简单,故障率低,可靠性高,成本低廉。单片机种类很多,在简易机器人制作和创新中,为什么选用AVR单片机呢?  一、简便易学,费用低廉  首先,对于非专业人员来说,选择AVR单片机的最主要原因,是进入AVR单片机开发的门槛非常低,只要会操作电脑就可以学习AVR单片机的开发。单片机初学者只需一条ISP下载线,把编辑、调试通过的软件程序直接在线写入AVR单片机,即可以开发AVR单片机系列中的各种封装的器件。AVR单片机因此在业界号称“一线打天下”。  其次,AVR单片机便于升级。AVR程序写入是直接在电路板上进行程序修改、烧录等操作,这样便于产品升级。  再次,AVR单片机费用低廉。学习AVR单片机可使用ISP在线下载编程方式(即把PC机上编译好的程序写到单片机的程序存储器中),不需购买仿真器、编程器、擦抹器和芯片适配器等,即可进行所有AVR单片机的开发应用,这可节省很多开发费用。程序存储器擦写可达10000次以上,不会产生报废品。  二、高速、低耗、保密  首先,AVR单片机是高速嵌入式单片机:  1、AVR单片机具有预取指令功能,即在执行一条指令时,预先把下一条指令取进来,使得指令可以在一个时钟周期内执行。  2、多累加器型,数据处理速度快。AVR单片机具有32个通用工作寄存器,相当于有32条立交桥,可以快速通行。  3、中断响应速度快。AVR单片机有多个固定中断向量入口地址,可快速响应中断。  其次,AVR单片机耗能低。对于典型功耗情况,WDT关闭时为100nA,更适用于电池供电的应用设备。有的器件最低1.8 V即可工作。  再次,AVR单片机保密性能好。它具有不可破解的位加密锁Lock Bit技术,保密位单元深藏于芯片内部,无法用电子显微镜看到。  三、I/O口功能强,具有A/D转换等电路  1. AVR单片机的I/O口是真正的I/O口,能正确反映I/O口输入/输出的真实情况。工业级产品,具有大电流(灌电流)10~40 mA,可直接驱动可控硅SCR或继电器,节省了外围驱动器件。  2. AVR单片机内带模拟比较器,I/O口可用作A/D转换,可组成廉价的A/D转换器。ATmega48/8/16等器件具有8路10位A/D。  3. 部分AVR单片机可组成零外设元件单片机系统,使该类单片机无外加元器件即可工作,简单方便,成本又低。  4. AVR单片机可重设启动复位,以提高单片机工作的可靠性。有看门狗定时器实行安全保护,可防止程序走乱(飞),提高了产品的抗干扰能力。  四、有功能强大的定时器/计数器及通讯接口  定时/计数器T/C有8位和16位,可用作比较器。计数器外部中断和PWM(也可用作D/A)用于控制输出,某些型号的AVR单片机有3~4个PWM,是作电机无级调速的理想器件。  AVR单片机有串行异步通讯UART接口,不占用定时器和SPI同步传输功能,因其具有高速特性,故可以工作在一般标准整数频率下,而波特率可达576K。

    标签: AVR 单片机技术

    上传时间: 2013-10-18

    上传用户:二十八号

  • PHILIPS单片机选型指南

    PHILIPS单片机选型指南 ★ 80C51体系结构:如果您用过8051内核的单片机就很容易入门;★ 超高速CPU内核:18MHz的LPC900相当于108MHz的传统80C51;2 ★ 丰富的片内外围资源:WDT,UART,I C,SPI, D/A,2 E PROM, RTC,A/D,比较器,CCU,掉电检测等;★ 内置高精度RC振荡器:标称频率7.3728MHz,精度可达1%;★ 超小型TSSOP封装(另有DIP、PLCC封装),能最大限度节省电路板面积;★ 超低功耗:支持低速晶振,3级省电模式,典型掉电电流仅1μA;★ 在线ICP编程,仅需引出5根线(VCC, GND, RST,P0.4, P0.5);★ Flash存储器:容量1~16KB,具有ISP、IAP功能,2 可以当作E PROM使用;★ 工业级产品,抗干扰能力强,操作电压2.4~3.6V,管脚数8~44,I/O可兼容5V逻辑。

    标签: PHILIPS 单片机 选型指南

    上传时间: 2013-11-12

    上传用户:rlgl123

  • AVR单片机与GCC编程

    AVR 单片机与GCC编程 目录第一章 AVR 单片机开发概述1.1 一个简简单的例子1.2 用MAKEFILE 管理项目1.3 开发环境的配置第二章 存储器操作2.1 AVR 单片机存储器组织结构2.2 I/O 寄存器操作2.3 SRAM 内变量的使用2.4 在程序中访问FLASH 程序存储器2.5 EEPROM 数据存储器操作2.6 avr-gcc 段结构与再定位第三章 功能模块编程示例3.1 中断服务程序3.2 定时器/计数器应用3.3 看门狗应用3.4 UART 应用3.5 PWM 功能编程3.6 模拟比较器3.7 A/D 转换模块编程第四章 使用C 语言标准I/O 流调试程序4.1 avr-libc 标准I/O 流描述4.2 利用标准I/0 流调试程序第五章 AT89S52 下载编程器的制作5.1 LuckyProg S52 概述5.2 AT89S52 ISP 功能简介5.3 程序设计第六章 硬件TWI 端口编程6.1 TWI 模块概述6.2 主控模式操作实时时钟DS13076.3 两个Mega8 间的TWI 通信第七章 BootLoader 功能应用7.1 BootLoader 功能介绍7.2 avr-libc 对BootLoader 的支持7.3 BootLoader 应用实例 第八章 汇编语言支持8.1 C 代码中内联汇编程序8.2 独立的汇编语言支持8.3 C 与汇编混合编程第九章 C++语言支持结束语附录 1 avr-gcc 选项附录 2 ihex 格式描述

    标签: AVR GCC 单片机 编程

    上传时间: 2013-10-26

    上传用户:wangyi39

  • P89LPC901实现ADC DAC及UART通信

    LPC900 系列单片机由于其功能强大,性能稳定一直深受用户欢迎。P89LPC901 是LPC900 系列单片机的一员,性价比极高,为SO8/DIP8 封装,内含1KB FLASH,支持ICP,且具有6 个I/O 口、4 个TIMER、1 路PWM 输出、模拟比较器、键盘中断等众多功能部件。本文利用LPC901 单片机的强大功能实现ADC/DAC,并且通过模拟UART 与PC 机进行通信;通过PC 端软件可以显示DA 转换结果及控制DA 输出电压。

    标签: UART P89 LPC 901

    上传时间: 2013-11-06

    上传用户:shus521

  • AVR单片机GCC程序设计

    AVR单片机GCC程序设计:第一章 概述1.1 AVR 单片机GCC 开发概述1.2 一个简单的例子1.3 用MAKEFILE 管理项目1.4 开发环境的配置1.5 实验板CA-M8第二章 存储器操作编程2.1 AVR 单片机存储器组织结构2.2 I/O 寄存器操作2.3 SRAM 内变量的使用2.4 在程序中访问FLASH 程序存储器2.5 EEPROM 数据存储器操作2.6 avr-gcc 段结构与再定位2.7 外部RAM 存储器操作2.8 堆应用第三章 GCC C 编译器的使用3.1 编译基础3.2 生成静态连接库第四章 AVR 功能模块应用实验4.1 中断服务程序4.2 定时器/计数器应用4.3 看门狗应用4.4 UART 应用4.5 PWM 功能编程4.6 模拟比较器4.7 A/D 转换模块编程4.8 数码管显示程序设计4.9 键盘程序设计4.10 蜂鸣器控制第五章 使用C 语言标准I/O 流调试程序5.1 avr-libc 标准I/O 流描述5.2 利用标准I/0 流调试程序5.3 最小化的格式化的打印函数第六章 CA-M8 上实现AT89S52 编程器的实现6.1 编程原理6.2 LuckyProg2004 概述6.3 AT989S52 isp 功能简介6.4 下位机程序设计第七章 硬件TWI 端口编程7.1 TWI 模块概述7.2 主控模式操作实时时钟DS13077.3 两个Mega8 间的TWI 通信第八章 BootLoader 功能应用8.1 BootLoader 功能介绍8.2 avr-libc 对BootLoader 的支持8.3 BootLoader 应用实例8.4 基于LuckyProg2004 的BootLoader 程序第九章 汇编语言支持9.1 C 代码中内联汇编程序9.2 独立的汇编语言支持9.3 C 与汇编混合编程第十章 C++语言支持附录 1 avr-gcc 选项附录 2 Intel HEX 文件格式描述

    标签: AVR GCC 单片机

    上传时间: 2014-04-03

    上传用户:ligi201200

  • 基于单片机的红外门进控制系统设计与制作(含源程序和原理图)

    基于单片机的红外门进控制系统设计与制作:我们所做的创新实验项目“基于单片机的红外门控系统”已基本完成,现将其工作原理简要说明。该系统主要分为两大部分:一是红外传感器部分。二是单片机计数显示控制部分。基本电路图如下:其中红外传感器部分我们采用红外对管实现,红外对管平行放置,平常处于接收状态,经比较器输出低电平,当有人经过时,红外线被挡住,接收管接收不到红外线,经比较器输出高电平。这样,当有人经过时便会产生一个电平的跳变。单片机控制部分主要是通过外部两个中断判断是否有人经过,如果有人经过,由于电平跳变的产生,进入中断服务程序,这里我们采用了两对红外传感器接到两个外部中断口,中断0作为入口,实现加1操作,中断1作为出口,实现减1操作。另外,我们通过P0口控制室内灯的亮暗,当寄存器计数值为0时,熄灯,不为0时,灯亮。显示部分,采用两位数码管动态显示,如有必要,可以很方便的扩展为四位计数。精益求精!在实验过程中,我们走了非常多的弯路,做出来的东西根本不是自己想要的,我们本想做成室内只有一个门的进出计数,原理已清楚,即在门的两边放置两对红外对管,进出时,挡住两对对管的顺序不同,因此,可判断是进入还是出去,从而实现加减计数,编程时,可分别在两个中断服务程序的入口置标志位,根据标志位判断进出,详细内容在程序部分。理论如此,但在实际过程中,还是发现实现不了上述功能,我们初步判定认为是程序掌握得不够好,相信随着自己对单片机了解的深入,应该会做出更好的 (因为我们是临时学的单片机),程序的具体内容如下: $MOD52    ORG   0000H         LJMP  MAIN         ORG   0003H         LJMP  0100H         ORG   0013H         LJMP  0150H         ORG   0050HMAIN:    CLR   A         MOV   30H , A           ;初始化缓存区         MOV   31H , A         MOV   32H , A         MOV   33H , A         MOV   R6  , A         MOV   R7  , A  SETB  EA  SETB  EX0  SETB  EX1  SETB  IT0  SETB  IT1  SETB  PX1NEXT1:   ACALL HEXTOBCDD        ;调用数制转换子程序         ACALL DISPLAY          ;调用显示子程序         LJMP  NEXT1          ORG   0100H  ;中断0服务程序 LCALL  DELY mov 70h,#2 djnz 70h,next JBC  F0,NEXT         SETB F0        CLR P0.0 LCALL  DELY0 SETB   P0.0                  MOV   A , R7   ADD   A , #1   MOV   R7, A   MOV   A , R6         ADDC  A , #0  MOV   R6 , A  CJNE  R6 , #07H , NEXT  CLR   A  MOV   R6 , A  MOV   R7 , ANEXT:  RETI  ORG   0150H    ;中断1服务程序 LCALL  DELY mov 70h,#2 djnz 70h,next2 JBC  F0,NEXT2 SETB  F0 CLR P0.0 LCALL  DELY0 SETB   P0.0    CLR C                     MOV   A , R7   SUBB   A , #1  MOV   R7, A  MOV   A , R6   SUBB  A , #0  MOV   R6 , A  CJNE  R6 , #07H , NEXT2  CLR   A  MOV   R6 , A  MOV   R7 , ANEXT2:  RETI   ORG   0200HHEXTOBCDD:MOV  A , R6               ;由十六进制转化为十进制         PUSH  ACC         MOV   A , R7         PUSH  ACC  MOV   A , R2         PUSH  ACC  CLR   A         MOV   R3 , A  MOV   R4 , A  MOV   R5 , A  MOV   R2 , #10HHB3:     MOV   A  , R7              ;将十六进制中最高位移入进位位中         RLC   A  MOV   R7 , A  MOV   A  , R6  RLC   A  MOV   R6 , A  MOV   A  , R5              ;每位数加上本身相当于将这个数乘以2  ADDC  A  , R5  DA    A  MOV   R5 , A  MOV   A  , R4  ADDC  A  , R4  DA    A                   ;十进制调整  MOV   R4 , A  MOV   A  , R3  ADDC  A  , R3  DJNZ  R2 , HB3  POP   ACC   MOV   R2 , A  POP   ACC   MOV   R7 , A  POP   ACC  MOV   R6 , A  RET  ORG   0250HDISPLAY:  MOV   R0 , #30H         MOV   A  , R5  ANL   A  , #0FH  MOV   @R0 , A  MOV   A  , R5  SWAP  A  ANL   A  , #0FH  INC   R0  MOV   @R0 , A  MOV   A  , R4  ANL   A , #0FH  INC   R0  MOV   @R0 , A  MOV   A   , R4  SWAP  A  ANL   A  , #0FH  INC   R0  MOV   @R0 , A  MOV   R0 , #30H  MOV   R2 , #11111110BAGAIN:   MOV   A  , R2         MOV   P2 , A         MOV   A  , @R0  MOV   DPTR , #TAB  MOVC  A  , @A+DPTR  MOV   P1 , A  ACALL DELAY  INC   R0  MOV   A  , R2  RL    A  MOV   R2 , A  JB    ACC.4  , AGAIN   RETTAB:     DB    03FH , 06H , 5BH , 4FH , 66H , 6DH , 7DH , 07H , 7FH , 6FH   ;七段码表DELY:    MOV   R1,#80D1:        MOV    R2,#100             DJNZ   R2,$ DJNZ    R1,D1 RET DELAY:   MOV   TMOD , #01H           ;延时子程序         MOV   TL0  , #0FEH         MOV   TH0  , #0FEH  SETB  TR0WAIT:    JNB   TF0  , WAIT         CLR   TF0  CLR   TR0  RETDELY0:   MOV  R1,  #200D3:  MOV  R2,#250          DJNZ  R2,$  DJNZ  R1,D3    RET          END       该系统实际应用广泛。可用在生产线上产品数量统计、公交车智能计数问候(需添加语音芯片)、超市内人数统计等公共场合。另外,添加串口通信部分便可实现与PC数据交换的功能。   由于,实验简化了,剩下不少零件和资金,所以我们又做了两项其他的实验。

    标签: 单片机 红外 控制系统设计 原理图

    上传时间: 2013-12-22

    上传用户:tangsiyun