C51单片机是我们生活中最常用的系列,MCS-51系列单片机有4个并行口(P0,P1,P2,P3口),但对一个稍微复杂的应用系统来说,真正可供用户使用的并行口,只有P1口可用,况且常常因扩展I2C和SPI的器件需占用某些P1口,迫使用户不得不扩展并行口以满足实际的需要。习惯上,常用的并行口接口芯片有8255、8155,这两种芯片功能比较齐全,可以使用在相对比较复杂的系统中,但如是对一般的系统而言,这些功能往往闲置不用。那么就可以选用一些本来闲置不用的口线作为选通信号来进行并行口的扩展,这样就能充分利用单片机有限的I/O资源,在本设计中是将P1口扩展成一个或几个8位并行口,在每一个八位口上接入8个发光二极管做为输出,二极管是做开关量来使用的,在这里设计了跑马灯和流水灯程序,做到对开关量的开断控制;配合开关量的控制笔者设计了一个共阳LED数码管,用来显示当前发光二极管发亮的序号,做到更加直观的双重控制效果,然后再将P0口通过D/A转换器和一放大器输出一个模拟信号,其结果可以通过示波器看出。这样整个系统即有了数字信号输出和模拟信号输出,也有数码管显示功能,实用性能大提高了。2、 基于89C51的系统硬件设计2.1 并行口的扩展的电路设计 众所周知,C51系列的单片机都有四个I/O口(P0、P1、P2、P3),那么AT89C51也不例外,但我们通常仅仅使用P1口作为并行口,而令其余口(P2、P3)处于闲置状态,所以这次设计,我们就是使用闲置不用的P3口做为选能信号线来将P1口进行并行口扩展。 (1) 种方式的并行口扩展优点 连线简单; 不占用存储器空间; (2) 编程也方便灵活。但也有很大的缺点 并行口扩展能力有限,(如使用74LS573(74LS373)且不进行驱动处理,则最多可扩展4个同样类型的并行输出端口,当然还需要与之对应的四个选通信号。) 如扩展较多,选通信号占用并行口位数太多,例如欲扩展8个并行输出端口,则需要8个选能信号,此时,仅选能信号就占用了一个8位并行口,这对在I/O端口线有限的单片机系统中,如此浪费资源的现象是不能容忍的。在本次的设计中,采用芯片74HC573(带三态输出的八进制透明D型锁存器)对P1口进行了一个8位并行口的扩展,选通信号选用P3口的P3.3引脚。原理图如图1所示:
上传时间: 2013-11-18
上传用户:dbs012280
单片机应用技术选编10 目录 第一章 专题论述1.1 嵌入式系统的技术发展和我们的机遇(2)1.2 一种新的电路设计和实现方法——进化硬件(8)1.3 从8/16位机到32位机的系统设计(13)1.4 混合SoC设计(18)1.5 AT24系列存储器数据串并转换接口的IP核设计(23)1.6 低能耗嵌入式系统的设计(28)1.7 嵌入式应用中的零功耗系统设计(31)1.8 数字指纹协议的研究与发展(37)1.9 指纹识别控制系统设计(45)1.10 条形码的计算机编码与识别(48)1.11 蓝牙技术综述(54)1.12 蓝牙通信过程解析与研究(60)1.13 蓝牙模块基带电路的接口技术(65)1.14 蓝牙HCI层数据通信的实现(72)1.15 蓝牙技术硬件实现模式分析(77)1.16 Bluetooth技术与相关器件(83)1.17 基于蓝牙技术的无线收发芯片nRF401(88)1.18 蓝牙收发芯片RF2968的原理及应用(93)1.19 nRFTM系列单片机无线收发器的应用设计(99)1.20 基于蓝牙技术的家庭网络(106) 第二章 综合应用2.1 嵌入式系统的超时控制及其应用(114)2.2 多路读写的SDRAM接口设计(118)2.3 SDRAM视频存储控制器的设计与实现(123)2.4 集成多路模拟开关的应用技巧(129)2.5 合理选择DCDC转换器(133)2.6 单片机定时器中断时间误差的分析及补偿(137)2.7 单片机无线串行接口电路设计(140)2.8 单片机控制Modem的两种硬件接口方法(143)2.9 使用PWM得到精密的输出电压(147)2.10 测控系统前向通道的误差分析及标定(150)2.11 如何认识和提高ADC的精度(155)2.12 提高ADC分辨率的硬件和软件措施(160)2.13 智能温度传感器的发展趋势(165)2.14 温度传感器的选择策略(169)2.15 单线数字温度传感器DS18B20数据校验与纠错(174)2.16 TMP03/04型数字温度传感器的工作原理(180)2.17 TMP03/04型数字温度传感器的应用(184)2.18 谐振式水晶温度传感器的现状和发展预测(189)2.19 石英晶体温度传感器的应用(194)2.20 无线数字温度传感器的设计(199)2.21 液晶屏温度响应特性及其温度控制(203)2.22 CPU卡的接口特性、传输协议与读写程序设计(209)2.23 一种基于铁电存储器的双机串行通信技术(215) 第三章 软件技术3.1 面向应用的嵌入式操作系统(222)3.2 嵌入式实时操作系统及其应用(228)3.3 Windows CE在嵌入式工业控制系统中的应用思考(234)3.4 简易非抢先式实时多任务操作系统的设计与应用(239)3.5 单片机程序设计中运用事件驱动机制(248)3.6 实时操作系统RTLINUX的原理及应用(253)3.7 RTLinux的实时机制分析(256)3.8 基于RTLinux系统的设备驱动程序开发与应用(261)3.9 嵌入式实时操作系统μC/OSⅡ及其应用(265)3.10 在MOTOROLA 568XX系列DSP上运行μC/OSⅡ(267)3.11 Franklin C51浮点数与A51浮点数的相互转换、传递及其在混合编程中的应用(272) 第四章 网络、通信与数据传输4.1 嵌入式系统以太网接口的设计(280)4.2 以太网在网络控制系统中的应用与发展趋势(285)4.3 IPv4向IPv6的过渡(291)4.4 在嵌入式网络应用中实现TCP/IP协议(295)4.5 一种以太网与8位单片机的连接方法(300)4.6 RS485总线通信避障及其多主发送的研究(305)4.7 RS422/RS485网络的无极性接线设计(310)4.8 RS485与USB接口转换卡的设计与实现(315)4.9 低压电力线载波数据通信及其应用前景(320)4.10 基于LM1893的电力线载波通信系统设计(327)4.11 家庭无线信息网络解决方案(331)4.12 基于GSM短消息接口的MC3一体化遥测系统(334)4.13 基于短消息的自动抄表系统(337) 第五章 新器件与新技术5.1 ARM核嵌入式系统的开发平台ADS(344)5.2 大容量Flash型AT91系列ARM核微控制器(350)5.3 内嵌UHF ASK/FSK发射器的8位微控制器(357)5.4 专用单片机C5042E在SPWM技术中的编程技巧(361)5.5 新型高精度时钟芯片RTC4553(367)5.6 A/D芯片TLC2543与Neuron芯片的接口应用(372)5.7 一种新型传感器接口IC(376)5.8 新型CMOS图像传感器及其应用(380)5.9 GMS97C2051与ISD2560组成的小型语音系统(385)5.10 73M2901芯片在嵌入式Modem中的应用(389)5.11 电能计量芯片组AT73C500和AT73C501及其应用(395) 第六章 总线技术6.1 PCI总线及其接口芯片的应用(406)6.2 实现RS485/RS422和CAN转换——总线网桥的构建(409)6.3 工控系统应用CAN总线的几种改进方法(413)6.4 快速和高可靠性的CAN网络模块ADAM?500/CAN(418)6.5 SJA1000在CAN总线系统节点的应用(422)6.6 用C167CR实现CAN总线通信(430)6.7 1?WIRE网络的特性与应用(436)6.8 基于TINI的一线制网络互连技术(441)6.9 单总线数字温度传感器的自动识别技术(445)6.10 TM卡信息纽扣在预付费水表中的应用(450)6.11 USB 2.0性能特点及其应用(455)6.12 USB总线协议信息包分析(459)6.13 USB设备的开发(463)6.14 嵌入式系统中USB总线驱动的开发及应用(467)6.15 USB接口单片机SL11R的特点及应用(475)6.16 USB接口器件PDIUSBD12的接口应用设计(479)6.17 USB 2.0控制器CY7C68013特点与应用(486)6.18 基于EZ?USB的数据采集与控制(491)6.19 基于USB接口的IC卡读写器的设计(498)6.20 IEEE 1394总线技术与应用(501) 第七章 可靠性及安全性技术7.1 单片机复位电路的可靠性分析(508)7.2 提高移位寄存器接口电路可靠性的措施(515)7.3 单片机嵌入式系统软件容错设计(518)7.4 键盘信息泄漏与防泄漏键盘设计(526)7.5 USB安全钥功能扩展与优化设计(532)7.6 单片机多机冗余设计及控制模块的VHDL语言描述(540)7.7 一种快速可靠的串行flash容错系统的设计与实现(545)7.8 射频电路印刷电路板的电磁兼容性设计(550)7.9 去耦电容在PCB板设计中的应用(553)7.10 密码访问器件X76F100在单片机系统中的应用(560)7.11 计算机的电磁干扰研究(566)7.12 EMI和屏蔽(一)(573)7.13 EMI和屏蔽(二)(579)7.14 微机接口设计中的静电冲击(ESD)防护措施(585)7.15 单片机应用系统中去除工频干扰的快速实现(589)7.16 传输线路引起的数字信号畸变与抑制(593) 第八章 DSP及其应用技术8.1 TMS320VC5402电路设计中应注意的几个问题(600)8.2 DSP系统中的外部存储器设计(604)8.3 TMS320C24x的C语言与汇编语言的接口技术(610)8.4 DSP环境下C语言编程的优化实现(615)8.5 基于TMS320C6000高速算法的实现(619)8.6 TMS320F240串行外设接口及其应用(624)8.7 基于DSP的Modem及其驱动程序的设计与实现(631)8.8 W3100在DSP系统以太网接口中的应用(637)8.9 CAN总线控制器与DSP的接口(643)8.10 基于DSP的USB传输系统的实现(648) 第九章 HDL与可编程器件技术9.1 谈谈EDA的硬件描述语言(654)9.2 基于VHDL语言的FPGA设计(657)9.3 VHDL的设计特点与应用研究(662)9.4 单片机应用系统的CPLD应用设计(668)9.5 用CPLD实现单片机与ISA总线接口的并行通信(674)9.6 FPGA实现PCI总线接口技术(679)9.7 用FPGS实现DES算法的密钥简化算法(685)9.8 可编程模拟器件原理与开发(690)9.9 数字/模拟ISP技术及其EDA工具(695)9.10 可编程模拟器件ispPAC20在电路设计中的应用(698)9.11 基于FPGA的I2C总线接口实现方法(701)9.12 基于CPLD的串并转换和高速USB通信设计(705)9.13 用HDL语言实现循环冗余校验(712)9.14 利用单片机和CPLD实现直接数字频率合成(DDS)(717)9.15 基于Verilog?HDL的轴承振动噪声电压峰值检测(722) 第十章 综合应用10.1 AVR高速单片机LED显示系统(728)10.2 基于ADμC812与SJA1000数据采集系统的设计(732)10.3 用AT89C2051设计的PC/AT键盘(736)10.4 利用89C2051实现POCSAG编码的方法(739)10.5 加载感应DAC的应用(741)10.6 利用MAX7219设计LED大屏幕基本显示模块(745)10.7 单片机用作通用红外遥控接收器的设计(751)10.8 红外遥控器软件解码及其应用(754) 第十一章 文章摘要 一、专题论述(758)1.1 与8051兼容的单片机的新发展(758)1.2 正在崛起的低功耗微处理器技术(758)1.3 低功耗电子系统设计的综合考虑(758)1.4 数字电路设计方案的比较与选择(758)1.5 单片机应用系统中数学协处理器的开发(758)1.6 实现基于IP核技术的SoC设计(758)1.7 基于知识产权的SoC关键技术与设计(759)1.8 基于IP核复用技术的SoC设计(759)1.9 将IP集成进SoC(759)1.10 模拟/混合电路SoC的设计难题(759)1.11 系统级可编程芯片(SOPC)设计思想与开发策略(759)1.12 基于SoC的PAGER控制芯片设计(759)1.13 一种高性能CMOS带隙电路的设计(759)1.14 基于结构的指纹分类技术(760)1.15 指纹识别的预处理组合算法(760)1.16 一种指纹识别的细节特征匹配的方法(760)1.17 指纹IC卡及其应用(760)1.18 人脸照片的特征提取与查询(760)1.19 一种快速、鲁棒的人脸检测方法(760)1.20 128条码的编码分析和识别算法(761)1.21 身份证号码快速识别系统(761)1.22 汉字识别技术的新方法及发展趋势(761)1.23 蓝牙技术及其应用展望(761)1.24 蓝牙技术浅析(761)1.25 蓝牙HCI USB传输层规范(761)1.26 蓝牙服务发现协议(SDP)的实现(761)1.27 蓝牙技术安全性解析(762)1.28 蓝牙技术及其应用(762)1.29 BluetoothASIC接口技术(762)1.30 RF CMOS蓝牙收发器的设计(一)(762)1.31 RF CMOS蓝牙收发器的设计(二)(762)1.32 单片蓝牙控制器AT76C551(762)1.33 设计RF CMOS蓝牙收发器(762)1.34 ROK 101 007/1蓝牙模块的特性与应用(763)1.35基于nRF401的PC机无线收发模块的设计(763)1.36 无线收发芯片nRF401在监测系统中的应用(763)1.37 基于射频收发芯片nRF401的计算机接口电路设计(763)1.38 采用nRF401实现单片机与PC机无线数据通信(763)1.39 基于射频收发芯片nRF403的无线接口电路设计(763)1.40 蓝牙局域网无线接入网关的研制(763)1.41 基于蓝牙的无线数据采集系统(764)1.42 安立蓝牙无线测试解决方案(764)1.43 嵌入式系统中的蓝牙电话应用规范的实现(764)1.44 蓝牙“三合一电话”的解决方案(764)1.45 用Bluetooth技术构建分布式污水处理控制系统(764)1.46 MPEG的发展动态及其未来预测(764)1.47 软件无线电的关键技术与未来展望(764)1.48 软件无线电与虚拟无线电(765)1.49 射频无线测控系统及其应用(765)1.50 一种新的感知工具——电子标记笔(765)1.51 智能住宅用户控制器设计(765)1.52 利用GPS对计算机实现精确授时(765)1.53 IP代理远程测控系统(765)1.54 曼彻斯特码编码与解码硬件实现(765)1.55 便携式设备中电源软开关设计的一种方法(766)1.56 便携式设备的电源方案设计(766)1.57 StrongARM及其嵌入式应用平台(766)1.58 嵌入式系统在光传输设备中的应用(766)1.59 光纤无源器件技术的发展方向(766) 二、 综合应用(767)2.1 数据存储技术的应用(767)2.2 SL11R单片机外部存储器扩展(767)2.3 构成大容量非易失性SRAM方法分析(767)2.4 一种专用高速硬盘存储设备的设计与实现(767)2.5 基于CDROM的嵌入式系统设计(767)2.6 串行E2PROM的应用设计与编程(767)2.7 利用UART扩展大容量具有SPI接口的快速串行E2PROM的方法(767)2.8 用单片机实现异步串行数据再生(768)2.9 非易失性数字性电位器与单片机的接口设计(768)2.10 数控电位器在频率可调信号源中的应用(768)2.11 单片机上一种新颖实用的ex函数计算方法(768)2.12 单片机系统设计的误区与对策(768)2.13 基于SystemC的嵌入式系统软硬件协同设计(768)2.14 一种基于JTAG TAP的嵌入式调试接口设计(769)2.15 工作频率可动态调整的单片机系统设计(769)2.16 嵌入式系统高效多串口中断源的实现(769)2.17 AVR单片机计时器的优化使用(769)2.18 可编程定时/计数器提高输出频率准确度方法(769)2.19 用插值调整法设计单片机串行口波特率(769)2.20 “频率准确度”自动校准(770)2.21 双时基频率校准电路(770)2.22 电压频率转换电路的动态特性分析及求解(770)2.23 单片机测控系统的低功耗设计(770)2.24 MCS96/196三字节浮点库(770)2.25 循环冗余校验方法研究(770)2.26 32位微处理器下伪SPI技术的研究与实现(770)2.27 智能仪表LED点阵显示模块的设计(771)2.28 点阵式图形VFD与单片机的硬件接口及编程技术(771)2.29 内置汉字字模的EPROM制作技术(771)2.30 利用VC++实现汉字字模的提取与小汉字库的生成(771)2.31 高分辨率电压与电流快速数据采集方法(771)2.32 单片机与数字温度传感器DS18B20的接口设计(771)2.33 新型温度传感器DS18B20高精度测温的实现(772)2.34 MAX6576/6577集成温度传感器(772)2.35 AD22105型低功耗可编程集成温度控制器(772)2.36 基于IEEE 1451.1的网络化智能传感器设计(772)2.37 数字式温度传感器与仪表的智能化设计(772)2.38 用单片机软件实现传感器温度误差补偿(772)2.39 Σ?Δ A/D转换器的原理及分析(772)2.40 一种提高A/D分辨率的信号调理电路设计(773)2.41 高精度数据转换器接口技术(773)2.42 高精度双积分A/D转换器与单片机接口的新方法(773)2.43 一种高速A/D与MCS51单片机的接口方法(773)2.44 基于串行FIFO双口RAM的高速A/D转换采集系统的设计(773)2.45 超高速数据采集系统的设计与实现(773)2.46 廉价隔离型高精度D/A转换器(774)2.47 智能卡及其应用技术研究(774)2.48 Jupiter GPS接收机数据的提取(774)2.49 基于单片机的脉冲频率的宽范围高精度测量(774)2.50 电源模块输入软启动电路的设计(774)2.51 不停车电子收费系统关键技术(774)2.52 一种直接采用计算机串行口控制步进电机的新方法(774)2.53 8051系列单片机通用鼠标接口程序设计(775)2.54 可编程ASIC与MCS51单片机接口设计及实现(775) 三、软件技术(776)3.1 无线信息设备的理想操作系统Symbian OS(776)3.2 TMS320C55x嵌入式实时多任务系统DSP/BIOS II(776)3.3 两种嵌入式操作系统的比较(776)3.4 用自由软件开发嵌入式应用(776)3.5 开放源代码软件的应用研究(776)3.6 清华嵌入式软件系统的解决方案(776)3.7 单片机应用程序的高级语言设计(777)3.8 基于RTX51的单片机软件设计(777)3.9 多网口通信在VXWORKS中的实现(777)3.10 嵌入式实时操作系统中实现MBUF(777)3.11 硬实时操作系统——RTLinux(777)3.12 Linux嵌入式系统的上层应用开发研究(777)3.13 嵌入式Linux内核下串行驱动程序的实现(777)3.14 嵌入式Linux的中断处理与实时调度的实现机制(778)3.15 基于Linux平台的应用研究(778)3.16 基于Linux的嵌入式系统开发(778)3.17 基于Linux的嵌入式系统设计与实现(778)3.18 基于RTLinux的实时控制系统(778)3.19 基于RTLinux的实时机器人控制器研究(778)3.20 嵌入式Linux系统在温室计算机控制中的应用(778)3.21 基于Linux的USB驱动程序实现(779)3.22 Linux环境下实现串口通信(779)3.23 Linux系统下RS485串行通信程序设计(779)3.24 Linux系统下蓝牙设备驱动程序研究和实现 (779)3.25 基于μCLinux和GPRS的无线数据通信系统(779)3.26 嵌入式Linux开发平台的USB主机接口设计(779)3.27 CAN通信卡的Linux设备驱动程序设计实现(779)3.28 μC/OSII实时操作系统内存管理的改进(780)3.29 μC/OSII在总线式数据采集系统中的应用(780)3.30 实时操作系统μC/OSII在MCF5272上的移植(780)3.31 μC/OSII在51XA上的移植应用(780)3.32 实时嵌入式内核在DSP上的移植实现(780)3.33 利用全局及外部变量实现C51无参数化调用A51函数(780)3.34 基于状态分析的键盘管理软件设计(780)3.35 PS/2接口C语言通信函数库设计(781)3.36 DS18B20接口的C语言程序设计(781)3.37 基于KeilC51的SLE4428 IC卡驱动程序设计(781)3.38 智能型并口用软件加密狗的设计(781)3.39 啤酒发酵控制器中的多任务分析与实现(781)3.40 CAN网络应用软件的设计与研究(781)3.41 USB软件系统的开发(782) 四、网络、通信与数据传输(783)4.1 网际协议过渡——从IPv4到IPv6(783)4.2 IPv6简介(783)4.3 传输控制协议(TCP)介绍(783)4.4 TCP/IP协议的ASIC设计与实现(783)4.5 IP电话的TCP/IP协议的实现方法(783)4.6 基于嵌入式TCP/IP协议栈的信息家电连接Internet单芯片解决方案(783)4.7 基于以太网的家庭网络平台(784)4.8 单芯片家庭网关平台CX821xx(784)4.9 用于单片机的以太网网关——网络通(784)4.10 基于“网络通”的单片机以太网CAN网关的应用(784)4.11 第三代快速以太网控制器及其应用(784)4.12 工业以太网在控制系统中的应用前景(784)4.13 工业以太网控制模块的研究与研制(785)4.14 以太网、控制网与设备网的性能比较与分析(785)4.15 嵌入式系统以太网控制器驱动程序的设计与实现(785)4.16 WIN9X下微机与单片机的串行通信(785)4.17 利用VB6.0实现PC机与单片机的串口通信(785)4.18 基于VB6的PC机与多台单片机通信的应用(785)4.19 用C++Builder6.0实现80C51与PC串行通信(785)4.20 VC++中实现基于多线程的串行通信(786)4.21 RS232串行通信线路的连接方法设计分析(786)4.22 高效率串行通信协议的设计(786)4.23 利用增强并口协议传输数据(786)4.24 应用于RS485网络的多信道串行通信接口的设计(786)4.25 以Visual C++实现PC与89C51之间的串行通信(786)4.26 智能多路RS422串行通信卡的设计(786)4.27 RS232接口转换为通用串行接口的设计原理(787)4.28 基于智能模块的RS485通信协议转换路由器(787)4.29 RS232接口转USB接口的通信方法(787)4.30 用VB实现PC与PDA的串行通信(787)4.31 利用WindowsAPI实现与GPS的串口通信(787)4.32 VB6.0在无线通信中的应用(787)4.33 用PTR2000实现单片机与PC机之间的无线数据通信(787)4.34 基于光纤RS232/RS485传输系统(788)4.35 利用串口实现PC与PDA的同步通信(788)4.36 实现32位单片机MC68332与PC机串行通信的底层程序设计(788)4.37 基于VB的USB设备检测通信研究(788)4.38 USB设备与PC机之间的通信机制的实现技术研究(788)4.39 利用MODEM实现单片机与PC机远程通信(788)4.40 谈谈电力线通信(788)4.41 低压电力线载波高速数据通信设计(789)4.42 PL2000在低压电力线载波通信中的应用(789)4.43 一种电力线扩频载波通信节点的具体实现(789)4.44 一种基于电力线的家庭以太网络实现方法(789)4.45 基于电力线载波的家庭智能化局域网研究(789)4.46 低压电力线扩频家庭自动化系统(789)4.47 智能家庭网络研究与开发(790)4.48 蓝牙在家庭网络中的实现(790)4.49 参照CEBus标准的家庭网络系统研究与实现(790)4.50 采用蓝牙技术构建智能家庭网络(790)4.51 家庭网络中的设备集成研究(790)4.52 一种嵌入式通信协议系统及在智能住宅网络中的应用(790)4.53 基于手机短消息(SMS)的远程无线监控系统的研制(791)4.54 基于GSM短信息方式的远程自来水厂地下水位自动监控系统(791)4.55 TC35及其在短消息自动抄表系统中的应用(791)4.56 计算机不同通信接口下的数据采集技术问题研究(791)4.57 80C152单片机在HDLC通信规程中的应用(791)4.58 内置MODEM通信模块在远程监测系统中的应用(791)4.59 用单片机普通I/O口实现多机通信的一种新方法(792)4.60 利用串行通信实现实时状态监控(792)4.61 基于FIFO芯片的单片机并行通信(792) 五、新器件与新技术(793)5.1 CYGNAL的C8051F02x系列高速SoC单片机(793)5.2 AduC812单片机控制系统的开发(793)5.3 可编程外围芯片PSD5xx与单片机68CHC11的接口(793)5.4 模糊单片机NLX230及其接口软硬件设计(793)5.5 低功耗MSP430单片机在3V与5V混合系统中的逻辑接口技术(793)5.6 MSP430F149单片机在便携式智能仪器中的应用(793)5.7 用MSP430F149单片机实现步进电机通用控制器(793)5.8 PIC和DS18B20温度传感器的接口设计(794)5.9 用P87LPC764单片机的I2C总线扩展“米”字形LED显示器(794)5.10 铁电存储器FM24C04原理及应用(794)5.11 CAT24C021在天文望远镜控制器中的应用(794)5.12 串行时钟芯片在智能传感器中的应用(794)5.13 RTC器件X1228及其在不间断供电系统中的应用(794)5.14 新型A/D转换技术——流水线ADC(794)5.15 集成芯片AD558及其应用(795)5.16 14位3MHz单片模数转换器AD9243的应用(795)5.17 16位模数转换器MAX195在单片机系统中的应用(795)5.18 24位模/数转换器CS5532及其应用(795)5.19 ADS7825模数转换芯片及其在高速数据采集系统中的应用(795)5.20 新型D/A变换器AD9755及其应用(795)5.21 单片机与串口D/A转换器MAX525的接口设计(795)5.22 几种PWN控制器(796)5.23 一种新型的可编程的4~20mA二线制变送器XTR108及其应用(796)5.24 可编程温度监控器ADT14及其应用(796)5.25 一种适用于51系列单片机的R/F转换电路(796)5.26 通用集成滤波器的特点及应用(796)5.27 串行显示驱动器PS7219及单片机的SPI接口设计(796)5.28 新型的键盘显示芯片——SK5279A的应用(797)5.29 高效语音压缩芯片AMBE—2000TM及其在语音压缩中的应用(797)5.30 适于语音处理的SDA80D51芯片及其数字录放音系统(797)5.31 基于ISD2560语音芯片的小型实用语音系统(797)5.32 发射信号处理器AD6622在软件无线电中的应用(797)5.33 基于UM3758108A芯片远距多路参数监测系统(797)5.34 单片频率计ICM7216D及应用(797)5.35 X25045芯片在微机测控系统中的应用(798)5.36 MC14562B在多CPU系统串行通信中的应用(798)5.37 高级串行通信控制器SAB82525及其应用(798)5.38 MAX121芯片在高速串行接口电路中的应用(798)5.39 应用DS2480实现RS232与单总线的串行接口(798)5.40 介绍一种真正的单芯片MODEM73M2901C/5V(798)5.41 HART调制解调器SYM20C15应用设计(799)5.42 TM1300同步串行接口与Modem模拟前端之间的通信(799)5.43 TEMIC系列射频卡及其应用(799)5.44 用Philips PCD600x实现多线电话并机(799)5.45 SDH专用集成电路套片DTT1C08A和DTT1C20A及其应用(799)5.46 GAL16V8用于步进电动机驱动器(799)5.47 UC3717步进电机驱动电路与89C2051单片机的接口技术(799)5.48 TinySwitch单片开关电源的设计方法(800)5.49 基于MAX883的动态供电设计(800)5.50 高压PWM电源控制器MAX5003及其应用(800)5.51 单片机与大功率负载的开关接口(800)5.52 迟滞开关功率转换器LM3485在电源系统中的应用(800)5.53 功率逻辑器件在嵌入式系统中的应用(800)5.54 TPS60101用于低功耗系统的电源解决方案(800)5.55 新型电能表芯片AT73C550及其应用(801)5.56 运动控制芯片MCX314及其应用(801) 六、总线技术(802)6.1 PCItoPCI桥及其应用设计(802)6.2 基于PCI总线的数据采集系统(802)6.3 VXI和PXI总线技术的应用及其发展前景(802)6.4 基于PC104总线的嵌入式以太网卡设计(802)6.5 基于RS485总线的传感器网络化技术研究(802)6.6 RS232总线转CAN总线装置的设计与实现(802)6.7 现场总线技术的发展与工业以太网综述(803)6.8 广义现场总线标准与工业以太网(803)6.9 用单片机设计现场总线转换网桥(803)6.10 基于LonWorks的在系统编程技术(803)6.11 Neuron芯片与MCS51系列单片机串行通信的实现(803)6.12 Neuron芯片多总线I/O对象的应用(803)6.13 CAN总线及其应用技术(804)6.14 CAN总线协议分析(804)6.15 CAN总线智能节点的设计和实现(804)6.16 CAN总线控制器SJA1000的原理及应用(804)6.17 CAN总线与PC机通信卡接口电路设计(804)6.18 CAN总线及其在测控系统中的实现(804)6.19 基于CAN总线的温度、压力控制系统(804)6.20 基于CAN总线的新型网络数控系统(805)6.21 CAN总线在混和动力汽车电机控制系统中的应用(805)6.22 CAN总线技术在石油钻井监控系统中的应用(805)6.23 一种电动阀的DeviceNet总线接口设计(805)6.24 单总线技术及其应用(805)6.25 美国DALLAS公司单线可编程数字温度传感器技术(805)6.26 基于单总线技术的农业温室控制系统设计(805)6.27 单总线协议转换器在分布式测控系统中的应用(806)6.28 单总线技术在电子信息识别系统中的应用(806)6.29 信息纽扣及其在安全巡检管理系统中的应用(806)6.30 SPI串行总线接口及其实现(806)6.31 通用串行总线USB及其产品开发(806)6.32 通用串行总线(USB)数据传输模型(806)6.33 基于USB总线的测试系统开发(806)6.34 一种USB外设的实现方法(807)6.35 基于USB接口的PTP协议在Win32上编程实现(807)6.36 USB在便携式外设间的应用及其协议(807)6.37 多USB接口的局域网接入技术的实现(807)6.38 USB接口设计及其在工业控制中的应用(807)6.39 USB技术在第四代数控测井系统中应用(807)6.40 用AN2131Q开发USB接口设备(807)6.41 USB/IrDA桥控制芯片STIr4200S(808)6.42 一种基于USB接口的家庭网络适配器的设计(808)6.43 基于USB总线的实时数据采集系统设计(808)6.44 基于SL11R的USB接口数据采集系统(808)6.45 基于USB的数据采集系统设计与实现(808)6.46 USB2.0在高速数采系统中应用(808)6.47 基于USB的航空检测数据采集系统的设计(808)6.48 基于USB总线的小型图像采集系统的设计(809)6.49 USB技术及其在图像数据传输中的应用(809)6.50 USB2.0在遥感图像采集中的应用(809)6.51 CCD摄像机的USB接口设计(809)6.52 带USB接口的发动机点火波形测量系统(809)6.53 USB接口智能传感器标定数据采集系统的设计(809)6.54 USB接口在粮仓自动测温系统中的应用(810)6.55 基于GPIF的USBATA解决方案(810)6.56 基于USB总线新型视频监视和会议系统(810)6.57 基于USB接口的高性能虚拟示波器(810)6.58 IEEE 1394与现场总线(810)6.59 IEEE 1394高速串行总线及其应用(810)6.60 EF4442及其应用(811) 七、可靠性及安全性技术(812)7.1 单片机系统可靠掉电保护的实现(812)7.2 提高单片机应用系统可靠性的软件技术(812)7.3 单片机应用系统中元器件的可靠性设计(812)7.4 DSP复位问题研究(812)7.5 计算机RAM检错纠错电路的设计与实现(812)7.6 利用USB接口进行软件加密的设计思想和实现方法(812)7.7 计算机电磁信息泄露与防护研究(813)7.8 USB软件狗的设计及反破解技术(813)7.9 全隔离微机与单片机的RS485通信技术(813)7.10 印制板的可靠性设计(813)7.11 多层布线的发展及其在电源电路电磁兼容设计中的应用(813)7.12 印制电路板的电磁兼容性预测(813)7.13 PCB的热设计(813)7.14 密码术研究综述(814)7.15 利用汇编语言实现DES加密算法(814)7.16 USB保护电路的选择(814)7.17 基于CAN总线的多机冗余系统的设计(814)7.18 蓝牙链路层安全性(814)7.19 开关电源谐波含量测试分析及抑制(814)7.20 系统可靠性冗余的优化研究(814)7.21 电子工程系统中电磁干扰的诊断和控制方法初探(815)7.22 微机化仪器电磁兼容性设计(815)7.23 电磁兼容设计中的屏蔽技术(815)7.24 几种电磁干扰的分析与解决(815)7.25 计算机的电磁干扰研究(815)7.26 电子电路中抗EMI设计(815)7.27 测试系统中干扰及其形成机理(816)7.28 一种基于ST62单片机的强抗干扰控制器的设计(816)7.29 微控制器硬件抗干扰技术(816)7.30 一种具有高抗干扰能力单片机通信电路的设计(816)7.31 测控系统抗干扰设计(816)7.32 单片机应用系统的抗干扰软件设计(816)7.33 变频系统测控软件抗干扰研究(816)7.34 快速瞬变脉冲群干扰的原理及硬件防护(817)7.35 巧用单片机软件抗系统瞬时干扰(817)7.36 微机式保护装置中浪涌干扰的硬件防护(817)7.37 具有抗干扰性能的单片机智能仪表的设计(817)7.38 RS232串行通信消除干扰噪声的设计方法分析(817)7.39 热插拔冗余电源的设计(817)7.40 IC卡读写器的密码识别(817)7.41 16位高抗干扰D/A转换(818) 八、DSP及其应用技术(819)8.1 TMS320F206定点DSP芯片开发实践(819)8.2 ADSP2181精简开发板的研制(819)8.3 DSP系统中的外部存储器设计(819)8.4 Flash存储器在DSP系统中的应用(819)8.5 DSP系统的硬盘接口研究(819)8.6 TMS320C6201与FlashRAM的接口设计与编程技术(819)8.7 基于DSP的实时MPEG4编码的软件优化设计(819)8.8 TMS320C62X DSP的软件开发与优化编程(820)8.9 IP安全内核及其DSP实现的研究(820)8.10 基于TMS320C54X DSK平台的Zoom?FFT的快速实现(820)8.11 高速DSP与串行A/D转换器TLC2558接口的设计(820)8.12 TMS320C2X DSP的一种实用人机接口的设计与实现(820)8.13 DSP系统中常用串口通信的设计(820)8.14 DSP与单片机之间串行通信的实现(821)8.15 基于DMA方式的8位单片机与16位DSP双机通信接口(821)8.16 DSP与PC机间的DMA通信接口设计(821)8.17 TMS320VC5402与I2C总线接口的实现(821)8.18 ZLG7289A与DSPSPI的接口技术(821)8.19 DSP与PCI总线接口设计及实现(821)8.20 TMS320C6X与PC高速通信的实现(822)8.21 DSP与PC之间的以太通信 (822)8.22 TM1300 DSP系统以太网接口的设计(822)8.23 基于DSP的CAN总线通信系统(822)8.24 TMS320VC5410 DSP中USB客户驱动程序开发与实现(822)8.25 基于TMS320C55x DSP的USB通信研究与固体设计(822)8.26 基于DSP的USB口数据采集分析系统(823)8.27 DSP数字信号处理器的浮点数正弦的实现(823)8.28 应用TMS320F240芯片设计高精度可控信号发生器(823)8.29 基于MSP430C325单片机的便携式体温计的设计(823)8.30 基于TMS320VC5409的语音识别模块(823)8.31 基于DSP的ADμC812应用系统设计(823) 九、HDL与可编程器件技术(824)9.1 一种基于CPLD器件的现代数字系统设计方法(824)9.2 基于可编程逻辑器件CPLD及硬件描述语言VHDL的EDA方法(824)9.3 利用硬件描述语言Verilog HDL实现对数字电路的设计和仿真(824)9.4 硬件描述语言VHDL指称语义的研究(824)9.5 VHDL语言逻辑综合的研究(824)9.6 CPLD/FPGA的优化设计(824)9.7 用单片机实现可编程逻辑器件的配置(825)9.8 UART的Verilog HDL实现及计算机辅助调试(825)9.9 基于CPLD的UART设计(825)9.10 用在系统可编程逻辑器件开发并行接口控制器(825)9.11 用CPLD设计EPP数据采集控制器(825)9.12 带FPGA的PCI接口应用(825)9.13 基于CPLD的PCI总线存储卡的设计(826)9.14 基于CPLD的中断控制器IP设计(826)9.15 基于FPGA设计的精度管理策略(826)9.16 VHDL语言在描述DES加密机中的应用(826)9.17 基于P89C51RD2 IAP功能的数据存取与软件升级(826)9.18 在系统可编程模拟器件ispPAC30及其应用(826)9.19 可编程模拟器设计及ispPAC30应用(826)9.20 ispPAD在模拟电路设计中的应用(827)9.21 在系统可编程模拟器件(ispPAC)及其应用(827)9.22 在系统可编程模拟器件ispPAC20及其应用(827)9.23 ispLSI1032E器件及其应用(827)9.24 用ispPAC20实现的最简温度测控系统(827)9.25 在系统可编程器件设计应用实例(827)9.26 在FPGA开发板上设计8051的开发平台(828)9.27 由可编程逻辑器件与单片机构成的双控制器(828)9.28 用VHDL设计专用串行通信芯片(828)9.29 基于FPGA的ARINC429总线接口芯片的设计与实现(828)9.30 I2C总线通信接口的CPLD实现(828)9.31 FPGA模拟MBUS总线的实现(828)9.32 基于FPGA的USB2.0控制器设计(828)9.33 USB外设接口的FPGA实现(829)9.34 循环冗余校验码的单片机及CPLD实现(829)9.35 可编程芯片在测控系统中的应用(829)9.36 可编程逻辑器件在浮点放大器中的应用(829)9.37 FPGA在高速多通道数据采集中的应用(829)9.38 在DSP采样系统中采用DAC实现量程自动转换(829)9.39 基于VHDL语言的数字频率计设计(830)9.40 基于VHDL语言的数字频率计的设计(830)9.41 CPLD在SPWM变频调速系统控制中的应用(830)9.42 ISP技术在交通控制器中的应用(830)9.43 基于ISP技术的有限状态机控制系统设计(830)9.44 如何使用ISP技术产生任意波形(830)9.45 打印控制卡的FPGA外围电路设计(830)9.46 加密可编程逻辑阵列芯片引脚的判别(831)9.47 蓝牙系统中的加密技术及其算法的FPGA实现(831)9.48 运用VHDL语言设计电视墙数字图像处理电路(831)9.49 CPLD在电路板故障诊断中的应用(831)9.50 用硬件描述语言设计一个简单的超标量流水线微处理器(831)9.51 用CPLD技术实现高速数据识别码检测器(831)9.52 用CPLD控制ISD2590语音芯片的技术应用(832) 十、综合应用(833)10.1 嵌入式处理器StrongARM的开发研究(833)10.2 基于StrongARM的视频采集与处理系统(833)10.3 基于StrongARM的远程网络监控系统设计(833)10.4 基于80C196KC的CAM锁定功能实现可控硅的触发控制(833)10.5 基于MSP430F149的低成本智能型电力监测仪(833)10.6 一种基于ADμC812单片机的数据采集器(833)10.7 基于PIC16C72单片机的线性V/F转换器设计(834)10.8 基于PIC16C923单片机的非接触式光纤温度测量仪(834)10.9 用89C2051构成智能仪表的键显接口(834)10.10 基于89C2051的解码器设计(834)10.11 基于AT89C2051的准方波逆变电源(834)10.12 单片机AT89C2051构成的智能型频率计(834)10.13 基于AT89C2051单片机的旋转变压器位置测量系统设计(834)10.14 AT89C2051单片机对显示驱动芯片MC14499的IC级代换(835)10.15 实用变量程模拟信号单片机检测电路(835)10.16 GPS高精度时钟的设计和实现(835)10.17 一种基于GPS的高速数据采集卡的实现(835)10.18 V/F转换电压测量系统(835)10.19 用20位DAC实现0~10 V可程控精密直流参考源的设计(835)10.20 单片MAX752实现的CCD供电电源的设计(835)10.21 基于双口RAM的智能型开关量控制卡的设计(836)10.22 矩阵键盘产生PC机键盘信号的应用设计(836)10.23 基于C51的汉字/数字混合液晶显示及更新的方法(836)10.24 实现串行E2PROM芯片的PC界面操作(836)10.25 一种软硬件结合的POCSAG码解码装置研制(836)10.26 蓝牙技术在医疗监护中的应用(836)10.27 一种红外感应泵液器的单片机应用设计(836)10.28 电话报警系统的设计(837)10.29 无轨电车整流站自动化监控系统(837)10.30 PWM恒流充电系统的设计(837)10.31 微功耗智能IC卡燃气表的研制(837)10.32 软件接口技术在串行通信中的应用(837)10.33 数字化直流接地系统绝缘检测仪的设计与开发(837)10.34 4Mbps红外无线计算机通信卡研制(837)10.35 MCB1电力测量控制仪中CAN总线通信模板的设计及编程(838)10.36 单片机在晶闸管触发电路中的应用(838)10.37 基于DS1302的子母钟系统(838)
上传时间: 2013-12-04
上传用户:vmznxbc
九.输入/输出保护为了支持多任务,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
用单片机实现温度远程显示摘 要:文章介绍了用AT89S8252单片机的串行接口与智能温度巡回检测仪(XJ-08S)通过RS—485总线相互通讯实现热水温度远程显示的一种低成本解决方案,内容涉及RS—485总线通讯、单片机驱动数码管显示、数据转换以及键盘处理软硬件设计等内容。关键词:单片机 RS—485总线 数码管显示 数据转换 键盘处理一、前 言目前检测温度一般采用热电偶或热敏电阻作为传感器,这种传感器至仪表之间一般都要用专用的温度补偿导线,而温度补偿导线价格很贵,并且线路太长也会影响测量精度。在实际应用中往往需要对较远处(1KM左右)的温度信号进行监视。现有的解决方案有很多,例如:1、 在现场用智能仪表对温度信号进行测量,用计算机作上位机与智能仪表进行通讯来实现远程温度监测(采用这种方案要增加计算机设备及相关计算机软件)。2、 NCU+DDC实现远程温度监测。用两个DDC,一个安装在现场测量温度,另一个安装在监视地,两个DDC通过NCU进行通讯从而实现远程温度监测。但以上方案都存在成本高的问题,有没有低成本的解决方案呢?其实,在单片机应用日益广泛的今天,完全可以用单片机以极低的成本来实现远程温度监测。二、问题的提出我单位管理的锅炉房同时给两栋建筑物内的两家酒店供应蒸汽,由安装在两栋建筑物地下室的热交换器进行热交换后产生热水送给客房。从锅炉房至两个热交换站的距离分别约600米,值班人员要不停地奔波于两个热交换站与锅炉房之间进行设备巡视,检查热水温度是否控制在规定的范围,这样不仅增加了值班人员的劳动强度,同时也使锅炉房经常无人(因每班1人值班)。如果能在锅炉房显示两个热交换站内各热交换器的热水温度,则值班人员仅在热水温度异常时才需到各热交换站检查设备,这样便可解决上述问题。我公司曾就此问题找专业公司作过方案,其报价在人民币10万元左右,后因种种原因该项目未实施。经过分析,本人发现可以用单片机+智能仪表以低成本实现温度远程显示,并且经过实验取得了成功,现将设计方案简述如下:三、控制要求及解决方案选择 1、 两个热交换站分高低区共安装有8个热交换器,正常水温在45oC至65oC之间;两个热交换站与锅炉房的距离分别为500米和600米左右。2、 要求在锅炉房能以巡回及定点两种方式显示8个热交换器的热水温度,巡回方式以3秒为周期轮流更新及显示各热交换器热水温度。定点方式时每按上键或下键一次则显示上或下一个热交换器热水温度,每3秒自动更新数据一次。3、 根据控制要求选择单片机+智能仪表的解决方案:用带通讯接口的智能仪表安装在现场测量温度,设计制作一个单片机装置完成与智能仪表的通讯及数据显示。四、通讯协议、智能仪表选择及其参数介绍因热水温度信号变化较慢,因而对通信的速度要求不高,对于这种低速率远距离的通讯选用RS-485总线适宜。RS-485是EIA(美国电子工业联合会)在1983年公布的新的平衡传输标准,是工业界使用最为广泛的双向、平衡传输线标准接口,它以半双工方式通信,支持多点连接,传统驱动器允许创建多达32个节点的网络,且其具有传输距离远(最大传输距离为1200M),传输速度快(1200M时为100KBPS)等优点。其连接方法如下图所示。
上传时间: 2013-10-12
上传用户:luopoguixiong
摘要:设计并实现了一个USB/EPP 转接系统,给出其硬件设计方案并讨论了相关技术细节, 使其实现USB 接口到EPP接口的相互数据转发。使仅具有EPP 接口的传统仪器设备借助于USB/EPP 转接系统拥有USB 总线所提供的即插即用和设备插架特性, 方便其通过USB 接口灵活接入同时拥有多个外设的计算机主机系统。关键词:USB;EPP;转接系统中图分类号:TP368.3 文献标识码:A文章编号:1008- 0570(2005)11- 2- 0166- 03 在传统的I/O 模式中,计算机外设通常映射为CPU 中固定I/O 地址,要求由主机分配一个指定的IRQ 中断请求。由于PC 机的端口和中断资源有限,因而使外设的可扩展性受到局限;同时,随着电脑应用的拓展,PC 机的外设接口越来越多,外设对系统资源的独占性也容易导致系统资源冲突。由于各种外部设备不断增加,容易导致各种I/O 冲突。由Intel、Compaq、Microsoft、IBM等厂商所提出的USB 总线标准,基于即插即用和设备插架技术,设备接入时不影响应用程序的运行,具有良好的可扩充性和扩展的方便性。目前USB 协议已经发展到了最新的2.0 版本,可支持峰值传输速率为480Mbps 的高速外设,可提供4~8 个USB 2.0 接口,同时通过USB 集线器(HUB)的扩展还可以支持多达127 个外设同时连接,基本上解决了各种外设同时存在同时使用的所有问题。基于USB 接口的上述优点,目前的计算机,特别是笔记本计算机基本上都只配备USB 接口,而取消了传统的串口和并口,这对那些以前购置的需要与计算机进行通信而只有串口或并口的各种仪器的继续使用造成了极大的障碍。 针对传统的数字化仪器与计算机通信中存在的接口不足的问题,本文设计了一个USB/EPP 转接系统,使其能够从计算机的USB 接口接收数据,经过格式转换,从USB/EPP 转接系统的并行接口EPP 发送给传统的仪器设备;同时也能够从USB/EPP 转接系统的并行接口EPP 接收数据,将其转化为USB 帧格式,并发送到计算机的USB 接口。从而使仅具有EPP 接口的传统仪器设备借助于USB/EPP 转接系统,可以继续正常使用。2 USB 总线2.1 USB 系统描述及总线协议USB 是一种电缆总线,支持在主机和各种即插即用外设之间进行数据传输。由主机预定的标准协议使各种设备分享USB 带宽,当其它设备和主机在运行时,总线允许添加、设置、使用以及拆除外设,这为多个仪器设备共享同一个主计算机提供了可能。USB 协议采用了管道模型的软硬件协议,摒弃了一般外设协议的端口映射方式,从而有效地避免了计算机应用系统I/O 端口地址冲突。根据功能划分,一个USB 系统由三个部分组成:即USB 互连、USB 主机和USB 设备。图1 给出了USB系统的通用拓扑结构。
上传时间: 2013-10-09
上传用户:半熟1994
1. RS-232-C 详解 22. 串口通信基本接线方法 123. 串口通讯的概念及接口电路 134. 有关RS232和RS485接口的问答 145. 同步通信方式 166. 通信协议197. 实战串行通讯258. 全双工和半双工方式 339. 浅析PC 机串口通讯流控制 3410. 奇偶校验 3511. 开发通信软件的技术与技巧 3612. 接口技术的基本知识 4113. 一个单片机串行数据采集/传输模块的设计 4414. 单工、半双工和全双工的定义 4815. 从RS232 端口获得电源4916. 串行同步通信的应用5017. 串行通信波特率的一种自动检测方法5318. RS-232、RS-422 与RS-485 标准及应用5619. 串口泵 6串行通信接口标准经过使用和发展,目前已经有几种。但都是在RS-232标准的基础上经过改进而形成的。所以,以RS-232C为主来讨论。RS-323C 标准是美国EIA(电子工业联合会)与BELL等公司一起开发的1969 年公布的通信协议。它适合于数据传输速率在0~20000b/s 范围内的通信。这个标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。由于通行设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。在讨论RS-232C 接口标准的内容之前,先说明两点:首先,RS-232-C标准最初是远程通信连接数据终端设备DTE(Data Terminal Equipment)与数据通信设备DCE(Data Communication Equipment)而制定的。因此这个标准的制定,并未考虑计算机系统的应用要求。但目前它又广泛地被借来用于计算机(更准确的说,是计算机接口)与终端或外设之间的近端连接标准。显然,这个标准的有些规定及和计算机系统是不一致的,甚至是相矛盾的。有了对这种背景的了解,我们对RS-232C标准与计算机不兼容的地方就不难理解了。其次,RS-232C 标准中所提到的“发送”和“接收”,都是站在DTE 立场上,而不是站在DCE 的立场来定义的。由于在计算机系统中,往往是CPU 和I/O设备之间传送信息,两者都是DTE,因此双方都能发送和接收。
上传时间: 2013-11-21
上传用户:crazyer
随着 微 电 子技术的飞速发展,电子产品越来越微型化,集成化,自动化,低廉化,进而推动着其它许多产业的发展。特别进人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
如同今天的许多通用单片机(MCU)已经把USB、CAN和以太网作为标准外设集成在芯片内部一样,越来越多的无线网络芯片和无线网络解决方案也在向集成SoC 方向发展,比如第一代产品,Nordic公司nRF905,Chipcon公司cc1010 他们集成了8051兼容的单片机.这些无线单片机适合一般的点对点和点对多点的私有网络应用,如单一产品的遥控器和抄表装置等。无线通讯技术给智能装置的互连互通提供了便捷的途径,工业无线网络作为面向工业和家庭自动化的网络技术也正在向着智能,标准和节能方向发展。 目前在工业控制和消费电子领域使用的无线网络技术有ZigBee、无线局域网(Wi-Fi)、蓝牙(Blutooth)、GPRS通用分组无线业务、 ISM、IrDA等, 未来还能有3G、超宽频(UWB)、无线USB、Wimax等。 当然还有大量的私有和专用无线网络在工业控制和消费电子装置中使用,其中ZigBee、GPRS是在目前在国内工业控制中讨论和使用比较多的两种,蓝牙和无线局域网是在消费电子产品如手机、耳机、打印机、照相机和家庭中小企业网络中广泛使用的无线协议(个别工业产品也有应用,如无线视频监控和汽车音响系统),当然私有无线网络技术和产品在工业也有很多的应用。 ZigBee是一个低功耗、短距离和低速的无线网络技术,工作在2.4GHz国际免执照的频率,在IEEE标准上它和无线局域网、蓝牙同属802家族中的无线个人区域网络, ZigBee是有两部分组成,物理和链路层符合IEEE802.15.4, 网络和应用层符合ZigBee联盟的规范。ZigBee联盟是在2002年成立的非盈利组织,有包括TI、霍尼威尔、华为在内两百多家成员, ZigBee联盟致力推广兼容802.15.4和ZigBee协议的平台, 制定网络层和应用架构的公共规范,希望在楼宇自动化、居家控制、家用电器、工业自动控制和电脑外设等多方面普及ZigBee标准。 GPRS是在现有的GSM 网络发展出来的分组数据承载业务,它工作在标准的GSM频率,由于是一个分组交换系统,它适合工业上的突发,少量的数据传输,还因为GSM网络覆盖广泛,永远在线的特点,GPRS特点适合工业控制中的远程监控和测量系统。在工业控制应用中GPRS 芯片一般是以无线数传模块形式出现的,它通过RS232全双工接口和单片机连接,软件上这些模块都内置了GPRS,PPP和TCP/IP协议,单片机侧通过AT指令集向模块发出测试,连接和数据收发指令,GPRS模块通过中国移动cmnet进入互联网和其他终端或者服务器通讯。目前市场常见的模块有西门子G24TC45、TC35i,飞思卡尔G24,索爱GR47/48, 还有Wavecom 的集成了ARM9核的GPRS SoC模块WMP50/100。GPRS模块有区分自带TCP/IP协议和不带协议两种,一般来讲,如果是单片机侧有嵌入式操作系统和TCP/IP协议支持的话或者应用的要求只是收发短信和语音功能的话,可以选择不带协议的模块。 先进的SoC技术正在无线应用领域发挥重要的作用。德州仪器收购了Chipcon公司以后发布的CC2430 是市场上首款SoC的ZigBee单片机, 见图1,它把协议栈z-stack集成在芯片内部的闪存里面, 具有稳定可靠的CC2420收发器,增强性的8051内核,8KRAM,外设有I/O 口,ADC,SPI,UART 和AES128 安全协处理器,三个版本分别是32/64/128K的闪存,以128K为例,扣除基本z-stack协议还有3/4的空间留给应用代码,即使完整的ZigBee协议,还有近1/2的空间留给应用代码,这样的无线单片机除了处理通讯协议外,还可以完成一些监控和显示任务。这样无线单片机都支持通过SPI或者UART与通用单片机或者嵌入式CPU结合。 2008年4月发表CC2480新一代单片ZibBee认证处理器就展示出和TI MSP430 通用的低功耗单片机结合的例子。图1 CC2430应用电路 工业控制领域的另一个芯片巨头——飞思卡尔的单片ZigBee处理器MC1321X的方案也非常类似,集成了HC08单片机核心, 16/32/64K 闪存,外设有GPIO, I2C和ADC, 软件是Beestack 协议,只是最多4K RAM 对于更多的任务显得小了些。但是凭借32位单片机Coldfire和系统软件方面经验和优势, 飞思卡尔在满足用户应用的弹性需求方面作的更有特色,它率先能够提供从低-中-高各个层面的解决方案,见图2。
上传时间: 2013-11-02
上传用户:momofiona
这是一本关于Intel 80C51 以及广大的51 系列单片机的书这本书介绍给读者一些新的技术使你的8051 工程和开发过程变得简单请注意这本书的目的可不是教你各种8051 嵌入式系统的解决方法为使问题讨论更加清晰在适当的地方给出了程序代码我们以讨论项目的方法来说明每章碰到的问题所有的代码都可在附带的光盘上找到你必须熟系C 和8051 汇编因为本书不是一本C 和汇编的指导书你可以买到不少关于ANSI C 的书最佳选择当然是Intel的数据书可从你的芯片供应商处免费索取和随编译工具附送的手册附送光盘中有我为这本书编写和收集的程序这些程序已经通过测试这并不意味着你可以随时把这些程序加到你的应用系统或工程中有些地方必须首先经过修改才能结合到你的程序中这本书将教你充分使用你的工具如果你只有8051 的汇编程序你也可以学习该书和使用这些例子但是你必须把C 语言的程序装入你的汇编程序中这对懂得C 语言和8051汇编程序指令的人来说并不是一件困难的事如果你有C 编译器的话那恭喜你使用C 语言进行开发是一个好的决定你会发现使用C 进行开发将使你的工程开发和维护的时间大大减少如果你已经拥有Keil C51 那你已经选择了一个非常好的开发工具我发现Keil 软件包能够提供最好的支持本书支持Keil C 的扩展如果你有其它的开发工具像Archimedes 和Avocet 这本书也能很好地为你服务但你必须根据你所用的开发工具改变一些Keil 的特殊指令在书的一些地方有硬件图实例程序在这些硬件上运行这些图绘制地不是很详细主要是方框图但足以使读者明白软件和硬件之间的接口读者应该把这本书看成工具书而不是用来学习各种系统设计通过本书你可以了解给定一定的硬件和软件设计之后8051 的各种性能希望你能从本书中获取灵感并有助于你的设计使你豁然开朗当然我希望你也能够从本书中学到有用的知识使之能够提升你的设计 8051 系列微处理器基于简化的嵌入式控制系统结构被广泛应用于从军事到自动控制再到PC 机上的键盘上的各种应用系统上仅次于Motorola 68HC11 在 8 位微控制器市场上的销量很多制造商都可提供8051 系列单片机像Intel Philips Siemens 等这些制造商给51 系列单片机加入了大量的性能和外部功能像I2C 总线接口模拟量到数字量的转换看门狗PWM 输出等不少芯片的工作频率达到40M 工作电压下降到1.5V 基于一个内核的这些功能使得8051 单片机很适合作为厂家产品的基本构架它能够运行各种程序而且开发者只需要学习这一个平台8051 系列的基本结构如下1 一个8 位算术逻辑单元2 32 个I/O 口4 组8 位端口可单独寻址3 两个16 位定时计数器4 全双工串行通信5 6 个中断源两个中断优先级6 128 字节内置RAM7 独立的64K 字节可寻址数据和代码区每个8051 处理周期包括12 个振荡周期每12 个振荡周期用来完成一项操作如取指令和计算指令执行时间可把时钟频率除以12 取倒数然后指令执行所须的周期数因此如果你的系统时钟是11.059MHz 除以12 后就得到了每秒执行的指令个数为921583条指令取倒数将得到每条指令所须的时间1.085ms
上传时间: 2013-11-09
上传用户:chenlong
微处理器及微型计算机的发展概况 第一代微处理器是以Intel公司1971年推出的4004,4040为代表的四位微处理机。 第二代微处理机(1973年~1977年),典型代表有:Intel 公司的8080、8085;Motorola公司的M6800以及Zlog公司的Z80。 第三代微处理机 第三代微机是以16位机为代表,基本上是在第二代微机的基础上发展起来的。其中Intel公司的8088。8086是在8085的基础发展起来的;M68000是Motorola公司在M6800 的基础发展起来的; 第四代微处理机 以Intel公司1984年10月推出的80386CPU和1989年4月推出的80486CPU为代表, 第五代微处理机的发展更加迅猛,1993年3月被命名为PENTIUM的微处理机面世,98年PENTIUM 2又被推向市场。 INTEL CPU 发展历史Intel第一块CPU 4004,4位主理器,主频108kHz,运算速度0.06MIPs(Million Instructions Per Second, 每秒百万条指令),集成晶体管2,300个,10微米制造工艺,最大寻址内存640 bytes,生产曰期1971年11月. 8085,8位主理器,主频5M,运算速度0.37MIPs,集成晶体管6,500个,3微米制造工艺,最大寻址内存64KB,生产曰期1976年 8086,16位主理器,主频4.77/8/10MHZ,运算速度0.75MIPs,集成晶体管29,000个,3微米制造工艺,最大寻址内存1MB,生产曰期1978年6月. 80486DX,DX2,DX4,32位主理器,主频25/33/50/66/75/100MHZ,总线频率33/50/66MHZ,运算速度20~60MIPs,集成晶体管1.2M个,1微米制造工艺,168针PGA,最大寻址内存4GB,缓存8/16/32/64KB,生产曰期1989年4月 Celeron一代, 主频266/300MHZ(266/300MHz w/o L2 cache, Covington芯心 (Klamath based),300A/333/366/400/433/466/500/533MHz w/128kB L2 cache, Mendocino核心 (Deschutes-based), 总线频率66MHz,0.25微米制造工艺,生产曰期1998年4月) Pentium 4 (478针),至今分为三种核心:Willamette核心(主频1.5G起,FSB400MHZ,0.18微米制造工艺),Northwood核心(主频1.6G~3.0G,FSB533MHZ,0.13微米制造工艺, 二级缓存512K),Prescott核心(主频2.8G起,FSB800MHZ,0.09微米制造工艺,1M二级缓存,13条全新指令集SSE3),生产曰期2001年7月. 更大的缓存、更高的频率、 超级流水线、分支预测、乱序执行超线程技术 微型计算机组成结构单片机简介单片机即单片机微型计算机,是将计算机主机(CPU、 内存和I/O接口)集成在一小块硅片上的微型机。 三、计算机编程语言的发展概况 机器语言 机器语言就是0,1码语言,是计算机唯一能理解并直接执行的语言。汇编语言 用一些助记符号代替用0,1码描述的某种机器的指令系统,汇编语言就是在此基础上完善起来的。高级语言 BASIC,PASCAL,C语言等等。用高级语言编写的程序称源程序,它们必须通过编译或解释,连接等步骤才能被计算机处理。 面向对象语言 C++,Java等编程语言是面向对象的语言。 1.3 微型计算机中信息的表示及运算基础(一) 十进制ND有十个数码:0~9,逢十进一。 例 1234.5=1×103 +2×102 +3×101 +4×100 +5×10-1加权展开式以10称为基数,各位系数为0~9,10i为权。 一般表达式:ND= dn-1×10n-1+dn-2×10n-2 +…+d0×100 +d-1×10-1+… (二) 二进制NB两个数码:0、1, 逢二进一。 例 1101.101=1×23+1×22+0×21+1×20+1×2-1+1×2-3 加权展开式以2为基数,各位系数为0、1, 2i为权。 一般表达式: NB = bn-1×2n-1 + bn-2×2n-2 +…+b0×20 +b-1×2-1+… (三)十六进制NH十六个数码0~9、A~F,逢十六进一。 例:DFC.8=13×162 +15×161 +12×160 +8×16-1 展开式以十六为基数,各位系数为0~9,A~F,16i为权。 一般表达式: NH= hn-1×16n-1+ hn-2×16n-2+…+ h0×160+ h-1×16-1+… 二、不同进位计数制之间的转换 (二)二进制与十六进制数之间的转换 24=16 ,四位二进制数对应一位十六进制数。举例:(三)十进制数转换成二、十六进制数整数、小数分别转换 1.整数转换法“除基取余”:十进制整数不断除以转换进制基数,直至商为0。每除一次取一个余数,从低位排向高位。举例: 2. 小数转换法“乘基取整”:用转换进制的基数乘以小数部分,直至小数为0或达到转换精度要求的位数。每乘一次取一次整数,从最高位排到最低位。举例: 三、带符号数的表示方法 机器数:机器中数的表示形式。真值: 机器数所代表的实际数值。举例:一个8位机器数与它的真值对应关系如下: 真值: X1=+84=+1010100B X2=-84= -1010100B 机器数:[X1]机= 01010100 [X2]机= 11010100(二)原码、反码、补码最高位为符号位,0表示 “+”,1表示“-”。 数值位与真值数值位相同。 例 8位原码机器数: 真值: x1 = +1010100B x2 =- 1010100B 机器数: [x1]原 = 01010100 [x2]原 = 11010100原码表示简单直观,但0的表示不唯一,加减运算复杂。 正数的反码与原码表示相同。 负数反码符号位为 1,数值位为原码数值各位取反。 例 8位反码机器数: x= +4: [x]原= 00000100 [x]反= 00000100 x= -4: [x]原= 10000100 [x]反= 111110113、补码(Two’s Complement)正数的补码表示与原码相同。 负数补码等于2n-abs(x)8位机器数表示的真值四、 二进制编码例:求十进制数876的BCD码 876= 1000 0111 0110 BCD 876= 36CH = 1101101100B 2、字符编码 美国标准信息交换码ASCII码,用于计算 机与计算机、计算机与外设之间传递信息。 3、汉字编码 “国家标准信息交换用汉字编码”(GB2312-80标准),简称国标码。 用两个七位二进制数编码表示一个汉字 例如“巧”字的代码是39H、41H汉字内码例如“巧”字的代码是0B9H、0C1H1·4 运算基础 一、二进制数的运算加法规则:“逢2进1” 减法规则:“借1当2” 乘法规则:“逢0出0,全1出1”二、二—十进制数的加、减运算 BCD数的运算规则 循十进制数的运算规则“逢10进1”。但计算机在进行这种运算时会出现潜在的错误。为了解决BCD数的运算问题,采取调整运算结果的措施:即“加六修正”和“减六修正”例:10001000(BCD)+01101001(BCD) =000101010111(BCD) 1 0 0 0 1 0 0 0 + 0 1 1 0 1 0 0 1 1 1 1 1 0 0 0 1 + 0 1 1 0 0 1 1 0 ……调整 1 0 1 0 1 0 1 1 1 进位 例: 10001000(BCD)- 01101001(BCD)= 00011001(BCD) 1 0 0 0 1 0 0 0 - 0 1 1 0 1 0 0 1 0 0 0 1 1 1 1 1 - 0 1 1 0 ……调整 0 0 0 1 1 0 0 1 三、 带符号二进制数的运算 1.5 几个重要的数字逻辑电路编码器译码器计数器微机自动工作的条件程序指令顺序存放自动跟踪指令执行1.6 微机基本结构微机结构各部分组成连接方式1、以CPU为中心的双总线结构;2、以内存为中心的双总线结构;3、单总线结构CPU结构管脚特点 1、多功能;2、分时复用内部结构 1、控制; 2、运算; 3、寄存器; 4、地址程序计数器堆栈定义 1、定义;2、管理;3、堆栈形式
上传时间: 2013-10-17
上传用户:erkuizhang