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

可重<b>配置</b>

  • VK2C21一款存储器映射和多功能抗干扰LCD 控制 / 驱动显示芯片:VK2C21A/B/C/D

    产品型号:VK2C21A/B/C/D 产品品牌:VINKA/永嘉微/永嘉微电 封装形式:SOP28/24/20/16 裸片:DICE(邦定COB)/COG(邦定玻璃用) 产品年份:新年份 联 系 人:许硕  原厂直销,工程服务,技术支持,价格最具优势! VK2C21A/B/C/D概述: VK2C21是一个点阵式存储映射的LCD驱动器,可支持最大80点(20SEGx4COM)或者最大128点(16SEGx8COM)的LCD屏。单片机可通过I2C接口配置显示参数和读写显示数据,也可通过指令进入省电模式。其高抗干扰,低功耗的特性适用于水电气表以及工控仪表类产品。 特点: ★  工作电压 2.4-5.5V ★  内置32 kHz RC振荡器 ★  偏置电压(BIAS)可配置为1/3、1/4 ★  COM周期(DUTY)可配置为1/4、1/8 ★  内置显示RAM为20x4位、16x8位 ★  帧频可配置为80Hz、160Hz ★  省电模式(通过关显示和关振荡器进入)

    标签: 21 VK2C C21 LCD VK2 VK 2C 存储器 多功能 映射

    上传时间: 2022-04-08

    上传用户:2937735731

  • 抗干扰高稳定性:VK2C23A/B I2C接口LCD控制显示段码屏驱动IC

    产品型号:VK2C23A/B 产品品牌:VINKA/永嘉微/永嘉微电 封装形式:LQFP64/48 裸片:DICE(邦定COB)/COG(邦定玻璃用) 产品年份:新年份 联 系 人:许硕  原厂直销,工程服务,技术支持,价格最具优势!QT394   VK2C23A/B概述: VK2C23A/B是一个点阵式存储映射的LCD驱动器,可支持最大224点(56SEGx4COM)或者最大416点(52SEGx8COM)的LCD屏。单片机可通过I2C接口配置显示参数和读写显示数据,也可通过指令进入省电模式。其高抗干扰,低功耗的特性适用于水电气表以及工控仪表类产品。 特点: ★  工作电压 2.4-5.5V ★  内置32 kHz RC振荡器 ★  偏置电压(BIAS)可配置为1/3、1/4 ★  COM周期(DUTY)可配置为1/4、1/8 ★  内置显示RAM为56x4位、52x8位 ★  帧频可配置为80Hz、160Hz ★  省电模式(通过关显示和关振荡器进入)

    标签: VK2C I2C LCD 23 抗干扰 高稳定 接口 控制 驱动IC

    上传时间: 2022-04-16

    上传用户:2937735731

  • 基于FPGA的B型超声成像系统的设计与实现.rar

    便携式B型超声诊断仪具有无创伤、简便易行、相对价廉等优势,在临床中越来越得到广泛的应用。它将超声波技术、微电子技术、计算机技术、机械设计与制造及生物医学工程等技术融合在一起。开展该课题的研究对提高临床诊断能力和促进我国医疗事业的发展具有重要的意义。 便携式B型超声诊断仪由人机交互系统、探头、成像系统、显示系统构成。其基本工作过程是:首先人机交互系统接收到用户通过键盘或鼠标发出的命令,然后成像系统根据命令控制探头发射超声波,并对回波信号处理、合成图像,最后通过显示系统完成图像的显示。 成像系统作为便携式B型超声诊断仪的核心对图像质量有决定性影响,但以前研制的便携式B型超声诊断仪的成像系统在三个方面存在不足:第一、采用的是单片机控制步进电机,控制精度不高,导致成像系统采样不精确;第二、采用的数字扫描变换算法太粗糙,影响超声图像的分辨率;第三、它的CPU多采用的是51系列单片机,测量速度太慢,同时也不便于系统升级和扩展。 针对以上不足,提出了基于FPGA的B型超声成像系统解决方案,采用Altera公司的EP2C5Q208C8芯片实现了步进电机步距角的细分,使电机旋转更匀速,提高了采样精度;提出并采用DSTI-ULA算法(Uniform Ladder Algorithm based on Double Sample and Trilinear Interotation)在FPGA内实现数字扫描变换,提高了图像分辨率;人机交互系统采用S3C2410-AL作为CPU,改善了测量速度和系统的扩展性。 通过对系统硬件电路的设计、制作,软件的编写、调试,结果表明,本文所设计的便携式B型超声成像系统图像分辨率高、测量速度快、体积小、操作方便。本文所设计的便携式B型超声诊断仪可在野外作业和抢险(诸如地震、抗洪)中发挥作用,同时也可在乡村诊所中完成对相关疾病的诊断工作。

    标签: FPGA 超声成像

    上传时间: 2013-05-18

    上传用户:helmos

  • 基于ARM的全数字B型超声诊断仪的设计与研究

    超声理论与技术的快速发展,使超声设备不断更新,超声检查已成为预测和评价疾病及其治疗结果不可缺少的重要方法。超声诊断技术不仅具有安全、方便、无损、廉价等优点,其优越性还在于它选用诊断参数的多样性及其在工程上实现的灵活性。 全数字B超诊断仪基于嵌入式ARM9+FPGA硬件平台、LINUX嵌入式操作系统,是一种新型的、操作方便的、技术含量高的机型。它具有现有黑白B超的基本功能,能够对超声回波数据进行灵活的处理,从而使操作更加方便,图象质量进一步提高,并为远程医疗、图像存储、拷贝等打下基础,是一种很有发展前景、未来市场的主打产品。全数字B型超声诊断仪的基本技术特点是用数字硬件电路来实现数据量极其庞大的超声信息的实时处理,它的实现主要倚重于FPGA技术。现在FPGA已经成为多种数字信号处理(DSP)应用的强有力解决方案。硬件和软件设计者可以利用可编程逻辑开发各种DSP应用解决方案。可编程解决方案可以更好地适应快速变化的标准、协议和性能需求。 本论文首先阐述了医疗仪器发展现状和嵌入式计算机体系结构及发展状况,提出了课题研究内容和目标。然后从B超诊断原理及全数字B超诊断仪设计入手深入分析了B型超声诊断仪的系统的硬件体系机构。对系统的总体框架和ARM模块设计做了描述后,接着分析了超声信号进行数字化处理的各个子模块、可编程逻辑器件的结构特点、编程原理、设计流程以及ARM处理模块和FPGA模块的主要通讯接口。接着,本论文介绍了基于ARM9硬件平台的LINUX嵌入式操作系统的移植和设备驱动的开发,详细描述了B型超声诊断仪的软件环境的架构及其设备驱动的详细设计。最后对整个系统的功能和特点进行了总结和展望。

    标签: ARM 全数字 仪的设计 超声诊断

    上传时间: 2013-05-28

    上传用户:sssnaxie

  • 可重构FPGA通讯纠错进化电路及其实现

    ASIC对产品成本和灵活性有一定的要求.基于MCU方式的ASIC具有较高的灵活性和较低的成本,然而抗干扰性和可靠性相对较低,运算速度也受到限制.常规ASIC的硬件具有速度优势和较高的可靠性及抗干扰能力,然而不是灵活性较差,就是成本较高.与传统硬件(CHW)相比,具有一定可配置特性的场可编程门阵列(FPGA)的出现,使建立在可再配置硬件基础上的进化硬件(EHW)成为智能硬件电路设计的一种新方法.作为进化算法和可编程器件技术相结合的产物,可重构FPGA的研究属于EHW的研究范畴,是研究EHW的一种具体的实现方法.论文认为面向分类的专用类可重构FPGA(ASR-FPGA)的研究,可使可重构电路粒度划分的针对性更强、设计更易实现.论文研究的可重构FPGA的BCH通讯纠错码进化电路是一类ASR-FPGA电路的具体方法,具有一定的实用价值.论文所做的工作主要包括:(1)BCH编译码电路的设计——求取实验用BCH码的生成多项式和校验多项式及其相应的矩阵并构造实验用BCH码;(2)建立基于可重构FPGA的基核——构造具有可重构特性的硬件功能单元,以此作为可重构BCH码电路的设计基础;(3)构造实现可重构BCH纠错码电路的方法——建立可重构纠错码硬件电路算法并进行实验验证;(4)在可重构纠错码电路基础上,构造进化硬件控制功能块的结构,完成各进化RLA控制模块的验证和实现.课题是将可重构BCH码的编译码电路的实现作为一类ASR-FPGA的研究目标,主要成果是根据可编程逻辑电路的特点,选择一种可编程树的电路模型,并将它作为可重构FPGA电路的基核T;通过对循环BCH纠错码的构造原理和电路结构的研究,将基核模型扩展为能满足纠错码电路需要的纠错码基本功能单元T;以T作为再划分的基本单元,对FPGA进行"格式化",使T规则排列在FPGA上,通过对T的控制端的不同配置来实现纠错码的各个功能单元;在可重构基核的基础上提出了纠错码重构电路的嵌套式GA理论模型,将嵌套式GA的染色体串作为进化硬件描述语言,通过转换为相应的VHDL语言描述以实现硬件电路;采用RLA模型的有限状态机FSM方式实现了可重构纠错码电路的EHW的各个控制功能块.在实验方面,利用Xilinx FPGA开发系统中的VHDL语言和电路图相结合的设计方法建立了循环纠错码基核单元的可重构模型,进行循环纠错BCH码的电路和功能仿真,在Xilinx公司的Virtex600E芯片进行了FPGA实现.课题在研究模型上选取的是比较基本的BCH纠错码电路,立足于解决基于可重构FPGA核的设计的基本问题.课题的研究成果及其总结的一套ASR-FPGA进化硬件电路的设计方法对实际的进化硬件设计具有一定的实际指导意义,提出的基于专用类基核FPGA电路结构的研究方法为新型进化硬件的器件结构的设计也可提供一种借鉴.

    标签: FPGA 可重构 通讯 纠错

    上传时间: 2013-07-01

    上传用户:myworkpost

  • MCS-51系列单片机实用接口技术

    本书全面、系统地介绍了MCS-51系列单片机应用系统的各种实用接口技术及其配置。   内容包括:MCS-51系列单片机组成原理:应用系统扩展、开发与调试;键盘输入接口的设计及调试;打印机和显示器接口及设计实例;模拟输入通道接口技术;A/D、D/A、接口技术及在控制系统中的应用设计;V/F转换器接口技术、串行通讯接口技术以及其它与应用系统设计有关的实用技术等。   本书是为满足广大科技工作者从事单片机应用系统软件、硬件设计的需要而编写的,具有内容新颖、实用、全面的特色。所有的接口设计都包括详细的设计步骤、硬件线路图及故障分析,并附有测试程序清单。书中大部分接口软、硬件设计实例都是作者多年来从事单片机应用和开发工作的经验总结,实用性和工程性较强,尤其是对应用系统中必备的键盘、显示器、打印机、A/D、D/A通讯接口设计、模拟信号处理及开发系统应用举例甚多,目的是让将要开始和正在从事单片机应用开发的科研人员根据自己的实际需要来选择应用,一书在手即可基本完成单片机应用系统的开发工作。   本书主要面向从事单片机应用开发工作的广大工程技术人员,也可作为大专院校有关专业的教材或教学参考书。 第一章MCS-51系列单片机组成原理   1.1概述   1.1.1单片机主流产品系列   1.1.2单片机芯片技术的发展概况   1.1.3单片机的应用领域   1.2MCS-51单片机硬件结构   1.2.1MCS-51单片机硬件结构的特点   1.2.2MCS-51单片机的引脚描述及片外总线结构   1.2.3MCS-51片内总体结构   1.2.4MCS-51单片机中央处理器及其振荡器、时钟电路和CPU时序   1.2.5MCS-51单片机的复位状态及几种复位电路设计   1.2.6存储器、特殊功能寄存器及位地址空间   1.2.7输入/输出(I/O)口   1.3MCS-51单片机指令系统分析   1.3.1指令系统的寻址方式   1.3.2指令系统的使用要点   1.3.3指令系统分类总结   1.4串行接口与定时/计数器   1.4.1串行接口简介   1.4.2定时器/计数器的结构   1.4.3定时器/计数器的四种工作模式   1.4.4定时器/计数器对输入信号的要求   1.4.5定时器/计数器的编程和应用   1.5中断系统   1.5.1中断请求源   1.5.2中断控制   1.5.3中断的响应过程   1.5.4外部中断的响应时间   1.5.5外部中断方式的选择   第二章MCS-51单片机系统扩展   2.1概述   2.2程序存贮器的扩展   2.2.1外部程序存贮器的扩展原理及时序   2.2.2地址锁存器   2.2.3EPROM扩展电路   2.2.4EEPROM扩展电路   2.3外部数据存贮器的扩展   2.3.1外部数据存贮器的扩展方法及时序   2.3.2静态RAM扩展   2.3.3动态RAM扩展   2.4外部I/O口的扩展   2.4.1I/O口扩展概述   2.4.2I/O口地址译码技术   2.4.38255A可编程并行I/O扩展接口   2.4.48155/8156可编程并行I/O扩展接口   2.4.58243并行I/O扩展接口   2.4.6用TTL芯片扩展I/O接口   2.4.7用串行口扩展I/O接口   2.4.8中断系统扩展   第三章MCS-51单片机应用系统的开发   3.1单片机应用系统的设计   3.1.1设计前的准备工作   3.1.2应用系统的硬件设计   3.1.3应用系统的软件设计   3.1.4应用系统的抗干扰设计   3.2单片机应用系统的开发   3.2.1仿真系统的功能   3.2.2开发手段的选择   3.2.3应用系统的开发过程   3.3SICE—IV型单片机仿真器   3.3.1SICE-IV仿真器系统结构   3.3.2SICE-IV的仿真特性和软件功能   3.3.3SICE-IV与主机和终端的连接使用方法   3.4KHK-ICE-51单片机仿真开发系统   3.4.1KHK—ICE-51仿真器系统结构   3.4.2仿真器系统功能特点   3.4.3KHK-ICE-51仿真系统的安装及其使用   3.5单片机应用系统的调试   3.5.1应用系统联机前的静态调试   3.5.2外部数据存储器RAM的测试   3.5.3程序存储器的调试   3.5.4输出功能模块调试   3.5.5可编程I/O接口芯片的调试   3.5.6外部中断和定时器中断的调试   3.6用户程序的编辑、汇编、调试、固化及运行   3.6.1源程序的编辑   3.6.2源程序的汇编   3.6.3用户程序的调试   3.6.4用户程序的固化   3.6.5用户程序的运行   第四章键盘及其接口技术   4.1键盘输入应解决的问题   4.1.1键盘输入的特点   4.1.2按键的确认   4.1.3消除按键抖动的措施   4.2独立式按键接口设计   4.3矩阵式键盘接口设计   4.3.1矩阵键盘工作原理   4.3.2按键的识别方法   4.3.3键盘的编码   4.3.4键盘工作方式   4.3.5矩阵键盘接口实例及编程要点   4.3.6双功能及多功能键设计   4.3.7键盘处理中的特殊问题一重键和连击   4.48279键盘、显示器接口芯片及应用   4.4.18279的组成和基本工作原理   4.4.28279管脚、引线及功能说明   4.4.38279编程   4.4.48279键盘接口实例   4.5功能开关及拨码盘接口设计   第五章显示器接口设计   5.1LED显示器   5.1.1LED段显示器结构与原理   5.1.2LED显示器及显示方式   5.1.3LED显示器接口实例   5.1.4LED显示器驱动技术   5.2单片机应用系统中典型键盘、显示接口技术   5.2.1用8255和串行口扩展的键盘、显示器电路   5.2.2由锁存器组成的键盘、显示器接口电路   5.2.3由8155构成的键盘、显示器接口电路   5.2.4用8279组成的显示器实例   5.3液晶显示LCD   5.3.1LCD的基本结构及工作原理   5.3.2LCD的驱动方式   5.3.34位LCD静态驱动芯片ICM7211系列简介   5.3.4点阵式液晶显示控制器HD61830介绍   5.3.5点阵式液晶显示模块介绍   5.4荧光管显示   5.5LED大屏幕显示器   第六章打印机接口设计   6.1打印机简介   6.1.1打印机的基本知识   6.1.2打印机的电路构成   6.1.3打印机的接口信号   6.1.4打印机的打印命令   6.2TPμP-40A微打与单片机接口设计   6.2.1TPμP系列微型打印机简介   6.2.2TPμP-40A打印功能及接口信号   6.2.3TPμP-40A工作方式及打印命令   6.2.48031与TPμP-40A的接口   6.2.5打印编程实例   6.3XLF微型打印机与单片机接口设计   6.3.1XLF微打简介   6.3.2XLF微打接口信号及与8031接口设计   6.3.3XLF微打控制命令   6.3.4打印机编程   6.4标准宽行打印机与8031接口设计   6.4.1TH3070接口引脚信号及时序   6.4.2与8031的简单接口   6.4.3通过打印机适配器完成8031与打印机的接口   6.4.4对打印机的编程   第七章模拟输入通道接口技术   7.1传感器   7.1.1传感器的分类   7.1.2温度传感器   7.1.3光电传感器   7.1.4湿度传感器   7.1.5其他传感器   7.2模拟信号放大技术   7.2.1基本放大器电路   7.2.2集成运算放大器   7.2.3常用运算放大器及应用举例   7.2.4测量放大器   7.2.5程控增益放大器   7.2.6隔离放大器   7.3多通道模拟信号输入技术   7.3.1多路开关   7.3.2常用多路开关   7.3.3模拟多路开关   7.3.4常用模拟多路开关   7.3.5多路模拟开关应用举例   7.3.6多路开关的选用   7.4采样/保持电路设计   7.4.1采样/保持原理   7.4.2集成采样/保持器   7.4.3常用集成采样/保持器   7.4.4采样保持器的应用举例   7.5有源滤波器的设计   7.5.1滤波器分类   7.5.2有源滤波器的设计   7.5.3常用有源滤波器设计举例   7.5.4集成有源滤波器   第八章D/A转换器与MCS-51单片机的接口设计与实践   8.1D/A转换器的基本原理及主要技术指标   8.1.1D/A转换器的基本原理与分类   8.1.2D/A转换器的主要技术指标   8.2D/A转换器件选择指南   8.2.1集成D/A转换芯片介绍   8.2.2D/A转换器的选择要点及选择指南表   8.2.3D/A转换器接口设计的几点实用技术   8.38位D/A转换器DAC080/0831/0832与MCS-51单片机的接口设计   8.3.1DAC0830/0831/0832的应用特性与引脚功能   8.3.2DAC0830/0831/0832与8031单片机的接口设计   8.3.3DAC0830/0831/0832的调试说明   8.3.4DAC0830/0831/0832应用举例   8.48位D/A转换器AD558与MCS-51单片机的接口设计   8.4.1AD558的应用特性与引脚功能   8.4.2AD558与8031单片机的接口及调试说明   8.4.38位D/A转换器DAC0800系列与8031单片机的接口   8.510位D/A转换器AD7522与MCS-51的硬件接口设计   8.5.1AD7522的应用特性及引脚功能   8.5.2AD7522与8031单片机的接口设计   8.610位D/A转换器AD7520/7530/7533与MCS一51单片机的接口设计   8.6.1AD7520/7530/7533的应用特性与引脚功能   8.6.2AD7520系列与8031单片机的接口   8.6.3DAC1020/DAC1220/AD7521系列D/A转换器接口设计   8.712位D/A转换器DAC1208/1209/1210与MCS-51单片机的接口设计   8.7.1DAC1208/1209/1210的内部结构与引脚功能   8.7.2DAC1208/1209/1210与8031单片机的接口设计   8.7.312位D/A转换器DAC1230/1231/1232的应用设计说明   8.7.412位D/A转换器AD7542与8031单片机的接口设计   8.812位串行DAC-AD7543与MCS-51单片机的接口设计   8.8.1AD7543的应用特性与引脚功能   8.8.2AD7543与8031单片机的接口设计   8.914位D/A转换器AD75335与MCS-51单片机的接口设计   8.9.1AD8635的内部结构与引脚功能   8.9.2AD7535与8031单片机的接口设计   8.1016位D/A转换器AD1147/1148与MCS-51单片机的接口设计   8.10.1AD1147/AD1148的内部结构及引脚功能   8.10.2AD1147/AD1148与8031单片机的接口设计   8.10.3AD1147/AD1148接口电路的应用调试说明   8.10.416位D/A转换器AD1145与8031单片机的接口设计   第九章A/D转换器与MCS-51单片机的接口设计与实践   9.1A/D转换器的基本原理及主要技术指标   9.1.1A/D转换器的基本原理与分类   9.1.2A/D转换器的主要技术指标   9.2面对课题如何选择A/D转换器件   9.2.1常用A/D转换器简介   9.2.2A/D转换器的选择要点及应用设计的几点实用技术   9.38位D/A转换器ADC0801/0802/0803/0804/0805与MCS-51单片机的接口设计   9.3.1ADC0801~ADC0805芯片的引脚功能及应用特性   9.3.2ADC0801~ADC0805与8031单片机的接口设计   9.48路8位A/D转换器ADC0808/0809与MCS一51单片机的接口设计   9.4.1ADC0808/0809的内部结构及引脚功能   9.4.2ADC0808/0809与8031单片机的接口设计   9.4.3接口电路设计中的几点注意事项   9.4.416路8位A/D转换器ADC0816/0817与MCS-51单片机的接口设计   9.510位A/D转换器AD571与MCS-51单片机的接口设计   9.5.1AD571芯片的引脚功能及应用特性   9.5.2AD571与8031单片机的接口   9.5.38位A/D转换器AD570与8031单片机的硬件接口   9.612位A/D转换器ADC1210/1211与MCS-51单片机的接口设计   9.6.1ADC1210/1211的引脚功能与应用特性   9.6.2ADC1210/1211与8031单片机的硬件接口   9.6.3硬件接口电路的设计要点及几点说明   9.712位A/D转换器AD574A/1374/1674A与MCS-51单片机的接口设计   9.7.1AD574A的内部结构与引脚功能   9.7.2AD574A的应用特性及校准   9.7.3AD574A与8031单片机的硬件接口设计   9.7.4AD574A的应用调试说明   9.7.5AD674A/AD1674与8031单片机的接口设计   9.8高速12位A/D转换器AD578/AD678/AD1678与MCS—51单片机的接口设计   9.8.1AD578的应用特性与引脚功能   9.8.2AD578高速A/D转换器与8031单片机的接口设计   9.8.3AD578高速A/D转换器的应用调试说明   9.8.4AD678/AD1678采样A/D转换器与8031单片机的接口设计   9.914位A/D转换器AD679/1679与MCS-51单片机的接口设计   9.9.1AD679/AD1679的应用特性及引脚功能   9.9.2AD679/1679与8031单片机的接口设计   9.9.3AD679/1679的调试说明   9.1016位ADC-ADC1143与MCS-51单片机的接口设计   9.10.1ADC1143的应用特性及引脚功能   9.10.2ADC1143与8031单片机的接口设计   9.113位半积分A/D转换器5G14433与MCS-51单片机的接口设计   9.11.15G14433的内部结构及引脚功能   9.11.25G14433的外部电路连接与元件参数选择   9.11.35G14433与8031单片机的接口设计   9.11.45G14433的应用举例   9.124位半积分A/D转换器ICL7135与MCS—51单片机的接口设计   9.12.1ICL7135的内部结构及芯片引脚功能   9.12.2ICL7135的外部电路连接与元件参数选择   9.12.3ICL7135与8031单片机的硬件接口设计   9.124ICL7135的应用举例   9.1312位双积分A/D转换器ICL7109与MCS—51单片机的接口设计   9.13.1ICL7109的内部结构与芯片引脚功能   9.13.2ICL7109的外部电路连接与元件参数选择   9.13.3ICL7109与8031单片机的硬件接口设计   9.1416位积分型ADC一ICL7104与MCS-51单片机的接口设计   9.14.1ICL7104的主要应用特性及引脚功能   9.14.2ICL7104与8031单片机的接口设计   9.14.3其它积分型A/D转换器简介   第十章V/F转换器接口技术   10.1V/F转换的特点及应用环境   10.2V/F转换原理及用V/F转换器实现A/D转换的方法   10.2.1V/F转换原理   10.2.2用V/F转换器实现A/D转换的方法   10.3常用V/F转换器简介   10.3.1VFC32   10.3.2LMX31系列V/F转换器   10.3.3AD650   10.3.4AD651   10.4V/F转换应用系统中的通道结构   10.5LM331应用实例   10.5.1线路原理   10.5.2软件设计   10.6AD650应用实例   10.6.1AD650外围电路设计   10.6.2定时/计数器(8253—5简介)   10.6.3线路原理   10.6.4软件设计   第十一章串行通讯接口技术   11.1串行通讯基础   11.1.1异步通讯和同步通讯   11.1.2波特率和接收/发送时钟   11.1.3单工、半双工、全双工通讯方式   11.14信号的调制与解调   11.1.5通讯数据的差错检测和校正   11.1.6串行通讯接口电路UART、USRT和USART   11.2串行通讯总线标准及其接口   11.2.1串行通讯接口   11.2.2RS-232C接口   11.2.3RS-449、RS-422、RS-423及RS485   11.2.420mA电流环路串行接口   11.3MCS-51单片机串行接口   11.3.1串行口的结构   11.3.2串行接口的工作方式   11.3.3串行通讯中波特率设置   11.4MCS-51单片机串行接口通讯技术   11.4.1单片机双机通讯技术   11.4.2单片机多机通讯技术   11.5IBMPC系列机与单片机的通讯技术   11.5.1异步通讯适配器   11.5.2IBM-PC机与8031双机通讯技术   11.5.3IBM—PC机与8031多机通讯技术   11.6MCS-51单片机串行接口的扩展   11.6.1Intel8251A可编程通讯接口   11.6.2扩展多路串行口的硬件设计   11.6.3通讯软件设计   第十二章应用系统设计中的实用技术   12.1MCS-51单片机低功耗系统设计   12.1.1CHMOS型单片机80C31/80C51/87C51的组成与使用要点   12.1.2CHMOS型单片机的空闲、掉电工作方式   12.1.3CHMOS型单片机的I/O接口及应用系统实例   12.1.4HMOS型单片机的节电运行方式   12.2逻辑电平接口技术   12.2.1集电极开路门输出接口   12.2.2TTL、HTL、ECL、CMOS电平转换接口   12.3电压/电流转换   12.3.1电压/0~10mA转换   12.3.2电压1~5V/4~20mA转换   12.3.30~10mA/0~5V转换   12.344~20mA/0~5V转换   12.3.5集成V/I转换电路   12.4开关量输出接口技术   12.4.1输出接口隔离技术   12.4.2低压开关量信号输出技术   12.4.3继电器输出接口技术   12.4.4可控硅(晶闸管)输出接口技术   12.4.5固态继电器输出接口   12.4.6集成功率电子开关输出接口   12.5集成稳压电路   12.5.1电源隔离技术   12.5.2三端集成稳压器   12.5.3高精度电压基准   12.6量程自动转换技术   12.6.1自动转换量程的硬件电路   12.6.2自动转换量程的软件设计   附录AMCS-51单片机指令速查表   附录B常用EPROM固化电压参考表   参考文献

    标签: MCS 51 单片机实用 接口技术

    上传时间: 2013-10-15

    上传用户:himbly

  • 基于单片机的数字化B超键盘设计

    针对目前使用的RS232接口数字化B超键盘存在PC主机启动时不能设置BIOS,提出一种PS2键盘的设计方法。基于W78E052D单片机,采用8通道串行A/D转换器设计了8个TGC电位器信息采集电路,电位器位置信息以键盘扫描码序列形式发送,正交编码器信号通过XC9536XL转换为单片机可接收的中断信号,软件接收到中断信息后等效处理成按键。结果表明,在满足开机可设置BIOS同时,又可实现超声特有功能,不需要专门设计驱动程序,接口简单,成本低。 Abstract:  Aiming at the problem of the digital ultrasonic diagnostic imaging system keyboard with RS232 interface currently used couldn?蒺t set the BIOS when the PC boot, this paper proposed a design method of PS2 keyboards. Based on W78E052D microcontroller,designed eight TGC potentiometers information acquisition circuit with 8-channel serial A/D converter, potentiometer position information sent out with keyboard scan code sequentially.The control circuit based on XC9536 CPLD is used for converting the mechanical actions of the encoders into the signals that can be identified by the MCU, software received interrupt information and equivalently treatmented as key. The results show that the BIOS can be set to meet the boot, ultrasound specific functionality can be achieved at the same time, it does not require specially designed driver,the interface is simple and low cost.    

    标签: 单片机 B超 数字化 键盘设计

    上传时间: 2013-10-10

    上传用户:asdfasdfd

  • at91rm9200启动过程教程

    at91rm9200启动过程教程 系统上电,检测BMS,选择系统的启动方式,如果BMS为高电平,则系统从片内ROM启动。AT91RM9200的ROM上电后被映射到了0x0和0x100000处,在这两个地址处都可以访问到ROM。由于9200的ROM中固化了一个BOOTLOAER程序。所以PC从0X0处开始执行这个BOOTLOAER(准确的说应该是一级BOOTLOADER)。这个BOOTLOER依次完成以下步骤: 1、PLL SETUP,设置PLLB产生48M时钟频率提供给USB DEVICE。同时DEBUG USART也被初始化为48M的时钟频率; 2、相应模式下的堆栈设置; 3、检测主时钟源(Main oscillator); 4、中断控制器(AIC)的设置; 5、C 变量的初始化; 6、跳到主函数。 完成以上步骤后,我们可以认为BOOT过程结束,接下来的就是LOADER的过程,或者也可以认为是装载二级BOOTLOER。AT91RM9200按照DATAFLASH、EEPROM、连接在外部总线上的8位并行FLASH的顺序依次来找合法的BOOT程序。所谓合法的指的是在这些存储设备的开始地址处连续的存放的32个字节,也就是8条指令必须是跳转指令或者装载PC的指令,其实这样规定就是把这8条指令当作是异常向量表来处理。必须注意的是第6条指令要包含将要装载的映像的大小。关于如何计算和写这条指令可以参考用户手册。一旦合法的映像找到之后,则BOOT程序会把找到的映像搬到SRAM中去,所以映像的大小是非常有限的,不能超过16K-3K的大小。当BOOT程序完成了把合法的映像搬到SRAM的任务以后,接下来就进行存储器的REMAP,经过REMAP之后,SRAM从映设前的0X200000地址处被映设到了0X0地址并且程序从0X0处开始执行。而ROM这时只能在0X100000这个地址处看到了。至此9200就算完成了一种形式的启动过程。如果BOOT程序在以上所列的几种存储设备中找到合法的映像,则自动初始化DEBUG USART口和USB DEVICE口以准备从外部载入映像。对DEBUG口的初始化包括设置参数115200 8 N 1以及运行XMODEM协议。对USB DEVICE进行初始化以及运行DFU协议。现在用户可以从外部(假定为PC平台)载入你的映像了。在PC平台下,以WIN2000为例,你可以用超级终端来完成这个功能,但是还是要注意你的映像的大小不能超过13K。一旦正确从外部装载了映像,接下来的过程就是和前面一样重映设然后执行映像了。我们上面讲了BMS为高电平,AT91RM9200选择从片内的ROM启动的一个过程。如果BMS为低电平,则AT91RM9200会从片外的FLASH启动,这时片外的FLASH的起始地址就是0X0了,接下来的过程和片内启动的过程是一样的,只不过这时就需要自己写启动代码了,至于怎么写,大致的内容和ROM的BOOT差不多,不同的硬件设计可能有不一样的地方,但基本的都是一样的。由于片外FLASH可以设计的大,所以这里编写的BOOTLOADER可以一步到位,也就是说不用像片内启动可能需要BOOT好几级了,目前AT91RM9200上使用较多的bootloer是u-boot,这是一个开放源代码的软件,用户可以自由下载并根据自己的应用配置。总的说来,笔者以为AT91RM9200的启动过程比较简单,ATMEL的服务也不错,不但提供了片内启动的功能,还提供了UBOOT可供下载。笔者写了一个BOOTLODER从片外的FLASHA启动,效果还可以。 uboot结构与使用uboot是一个庞大的公开源码的软件。他支持一些系列的arm体系,包含常见的外设的驱动,是一个功能强大的板极支持包。其代码可以 http://sourceforge.net/projects/u-boot下载 在9200上,为了启动uboot,还有两个boot软件包,分别是loader和boot。分别完成从sram和flash中的一级boot。其源码可以从atmel的官方网站下载。 我们知道,当9200系统上电后,如果bms为高电平,则系统从片内rom启动,这时rom中固化的boot程序初始化了debug口并向其发送'c',这时我们打开超级终端会看到ccccc...。这说明系统已经启动,同时xmodem协议已经启动,用户可以通过超级终端下载用户的bootloader。作为第一步,我们下载loader.bin.loader.bin将被下载到片内的sram中。这个loder完成的功能主要是初始化时钟,sdram和xmodem协议,为下载和启动uboot做准备。当下载了loader.bin后,超级终端会继续打印:ccccc....。这时我们就可以下在uboot了。uboot将被下载到sdram中的一个地址后并把pc指针调到此处开始执行uboot。接着我们就可以在终端上看到uboot的shell启动了,提示符uboot>,用户可以uboot>help 看到命令列表和大概的功能。uboot的命令包含了对内存、flash、网络、系统启动等一些命令。 如果系统上电时bms为低电平,则系统从片外的flash启动。为了从片外的flash启动uboot,我们必须把boot.bin放到0x0地址出,使得从flash启动后首先执行boot.bin,而要少些boot.bin,就要先完成上面我们讲的那些步骤,首先开始从片内rom启动uboot。然后再利用uboot的功能完成把boot.bin和uboot.gz烧写到flash中的目的,假如我们已经启动了uboot,可以这样操作: uboot>protect off all uboot>erase all uboot>loadb 20000000 uboot>cp.b 20000000 10000000 5fff uboot>loadb 21000000 uboot>cp.b 210000000 10010000 ffff 然后系统复位,就可以看到系统先启动boot,然后解压缩uboot.gz,然后启动uboot。注意,这里uboot必须压缩成.gz文件,否则会出错。 怎么编译这三个源码包呢,首先要建立一个arm的交叉编译环境,关于如何建立,此处不予说明。建立好了以后,分别解压源码包,然后修改Makefile中的编译器项目,正确填写你的编译器的所在路径。 对loader和boot,直接make。对uboot,第一步:make_at91rm9200dk,第二步:make。这样就会在当前目录下分别生成*.bin文件,对于uboot.bin,我们还要压缩成.gz文件。 也许有的人对loader和boot搞不清楚为什么要两个,有什么区别吗?首先有区别,boot主要完成从flash中启动uboot的功能,他要对uboot的压缩文件进行解压,除此之外,他和loader并无大的区别,你可以把boot理解为在loader的基础上加入了解压缩.gz的功能而已。所以这两个并无多大的本质不同,只是他们的使命不同而已。 特别说名的是这三个软件包都是开放源码的,所以用户可以根据自己的系统的情况修改和配置以及裁减,打造属于自己系统的bootloder。

    标签: 9200 at 91 rm

    上传时间: 2013-10-27

    上传用户:wsf950131

  • EZ-USB FX系列单片机USB外围设备设计与应用

    EZ-USB FX系列单片机USB外围设备设计与应用:PART 1 USB的基本概念第1章 USB的基本特性1.1 USB简介21.2 USB的发展历程31.2.1 USB 1.131.2.2 USB 2.041.2.3 USB与IEEE 1394的比较41.3 USB基本架构与总线架构61.4 USB的总线结构81.5 USB数据流的模式与管线的概念91.6 USB硬件规范101.6.1 USB的硬件特性111.6.2 USB接口的电气特性121.6.3USB的电源管理141.7 USB的编码方式141.8 结论161.9 问题与讨论16第2章 USB通信协议2.1 USB通信协议172.2 USB封包中的数据域类型182.2.1 数据域位的格式182.3 封包格式192.4 USB传输的类型232.4.1 控制传输242.4.2 中断传输292.4.3 批量传输292.4.4 等时传输292.5 USB数据交换格式302.6 USB描述符342.7 USB设备请求422.8 USB设备群组442.9 结论462.10 问题与讨论46第3章 设备列举3.1注册表编辑器473.2设备列举的步骤493.3设备列举步骤的实现--使用CATC分析工具513.4结论613.5问题与讨论61第4章 USB芯片与EZUSB4.1USB芯片的简介624.2USB接口芯片644.2.1Philips接口芯片644.2.2National Semiconductor接口芯片664.3内含USB单元的微处理器684.3.1Motorola694.3.2Microchip694.3.3SIEMENS704.3.4Cypress714.4USB芯片总揽介绍734.5USB芯片的选择与评估744.6问题与讨论80第5章 设备与驱动程序5.1阶层式的驱动程序815.2主机的驱动程序835.3驱动程序的选择865.4结论865.5问题与讨论87第6章 HID群组6.1HID简介886.2HID群组的传输速率886.3HID描述符906.3.1报告描述符936.3.2主要 main 项目类型966.3.3整体 global 项目卷标976.3.4区域 local 项目卷标986.3.5简易的报告描述符996.3.6Descriptor Tool 描述符工具 1006.3.7兼容测试程序1016.4HID设备的基本请求1026.5Windows通信程序1036.6问题与讨论106PART 2 硬件技术篇第7章 EZUSB FX简介7.1简介1097.2EZUSB FX硬件框图1097.3封包与PID码1117.4主机是个主控者1137.4.1从主机接收数据1137.4.2传送数据至主机1137.5USB方向1137.6帧1147.7EZUSB FX传输类型1147.7.1批量传输1147.7.2中断传输1147.7.3等时传输1157.7.4控制传输1157.8设备列举1167.9USB核心1167.10EZUSB FX单片机1177.11重新设备列举1177.12EZUSB FX端点1187.12.1EZUSB FX批量端点1187.12.2EZUSB FX控制端点01187.12.3EZUSB FX中断端点1197.12.4EZUSB FX等时端点1197.13快速传送模式1197.14中断1207.15重置与电源管理1207.16EZUSB 2100系列1207.17FX系列--从FIFO1227.18FX系列--GPIF 通用型可程序化的接口 1227.19AN2122/26各种特性的摘要1227.20修订ID1237.21引脚描述123第8章 EZUSB FX CPU8.1简介1308.28051增强模式1308.3EZUSB FX所增强的部分1318.4EZUSB FX寄存器接口1318.5EZUSB FX内部RAM1318.6I/O端口1328.7中断1328.8电源控制1338.9特殊功能寄存器 SFR 1348.10内部总线1358.11重置136第9章 EZUSB FX内存9.1简介1379.28051内存1389.3扩充的EZUSB FX内存1399.4CS#与OE#信号1409.5EZUSB FX ROM版本141第10章 EZUSB FX输入/输出端口10.1简介14310.2I/O端口14310.3EZUSB输入/输出端口寄存器14610.3.1端口配置寄存器14710.3.2I/O端口寄存器14710.4EZUSB FX输入/输出端口寄存器14910.5EZUSB FX端口配置表15110.6I2C控制器15610.78051 I2C控制器15610.8控制位15810.8.1START位15810.8.2STOP位15810.8.3LASTRD位15810.9状态位15910.9.1DONE位15910.9.2ACK位15910.9.3BERR位15910.9.4ID1, ID015910.10送出 WRITE I2C数据16010.11接收 READ I2C数据16010.12I2C激活加载器16010.13SFR寻址 FX 16210.14端口A~E的SFR控制165第11章 EZUSB FX设备列举与重新设备列举11.1简介16711.2预设的USB设备16911.3USB核心对于EP0设备请求的响应17011.4固件下载17111.5设备列举模式17211.6没有存在EEPROM17311.7存在着EEPROM, 第一个字节是0xB0 0xB4, FX系列11.8存在着EEPROM, 第一个字节是0xB2 0xB6, FX系列11.9配置字节0,FX系列17711.10重新设备列举 ReNumerationTM 17811.11多重重新设备列举 ReNumerationTM 17911.12预设描述符179第12章 EZUSB FX批量传输12.1简介18812.2批量输入传输18912.3中断传输19112.4EZUSB FX批量IN的例子19112.5批量OUT传输19212.6端点对19412.7IN端点对的状态19412.8OUT端点对的状态19512.9使用批量缓冲区内存19512.10Data Toggle控制19612.11轮询的批量传输的范例19712.12设备列举说明19912.13批量端点中断19912.14中断批量传输的范例20112.15设备列举说明20512.16自动指针器205第13章 EZUSB控制端点013.1简介20913.2控制端点EP021013.3USB请求21213.3.1取得状态 Get_Status 21413.3.2设置特性(Set_Feature)21713.3.3清除特性(Clear_Feature)21813.3.4取得描述符(Get_Descriptor)21913.3.5设置描述符(Set Descriptor)22313.3.6设置配置(Set_Configuration)22513.3.7取得配置(Get_Configuration)22513.3.8设置接口(Set_Interface)22513.3.9取得接口(Get_Interface)22613.3.10设置地址(Set_Address)22713.3.11同步帧22713.3.12固件加载228第14章 EZUSB FX等时传输14.1简介22914.2等时IN传输23014.2.1初始化设置23014.2.2IN数据传输23014.3等时OUT传输23114.3.1初始化设置23114.3.2数据传输23214.4设置等时FIFO的大小23214.5等时传输速度23414.5.1EZUSB 2100系列23414.5.2EZUSB FX系列23514.6快速传输 仅存于2100系列 23614.6.1快速写入23614.6.2快速读取23714.7快速传输的时序 仅存于2100系列 23714.7.1快速写入波形23814.7.2快速读取波形23914.8快速传输速度(仅存于2100系列)23914.9其余的等时寄存器24014.9.1除能等时寄存器24014.9.20字节计数位24114.10以无数据来响应等时IN令牌24214.11使用等时FIFO242第15章 EZUSB FX中断15.1简介24315.2USB核心中断24415.3唤醒中断24415.4USB中断信号源24515.5SUTOK与SUDAV中断24815.6SOF中断24915.7中止 suspend 中断24915.8USB重置中断24915.9批量端点中断25015.10USB自动向量25015.11USB自动向量译码25115.12I2C中断25215.13IN批量NAK中断 仅存于AN2122/26与FX系列 25315.14I2C STOP反相中断 仅存于AN2122/26与FX系列 25415.15从FIFO中断 INT4 255第16章 EZUSB FX重置16.1简介25716.2EZUSB FX打开电源重置 POR 25716.38051重置的释放25916.3.1RAM的下载26016.3.2下载EEPROM26016.3.3外部ROM26016.48051重置所产生的影响26016.5USB总线重置26116.6EZUSB脱离26216.7各种重置状态的总结263第17章 EZUSB FX电源管理17.1简介26517.2中止 suspend 26617.3回复 resume 26717.4远程唤醒 remote wakeup 269第18章 EZUSB FX系统18.1简介27118.2DMA寄存器描述27218.2.1来源. 目的. 传输长度地址寄存器27218.2.2DMA起始与状态寄存器27518.2.3DMA同步突发使能寄存器27518.2.4虚拟寄存器27818.3RD/FRD与WR/FWR DMA闪控的选择27818.4DMA闪控波形与延伸位的交互影响27918.4.1DMA外部写入27918.4.2DMA外部读取280第19章 EZUSB FX寄存器19.1简介28219.2批量数据缓冲区寄存器28319.3等时数据FIFO寄存器28419.4等时字节计数寄存器28519.5CPU寄存器28719.6I/O端口配置寄存器28819.7I/O端口A~C输入/输出寄存器28919.8230 Kbaud UART操作--AN2122/26寄存器29119.9等时控制/状态寄存器29119.10I2C寄存器29219.11中断29419.12端点0控制与状态寄存器29919.13端点1~7的控制与状态寄存器30019.14整体USB寄存器30519.15快速传输30919.16SETUP数据31119.17等时FIFO的容量大小31119.18通用I/F中断使能31219.19通用中断请求31219.20输入/输出端口寄存器D与E31319.20.1端口D输出31319.20.2输入端口D脚位31319.20.3端口D输出使能31319.20.4端口E输出31319.20.5输入端口E脚位31419.20.6端口E输出使能31419.21端口设置31419.22接口配置31419.23端口A与端口C切换配置31619.23.1端口A切换配置#231619.23.2端口C切换配置#231719.24DMA寄存器31919.24.1来源. 目的. 传输长度地址寄存器31919.24.2DMA起始与状态寄存器32019.24.3DMA同步突发使能寄存器32019.24.4选择8051 A/D总线作为外部FIFO321PART 3 固件技术篇第20章 EZUSB FX固件架构与函数库20.1固件架构总览32320.2固件架构的建立32520.3固件架构的副函数钩子32520.3.1工作分配器32620.3.2设备请求 device request 32620.3.3USB中断服务例程32920.4固件架构整体变量33220.5描述符表33320.5.1设备描述符33320.5.2配置描述符33420.5.3接口描述符33420.5.4端点描述符33520.5.5字符串描述符33520.5.6群组描述符33520.6EZUSB FX固件的函数库33620.6.1包含文件 *.H 33620.6.2子程序33620.6.3整体变量33820.7固件架构的原始程序代码338第21章 EZUSB FX固件范例程序21.1范例程序的简介34621.2外围I/O测试程序34721.3端点对, EP_PAIR范例35221.4批量测试, BulkTest范例36221.5等时传输, ISOstrm范例36821.6问题与讨论373PART 4 实验篇第22章 EZUSB FX仿真器22?1简介37522?2所需的工具37622?3EZUSB FX框图37722.4EZUSB最终版本的系统框图37822?5第一次下载程序37822.6EZUSB FX开发系统框图37922.7设置开发环境38022.8EZUSB FX开发工具组的内容38122.9EZUSB FX开发工具组软件38222.9.1初步安装程序38222.9.2确认主机 个人计算机 是否支持USB38222.10安装EZUSB控制平台. 驱动程序以及文件38322.11EZUSB FX开发电路板38522.11.1简介38522.11.2开发电路板的浏览38522.11.3所使用的8051资源38622.11.4详细电路38622.11.5LED的显示38722.11.6Jumper38722.11.7连接器39122.11.8内存映象图39222.11.9PLD信号39422.11.10PLD源文件文件39522.11.11雏形板的扩充连接器P1~P639722.11.12Philips PCF8574 I/O扩充IC40022.12DMA USB FX I/O LAB开发工具介绍40122.12.1USBFX简介40122.12.2USBFX及外围整体环境介绍40322?12?3USBFX与PC连接软件介绍40422.12.4USBFX硬件功能介绍404第23章 LED显示器输出实验23.1硬件设计与基本概念40923.2固件设计41023.3.1固件架构文件FW.C41123.3.2描述符文件DESCR.A5141223.3.3外围接口文件PERIPH.C41723.4固件程序代码的编译与链接42123.5Windows程序, VB设计42323.6INF文件的编写设计42423.7结论42623.8问题与讨论427第24章 七段显示器与键盘的输入/输出实验24.1硬件设计与基本概念42824.2固件设计43124.2.1七段显示器43124.2.24×4键盘扫描43324.3固件程序代码的编译与链接43424.4Windows程序, VB设计43624.5问题与讨论437第25章 LCD文字型液晶显示器输出实验25.1硬件设计与基本概念43825.1.1液晶显示器LCD43825.2固件设计45225.3固件程序代码的编译与链接45625.4Windows程序, VB设计45725.5问题与讨论458第26章 LED点阵输出实验26.1硬件设计与基本概念45926.2固件设计46326.3固件程序代码的编译与链接46326.4Windows程序, VB设计46526.5问题与讨论465第27章 步进电机输出实验27.1硬件设计与基本概念46627.1.11相激磁46727.1.22相激磁46727.1.31-2相激磁46827?1?4PMM8713介绍46927.2固件设计47327.3固件程序代码的编译与链接47427.4Windows程序, VB设计47627.5问题与讨论477第28章 I2C接口输入/输出实验28.1硬件设计与基本概念47828.2固件设计48128.3固件程序代码的编译与链接48328.4Windows程序, VB设计48428.5问题与讨论485第29章 A/D转换器与D/A转换器的输入/输出实验29.1硬件设计与基本概念48629.1.1A/D转换器48629.1.2D/A转换器49029.2固件设计49329.2.1A/D转换器的固件设计49329.2.2D/A转换器的固件设计49629.3固件程序代码的编译与链接49729.4Windows程序, VB设计49829.5问题与讨论499第30章 LCG绘图型液晶显示器输出实验30.1硬件设计与基本概念50030.1.1绘图型LCD50030.1.2绘图型LCD控制指令集50330.1.3绘图型LCD读取与写入时序图50530.2固件设计50630.2.1LCG驱动程序50630.2.2USB固件码51330.3固件程序代码的编译与链接51630.4Windows程序, VB设计51730.5问题与讨论518附录A Cypress控制平台的操作A.1EZUSB控制平台总览519A.2主画面520A.3热插拔新的USB设备521A.4各种工具栏的使用524A.5故障排除526A.6控制平台的进阶操作527A.7测试Unary Op工具栏上的按钮功能528A.8测试制造商请求的工具栏 2100 系列的开发电路板 529A.9测试等时传输工具栏532A.10测试批量传输工具栏533A.11测试重置管线工具栏535A.12测试设置接口工具栏537A.13测试制造商请求工具栏 FX系列开发电路板A.14执行Get Device Descriptor 操作来验证开发板的功能是否正确539A.15从EZUSB控制平台中, 加载dev_io的范例并且加以执行540A.16从Keil侦错应用程序中, 加载dev_io范例程序代码, 然后再加以执行542A.17将dev_io 目标文件移开, 且使用Keil IDE 集成开发环境 来重建545A.18在侦错器下执行dev_io目标文件, 并且使用具有侦错能力的IDE547A.19在EZUSB控制平台下, 执行ep_pair目标文件A.20如何修改fw范例, 并在开发电路板上产生等时传输550附录BEZUSB 2100系列及EZUSB FX系列引脚表B.1EZUSB 2100系列引脚表555B?2EZUSB FX系列引脚图表561附录C EZUSB FX寄存器总览附录D EEPROM烧录方式

    标签: EZ-USB USB 单片机 外围设备

    上传时间: 2013-11-21

    上传用户:努力努力再努力

  • LINUX系统分析与高级编程技术

    本书介绍Linux环境下的编程方法,内容包括Linux系统命令、 Shell脚本、编程语言(gawk、Perl)、系统内核、安全体系、X Window等,内容丰富、论述全面,涵盖了Linux系统的方方面面。本书附带光盘包括了RedHat Linux系统的最新版本,及安装方法,还包括本书的大量程序代码,极大地方便了读者,为使用和将要使用Linux系统的技术人员提供了较全面的参考。    目      录前言第一篇   Linux系统介绍第1章   Linux简介 …11.1   Linux 的起源 11.2   自由软件基金会的GNU计划 11.3   Linux 的发音 21.4   Linux 的特点 21.5   基本硬件要求 31.6   如何获得Linux 31.6.1   从网上下载Linux 31.6.2   从光盘获得Linux 31.7   涉及Linux 的Web 网址和新闻讨论组 61.8   Linux 的不足之处 7第2章   外壳及常用命令 82.1   登录和退出 82.2   Linux 系统的外壳 82.3   外壳的常用命令 92.3.1   更改帐号密码 92.3.2   联机帮助 92.3.3   远程登录 92.3.4   文件或目录处理 92.3.5   改变工作目录 102.3.6   复制文件 102.3.7   移动或更改文件、目录名称 102.3.8   建立新目录 102.3.9   删除目录 112.3.10   删除文件 112.3.11   列出当前所在的目录位置 112.3.12   查看文件内容 112.3.13   分页查看文件内容 112.3.14   查看目录所占磁盘容量 112.3.15   文件传输 112.3.16   文件权限的设定 122.3.17   检查自己所属的工作组名称 132.3.18   改变文件或目录工作组所有权 132.3.19   改变文件或目录的最后修改时间 132.3.20   文件的链接 132.3.21   文件中字符串的查寻 142.3.22   查寻文件或命令的路径 142.3.23   比较文件或目录的内容 142.3.24   文件打印输出 142.3.25   一般文件的打印 142.3.26   troff 文件的打印 142.3.27   打印机控制命令 142.3.28   进程控制 152.3.29   外壳变量 162.3.30   环境变量 162.3.31   别名 162.3.32   历史命令 172.3.33   文件的压缩 172.3.34   管道命令的使用 172.3.35   输入/输出控制 182.3.36   查看系统中的用户 182.3.37   改变用户名 182.3.38   查看用户名 182.3.39   查看当前系统上所有工作站       的用户 192.3.40   与某工作站上的用户交谈 192.3.41   检查远程系统是否正常 192.3.42   电子邮件的使用简介 19第3章   Linux系统的网络功能 213.1   Linux支持的网络协议 213.1.1   TCP/IP 213.1.2   TCP/IP 版本 6 213.1.3   IPX/SPX 213.1.4   AppleTalk 协议集 213.1.5   广域网 223.1.6   ISDN 223.1.7   PPP、SLIP及PLIP 223.1.8   业余无线电 223.1.9   ATM 223.2   Linux系统下的文件共享和打印共享 223.2.1   Machintosh 环境 223.2.2   Windows 环境 223.2.3   Novell 环境 233.2.4   UNIX 环境 233.3   Linux系统中的Internet/Intranet功能 233.3.1   邮件 233.3.2   Web 服务器 243.3.3   Web 浏览器 243.3.4   FTP 服务器和客户机 243.3.5   新闻服务 243.3.6   域名系统 243.3.7   DHCP和 bootp 243.3.8   NIS 243.4   Linux系统下应用程序的远程执行 243.4.1   Telnet 253.4.2   远程命令 253.4.3   X Window 253.5   Linux系统的网络互连功能 253.5.1   路由器 253.5.2   网桥 253.5.3   IP伪装 253.5.4   IP统计 263.5.5   IP 别名 263.5.6   流量限制器 263.5.7   防火墙 263.5.8   端口下传 263.5.9   负载平衡 263.5.10   EQL 273.5.11   代理服务器 273.5.12   按需拨号 273.5.13   管道、移动IP和虚拟个人网络 273.6   Linux系统中的网络管理 273.6.1   Linux系统下的网络管理应用程序 273.6.2   SNMP 283.7   企业级Linux网络 283.7.1   高可用性 283.7.2   RAID 283.7.3   冗余网络 28第4章   Linux系统管理简介 294.1   root 帐号 294.2   启动和关闭系统 294.2.1   从软盘启动 294.2.2   使用LILO 启动 294.2.3   关闭Linux系统 304.3   挂接文件系统 304.3.1   挂接软盘 304.3.2   创建新的文件系统 304.3.3   卸载文件系统 314.4   检查文件系统 314.5   使用文件作为交换区 314.6   系统和文件的备份 324.7   设置系统 334.7.1   设置系统名 334.7.2   使用维护磁盘 334.7.3   重新设置root 帐号口令 334.7.4   设置登录信息 33第二篇   Linux高级语言及管理编程第5章   外壳编程 355.1   创建和运行外壳程序 355.1.1   创建外壳程序 355.1.2   运行外壳程序 355.2   使用外壳变量 365.2.1   给变量赋值 365.2.2   读取变量的值 375.2.3   位置变量和其他系统变量 375.2.4   引号的作用 375.3   数值运算命令 385.4   条件表达式 405.4.1   if 表达式 405.4.2   case 表达式 415.5   循环语句 425.5.1   for 语句 435.5.2   while 语句 435.5.3   until 语句 445.6   shift 命令 445.7   select 语句 455.8   repeat 语句 465.9   子函数 46第6章   gawk语言编程 486.1   gawk的主要功能 486.2   如何执行gawk程序 486.3   文件、记录和字段 486.4   模式和动作 496.5   比较运算和数值运算 506.6   内部函数 506.6.1   随机数和数学函数 516.6.2   字符串的内部函数 516.6.3   输入输出的内部函数 526.7   字符串和数字 526.8   格式化输出 526.9   改变字段分隔符 546.10   元字符 546.11   调用gawk程序 556.12   BEGIN和END 556.13   变量 566.14   内置变量 566.15   控制结构 576.15.1   if 表达式 576.15.2   while 循环 576.15.3   for 循环 586.15.4   next 和 exit 586.16   数组 586.17   用户自定义函数 586.18   几个实例 59第7章   Perl语言编程 607.1   什么是Perl 607.2   Perl的现状 607.3   初试Perl 607.4   Perl变量 607.4.1   标量 607.4.2   数组 637.4.3   相关数组 657.5   文件句柄和文件操作 657.6   循环结构 667.6.1   foreach循环 667.6.2   判断运算 667.6.3   for循环 677.6.4   while 和 until循环 677.7   条件结构 677.8   字符匹配 687.9   替换和翻译 697.9.1   替换 697.9.2   翻译 707.10   子过程 707.10.1   子过程的定义 707.10.2   参数 707.10.3   返回值 707.11   Perl程序的完整例子 71第三篇   Linux系统内核分析第8章   Linux内核简介 738.1   系统初始化 738.2   系统运行 738.3   内核提供的各种系统调用 748.3.1   进程的基本概念和系统            的基本数据结构 748.3.2   创建和撤消进程 748.3.3   执行程序 748.4   存取文件系统 75第9章   系统进程 769.1   什么是进程 769.2   进程的结构 769.3   进程调度 789.4   进程使用的文件 799.5   进程使用的虚拟内存 809.6   创建进程 819.7   进程的时间和计时器 819.7.1   实时时钟 819.7.2   虚拟时钟 819.7.3   形象时钟 819.8   程序的执行 829.8.1   ELF文件 829.8.2   脚本文件 82第10章   内存管理 8310.1   内存管理的作用 8310.2   虚拟内存的抽象模型 8310.3   按需装入页面 8410.4   交换 8510.5   共享虚拟内存 8510.6   存取控制 8510.7   高速缓存 8610.7.1   缓冲区高速缓存 8610.7.2   页面高速缓存 8610.7.3   交换高速缓存 8610.7.4   硬件高速缓存 8610.8   系统页面表 8610.9   页面的分配和释放 8710.9.1   页面的分配 8810.9.2   页面的释放 8810.10   内存映射 8810.11   请求调页 8910.12   页面高速缓存 8910.13   内核交换守护进程 90第11章   进程间通信 9111.1   信号机制 9111.2   管道机制 9211.3  System V IPC 机制  9311.3.1   信息队列 9311.3.2   信号量 9411.3.3   共享内存 96第12章   PCI 9812.1   PCI 系统 9812.2   PCI地址空间 9812.3   PCI设置头 9912.4   PCI I/O 和 PCI 内存地址 10012.5   PCI-ISA桥 10012.6   PCI-PCI 桥 10012.7   PCI初始化 10112.7.1   Linux系统内核有关PCI的      数据结构 10112.7.2   PCI 设备驱动程序 10212.7.3   PCI BIOS 函数 10512.7.4   PCI Fixup 105第13章   中断和中断处理 10613.1   中断 10613.2   可编程中断控制器 10613.3   初始化中断处理的数据结构 10713.4   中断处理 108第14章   设备驱动程序 10914.1   硬件设备的管理 10914.2   轮询和中断 11014.3   直接内存存取 11014.4   内存 11114.5   设备驱动程序和内核之间的接口 11114.5.1   字符设备 11214.5.2   块设备 11314.6   硬盘 11314.6.1   IDE 硬盘 11514.6.2   初始化IDE 硬盘子系统 11514.6.3   SCSI 硬盘 11514.6.4   初始化 SCSI 磁盘子系统 11614.6.5   传递块设备请求 11814.7   网络设备 11814.7.1   网络设备文件名 11814.7.2   总线信息 11814.7.3   网络接口标记 11914.7.4   协议信息 11914.7.5   初始化网络设备 119第15章   文件系统 12115.1   Linux文件系统概述 12115.2   ext2文件系统 12215.2.1   ext2的索引节点 12215.2.2   ext2超级块 12415.2.3   ext2 数据块组描述符 12415.2.4   ext2 中的目录 12515.2.5   在ext2 文件系统中查找文件 12515.2.6   改变ext2 文件系统中文件             的大小 12615.3   VFS 12715.3.1   VFS 超级块 12815.3.2   VFS 索引节点 12915.3.3   登记文件系统 12915.3.4   挂接文件系统 13015.3.5   在VFS中查找文件 13115.3.6   撤消文件系统 13115.3.7   VFS 索引节点缓存 13215.3.8   VFS目录缓存 13215.4   缓冲区缓存 13315.5   /proc 文件系统 135第16章   网络系统 13616.1   TCP/IP 网络简介 13616.2   TCP/IP网络的分层 13716.3   BSD 套接口 13816.4   INET套接口层 14016.4.1   创建BSD 套接口 14116.4.2   给INET BSD 套接口指定地址 14116.4.3   在INET BSD套接口上创建连接 14216.4.4   监听INET BSD 套接口 14216.4.5   接收连接请求 14316.5   IP 层 14316.5.1   套接口缓冲区 14316.5.2   接收IP数据包 14416.5.3   发送IP数据包 14416.5.4   数据碎片 14416.6   地址解析协议 145第17章   系统内核机制 14717.1   Bottom Half处理 14717.2   任务队列 14817.3   计时器 14917.4   等待队列 14917.5   信号量 150第四篇   Linux系统高级编程第18章   Linux内核模块编程 15118.1   一个简单程序Hello World 15118.2   设备文件 15218.3    /proc文件系统 15618.4   使用/proc输入 15818.5   与设备文件通信 16218.6   启动参数 16918.7   系统调用 17018.8   阻塞进程 17218.9   替换printk 17718.10   调度任务 178第19章   有关进程通信的编程 18119.1   进程间通信简介 18119.2   半双工UNIX管道 18119.2.1   基本概念 18119.2.2   使用C语言创建管道 18219.2.3   创建管道的简单方法 18519.2.4   使用管道的自动操作 18719.2.5   使用半双工管道时的注意事项 18819.3   命名管道 18819.3.1   基本概念 18819.3.2   创建FIFO 18819.3.3   FIFO操作 18919.3.4   FIFO的阻塞 19019.3.5    SIGPIPE信号 19019.4   System V IPC 19019.4.1   基本概念 19019.4.2   消息队列基本概念 19119.4.3   系统调用msgget() 19419.4.4   系统调用msgsnd() 19519.4.5   系统调用msgctl() 19719.4.6   一个msgtool的实例 19919.5   使用信号量编程 20119.5.1   基本概念 20119.5.2   系统调用semget() 20219.5.3   系统调用semop() 20319.5.4   系统调用semctl() 20419.5.5   使用信号量集的实例:semtool 20519.6   共享内存 20919.6.1   基本概念 20919.6.2   系统内部用户数据结构             shmid_ds 20919.6.3   系统调用shmget() 21019.6.4   系统调用shmat() 21119.6.5   系统调用shmctl() 21119.6.6   系统调用shmdt() 21219.6.7   使用共享内存的实例:shmtool 212第20章   高级线程编程 21520.1   线程的概念和用途 21520.2   一个简单的例子 21520.3   线程同步 21720.4   使用信号量协调程序 21820.5   信号量的实现 22020.5.1   Semaphore.h 22020.5.2   Semaphore.c 221第21章   Linux系统网络编程 22521.1   什么是套接口 22521.2   两种类型的Internet套接口 22521.3   网络协议分层 22521.4   数据结构 22521.5   IP地址和如何使用IP地址 22621.5.1   socket() 22621.5.2   bind() 22621.5.3   connect() 22721.5.4   listen() 22821.5.5   accept() 22821.5.6   send() 和 recv() 22921.5.7   sendto() 和 recvfrom() 23021.5.8   close() 和 shutdown() 23021.5.9   getpeername() 23121.5.10   gethostname() 23121.6   DNS 23121.7   客户机/服务器模式 23221.8   简单的数据流服务器程序 23221.9   简单的数据流客户机程序 23421.10   数据报套接口 23521.11   阻塞 237第22章   Linux I/O端口编程 24022.1   如何在 C 语言下使用I/O端口 24022.1.1   一般的方法 24022.1.2   另一个替代方法: /dev/port 24122.2   硬件中断 与 DMA 存取 24122.3   高精确的时间 24122.3.1   延迟时间 24122.3.2   时间的量测 24322.4   使用其他程序语言 24322.5   一些有用的 I/O 端口 24322.5.1   并行端口 24322.5.2   游戏端口 24422.5.3   串行端口 245第五篇   Linux系统安全分析第23章   系统管理员安全 24723.1   安全管理 24723.2   超级用户 24723.3   文件系统安全 24723.3.1   Linux文件系统概述 24723.3.2   设备文件 24823.3.3   /etc/mknod命令 24923.3.4   安全考虑 24923.3.5   find命令 25023.3.6   secure程序 25023.3.7   ncheck命令 25023.3.8   安装和拆卸文件系统 25023.3.9   系统目录和文件 25123.4   作为root运行的程序 25123.4.1   启动系统 25123.4.2   init进程 25123.4.3   进入多用户 25223.4.4   shutdown命令 25223.4.5   系统V的cron程序 25223.4.6   系统V版本2之后的cron程序 25223.4.7   /etc/profile 25323.5   /etc/passwd文件 25323.5.1   口令时效 25323.5.2   UID和GID 25423.6   /etc/group文件 25423.7   增加、删除和移走用户 25423.7.1   增加用户 25423.7.2   删除用户 25523.7.3   将用户移到另一个系统 25523.8   安全检查 25523.8.1   记帐 25523.8.2   其他检查命令 25623.8.3   安全检查程序的问题 25623.8.4   系统泄密后怎么办 25723.9   加限制的环境 25823.9.1   加限制的外壳 25823.9.2   用chroot()限制用户 25823.10   小系统安全 25923.11   物理安全 25923.12   用户意识 26023.13   系统管理员意识 26123.13.1   保持系统管理员个人的               登录安全 26123.13.2   保持系统安全 261第24章   系统程序员安全 26324.1   系统子程序 26324.1.1   I/O子程序 26324.1.2   进程控制 26324.1.3   文件属性 26424.1.4   UID和GID的处理 26524.2   标准C程序库 26524.2.1   标准I/O 26524.2.2   /etc/passwd的处理 26624.2.3   /etc/group的处理 26724.2.4   加密子程序 26824.2.5   运行外壳 26824.3   编写安全的C程序 26824.3.1   需要考虑的安全问题 26824.3.2   SUID/SGID程序指导准则 26924.3.3   编译、安装SUID/SGID程序             的方法 26924.4   root用户程序的设计 270第25章   Linux系统的网络安全 27225.1   UUCP系统概述 27225.1.1   UUCP命令 27225.1.2   uux命令 27225.1.3   uucico程序 27325.1.4   uuxqt程序 27325.2   UUCP的安全问题 27325.2.1   USERFILE文件 27325.2.2   L.cmds文件 27425.2.3   uucp登录 27425.2.4   uucp使用的文件和目录 27425.3   HONEYDANBER UUCP 27525.3.1   HONEYDANBER UUCP与           老UUCP的差别 27525.3.2   登录名规则 27625.3.3   MACHINE规则 27725.3.4   组合MACHINE和LOGNAME             规则 27825.3.5   uucheck命令 27825.3.6   网关 27825.3.7   登录文件检查 27925.4   其他网络 27925.4.1   远程作业登录 27925.4.2   NSC网络系统 28025.5   通信安全 28025.5.1   物理安全 28025.5.2   加密 28125.5.3   用户身份鉴别 28225.6   SUN OS系统的网络安全 28325.6.1   确保NFS的安全 28325.6.2   NFS安全性方面的缺陷 28425.6.3   远程过程调用鉴别 28425.6.4   Linux鉴别机制 28425.6.5   DES鉴别系统 28525.6.6   公共关键字的编码 28625.6.7   网络实体的命名 28625.6.8   DES鉴别系统的应用 28725.6.9   遗留的安全问题 28725.6.10   性能 28825.6.11   启动和setuid程序引起的问题 28825.6.12   小结 289第26章   Linux系统的用户安全性 29026.1   口令安全 29026.2   文件许可权 29026.3   目录许可 29126.4   umask命令 29126.5   设置用户ID和同组用户ID许可 29126.6   cp mv ln和cpio命令 29126.7   su和newgrp命令 29226.7.1   su命令 29226.7.2   newgrp命令 29226.8   文件加密 29226.9   其他安全问题 29326.9.1   用户的.profile文件 29326.9.2   ls -a 29326.9.3   .exrc文件 29326.9.4   暂存文件和目录 29326.9.5   UUCP和其他网络 29326.9.6   特洛伊木马 29426.9.7   诱骗 29426.9.8   计算机病毒 29426.9.9   要离开自己已登录的终端 29426.9.10   智能终端 29426.9.11   断开与系统的连接 29426.9.12   cu命令 29526.10   保持帐户安全的要点 295第六篇   X window系统的内部结构和使用第27章  X Window系统的基本知识 29727.1   X Window系统介绍 29727.1.1   X的特点 29727.1.2   什么是窗口系统 29827.1.3   X发展的历史 29927.1.4   X的产品 29927.1.5   MIT发行的X 29927.2   X的基本结构 30227.2.1   X 的基本元素 30327.2.2   服务程序和客户程序如何             交互通信 30427.2.3   X 的网络概况 30627.3   从用户界面的角度概观X 30727.3.1   管理界面:窗口管理器 30727.3.2   应用程序界面和工具箱 30927.3.3   其他系统角度 30927.4   术语和符号 31027.4.1   术语 31027.4.2   符号 31127.5   启动和关闭X 31227.5.1   启动X 31227.5.2   执行X程序的方式 31327.5.3   关闭X 31427.6   窗口管理器基础—uwm 31527.6.1   什么是窗口管理器 31527.6.2   启动uwm 31527.6.3   基本窗口操作 —uwm             的菜单 31527.6.4   移动窗口 31627.6.5   重定窗口大小 31627.6.6   建立新窗口 31627.6.7   管理屏幕空间 31827.6.8   中止应用程序窗口 32027.6.9   激活uwm菜单的其他方式 32027.7   使用 x的网络设备 32027.7.1   指定远程终端机—display             选项 32127.7.2   实际使用远程的显示器 32227.7.3   控制存取显示器—xhost 32227.8   终端机模拟器—详细介绍xterm 32327.8.1   选择xterm功能—菜单与       命令行选项 32327.8.2   滚动xterm屏幕 32427.8.3   记录与终端机的交互过程—写           记录 32527.8.4   剪贴文本 32527.8.5   使用Tektronix模拟功能 32627.8.6   使用不同的字体 32727.8.7   使用颜色 32727.8.8   其他xterm选项 32727.8.9   设定终端机键盘 328第28章   实用程序和工具 32928.1   实用程序 32928.2   保存、显示和打印屏幕图像 33028.3   使用X的应用程序 33228.3.1   文字编辑器—Xedit 33328.3.2   邮件/信息处理系统—xmh 33628.4   示例和游戏程序 33628.4.1   找出通过随机迷宫的             路径—maze 33628.4.2   担任鼠标指针的大眼睛—             xeyes 33628.4.3   智慧盘游戏—puzzle 33728.4.4   打印一个大X标志—xlogo 33728.4.5   跳动的多面体—ico 33728.4.6   动态几何图案—muncher与             plaid 33728.7   显示信息和状态的程序 33728.7.1   列出X服务程序的特征—    xdpyinfo 33828.7.2   获取有关窗口的信息 33828.7.3   观察X的事件—xev 340第29章   定制X Window系统 34129.1   使用X的字体和颜色 34129.1.1   字体初步 34129.1.2   字体命名 34229.1.3   观察特定字体的内容—xfd 34329.1.4   保存字体和位置 34329.1.5   例子:在你的服务程序中      增加新字体 34529.1.6   使用X的颜色 34629.2   定义和使用图形 34729.2.1   系统图形程序库 34729.2.2   交互编辑图形—bitmap 34729.2.3   编辑图形的其他方法 34929.2.4   定制根窗口—xsetroot 34929.3   定义应用程序的缺省选项—           Resources 35029.3.1   什么是资源 35029.3.2   XToolkit 35129.3.3   管理资源—资源管理器 35329.3.4   资源的类型—如何指定值 35829.4   实际使用资源 35929.4.1   在何处保存资源的缺省值 35929.4.2   在服务程序上保存缺省值—    xrdb 36329.4.3   常见的错误和修正 36629.5   定制键盘和鼠标 36729.5.1   实际使用转换 36829.5.2   转换—格式和规则 37429.5.3   转换规范中常见的问题 37729.6   键盘和鼠标—对应和参数 37929.6.1   键盘和鼠标映射—xmodmap 37929.6.2   键盘和鼠标参数设定—xset 38229.7   进一步介绍和定制uwm 38429.7.1   uwm的新特征 38429.7.2   定制uwm 38629.8   显示器管理器—xdm 39029.8.1   需要做些什么 39029.8.2   xdm 39129.8.3   xdm的更多信息 39229.8.4   uwm配置 395附录A   Gcc使用介绍 396附录B   安装X Window窗口系统 410

    标签: LINUX 系统分析 高级编程

    上传时间: 2013-11-10

    上传用户:changeboy