摘要:以单片机89C51 为核心设计了一种频率计。在设计中应用单片机的数学运算和控制功能,实现了测量量程的自动切换,既满足测量精度的要求,又满足系统反应时间的要求。关键词:频率测量;单片机;数据处理 频率计由单片机89C51 、信号予处理电路、串行通信电路、测量数据显示电路和系统软件所组成,其中信号予处理电路包含待测信号放大、波形变换、波形整形和分频电路。系统硬件框图如图1 所示。信号予处理电路中的放大器实现对待测信号的放大,降低对待测信号的幅度要求;波形变换和波形整形电路实现把正弦波样的正负交替的信号波形变换成可被单片机接受的TTL/ CMOS 兼容信号;分频电路用于扩展单片机的频率测量范围并实现单片机频率测量和周期测量使用统一的输入信号。
上传时间: 2013-10-16
上传用户:几何公差
AVR高速嵌入式单片机原理与应用(修订版)详细介绍ATMEL公司开发的AVR高速嵌入式单片机的结构;讲述AVR单片机的开发工具和集成开发环境(IDE),包括Studio调试工具、AVR单片机汇编器和单片机串行下载编程;学习指令系统时,每条指令均有实例,边学习边调试,使学习者看得见指令流向及操作结果,真正理解每条指令的功能及使用注意事项;介绍AVR系列多种单片机功能特点、实用程序设计及应用实例;作为提高篇,讲述简单易学、适用AVR单片机的高级语言BASCOMAVR及ICC AVR C编译器。 AVR高速嵌入式单片机原理与应用(修订版) 目录 第一章ATMEL单片机简介1.1ATMEL公司产品的特点11.2AT90系列单片机简介21.3AT91M系列单片机简介2第二章AVR单片机系统结构2.1AVR单片机总体结构42.2AVR单片机中央处理器CPU62.2.1结构概述72.2.2通用寄存器堆92.2.3X、Y、Z寄存器92.2.4ALU运算逻辑单元92.3AVR单片机存储器组织102.3.1可下载的Flash程序存储器102.3.2内部和外部的SRAM数据存储器102.3.3EEPROM数据存储器112.3.4存储器访问和指令执行时序112.3.5I/O存储器132.4AVR单片机系统复位162.4.1复位源172.4.2加电复位182.4.3外部复位192.4.4看门狗复位192.5AVR单片机中断系统202.5.1中断处理202.5.2外部中断232.5.3中断应答时间232.5.4MCU控制寄存器 MCUCR232.6AVR单片机的省电方式242.6.1休眠状态242.6.2空闲模式242.6.3掉电模式252.7AVR单片机定时器/计数器252.7.1定时器/计数器预定比例器252.7.28位定时器/计数器0252.7.316位定时器/计数器1272.7.4看门狗定时器332.8AVR单片机EEPROM读/写访问342.9AVR单片机串行接口352.9.1同步串行接口 SPI352.9.2通用串行接口 UART402.10AVR单片机模拟比较器452.10.1模拟比较器452.10.2模拟比较器控制和状态寄存器ACSR462.11AVR单片机I/O端口472.11.1端口A472.11.2端口 B482.11.3端口 C542.11.4端口 D552.12AVR单片机存储器编程612.12.1编程存储器锁定位612.12.2熔断位612.12.3芯片代码612.12.4编程 Flash和 EEPROM612.12.5并行编程622.12.6串行下载662.12.7可编程特性67第三章AVR单片机开发工具3.1AVR实时在线仿真器ICE200693.2JTAG ICE仿真器693.3AVR嵌入式单片机开发下载实验器SL?AVR703.4AVR集成开发环境(IDE)753.4.1AVR Assembler编译器753.4.2AVR Studio773.4.3AVR Prog783.5SL?AVR系列组态开发实验系统793.6SL?AVR*.ASM源文件说明81第四章AVR单片机指令系统4.1指令格式844.1.1汇编指令844.1.2汇编器伪指令844.1.3表达式874.2寻址方式894.3数据操作和指令类型924.3.1数据操作924.3.2指令类型924.3.3指令集名词924.4算术和逻辑指令934.4.1加法指令934.4.2减法指令974.4.3乘法指令1014.4.4取反码指令1014.4.5取补指令1024.4.6比较指令1034.4.7逻辑与指令1054.4.8逻辑或指令1074.4.9逻辑异或指令1104.5转移指令1114.5.1无条件转移指令1114.5.2条件转移指令1144.6数据传送指令1354.6.1直接数据传送指令1354.6.2间接数据传送指令1374.6.3从程序存储器直接取数据指令1444.6.4I/O口数据传送指令1454.6.5堆栈操作指令1464.7位指令和位测试指令1474.7.1带进位逻辑操作指令1474.7.2位变量传送指令1514.7.3位变量修改指令1524.7.4其它指令1614.8新增指令(新器件)1624.8.1EICALL-- 延长间接调用子程序1624.8.2EIJMP--扩展间接跳转1634.8.3ELPM--扩展装载程序存储器1644.8.4ESPM--扩展存储程序存储器1644.8.5FMUL--小数乘法1664.8.6FMULS--有符号数乘法1664.8.7FMULSU--有符号小数和无符号小数乘法1674.8.8MOVW--拷贝寄存器字1684.8.9MULS--有符号数乘法1694.8.10MULSU--有符号数与无符号数乘法1694.8.11SPM--存储程序存储器170 第五章AVR单片机AT90系列5.1AT90S12001725.1.1特点1725.1.2描述1735.1.3引脚配置1745.1.4结构纵览1755.2AT90S23131835.2.1特点1835.2.2描述1845.2.3引脚配置1855.3ATmega8/8L1855.3.1特点1865.3.2描述1875.3.3引脚配置1895.3.4开发实验工具1905.4AT90S2333/44331915.4.1特点1915.4.2描述1925.4.3引脚配置1945.5AT90S4414/85151955.5.1特点1955.5.2AT90S4414和AT90S8515的比较1965.5.3引脚配置1965.6AT90S4434/85351975.6.1特点1975.6.2描述1985.6.3AT90S4434和AT90S8535的比较1985.6.4引脚配置2005.6.5AVR RISC结构2015.6.6定时器/计数器2125.6.7看门狗定时器 2175.6.8EEPROM读/写2175.6.9串行外设接口SPI2175.6.10通用串行接口UART2175.6.11模拟比较器 2175.6.12模数转换器2185.6.13I/O端口2235.7ATmega83/1632285.7.1特点2285.7.2描述2295.7.3ATmega83与ATmega163的比较2315.7.4引脚配置2315.8ATtiny10/11/122325.8.1特点2325.8.2描述2335.8.3引脚配置2355.9ATtiny15/L2375.9.1特点2375.9.2描述2375.9.3引脚配置2395 .10ATmega128/128L2395.10.1特点2405.10.2描述2415.10.3引脚配置2435.10.4开发实验工具2455.11ATmega1612465.11.1特点2465.11.2描述2475.11.3引脚配置2475.12AVR单片机替代MCS51单片机249第六章实用程序设计6.1程序设计方法2506.1.1程序设计步骤2506.1.2程序设计技术2506.2应用程序举例2516.2.1内部寄存器和位定义文件2516.2.2访问内部 EEPROM2546.2.3数据块传送2546.2.4乘法和除法运算应用一2556.2.5乘法和除法运算应用二2556.2.616位运算2556.2.7BCD运算2556.2.8冒泡分类算法2556.2.9设置和使用模拟比较器2556.2.10半双工中断方式UART应用一2556.2.11半双工中断方式UART应用二2566.2.128位精度A/D转换器2566.2.13装载程序存储器2566.2.14安装和使用相同模拟比较器2566.2.15CRC程序存储的检查2566.2.164×4键区休眠触发方式2576.2.17多工法驱动LED和4×4键区扫描2576.2.18I2C总线2576.2.19I2C工作2586.2.20SPI软件2586.2.21验证SLAVR实验器及AT90S1200的口功能12596.2.22验证SLAVR实验器及AT90S1200的口功能22596.2.23验证SLAVR实验器及具有DIP40封装的口功能第七章AVR单片机的应用7.1通用延时子程序2607.2简单I/O口输出实验2667.2.1SLAVR721.ASM 2667.2.2SLAVR722.ASM2677.2.3SLAVR723.ASM2687.2.4SLAVR724.ASM2707.2.5SLAVR725.ASM2717.2.6SLAVR726.ASM2727.2.7SLAVR727.ASM2737.3综合程序2747.3.1LED/LCD/键盘扫描综合程序2747.3.2LED键盘扫描综合程序2757.3.3在LED上实现字符8的循环移位显示程序2757.3.4电脑放音机2777.3.5键盘扫描程序2857.3.6十进制计数显示2867.3.7廉价的A/D转换器2897.3.8高精度廉价的A/D转换器2947.3.9星星灯2977.3.10按钮猜数程序2987.3.11汉字的输入3047.4复杂实用程序3067.4.110位A/D转换3067.4.2步进电机控制程序3097.4.3测脉冲宽度3127.4.4LCD显示8字循环3187.4.5LED电脑时钟3247.4.6测频率3307.4.7测转速3327.4.8AT90S8535的A/D转换334第八章BASCOMAVR的应用8.1基于高级语言BASCOMAVR的单片机开发平台3408.2BASCOMAVR软件平台的安装与使用3418.3AVR I/O口的应用3458.3.1LED发光二极管的控制3458.3.2简易手控广告灯3468.3.3简易电脑音乐放音机3478.4LCD显示器3498.4.1标准LCD显示器的应用3498.4.2简单游戏机--按钮猜数3518.5串口通信UART3528.5.1AVR系统与PC的简易通信3538.5.2PC控制的简易广告灯3548.6单总线接口和温度计3568.7I2C总线接口和简易IC卡读写器359第九章ICC AVR C编译器的使用9.1ICC AVR的概述3659.1.1介绍ImageCraft的ICC AVR3659.1.2ICC AVR中的文件类型及其扩展名3659.1.3附注和扩充3669.2ImageCraft的ICC AVR编译器安装3679.2.1安装SETUP.EXE程序3679.2.2对安装完成的软件进行注册3679.3ICC AVR导游3689.3.1起步3689.3.2C程序的剖析3699.4ICC AVR的IDE环境3709.4.1编译一个单独的文件3709.4.2创建一个新的工程3709.4.3工程管理3719.4.4编辑窗口3719.4.5应用构筑向导3719.4.6状态窗口3719.4.7终端仿真3719.5C库函数与启动文件3729.5.1启动文件3729.5.2常用库函数3729.5.3字符类型库3739.5.4浮点运算库3749.5.5标准输入/输出库3759.5.6标准库和内存分配函数3769.5.7字符串函数3779.5.8变量参数函数3799.5.9堆栈检查函数3799.6AVR硬件访问的编程3809.6.1访问AVR的底层硬件3809.6.2位操作3809.6.3程序存储器和常量数据3819.6.4字符串3829.6.5堆栈3839.6.6在线汇编3839.6.7I/O寄存器3849.6.8绝对内存地址3849.6.9C任务3859.6.10中断操作3869.6.11访问UART3879.6.12访问EEPROM3879.6.13访问SPI3889.6.14相对转移/调用的地址范围3889.6.15C的运行结构3889.6.16汇编界面和调用规则3899.6.17函数返回非整型值3909.6.18程序和数据区的使用3909.6.19编程区域3919.6.20调试3919.7应用举例*3929.7.1读/写口3929.7.2延时函数3929.7.3读/写EEPROM3929.7.4AVR的PB口变速移位3939.7.5音符声程序3939.7.68字循环移位显示程序3949.7.7锯齿波程序3959.7.8正三角波程序3969.7.9梯形波程序396附录1AT89系列单片机简介398附录2AT94K系列现场可编程系统标准集成电路401附录3指令集综合404附录4AVR单片机选型表408参 考 文 献412
上传时间: 2013-11-08
上传用户:xcy122677
单片机应用技术选编(3) 目录 第一章 单片机的综合应用技术1.1 8098单片机存储器的扩展技术1.2 87C196KC单片机的DMA功能1.3 MCS?96系列单片机高精度接口设计1.4 利用PC机的8096软件开发系统1.5 EPROM模拟器及其应用1.6 MCS?51智能反汇编软件的设计与实现1.7 MCS?51系列软件设计与调试中一个值得注意的问题1.8 PL/M语言在微机开发系统中的应用特性1.9 MCS?51单片机开发系统中的断点产生1.10 C语言实型数与单片机浮点数之间数据格式的转换1.11 微机控制系统初始化问题探讨1.12 MCS?51中断系统中的复位问题1.13 工业控制软件的编程原则与编程技巧1.14 CMOS微处理器的功耗特性及其功耗控制原理和应用1.15 基于PLL技术的A/D、D/A转换器的设计1.16 智能仪器监控程序的模块化设计1.17 用软件逻辑开关实现单片机的地址重叠使用1.18 8259A可编程中断控制器与8031单片机接口电路及编程1.19 NSC810及其在各种微处理机中的应用1.20 MC146818在使用中的几个问题1.21 交流伺服系统中采用8155兼作双口信箱存储器的双微机结构1.22 实用汉字库芯片的制作 第二章 新一代存储器及逻辑器件2.1 新一代非易失性记忆元件--闪烁存储器2.2 Flash存储器及应用2.3 随机静态存储器HM628128及应用2.4 非挥发性随机存储器NOVRAM2.5 ASIC的设计方法和设计工具2.6 GAL器件的编程方法及其应用2.7 第三代可编程逻辑器件--高密EPLD辑器件EPLDFPGA设计转换 第三章 数据采集、前向通道与测量技术 3.1 温度传感器通道接口技术 3.2 LM135系列精密温度传感器的原理和应用 3.3 仪表放大器AD626的应用 3.4 5G7650使用中应注意的问题 3.5 用集成运算放大器构成电荷放大器组件 3.6 普通光电耦合器的线性应用 3.7 高线性光耦合型隔离放大器的研制 3.8 一种隔离型16位单片机高精度模拟量接口3.9 单片16位A/D转换器AD7701及其与8031单片机的串行接口3.10 双积分型A/D转换器与MCS?51系列单片机接口的新方法3.11 8031单片机与AD574A/D转换器的最简接口3.12 8098单片机A/D转换接口及其程序设计3.13 提高A/D转换器分辨率的实用方案3.14 用CD4051提高8098单片机内10位A/D转换器分辨率的方法3.15 单片机实现16位高速积分式A/D转换器3.16 434位A/D转换器MAX133(134)的原理及应用3.17 AD574A应用中应注意的问题 3.18 CC14433使用中应注意的问题 3.19 高精度宽范围数据采集系统的温度补偿途径 3.20 缩短ICL7135A/D采样程序时间的一种方法 3.21 用单片机实现的数字式自动增益控制 3.22 自动量程转换电路 3.23 双积分型A/D的自动量程切换电路 3.24 常用双积分型A/D转换器自换程功能的扩展3.25 具有自动量程转换功能的单片机A/D接口3.26 混合型数据采集器SDM857的功能与应用3.27 高速数据采集系统的传输接口3.28 SJ2000方向鉴别位移脉宽频率检测多用途专用集成电路3.29 多路高速高精度F/D专用集成电路3.30 数控带通滤波器的实现及其典型应用 第四章 控制系统与后向通道接口技术4.1 模糊逻辑与模糊控制4.2 自动控制技术的新发展--模糊控制技术4.3 模糊控制表的确定原则4.4 变结构模糊控制系统的实验研究4.5 新型集成模糊数据相关器NLX1124.6 功率固态继电器的应用4.7 双向功率MOS固态继电器4.8 SSR小型固态继电器与PSSR功率参数固态继电器4.9 JGD型多功能固态继电器的原理和应用4.10 光电耦合器在晶闸管触发电路中的应用4.11 一种廉价的12位D/A转换器AD667及接口4.12 利用单片机构成高精度PWM式12位D/A4.13 三相高频PWM模块SLE45204.14 专用集成电路TCA785及其应用4.15 单片温度控制器LM3911的应用4.16 工业测控系统软件设计的若干问题研究 第五章 人机对话通道接口技术5.1 廉价实用的8×8键盘5.2 单片机遥控键盘接口5.3 对8279键盘显示接口的改进5.4 用单片机8031的七根I/O线实现对键盘与显示器的控制5.5 通用8位LED数码管驱动电路ICM7218B5.6 利用条图显示驱动器LM3914组成100段LED显示器的方法5.7 液晶显示器的多极驱动方式5.8 点阵式液晶显示屏的构造与应用5.9 点阵式液晶显示器图形程序设计5.10 DMF5001N点阵式液晶显示器和8098单片机的接口技术5.11 8098单片机与液晶显示控制器HD61830接口5.12 利用PL/M语言对点阵式液晶显示器进行汉字程序设计5.13 语音合成器TMS 5220的开发与应用5.14 制作T6668语音系统的一些技术问题5.15 单片机、单板机在屏显系统中的应用 第六章 多机通讯网络与遥控技术6.1 用双UART构成的可寻址遥测点装置--兼谈如何组成系统6.2 IBM?PC微机与8098单片机的多机通讯6.3 80C196单片机与IBM?PC机的串行通讯6.4 IBM?PC与MCS?51多机通讯的研究6.5 半双工方式传送的单片机多机通信接口电路及软件设计6.6 单片机与IBM/PC机通讯的新型接口及编程6.7 用光耦实现一点对多点的总线式通讯电路6.8 用EPROM作为通讯变换器实现多机通讯6.9 ICL232单电源双RS?232发送/接收器及其应用6.10 DTMF信号发送/接收电路芯片MT8880及应用6.11 通用红外线遥控系统6.12 8031单片机在遥控解码方面的应用 第七章 电源、电压变换及电源监视7.1 用于微机控制系统的高可靠性供电方法7.2 80C31单片机防掉电和抗干扰电源的设计7.3 可编程基准电压源7.4 电源电压监视器件M81953B7.5 检出电压可任意设定的电源电压监测器7.6 低压降(LDO?Low Drop?Out)稳压器7.7 LM317三端可调稳压器应用二例7.8 三端集成稳压器的扩流应用 第八章 可靠性与抗干扰技术8.1 数字电路的可靠性设计实践与体会8.2 单片机容错系统的设计与实现8.3 微机测控系统的接地、屏蔽和电源供给8.4 ATE的抗干扰及接地技术8.5 微处理器监控电路MAX690A/MAX692A8.6 电测仪表电路的实用抗干扰技术8.7 工业镀锌电阻炉温度控制机的抗干扰措施8.8 一种简单的抗干扰控制算法 ? 第九章 综合应用实例9.1 蔬菜灌溉相关参数的自动检测9.2 MH?214溶解氧测定仪9.3 COP840C单片机在液晶线控空调电脑控制器中的应用9.4 单片机在电饭煲中的应用9.5 用PIC单片机制作电扇自然风发生器 第十章 文章摘要 一、 单片机的综合应用技术1.1 摩托罗拉8位单片机的应用和开发1.2 NS公司的COP800系列8位单片机1.3 M68HC11与MCS?51单片机功能比较1.4 8098单片机8M存储空间的扩展技术1.5 80C196KC单片机的外部设备事件服务器1.6 一种多进程实时控制系统的软件设计1.7 开发单片机的结构化高级语言PL/M?961.8 应用软件开发中的菜单接口技术1.9 单片机用户系统EPROM中用户程序的剖析方法1.10 BJS?98硬件、软件典型实验1.11 FORTH语言系统的开发应用1.12 在Transputer系统上用并行C语言编程的特点1.13 一种软件扩展8031内部计数器简易方法1.14 MCS 51系列单片机功能测试方法研究1.15 用CD 4520B设计对称输出分频器的方法1.16 多路模拟开关CC 4051功能扩展方法1.17 条形码技术及其应用系统的设计与实现? 二、 新一代存储器及逻辑器件2.1 一种多功能存储器M6M 72561J2.2 串行E2PROM及其在智能仪器中的应用2.3 新型高性能的AT24C系列串行E2PROM2.4 2K~512K EPROM编程卡2.5 电子盘的设计与实现2.6 NS GAL器件的封装标签、类型代码和编程结构间的关系 三、数据采集、前向通道与测量技术3.1 仪器用精密运放CA3193的应用3.2 集成电压?电流转换器XTR100的应用3.3 瞬时浮点放大器及应用3.4 隔离放大器289J及其应用3.5 ICS?300系列新型加速度传感器3.6 一种实用的压力传感器接口电路3.7 霍尔传感器的应用3.8 一种对多个传感器进行调理的方法3.9 两线制压力变送器3.10 小信号双线变送器XTR101的使用3.11 两线长距离频率传输压力变送器的设计3.12 测温元件AD590及其应用3.13 热敏电阻应用动态3.14 一种组合式A/D、D/A转换器的设计3.15 一种复合式A/D转换器3.16 TLC549串行输出ADC及其应用3.17 提高A/D转换精度的方法--双通道A/D转换3.18 模数转换器ICL7135的0~3.9999V显示3.19 微型光耦合器3.20 一种高精度的分压器电路3.21 利用单片机软件作热电偶非线性补偿3.22 三线制RTD测量电路及应用中要注意的问题3.23 微伏信号高精度检测中极易被忽略的问题3.24 宽范围等分辨率精密测量法3.25 传感器在线校准系统3.26 一种高精度的热敏电阻测温电路3.27 超声波专用集成电路LM1812的原理与应用3.28 旋转变压器数字化检测及其在8098单片机控制伺服系统中的应用3.29 单片集成两端式感温电流源AD590在温度测控系统中的应用?3.30 数字示波器和单片机构成的自动测试系统3.31 霍尔效应式功率测量研究 四、 控制系统与后向通道接口技术4.1 模糊逻辑与模糊控制(实用模糊控制讲座之一)4.2 红绿灯模糊控制器(实用模糊控制讲座之二)4.3 国外模糊技术新产品4.4 交流串级调速双环模糊PI单片机控制系统4.5 时序控制专用集成电路LT156及其应用4.6 电池充电控制集成电路4.7 双向晶闸管4.8 双向可控硅的自触发电路及其应用4.9 微处理器晶闸管频率自适应触发器4.10 F18系列晶闸管模块介绍4.11 集成电路UAA4002的原理及应用4.12 IGBT及其驱动电路4.13 TWH8751应用集锦4.14 结构可变式计算机工业控制系统设计4.15 单片机控制的音响编辑器 五、 人机对话通道接口技术5.1 5×7点阵LED智能显示器的应用5.2 基于8031串行口的LED电子广告牌5.3 点阵液晶显示控制器与计算机的接口技术5.4 单片机控制可编程液晶显示系统5.5 大规模语言集成电路应用综述5.6 最新可编程语言集成电路MSSIO61的应用5.7 用PC打印机接口扩展并行接口 六、 多机系统、网络与遥控技术6.1 用8098单片机构成的分布式测温系统6.2 平衡接口EIA?422和EIA485设计指南6.3 I2C BUS及其系统设计6.4 摩托罗拉可寻址异步接受/发送器6.5 用5V供电的RS232C接口芯片6.6 四通道红外遥控器6.7 TA7333P和TA7657P的功能及应用 七、 电源、电压变换及电源监视7.1 单片机控制的可控硅三相电源调压稳压技术7.2 集成开关电源控制器MC34063的原理及应用7.3 LM299精密基准电压源7.4 集成过压保护器的应用7.5 3V供电的革命7.6 HMOS微机的超低电源电压运行技术 八、 可靠性与抗干扰设计8.1 浅谈舰船电磁兼容与可靠性 九、 综合应用实例9.1 8098单片机交流电气参数测试系统的设计和应用9.2 主轴回转误差补偿控制器9.3 FWK?A型大功率发射台微机控制系统9.4 高性能压控振荡型精密波形发生器ICL8038及应用9.5 单片机COP 840C在洗碗机中的应用
上传时间: 2013-11-10
上传用户:lijinchuan
九.输入/输出保护为了支持多任务,80386不仅要有效地实现任务隔离,而且还要有效地控制各任务的输入/输出,避免输入/输出冲突。本文将介绍输入输出保护。 这里下载本文源代码。 <一>输入/输出保护80386采用I/O特权级IPOL和I/O许可位图的方法来控制输入/输出,实现输入/输出保护。 1.I/O敏感指令输入输出特权级(I/O Privilege Level)规定了可以执行所有与I/O相关的指令和访问I/O空间中所有地址的最外层特权级。IOPL的值在如下图所示的标志寄存器中。 标 志寄存器 BIT31—BIT18 BIT17 BIT16 BIT15 BIT14 BIT13—BIT12 BIT11 BIT10 BIT9 BIT8 BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 00000000000000 VM RF 0 NT IOPL OF DF IF TF SF ZF 0 AF 0 PF 1 CF I/O许可位图规定了I/O空间中的哪些地址可以由在任何特权级执行的程序所访问。I/O许可位图在任务状态段TSS中。 I/O敏感指令 指令 功能 保护方式下的执行条件 CLI 清除EFLAGS中的IF位 CPL<=IOPL STI 设置EFLAGS中的IF位 CPL<=IOPL IN 从I/O地址读出数据 CPL<=IOPL或I/O位图许可 INS 从I/O地址读出字符串 CPL<=IOPL或I/O位图许可 OUT 向I/O地址写数据 CPL<=IOPL或I/O位图许可 OUTS 向I/O地址写字符串 CPL<=IOPL或I/O位图许可 上表所列指令称为I/O敏感指令,由于这些指令与I/O有关,并且只有在满足所列条件时才可以执行,所以把它们称为I/O敏感指令。从表中可见,当前特权级不在I/O特权级外层时,可以正常执行所列的全部I/O敏感指令;当特权级在I/O特权级外层时,执行CLI和STI指令将引起通用保护异常,而其它四条指令是否能够被执行要根据访问的I/O地址及I/O许可位图情况而定(在下面论述),如果条件不满足而执行,那么将引起出错码为0的通用保护异常。 由于每个任务使用各自的EFLAGS值和拥有自己的TSS,所以每个任务可以有不同的IOPL,并且可以定义不同的I/O许可位图。注意,这些I/O敏感指令在实模式下总是可执行的。 2.I/O许可位图如果只用IOPL限制I/O指令的执行是很不方便的,不能满足实际要求需要。因为这样做会使得在特权级3执行的应用程序要么可访问所有I/O地址,要么不可访问所有I/O地址。实际需要与此刚好相反,只允许任务甲的应用程序访问部分I/O地址,只允许任务乙的应用程序访问另一部分I/O地址,以避免任务甲和任务乙在访问I/O地址时发生冲突,从而避免任务甲和任务乙使用使用独享设备时发生冲突。 因此,在IOPL的基础上又采用了I/O许可位图。I/O许可位图由二进制位串组成。位串中的每一位依次对应一个I/O地址,位串的第0位对应I/O地址0,位串的第n位对应I/O地址n。如果位串中的第位为0,那么对应的I/O地址m可以由在任何特权级执行的程序访问;否则对应的I/O地址m只能由在IOPL特权级或更内层特权级执行的程序访问。如果在I/O外层特权级执行的程序访问位串中位值为1的位所对应的I/O地址,那么将引起通用保护异常。 I/O地址空间按字节进行编址。一条I/O指令最多可涉及四个I/O地址。在需要根据I/O位图决定是否可访问I/O地址的情况下,当一条I/O指令涉及多个I/O地址时,只有这多个I/O地址所对应的I/O许可位图中的位都为0时,该I/O指令才能被正常执行,如果对应位中任一位为1,就会引起通用保护异常。 80386支持的I/O地址空间大小是64K,所以构成I/O许可位图的二进制位串最大长度是64K个位,即位图的有效部分最大为8K字节。一个任务实际需要使用的I/O许可位图大小通常要远小于这个数目。 当前任务使用的I/O许可位图存储在当前任务TSS中低端的64K字节内。I/O许可位图总以字节为单位存储,所以位串所含的位数总被认为是8的倍数。从前文中所述的TSS格式可见,TSS内偏移66H的字确定I/O许可位图的开始偏移。由于I/O许可位图最长可达8K字节,所以开始偏移应小于56K,但必须大于等于104,因为TSS中前104字节为TSS的固定格式,用于保存任务的状态。 1.I/O访问许可检查细节保护模式下处理器在执行I/O指令时进行许可检查的细节如下所示。 (1)若CPL<=IOPL,则直接转步骤(8);(2)取得I/O位图开始偏移;(3)计算I/O地址对应位所在字节在I/O许可位图内的偏移;(4)计算位偏移以形成屏蔽码值,即计算I/O地址对应位在字节中的第几位;(5)把字节偏移加上位图开始偏移,再加1,所得值与TSS界限比较,若越界,则产生出错码为0的通用保护故障;(6)若不越界,则从位图中读对应字节及下一个字节;(7)把读出的两个字节与屏蔽码进行与运算,若结果不为0表示检查未通过,则产生出错码为0的通用保护故障;(8)进行I/O访问。设某一任务的TSS段如下: TSSSEG SEGMENT PARA USE16 TSS <> ;TSS低端固定格式部分 DB 8 DUP(0) ;对应I/O端口00H—3FH DB 10000000B ;对应I/O端口40H—47H DB 01100000B ;对用I/O端口48H—4FH DB 8182 DUP(0ffH) ;对应I/O端口50H—0FFFFH DB 0FFH ;位图结束字节TSSLen = $TSSSEG ENDS 再假设IOPL=1,CPL=3。那么如下I/O指令有些能正常执行,有些会引起通用保护异常: in al,21h ;(1)正常执行 in al,47h ;(2)引起异常 out 20h,al ;(3)正常实行 out 4eh,al ;(4)引起异常 in al,20h ;(5)正常执行 out 20h,eax ;(6)正常执行 out 4ch,ax ;(7)引起异常 in ax,46h ;(8)引起异常 in eax,42h ;(9)正常执行 由上述I/O许可检查的细节可见,不论是否必要,当进行许可位检查时,80386总是从I/O许可位图中读取两个字节。目的是为了尽快地执行I/O许可检查。一方面,常常要读取I/O许可位图的两个字节。例如,上面的第(8)条指令要对I/O位图中的两个位进行检查,其低位是某个字节的最高位,高位是下一个字节的最低位。可见即使只要检查两个位,也可能需要读取两个字节。另一方面,最多检查四个连续的位,即最多也只需读取两个字节。所以每次要读取两个字节。这也是在判别是否越界时再加1的原因。为此,为了避免在读取I/O许可位图的最高字节时产生越界,必须在I/O许可位图的最后填加一个全1的字节,即0FFH。此全1的字节应填加在最后一个位图字节之后,TSS界限范围之前,即让填加的全1字节在TSS界限之内。 I/O许可位图开始偏移加8K所得的值与TSS界限值二者中较小的值决定I/O许可位图的末端。当TSS的界限大于I/O许可位图开始偏移加8K时,I/O许可位图的有效部分就有8K字节,I/O许可检查全部根据全部根据该位图进行。当TSS的界限不大于I/O许可位图开始偏移加8K时,I/O许可位图有效部分就不到8K字节,于是对较小I/O地址访问的许可检查根据位图进行,而对较大I/O地址访问的许可检查总被认为不可访问而引起通用保护故障。因为这时会发生字节越界而引起通用保护异常,所以在这种情况下,可认为不足的I/O许可位图的高端部分全为1。利用这个特点,可大大节约TSS中I/O许可位图占用的存储单元,也就大大减小了TSS段的长度。 <二>重要标志保护输入输出的保护与存储在标志寄存器EFLAGS中的IOPL密切相关,显然不能允许随便地改变IOPL,否则就不能有效地实现输入输出保护。类似地,对EFLAGS中的IF位也必须加以保护,否则CLI和STI作为敏感指令对待是无意义的。此外,EFLAGS中的VM位决定着处理器是否按虚拟8086方式工作。 80386对EFLAGS中的这三个字段的处理比较特殊,只有在较高特权级执行的程序才能执行IRET、POPF、CLI和STI等指令改变它们。下表列出了不同特权级下对这三个字段的处理情况。 不同特权级对标志寄存器特殊字段的处理 特权级 VM标志字段 IOPL标志字段 IF标志字段 CPL=0 可变(初POPF指令外) 可变 可变 0 不变 不变 可变 CPL>IOPL 不变 不变 不变 从表中可见,只有在特权级0执行的程序才可以修改IOPL位及VM位;只能由相对于IOPL同级或更内层特权级执行的程序才可以修改IF位。与CLI和STI指令不同,在特权级不满足上述条件的情况下,当执行POPF指令和IRET指令时,如果试图修改这些字段中的任何一个字段,并不引起异常,但试图要修改的字段也未被修改,也不给出任何特别的信息。此外,指令POPF总不能改变VM位,而PUSHF指令所压入的标志中的VM位总为0。 <三>演示输入输出保护的实例(实例九)下面给出一个用于演示输入输出保护的实例。演示内容包括:I/O许可位图的作用、I/O敏感指令引起的异常和特权指令引起的异常;使用段间调用指令CALL通过任务门调用任务,实现任务嵌套。 1.演示步骤实例演示的内容比较丰富,具体演示步骤如下:(1)在实模式下做必要准备后,切换到保护模式;(2)进入保护模式的临时代码段后,把演示任务的TSS段描述符装入TR,并设置演示任务的堆栈;(3)进入演示代码段,演示代码段的特权级是0;(4)通过任务门调用测试任务1。测试任务1能够顺利进行;(5)通过任务门调用测试任务2。测试任务2演示由于违反I/O许可位图规定而导致通用保护异常;(6)通过任务门调用测试任务3。测试任务3演示I/O敏感指令如何引起通用保护异常;(7)通过任务门调用测试任务4。测试任务4演示特权指令如何引起通用保护异常;(8)从演示代码转临时代码,准备返回实模式;(9)返回实模式,并作结束处理。
上传时间: 2013-12-11
上传用户:nunnzhy
单片机应用技术选编(9) 目录 第一章 专题论述1.1 集成电路进入片上系统时代(2)1.2 系统集成芯片综述(10)1.3 Java嵌入技术综述(18)1.4 Java的线程机制(23)1.5 嵌入式系统中的JTAG接口编程技术(29)1.6 EPAC器件技术概述及应用(37)1.7 VHDL设计中电路简化问题的探讨(42)1.8 8031芯片主要模块的VHDL描述与仿真(48)1.9 ISP技术在数字系统设计中的应用(59)1.10 单片机单总线技术(64)1.11 智能信息载体iButton及其应用(70)1.12 基于单片机的高新技术产品加密方法探讨(76)1.13 新一代私钥加密标准AES进展与评述(80)1.14 基于单片机的实时3DES加密算法的实现(86)1.15 ATA接口技术(90)1.16 基于IDE硬盘的高速数据存储器研究(98)1.17 模拟比较器的应用(102) 第二章 综合应用技术2.1 闪速存储器硬件接口和程序设计中的关键技术(126)2.2 51单片机节电模式的应用(131)2.3 分布式实时应用的两个重要问题(137)2.4 分布式运算单元的原理及其实现方法(141)2.5 用PLD器件设计逻辑电路时的竞争冒险现象(147)2.6 IRIG?B格式时间码解码接口卡电路设计(150)2.7 一种基于单片机时频信号处理的实用方法(155)2.8 射频接收系统晶体振荡电路的设计与分析(161)2.9 揭开ΣΔ ADC的神秘面纱(166)2.10 过采样高阶A/D转换器的硬件实现(172)2.11 A/D转换的计算与编程(176)2.12 一种提高单片机内嵌式A/D分辨力的方法(179)2.13 单片微型计算机多字节浮点快速相对移位法开平方运算的实现(182)2.14 单片微型计算机多字节浮点除法快速扫描运算的实现(186)2.15 DSP芯片与触摸屏的接口控制(188)第三章 操作系统与软件技术3.1 嵌入式系统中的实时操作系统(192)3.2 嵌入式系统的开发利器——Windows CE操作系统(197)3.3 介绍一种实时操作系统DSP/BIOS(203)3.4 实时操作系统用于嵌入式应用系统的设计(212)3.5 实时Linux操作系统初探(217)3.6 Linux网络设备驱动程序分析与设计(223)3.7 在51系列单片机上实现非抢先式消息驱动机制的RTOS(229)3.8 用结构化程序设计思想指导汇编语言开发(236)3.9 单片机高级语言C51与汇编语言ASM51的通用接口(240)3.10 ASM51无参数化调用C51函数的实现(245)3.11 TMS320C3X的汇编语言和C语言及混合编程技术(249)3.12 TMS320C6000嵌入式系统优化编程的研究(254)3.13 TMS320C54X软件模拟实现UART技术(260)3.14 W78E516及其在系统编程的实现(265)3.15 键盘键入信号软件处理方法探讨(272)3.16 单片机系统中数字滤波的算法(276)第四章 网络、通信与数据传送 4.1 实时单片机通信网络中的内存管理(284)4.2 CRC16编码在单片机数据传输系统中的实现(288)4.3 在VC++中用ActiveX控件实现与单片机的串行通信(293)4.4 利用Windows API函数构造C++类实现串行通信(298)4.5 用Win32 API实现PC机与多单片机的串行通信(304)4.6 GPS接收机与PC机串行通信技术的开发与应用(311)4.7 TCP/IP协议问题透析(316)4.8 单片机的MODEM通信(328)4.9 无线串行接口电路设计(335)4.10 通用无线数据传输电路设计(340)4.11 FX909在无线高速MODEM中的应用(343)4.12 蓝牙——短距离无线连接新技术(348)4.13 蓝牙技术——一种短距离的无线连接技术(351)4.14 蓝牙芯片及其应用(357)4.15 BlueCoreTM01蓝牙芯片的特性与应用(361)4.16 内嵌微控制器的无线数据发射器的特性及应用(365)第五章 新器件及其应用技术5.1 一种全新结构的微控制器——Triscend E5(372)5.2 PSD8XXF的在系统编程技术(376)5.3 PSD813F1及其接口编程技术(382)5.4 一种优越的可编程逻辑器件——ISP器件(387)5.5 ISPPLD原理及其设计应用(393)5.6 ispPAC10在系统可编程模拟电路及其应用(397)5.7 在系统可编程器件ispPAC80及其应用(404)5.8 采用ispLSI1016设计高精度光电码盘计数器(408)5.9 基于ADμC812的一种仪表开发平台(413)5.10 基于P87LPC764的ΣΔ ADC应用设计方法(418)5.11 MP3解码芯片组及其应用(431)5.12 射频IC卡E5550原理及应用(434)5.13 HD7279A键盘显示驱动芯片及应用(439)5.14 基于SPI接口的ISD4104系列语音录放芯片及其应用(444)5.15 解决DS1820通信误码问题的方法(450)5.16 数字电位器在测量放大器中的应用(455)第六章 总线及其应用技术6.1 按平台模式设计的虚拟I2C总线软件包VIIC(462)6.2 虚拟I2C总线软件包的开发及其应用(470)6.3 RS485总线的理论与实践(479)6.4 RS232至RS485/RS422接口的智能转换器(484)6.5 实用隔离型RS485通信接口的设计(489)6.6 几种RS485接口收发方向转换方法(495)6.7 LonWorks总线技术及发展(498)6.8 LonWorks网络监控的简单实现(505)6.9 现场总线CANbus与RS485之间透明转换的实现(509)6.10 居室自动化系统中的X10和CE总线(513)6.11 通用串行总线USB(519)6.12 USB2.0技术概述(524)6.13 带通用串行总线USB接口的单片机EZUSB(530)6.14 嵌入式处理器中的慢总线技术应用(536)6.15 SPI串行总线在单片机8031应用系统中的设计与实现(540)第七章 可靠性及安全性技术7.1 软件可靠性及其评估(546)7.2 网络通信中的基本安全技术(554)7.3 数字语音混沌保密通信系统及硬件实现(560)7.4 伪随机序列及PLD实现在程序和系统加密中的应用(565)7.5 增强单片机系统可靠性的若干措施(569)7.6 FPGA中的空间辐射效应及加固技术(573)7.7 一种双机备份系统的软实现(577)7.8 计算机系统容错技术的应用(581)7.9 容错系统中的自校验技术及实现方法(585)7.10 基于MAX110的容错数据采集系统的设计(589)7.11 冗余式时钟源电路(593)7.12 微机控制系统的抗干扰技术应用(599)7.13 单片开关电源瞬态干扰及音频噪声抑制技术(604)7.14 单片机应用系统程序运行出轨问题研究(608)7.15 分布式系统故障卷回恢复技术研究与实践(613)第八章 典型应用实例8.1 基于单片机系统采用DMA块传输方式实现高速数据采集(620)8.2 GPS数据采集卡的设计(624)8.3 一种新型非接触式IC卡识别系统研究(629)8.4 自适应调整增益的单片机数据采集系统(633)8.5 利用光纤发射/接收器对实现远距离高速数据采集(639)8.6 一种频率编码键盘的设计与实现(645)8.7 高准确度时钟程序算法(649)8.8 旋转编码器的抗抖动计数电路(652)8.9 利用X9241实现高分辨率数控电位器(656)8.10 基于AD2S80A的高精度位置检测系统及其在机器人控制中的应用(661)第九章 文章摘要一、专题论述(670)1.1 微控制器的发展趋势(670)1.2 系统微集成技术的发展(670)1.3 多芯片组件技术及其应用(671)1.4 MCS51和80C51系列单片机(671)1.5 PSD813器件在单片机系统中的应用(671)1.6 主辅单片机系统的设计及应用(671)1.7 一种双单片机结构的微机控制器(671)1.8 用PC机直接开发单片机系统(672)1.9 单片机系统大容量存储器扩展技术(672)1.10 高性能微处理器性能模型设计(672)1.11 闪速存储器的选择与接口(672)1.12 串行存储器接口的比较及选择(672)1.13 移位寄存器分析方法的研究(673)1.14 GPS的时频系统(673)1.15 一种基于C语言的虚拟仪器系统实现方法(673)1.16 智能家庭网络研究综述(673)1.17 用C51实现电力部多功能电能表通信规约(674)1.18 测控系统中采样数据的预处理(674)1.19 数据采集系统动态特性的总体评价(674)1.20 一个高速准确的手写数字识别系统(674)1.21 日本理光实时时钟集成电路发展历史及现状(675)1.22 单片开关电源的发展及其应用(675)二、综合应用技术(676)2.1 MCS51系列单片机在SDH系统中的应用(676)2.2 公共闪存接口在Flash Memory程序设计中的应用(676)2.3 应用IA MMXTM技术的离散余弦变换(676)2.4 串行实时时钟芯片DS1302程序设计中的问题与对策(676)2.5 数字传感器及其应用(677)2.6 电阻式温度传感器的系列化设计及其应用(677)2.7 温度传感器及其与微处理器接口(677)2.8 AD7416数字温度传感器及其应用(677)2.9 隔离放大器及其应用(677)2.10 高速A/D转换器动态参数(678)2.11 V/F变换在单片机系统中的应用(678)2.12 微处理器内嵌式模数转换器在精密仪器中的应用研究(678)2.13 电子秤非线性自动修正方法(678)2.14 光耦传输的非线性校正(678)2.15 高斯滤波器在实时系统中的快速实现(679)2.16 用在系统可编程模拟器件实现双二阶型滤波器(679)2.17 最小二乘法在高精度温度测量中的应用(679)2.18 提高实时频率测量范围和精度新方法(679)2.19 具有微控制器的智能仪表设计与应用(679)2.20 用C语言编程的数据采集系统(680)2.21 大动态范围浮点A/D数据采集器的设计(680)2.22 基于PCI高速数据采集系统(680)2.23 一种基于PC机的高速16位并行数据采集接口(680)2.24 数据采集系统中增强型并行接口(EPP)电路的设计(681)2.25 用增强型并行接口EPP协议扩展计算机的ISA接口(681)2.26 基于增强型并行接口EPP的便携式高速数据采集系统(681)2.27 增强型并行接口EPP协议及其在CAN监控节点中的应用(681)2.28 利用增强型并行接口协议传输图像文件(681)2.29 用并行接口进行数据采集(682)2.30 高信噪比的VFC/DPLL数据采集装置(682)2.31 高精度数字式转速测量系统的研究(682)2.32 用单片机测量相位差的新方法(682)2.33 交流采样在电力系统中应用(682)2.34 同步图形存储器IS42G32256的电源与应用(683)2.35 IBM?PC处理10MHz高速模拟信号的研究(683)2.36 MCS51系列单片机存储容量扩展方法(683)2.37 用单片机实现数字相位变换器的设计方法(683)2.38 一种新的可重配置的串口扩展方案(683)2.39 VB环境下对双端口RAM物理读写的实现(684)2.40 双CPU实现远程多键盘鼠标交互(684)2.41 两种电阻时间变换器设计与分析(684)2.42 液晶显示器的接口和编程技巧(684)2.43 一种简单的电机变频调速方案及其应用(684)2.44 基于单片机的火控系统符号产生器电路原理设计(685)2.45 A/D转换器性能的改善方法(685)2.46 快速小波变换算法与信噪分离(685)2.47 80C196MC/MD单片机多个中断程序的同步问题(685)三、操作系统及软件技术(686)3.1 嵌入式软件技术的现状与发展动向(686)3.2 什么是嵌入式实时操作系统(686)3.3 实时多任务系统中的一些基本概念(686)3.4 一个源码公开的实时内核(687)3.5 Windows CE的实时性分析(687)3.6 串口通信多线程实现的分析(687)3.7 基于中间件的开发研究(688)3.8 Windows 95下实时控制软件设计的研究(688)3.9 Windows NT 4.0下设备驱动程序的开发与应用(688)3.10 Windows 98 下硬件中断驱动程序的开发(688)3.11 Windows下实时数据采集的实现(688)3.12 Win 95 下虚拟设备驱动程序设计开发(689)3.13 Win 95 环境下测控软件中端口读写的快速实现(689)3.14 Linux系统中ARP的编程实现技术(689)3.15 Linux中System V进程通信机制及访问控制技术的改进(689)3.16 VC++6.0中动态创建MSComm控件的问题及对策(689)3.17 在Visual Basic下使用I/O接口程序(690)3.18 VB应用程序速度的优化技术(690)3.19 嵌入式实时操作系统在机车微机测控软件开发中的应用(690)3.20 结构化程序方法在汇编语言中的应用(690)3.21 AVR单片机编程特性的应用研究(690)3.22 一种有效的51系列单片机软件仿真器(691)3.23 PIC单片机软件模拟仿真时输入信号的激励方式(691)3.24 基于LabVIEW的分布式VXI仪器教学实验系统设计(691)四、网络、通信及数据传输(692)4.1 单片机网络的组成与控制(692)4.2 实现ARINC 429数字信息传输的方案设计(692)4.3 结合电力线载波和电话通信的报警网络系统(692)4.4 网络电子密码锁监控系统的设计与实现(692)4.5 IRIG?E标准FM?FM解调器的有关技术(693)4.6 基于TCP/IP的多媒体通信实现(693)4.7 基于TCP/IP的多线程通信及其在远程监控系统中的应用(693)4.8 基于Internet的远程测控技术(693)4.9 Windows 95串行通信的几种方式及编程(693)4.10 在Windows 95下PC机和单片机的串行通信(693)4.11 基于80C196KC微处理器的高速串行通信(694)4.12 使用PC机并行口与下位单片机通信的方法(694)4.13 双向并口通信的开发(694)4.14 DSP和计算机并口的高速数据通信(694)4.15 一种高可靠性的PC机与单片机间的串行通信方法(694)4.16 单片机与PC机串行通信的实现方法(695)4.17 89C51单片机I/O口模拟串行通信的实现方法(695)4.18 TMS320C50与PC机高速串行通信的实现(695)4.19 DSP和PC机的异步串行通信设计(695)4.20 基于MCS单片机与PC机串行通信电平转换(695)4.21 一种简单的光电隔离RS232电平转换接口设计(695)4.22 ISA总线工业控制机与单片机系统的数据交换(696)4.23 RS232/422/485综合接口(696)4.24 基于RS485接口的单片机串行通信(696)4.25 在VC++中利用ActiveX控件开发串行通信程序(696)4.26 上位机和多台下位机的485通信(696)4.27 计算机与CAN通信的一种方法(697)4.28 用VB语言实现对端口I/O的访问(697)4.29 异种单片机共享片外存储器及其与微机通信的方法(697)4.30 单片机与MODEM接口技术及其在智能仪器中的应用研究(697)4.31 采用MCS51单片机实现CPFSK调制(697)4.32 一种新型编码芯片及其驱动程序的设计方案(698)4.33 DTMF远程通信的软硬件实现技术(698)4.34 采用DTMF方式通信的电度表管理系统(698)4.35 基于TAPI的电话语音系统设计方法(698)4.36 语音芯片APR9600及其在电话遥控系统中的应用(699)4.37 串行红外收发模块及其控制器在红外抄表系统中的应用(699)4.38 HSP50214B PDC及其在软件无线电中的应用(699)4.39 变速率CDMA系统软件无线电多用户接收机(699)五、新器件及应用技术(700)5.1 全帧读出型面阵CCD光电传感器在图像采集中的应用(700)5.2 光电码盘四倍频分析(700)5.3 H8/300H系列单片机及其应用(700)5.4 PIC 16F877单片机的键盘和LED数码显示接口(700)5.5 PIC16F877单片机实现D/A转换的两种方法(701)5.6 P89C51RX2 的PCA原理及设计(701)5.7 ADμC812中串口及其应用(701)5.8 INTEL96系列单片机中若干问题的讨论(701)5.9 关于INTEL96系列单片机中HSO事件的设置(701)5.10 MAX3100与PIC16C5X系列单片机的接口设计(702)5.11 单片MODEM芯片在远程数据通信中的应用(702)5.12 MX919在无线高速MODEM中的应用(702)5.13 高速串行数据收发器CY7B923/933及应用(702)5.14 双口RAM与FIFO芯片在数据处理系统中应用的比较(702)5.15 MAX202E在串行通信中的应用(703)5.16 线性隔离放大器ISO122的原理及应用(703)5.17 AD606对数放大器的研究与应用(703)5.18 电流/电压转换芯片MAX472在永磁直流电动机虚拟测试系统中的应用… (703)5.19 高精度模数转换器AD676的原理及应用(703)5.20 DS2450 A/D转换器的特性与应用(704)5.21 80C196KC内部A/D转换器的使用(704)5.22 一种16~24位分辨率D/A转换器的设计(704)5.23 串行A/D转换器TLC2543与TMS320C25的接口及编程(704)5.24 A/D转换器ICL7135积分特性应用(704)5.25 高精度A/D转换器AD7711A及应用(705)5.26 多路A/D转换器AD7714及其与M68HC11单片机接口技术(705)5.27 用AD7755设计的低成本电能表(705)5.28 20位Σ?Δ立体声ADA电路TLC320AD75C的接口电路设计(705)5.29 24位A/D转换器ADS1210/1211及其应用(706)5.30 模数转换器AD7705及其接口电路(706)5.31 串行A/D转换器ADS7812与单片机的接口技术(706)5.32 串行A/D转换器TLC548/549及其应用(706)5.33 采样率可变16通道16位隔离A/D电路(706)5.34 TLC549在交流有效值测量中的应用(707)5.35 温度传感器DS18B20的特性及程序设计方法(707)5.36 DS1820及其高精度温度测量的实现(707)5.37 采用DS1820的电弧炉炉底温度监测系统(707)5.38 并行实时时钟芯片DS12887及其应用(707)5.39 利用实时时钟X1203开启单片机系统(708)5.40 时钟芯片DS1302及其在数据记录中的应用(708)5.41 串行显示驱动器PS7219及与单片机的接口技术(708)5.42 MAX7219在PLC中的应用(708)5.43 一种实用的LED光柱显示器驱动方法(708)5.44 基于电能测量芯片ADE7756的智能电度表设计(709)5.45 TSS721A在自动抄表系统中的应用(709)5.46 电流传感放大器MAX471/MAX472的原理及应用(709)5.47 8XC552模数转换过程及其自动调零机制(709)5.48 旋转变压器数字转换器AD2S83在伺服系统中的应用(709)5.49 具有串行接口的I/O扩展器EM83010及其应用(710)5.50 新型LED驱动器TEC9607及其应用(710)5.51 新型语音识别电路AP7003及其应用(710)六、总线技术(711)6.1 现场总线技术的发展及应用展望(711)6.2 CAN总线点对点通信应用研究(711)6.3 基于CAN总线的数据通信系统研究(711)6.4 基于CAN总线的分布式数据采集与控制系统(711)6.5 基于CAN总线的分布式铝电解智能系统(711)6.6 CAN总线在通信电源监控系统中的应用(712)6.7 CAN总线在弧焊机器人控制系统中的应用(712)6.8 CAN总线及其在喷浆机器人中的应用(712)6.9 基于CAN控制器的单片机农业温室控制系统的设计(712)6.10 现场总线国际标准与LonWorks在智能电器中的应用(712)6.11 基于LON总线技术的暖通空调控制系统(712)6.12 通用串行总线(USB)及其芯片的使用(713)6.13 USB在数据采集系统中的应用(713)6.14 用MC68HC05JB4开发USB外设(713)6.15 8x930Ax/Hx USB控制器芯片及其在数字音频中的应用(713)6.16 基于MC68HC(9)08JB8芯片的USB产品——键盘设计(713)6.17 I2 C总线在LonWorks网络节点上的应用(714)6.18 Neuron3150的并行I/O接口对象及其应用(714)6.19 新型串行E2PROM 24LC65在LonWorks节点中的应用(714)6.20 利用I2C总线实现DSP对CMOS图像传感器的控制(714)6.21 在I2C总线系统中扩展LCD显示器(714)6.22 基于Windows环境的GPIB接口设计实现(714)6.23 微机PCI总线接口的研究与设计(715)6.24 通用串行总线(USB)原理及接口设计(715)6.25 CAN总线与1553B总线性能分析比较(715)6.26 利用USB接口实现双机互联通信(715)6.27 一种带USB接口的便携式语音采集卡的设计(715)七、可靠性技术(716)7.1 电磁干扰与电磁兼容设计(716)7.2 计算机的防电磁泄漏技术(716)7.3 低辐射计算机系统的设计实现(716)7.4 静电测量及其程序设计(716)7.5 电子产品生产中的静电防护技术(716)7.6 电子测控系统中的屏蔽与接地技术(717)7.7 微机控制系统的抗干扰技术(717)7.8 如何提高单片机应用产品的抗干扰能力(717)7.9 工业控制计算机系统中的常见干扰及处理措施(717)7.10 GPS用于军用导航中的抗干扰和干扰对抗研究(717)7.11 基于开放式体系结构的数控机床可靠性及抗干扰设计(717)7.12 变频器应用技术中的抗干扰问题(718)7.13 单片机的软件可靠性编程(718)7.14 单片微机的软件抑噪方案(718)7.15 SmartLock并口单片机软件狗加密技术(718)7.16 单片机系统中复位电路可靠性设计(718)7.17 测控系统中实现数据安全存储的实用技术(718)7.18 高精度仪表信号隔离电路设计(719)7.19 基于AT89C2051单片机的防误操作智能锁(719)7.20 Email的安全问题与保护措施(719)7.21 双机容错系统的一种实现途径(719)7.22 单片机应用系统抗干扰设计综述(719)7.23 微机控制系统中的干扰及其抑制方法(720)7.24 智能仪表的抗干扰和故障诊断(720)八、应用实践(721)8.1 AT89C51在银行利率显示屏中的应用(721)8.2 基于8xC196MC实现的磁链轨迹跟踪控制(721)8.3 基于80C196KC的开关磁阻电机测试系统(721)8.4 80C196KB单片机在绕线式异步电动机启动控制中的应用(721)8.5 GPS时钟系统(721)8.6 一种由AT89C2051单片微机实现的功率因数补偿装置(722)8.7 数据采集系统芯片ADμC812及其在温度监测系统中的应用(722)8.8 用AVR单片机实现蓄电池剩余电量的测量(722)8.9 基于SA9604的多功能电度表(722)8.10 数字正交上变频器AD9856的原理及其应用(722)8.11 基于MC628的可变参数PID控制方法的实现(723)8.12 Windows 98下远程数据采集系统设计(723)8.13 一种新式微流量计的研究(723)8.14 一种便携式多通道精密测温仪(723)8.15 一种高精度定时器的设计及其应用(723)8.16 智能湿度仪设计(724)8.17 固态数字语音记录仪的设计与实现(724)8.18 多功能语音电话答录器的设计(724)8.19 白炽灯色温测量装置电路设计(724)8.20 交直流供电无缝连接电源控制系统设计(724)8.21 小型电磁辐射敏感度自动测试系统的设计(725)8.22 生物电极微电流动态检测装置(725)8.23 二种铂电阻4~20 mA电流变送器电路(725)8.24 基于单片机的智能型光电编码器计数器(725)8.25 嵌入式系统中利用RS232C串口扩展矩阵式键盘(725)8.26 电压矢量控制PWM波的一种实时生成方法(725)8.27 便携式电能表校验装置现场使用分析(726)8.28 用单片机实现大型电动机的在线监测(726)8.29 PLC在L型管弯曲机电控系统中的应用(726)8.30 用EPROM实现步进电机的控制(726)8.31 一种手持设备的智能卡实现技术(726)8.32 钞票颜色识别系统的设计(727)8.33 数字锁相环在位置检测中的应用(727)九、DSP及其应用技术(728)9.1 数字信号处理器DSPs的发展(728)9.2 用TMS320C6201实现多路ITU?T G.728语音编码标准(728)9.3 采用DSP内核技术进行语音压缩开发(728)9.4 TMS320C80与存储器接口分析(728)9.5 TMS320C32浮点DSP存储器接口设计(728)9.6 TMS320VC5402 DSP的并行I/O引导装载方法研究(729)9.7 TMS320C30系统与PC104进行双向并行通信的方法(729)9.8 基于TMS320C6201的G.723.1多通道语音编解码的实现(729)9.9 基于TMS320C6201的多通道信号处理平台(729)9.10 基于两片TMS320C40的高速数据采集系统(729)9.11 使用TMS320C542构成数据采集处理系统(730)9.12 基于TMS320C32的视觉图像处理系统(730)9.13 用ADSP?2181和MC68302实现MPEG?2传送复用器(730)9.14 基于DSP的PC加密卡(730)9.15 TMS320C2XX及其在宽带恒定束宽波束形成器中的应用(730)9.16 DS80C320单片机在无人机测控数据采编器中的应用(731)9.17 基于TMS320F206 DSP的图像采集卡设计(731)9.18 基于定点DSP的实时语音命令识别模块(731)9.19 基于TMS320C50的语音频谱分析仪(731)9.20 利用DSP实现的专用数字录音机(731)9.21 基于DSP的全数字交流传动系统硬件平台设计(732)9.22 ADSP2106x中DMA的应用(732)9.23 软件无线电中DSP应用模式的分析(732)9.24 快速小波变换在DSP中的实现方法(732)十、PLD及EDA技术应用(733)10.1 可编程器件实现片上系统(733)10.2 VHDL语言在现代数字系统中的应用(733)10.3 用VHDL设计有限状态机的方法(733)10.4 ISP-PLD在数字系统设计中的应用(733)10.5 基于FPGA技术的新型高速图像采集(734)10.6 Protel 99SE电路仿真(734)10.7 可编程逻辑器件(PLD)在电路设计中的应用(734)10.8 基于FPGA的全数字锁相环路的设计(734)10.9 基于EPLD器件的一对多打印机控制器的研制(734)10.10 一种VHDL设计实现的有线电视机顶盒信源发生方案(735)10.11 一种并行存储器系统的FPGA实现(735)10.12 SDRAM接口的VHDL设计(735)10.13 采用ISP器件设计可变格式和可变速率的通信数字信号源(735)10.14 利用FPGA技术实现数字通信中的交织器和解交织器(735)10.15 XC9500系列CPLD遥控编程的实现(736)10.16 PLD器件在红外遥控解码中的应用(736)10.17 利用XCS40实现小型声纳的片上系统集成(736)10.18 可编程逻辑器件的VHDL设计技术及其在航空火控电子设备中的应用… (736)10.19 DSP+FPGA实时信号处理系统(736)10.20 CPLD在IGBT驱动设计中的应用(737)10.21 基于FPGA的FIR滤波器的实现(737)10.22 用可编程逻辑器件取代BCD?二进制转换器的设计方法(737)
上传时间: 2014-04-14
上传用户:gtf1207
随着 微 电 子技术的飞速发展,电子产品越来越微型化,集成化,自动化,低廉化,进而推动着其它许多产业的发展。特别进人21世纪以来,生物技术与电子技术的结合,成为高科技领域的研究热点。199()年由瑞士的Manz和Widmer首先提出的“微全分析系统”〔’〕(microto talan alysissy stems,即ptTAS),通俗地称为“建在芯片上的实验室”(Lab on a chip)或简称芯片实验室(Lab chip),主要组成部分为电泳芯片,同时是进样,分离和检测为一体的微型装置,其在电泳实验中的高效检测性能为生物化学分析仪器发展提供了一种借鉴。p.TAS广泛应用于生物医学、环境检测、食品卫生、科学以及国防等众多领域。目前 应 用 的大多为多通道的毛细管电泳芯片,这也是芯片发展的一个必然趋势。这不仅对电泳芯片本身的设计和制作提出了更高的要求,也对传感器和数据处理技术提出了新的挑战。考虑成本,集成度,控制能力以及可靠性方面的因素,本系统采用单片机作为实时数据处理、控制以及通讯的硬件平台。如果系统中既有实时的通信任务,同时又有其他实时任务,采用一个廉价的单片机,资源会比较紧张,不仅实现困难,结构复杂,而且效果可能不满意。而采用高性能的处理器,又浪费了其有效资源,所以本系统采用两个MCU协同工作,以并行/分布式多机的思想,构成了电泳芯 片核心的双单片机系统结构。微全 分 析 系 统 进行的多项实时任务,可以划分为以下 几个模块:①采集模块。负责对外围检验设备进行控 制以及对传送过来的信号进行采集和分析;②交互模 块。通过液晶显示,键盘扫描,以及打印等实现实验人 员对前端采集电路的交互操作;③双单片机控制和通 信模块。协调双单片机之间的数据传输和指令传输 ;④网络传输模块。其中一个单片机通过以太网发送接 收数据到上位机。本文提出一种实时多任务的双单片 机控制和通信系统[31的设计,一个MCU基于TCP /IP网络模块的实现。
上传时间: 2013-11-15
上传用户:wangdean1101
基于USB接口的数据采集模块的设计与实现Design and Implementation of USB-Based Data Acquisition Module路 永 伸(天津科技大学电子信息与自动化学院,天津300222)摘要文中给出基于USB接口的数据采集模块的设计与实现。硬件设计采用以Adpc831与PDIUSBDI2为主的器件进行硬件设计,采用Windriver开发USB驱动,并用Visual C十十6.0对主机软件中硬件接口操作部分进行动态链接库封装。关键词USB 数据采集Adpc831 PDNSBDI2 Windriver动态链接库Abstract T hed esigna ndim plementaitono fU SB-BasedD ataA cquisiitonM oduleis g iven.Th ec hips oluitonm ainlyw ithA dpc831a ndP DTUSBD12i sused for hardware design. The USB drive is developed场Wmdriver, and the operation on the hardware interface is packaged into Dynamic Link Libraries场Visual C++6.0. Keywords USB DataA cquisition Adttc831 PDfUSBD12 Windriver0 引言US B总 线 是新一代接口总线,最初推出的目的是为了统一取代PC机的各类外设接口,迄今经历了1.0,1.1与2.0版本3个标准。在国内基于USB总线的相关设计与开发也得到了快速的发展,很多设计者从各自的应用领域,用不同方案设计出了相应的装置[1,2]。数据采集是工业控制中一个普遍而重要的环节,因此开发基于USB接口的数据采集模块具有很强的现实应用意义。虽然 US B总线标准已经发展到2.0版本,但由于工业控制现场干扰信号的情况比较复杂,高速数据传输的可靠性不容易被保证,并且很多场合对数据采集的实时性要求并不高,开发2.0标准产品的成本又较1.1标准产品高,所以笔者认为,在工业控制领域,目前开发基于USB总线1.1标准实现的数据采集模块的实用意义大于相应2.0标准模块。
上传时间: 2013-10-23
上传用户:q3290766
案例1判断闰年程序,案例2产生随机数并运算的程序,案例3计算平台长度程序,案例4加减乘除四则运算,案例5数字方阵程,案例6数据加密程序,案例7代码转换程序,案例8键盘录入数据的转换与显示,案例9音乐演奏,案例10显示彩色矩形块等等实例
上传时间: 2013-10-08
上传用户:wutong
SM-IIC/2051 模块用户说明简介:SM-IIC/2051 是一个基于2051 单片机的I2C 总线控制模块。上位机接口可直接与PC的RS232 连接,下位机可实现对应用电路中I2C 控制总线的连接,块内设置2K 的FLASH 存储器,可存储用户I2C 初始化数据。模块采用2051 单片机,使电路简单可靠。型号:SM-IIC/2051名称:I2C 数据控制模块功能:RS232 串行信号与I2C 数据转换 接口说明:编号信号标志信号名称规格备注CK1-1 VCC 供电+5VCK1-2 VCC 供电+5VCK1-3 GND 地GroundCK1-4 GND 地GroundCK2-1 TOUT 串口输出RS232CK2-2 RIN 串口输入RS232CK2-3 GND 地GroundCK2-4 GND 地Ground编号信号标志信号名称规格备注CK3-1 GND 地GroundCK3-2 SCL I2C 时钟TTLCK3-3 SDA I2C 数据TTLCK3-4 GND 地GroundCK3-5 P1.2 PI/O 端口TTLCK3-6 P1.3 PI/O 端口TTLCK3-7 P1.4 PI/O 端口TTLCK3-8 P1.5 PI/O 端口TTLCK3-9 P1.6 PI/O 端口TTLCK3-10 P1.7 PI/O 端口TTLCK3-11 P3.7 PI/O 端口TTLCK3-12 T1 定时端口TTLCK3-13 T0 定时端口TTLCK3-14 INT1 中断端口TTLCK3-15 INT0 中断端口TTLCK3-16 GND 地Ground
上传时间: 2013-11-18
上传用户:爺的气质
第1章 单片机系统概述1.1 AVR系列单片机的特点1.2 AT90系列单片机简介第2章 AT90LS8535单片机的基础知识2.1 AT90LS8535单片机的总体结构2.1.1 AT90LS8535单片机的中央处理器2.1.2 AT90LS8535单片机的存储器组织2.1.3 AT90LS8535单片机的I/O接口2.1.4 AT90LS8535单片机的内部资源2.1.5 AT90LS8535单片机的时钟电路2.1.6 AT90LS8535单片机的系统复位2.1.7 AT90LS8535单片机的节电方式2.1.8 AT90LS8535单片机的芯片引脚2.2 AT90LS8535单片机的指令系统2.2.1 汇编指令格式2.2.2 寻址方式2.2.3 伪指令2.2.4 指令类型及数据操作方式2.3 应用程序设计2.3.1 程序设计方法2.3.2 应用程序举例第3章 AT90LS8535单片机的C编程3.1 支持高级语言编程的AVR系列单片机3.2 AVR的C编译器3.3 ICC AVR介绍3.3.1 安装ICC AVR3.3.2 设置ICC AVR3.4 用ICC AVR编写应用程序3.5 下载程序文件第4章 数据类型、运算符和表达式4.1 ICC AVR支持的数据类型4.2 常量与变量4.2.1 常量4.2.2 变量4.3 AT90LS8535的存储空间4.4 算术和赋值运算4.4.1 算术运算符和算术表达式4.4.2 赋值运算符和赋值表达式4.5 逻辑运算4.6 关系运算4.7 位操作4.7.1 位逻辑运算4.7.2 移位运算4.8 逗号运算第5章 控制流5.1 C语言的结构化程序设计5.1.1 顺序结构5.1.2 选择结构5.1.3 循环结构5.2 选择语句5.2.1 if语句5.2.2 switch分支5.2.3 选择语句的嵌套5.3 循环语句5.3.1 while语句5.3.2 do…while语句5.3.3 for语句5.3.4 循环语句嵌套5.3.5 break语句和continue语句第6章 函数6.1 函数的定义6.1.1 函数的定义的一般形式6.1.2 函数的参数6.1.3 函数的值6.2 函数的调用6.2.1 函数的一般调用6.2.2 函数的递归调用6.2.3 函数的嵌套使用6.3 变量的类型及其存储方式6.3.1 局部变量6.3.2 局部变量的存储方式6.3.3 全局变量6.3.4 全局变量的存储方式6.4 内部函数和外部函数6.4.1 内部函数6.4.2 外部函数第7章 指针第8章 结构体和共用体第9章 AT90LS8535的内部资源第10章 AT90LS8535的人机接口编程第11章 AT90LS8535的外围扩展第12章 AT90LS8535的通信编程第13章 系统设计中的程序处理方法
上传时间: 2013-10-31
上传用户:smthxt