![智能仪器课程设计_第1页](http://file4.renrendoc.com/view/f297c977965a7b9caf1735363ce2e06d/f297c977965a7b9caf1735363ce2e06d1.gif)
![智能仪器课程设计_第2页](http://file4.renrendoc.com/view/f297c977965a7b9caf1735363ce2e06d/f297c977965a7b9caf1735363ce2e06d2.gif)
![智能仪器课程设计_第3页](http://file4.renrendoc.com/view/f297c977965a7b9caf1735363ce2e06d/f297c977965a7b9caf1735363ce2e06d3.gif)
![智能仪器课程设计_第4页](http://file4.renrendoc.com/view/f297c977965a7b9caf1735363ce2e06d/f297c977965a7b9caf1735363ce2e06d4.gif)
![智能仪器课程设计_第5页](http://file4.renrendoc.com/view/f297c977965a7b9caf1735363ce2e06d/f297c977965a7b9caf1735363ce2e06d5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中州大学工程技术学院智能仪器课程设计题目:智能仪表班级:09电气自动化对口一班学号:200925180130姓名:唐淑弯指导老师:刘喜峰摘要智能仪器是含有微型计算机或者微型处理器的测量仪器,拥有对数据的存储运算逻辑判断及自动化操作等功能。它的出现,极大地扩充了传统仪器的应用范围。智能仪器凭借其体积小、功能强、功耗低等优势,迅速地在家用电器、科研单位和工业企业中得到了广泛的应用。其工作原理为传感器拾取被测参量的信息并转换成电信号,经滤波去除干扰后送入多路模拟开关;由单片机逐路选通模拟开关将各输入通道的信号逐一送入程控增益放大器,放大后的信号经A/D转换器转换成相应的脉冲信号后送入单片机中;单片机根据仪器所设定的初值进行相应的数据运算和处理(如非线性校正等);运算的结果被转换为相应的数据进行显示和打印;同时单片机把运算结果与存储于片内FlashROM(闪速存储器)或E2PROM(电可擦除存贮器)内的设定参数进行运算比较后,根据运算结果和控制要求,输出相应的控制信号(如报警装置触发、继电器触点等)。此外,智能仪器还可以与PC机组成分布式测控系统,由单片机作为下位机采集各种测量信号与数据,通过串行通信将信息传输给上位机——PC机,由PC机进行全局管理。伴随着网络技术的飞速发展,Internet技术正在逐渐向工业控制和智能仪器仪表系统设计领域渗透,实现智能仪器仪表系统基于Internet的通讯能力以及对设计好的智能仪器仪表系统进行远程升级、功能重置和系统维护。因此,智能仪表有着无限的发展前景。关键字定义智能仪器的定义:智能仪器是含有微型计算机或者微型处理器的测量仪器,拥有对数据的存储运算逻辑判断及自动化操作等功能。意义智能仪器的出现,极大地扩充了传统仪器的应用范围。智能仪器凭借其体积小、功能强、功耗低等优势,迅速地在家用电器、科研单位和工业企业中得到了广泛的应用。1、智能仪器的工作原理传感器拾取被测参量的信息并转换成电信号,经滤波去除干扰后送入多路模拟开关;由单片机逐路选通模拟开关将各输入通道的信号逐一送入程控增益放大器,放大后的信号经A/D转换器转换成相应的脉冲信号后送入单片机中;单片机根据仪器所设定的初值进行相应的数据运算和处理(如非线性校正等);运算的结果被转换为相应的数据进行显示和打印;同时单片机把运算结果与存储于片内FlashROM(闪速存储器)或E?2PROM(电可擦除存贮器)内的设定参数进行运算比较后,根据运算结果和控制要求,输出相应的控制信号(如报警装置触发、继电器触点等)。此外,智能仪器还可以与PC机组成分布式测控系统,由单片机作为下位机采集各种测量信号与数据,通过串行通信将信息传输给上位机——PC机,由PC机进行全局管理。2、智能仪器的功能特点随着微电子技术的不断发展,集成了CPU、存储器、定时器/计数器、并行和串行接口、看门狗、前置放大器甚至A/D、D/A转换器等电路在一块芯片上的超大规模集成电路芯片(即单片机)出现了。以单片机为主体,将计算机技术与测量控制技术结合在一起,又组成了所谓的“智能化测量控制系统”,也就是智能仪器。与传统仪器仪表相比,智能仪器具有以下功能特点:①操作自动化。仪器的整个测量过程如键盘扫描、量程选择、开关启动闭合、数据的采集、传输与处理以及显示打印等都用单片机或微控制器来控制操作,实现测量过程的全部自动化。②具有自测功能,包括自动调零、自动故障与状态检验、自动校准、自诊断及量程自动转换等。智能仪表能自动检测出故障的部位甚至故障的原因。这种自测试可以在仪器启动时运行,同时也可在仪器工作中运行,极大地方便了仪器的维护。③具有数据处理功能,这是智能仪器的主要优点之一。智能仪器由于采用了单片机或微控制器,使得许多原来用硬件逻辑难以解决或根本无法解决的问题,现在可以用软件非常灵活地加以解决。例如,传统的数字万用表只能测量电阻、交直流电压、电流等,而智能型的数字万用表不仅能进行上述测量,而且还具有对测量结果进行诸如零点平移、取平均值、求极值、统计分析等复杂的数据处理功能,不仅使用户从繁重的数据处理中解放出来,也有效地提高了仪器的测量精度。④具有友好的人机对话能力。智能仪器使用键盘代替传统仪器中的切换开关,操作人员只需通过键盘输入命令,就能实现某种测量功能。与此同时,智能仪器还通过显示屏将仪器的运行情况、工作状态以及对测量数据的处理结果及时告诉操作人员,使仪器的操作更加方便直观。⑤具有可程控操作能力。一般智能仪器都配有GPIB、RS232C、RS485等标准的通信接口,可以很方便地与PC机和其他仪器一起组成用户所需要的多种功能的自动测量系统,来完成更复杂的测试任务。3、智能仪器的发展概况80年代,微处理器被用到仪器中,仪器前面板开始朝键盘化方向发展,测量系统常通过IEEE—488总线连接。不同于传统独立仪器模式的个人仪器得到了发展等。90年代,仪器仪表的智能化突出表现在以下几个方面:微电子技术的进步更深刻地影响仪器仪表的设计;DSP芯片的问世,使仪器仪表数字信号处理功能大大加强;微型机的发展,使仪器仪表具有更强的数据处理能力;图像处理功能的增加十分普遍;VXI总线得到广泛的应用。近年来,智能化测量控制仪表的发展尤为迅速。国内市场上已经出现了多种多样智能化测量控制仪表,例如,能够自动进行差压补偿的智能节流式流量计,能够进行程序控温的智能多段温度控制仪,能够实现数字PID和各种复杂控制规律的智能式调节器,以及能够对各种谱图进行分析和数据处理的智能色谱仪等。国际上智能测量仪表更是品种繁多,例如,美国HONEYWELL公司生产的DSTJ-3000系列智能变送器,能进行差压值状态的复合测量,可对变送器本体的温度、静压等实现自动补偿,其精度可达到±0.1%FS;美国RACA-DANA公司的9303型超高电平表,利用微处理器消除电流流经电阻所产生的热噪声,测量电平可低达-77dB;美国FLUKE公司生产的超级多功能校准器5520A,内部采用了3个微处理器,其短期稳定性达到1ppm,线性度可达到0.5ppm;美国FOXBORO公司生产的数字化自整定调节器,采用了专家系统技术,能够像有经验的控制工程师那样,根据现场参数迅速地整定调节器。这种调节器特别适合于对象变化频繁或非线性的控制系统。由于这种调节器能够自动整定调节参数,可使整个系统在生产过程中始终保持最智能仪器发展趋势1微型化微型智能仪器指微电子技术、微机械技术、信息技术等综合应用于仪器的生产中,从而使仪器成为体积小、功能齐全的智能仪器。它能够完成信号的采集、线性化处理、数字信号处理,控制信号的输出、放大、与其他仪器的接口、与人的交互等功能。微型智能仪器随着微电子机械技术的不断发展,其技术不断成熟,价格不断降低,因此其应用领域也将不断扩大。它不但具有传统仪器的功能,而且能在自动化技术、航天、军事、生物技术、医疗领域起到独特的作用。例如,目前要同时测量一个病人的几个不同的参量,并进行某些参量的控制,通常病人的体内要插进几个管子,这增加了病人感染的机会,微型智能仪器能同时测量多参数,而且体积小,可植入人体,使得这些问题得到解决。2多功能多功能本身就是智能仪器仪表的一个特点。例如,为了设计速度较快和结构较复杂的数字系统,仪器生产厂家制造了具有脉冲发生器、频率合成器和任意波形发生器等功能的函数发生器。这种多功能的综合型产品不但在性能上(如准确度)比专用脉冲发生器和频率合成器高,而且在各种测试功能上提供了较好的解决方案。3人工智能化人工智能是计算机应用的一个崭新领域,利用计算机模拟人的智能,用于机器人、医疗诊断、专家系统、推理证明等各方面。智能仪器的进一步发展将含有一定的人工智能,即代替人的一部分脑力劳动,从而在视觉(图形及色彩辨读)、听觉(语音识别及语言领悟)、思维(推理、判断、学习与联想)等方面具有一定的能力。这样,智能仪器可无需人的干预而自主地完成检测或控制功能。显然,人工智能在现代仪器仪表中的应用,使我们不仅可以解决用传统方法很难解决的一类问题,而且可望解决用传统方法根本不能解决的问题。4网络化融合ISP和EMIT技术,实现仪器仪表系统的Internet接入。伴随着网络技术的飞速发展,Internet技术正在逐渐向工业控制和智能仪器仪表系统设计领域渗透,实现智能仪器仪表系统基于Internet的通讯能力以及对设计好的智能仪器仪表系统进行远程升级、功能重置和系统维护。在系统编程技术(In-SystemProgramming,简称ISP技术)是对软件进行修改、组态或重组的一种最新技术。它是LATTICE半导体公司首先提出的一种使我们在产品设计、制造过程中的每个环节,甚至在产品卖给最终用户以后,具有对其器件、电路板或整个电子系统的逻辑和功能随时进行组态或重组能力的最新技术。ISP技术消除了传统技术的某些限制和连接弊病,有利于在板设计、制造与编程。ISP硬件灵活且易于软件修改,便于设计开发。由于ISP器件可以像任何其他器件一样,在印刷电路板(PCB)上处理,因此编程ISP器件不需要专门编程器和较复杂的流程,只要通过PC机,嵌入式系统处理器甚至INTERNET远程网进行编程。EMIT嵌入式微型因特网互联技术是emWare公司创立ETI(eXtendtheInternet)扩展Internet联盟时提出的,它是一种将单片机等嵌入式设备接入Internet的技术。利用该技术,能够将8位和16位单片机系统接入Internet,实现基于Internet的远程数据采集、智能控制、上传/下载数据文件等功能。目前美国ConnectOne公司、emWare公司、TASKING公司和国内的P&S公司等均提供基于Internet的Device?Networking的软件、固件(Firmware)和硬件产品。5虚拟仪器是智能仪器发展的新阶段测量仪器的主要功能都是由数据采集、数据分析和数据显示等三大部分组成的。在虚拟现实系统中,数据分析和显示完全用PC机的软件来完成。因此,只要额外提供一定的数据采集硬件,就可以与PC机组成测量仪器。这种基于PC机的测量仪器称为虚拟仪器。在虚拟仪器中,使用同一个硬件系统,只要应用不同的软件编程,就可得到功能完全不同的测量仪器。可见,软件系统是虚拟仪器的核心,“软件就是仪器”。传统的智能仪器主要在仪器技术中用了某种计算机技术控制工程网版权所有,而虚拟仪器则强调在通用的计算机技术中吸收仪器技术。作为虚拟仪器核心的软件系统具有通用性、通俗性、可视性、可扩展性和升级性,能为用户带来极大的利益,因此,具有传统的智能仪器所无法比拟的应用前景和市场。传感器的定义传感器是一种能把物理量或化学量转变成便于利用的电信号的器件。国际电工委员会(IEC:InternationalElectrotechnicalCommittee)的定义为:“传感器是测量系统中的一种前置部件,它将输入变量转换成可供测量的信号”。按照Gopel等的说法是:“传感器是包括承载体和电路连接的敏感元件”,而“传感器系统则是组合有某种信息处理(模拟或数字)能力的系统”。传感器是传感系统的一个组成部分,它是被测量信号输入的第一道关口。传感器把某种形式的能量转换成另一种形式的能量。有两类:有源的和无源的。有源传感器能将一种能量形式直接转变成另一种,不需要外接的能源或激励源。无源传感器不能直接转换能量形式,但它能控制从另一输入端输入的能量或激励能,传感器承担将某个对象或过程的特定特性转换成数量的工作。其“对象”可以是固体、液体或气体,而它们的状态可以是静态的,也可以是动态(即过程)的。对象特性被转换量化后可以通过多种方式检测。对象的特性可以是物理性质的,也可以是化学性质的。按照其工作原理,它将对象特性或状态参数转换成可测定的电学量,然后将此电信号分离出来,送入传感器系统加以评测或标示。传感器原理结构在一段特制的弹性轴上粘贴上专用的测扭应片并组成变桥,即为基础扭矩传感器;在轴上固定着:(1)能源环形变压器的次级线圈,(2)信号环形变压器初级线圈,(3)轴上印刷电路板,电路板上包含整流稳定电源、仪表放大电路、V/F变换电路及信号输出电路。在传感器的外壳上固定着:(1)激磁电路,(2)能源环形变压器的初级线圈(输入),(3)信号环形变压器次级线圈(输出),(4)信号处理电路工作过程向传感器提供±15V电源,激磁电路中的晶体振荡器产生400Hz的方波,经过TDA2030功率放大器即产生交流激磁功率电源,通过能源环形变压器T1从静止的初级线圈传递至旋转的次级线圈,得到的交流电源通过轴上的整流滤波电路得到±5V的直流电源,该电源做运算放大器AD822的工作电源;由基准电源AD589与双运放AD822组成的高精度稳压电源产生±4.5V的精密直流电源,该电源既作为电桥电源,又作为放大器及V/F转换器的工作电源。当弹性轴受扭时,应变桥检测得到的mV级的应变信号通过仪表放大器AD620放大成1.5v±1v的强信号,再通过V/F转换器LM131变换成频率信号,通过信号环形变压器T2从旋转的初级线圈传递至静止次级线圈,再经过外壳上的信号处理电路滤波、整形即可得到与弹性轴承受的扭矩成正比的频率信号,该信号为TTL电平,既可提供给专用二次仪表或频率计显示也可直接送计算机处理。由于该旋转变压器动--静环之间只有零点几毫米的间隙,加之传感器轴上部分都密封在金属外壳之内,形成有效的屏蔽,因此具有很强的抗干扰能力。传感器分类倾角传感器倾角传感器在军事、航天航空、工业自动化、工程机械、铁路机车、消费电子、海洋船舶等领域得到广泛运用。辉格公司为国内用户提供全球最全面、最专业的产品方案和服务。提供超过500种规格的伺服型、电解质型、电容型、电感型、光纤型等原理的倾角传感器。加速度传感器(线和角加速度)分低频高精度力平衡伺服型、低频低成本热对流型和中高频电容式加速度位移传感器。总频响范围从DC至3000Hz。应用领域包括汽车运动控制、汽车测试、家电、游戏产品、办公自动化、GPS、PDA、手机、震动检测、建筑仪器以及实验设备等。红外温度传感器广泛应用于家用电器(微波炉、空调、油烟机、吹风机、烤面包机、电磁炉、炒锅、暖风机等)、医用/家用体温计、办公自动化、便携式非接触红外温度传感器、工业现场温度测量仪器以及电力自动化等。不仅能提供传感器、模块或完整的测温仪器,还能根据用户需要提供包括光学透镜、ASIC、算法等一揽子解决方案。一、设计目的及原理设计题目采用ATmega16单片机实现智能数字显示仪表。要求8位数码管显示(4位显示测量值,4位显示设定值),4输入按钮(功能选择、数码管选择、数字增加、数字减少),可设定上下限报警(蜂鸣器报警)。适配Cu100热电阻,测温范围为0℃~150℃。采用比例控制、并用晶闸管移相驱动1000W电加热器(电源电压为AC220V)。设计目的单片机综合练习是一项综合性的专业实践活动,目的是让学生将所学的基础理论和专业知识运用到具体的工程实践中,以培养学生综合运用知识能力、实际动手能力和工程实践能力,为此后的毕业设计打下良好的基础。原理由热电阻传感器送来的电信号在测量桥路进行冷端自动补偿后,送入放大器,一面把信号进行放大,同时把非线性信号校正为线性信号,经线性放大信号一路A/D转换电路把模拟量转换成数字信号进行数字显示,另一路传输到调节网络,进行规定的比较运算,同时输出一个需要的控制信号和进行工作状态指示。二、硬件设计Atmega16l单片机按Atmega16l单片机按键报警指示和显示热电阻输入下载通信本设计智能温度数显表由温度监测、信号处理、输出控制三部分组成。其系统框图如图1所示,它通过Cu100热电阻传感器获取绕组温度值,经信号调理电路处理后直接送入控制器的A/D转换输入端。微控制器根据信号数据及设定的各种控制参数,按照嵌入的软件控制规律执行计算与处理,自动显示智能仪表数显表可测的温度范围、并根据当前状态输出正常、设定上下线报警等基本模块简介Atmega16单片机温控仪控制核心采用Atmega16单片机,具有16KB系统内可编程Flash的8位微控制器ATmega16有如下特点:16K字节的系统内可编程Flash(具有同时读写的能力,即RWW),512字节EEPROM,1K字节SRAM,32个通用I/O口线,32个通用工作寄存器,用于边界扫描的JTAG接口,支持片内调试与编程,三个具有比较模式的灵活的定时器/计数器(T/C),片内/外中断,可编程串行USART,有起始条件检测器的通用串行接口,8路10位具有可选差分输入级可编程增益(TQFP封装)的ADC,具有片内振荡器的可编程看门狗定时器,一个SPI串行端口,以及六个可以通过软件进行选择的省电模式。工作于空闲模式时CPU停止工作,而USART、两线接口、A/D转换器、SRAM、T/C、SPI端口以及中断系统继续工作;掉电模式时晶体振荡器停止振荡,所有功能除了中断和硬件复位之外都停止工作;在省电模式下,异步定时器继续运行,允许用户保持一个时间基准,而其余功能模块处于休眠状态;ADC噪声抑制模式时终止CPU和除了异步定时器与ADC以外所有I/O模块的工作,以降低ADC转换时的开关噪声;Standby模式下只有晶体或谐振振荡器运行,其余功能模块处于休眠状态,使得器件只消耗极少的电流,同时具有快速启动能力;扩展Standby模式下则允许振荡器和异步定时器继续工作。Cu100热电阻传感器及电路铜电阻在测温范围内电阻值和温度呈现线性关系,温度系数大适用于无腐蚀介质,超过150℃易被氧化,铜电阻有R0=100Ω和R0=50Ω两种,本次课程设计采用的是Cu100的热电阻,Cu100热电阻测温范围为0℃--150℃,其分度表如下:T(℃)-50-40-30-20-10-0R(Ω)100T(℃)010203040506070R(Ω)100T(℃)8090100110120130140150R(Ω)热电阻输入电路:该电路采用Cu100热电阻进行测温,1N4148二极管对热电偶冷端进行补偿,采用TLV2252M放大器对输入信号进行放大。数码管显示及指示电路A:显示电路SM1显示的是热电偶测的电加热器的实际温度值,SM2显示的是人工设计的电加热器的期望温度值。数码管是有HC595芯片来驱动的,HC595接在SPI通信的3个接口上。B:指示电路指示电路是指示按键的输入状态的。D1、D2、D3、D4与S1、S2、S3、S4一一对应,当某个按键按下时,单片机相应的引脚将置低电平,使该按键相对应的二极管发光。按键电路4个按键与单片机的接线图及个按键的作用如上图所示;当单片机的引脚输入为低电平时,表示该引脚所对应的按键按下,单片机实现相应的功能。报警电路报警电路的设计蜂鸣器俗称喇叭,是广泛应用于各种电子产品的一种元器件,它用于提示、报警、音乐等许多应用场合。蜂鸣器与家用电器上面的喇叭在用法上也有相似的地方,通常工作电流比较大,电路上的TTL电平基本上驱动不了蜂鸣器,需要增加一个电流放大的电路才可以,这一点与家用电器中的功放有相似之处。学习板采用了一个很简单的电路来实现蜂鸣器的联接,由上所述,一个管脚很难驱动蜂鸣器发出声音,所以增加了一个三极管来增加通过蜂鸣器的电流,见下方原理图。蜂鸣器的正极性的一端联接到5V电源上面,另一端联接到三极管的集电极,三极管的基级由单片机的P1.5管脚通过一个与非门来控制,当P1.5管脚为低时,与非门输出高电平,三极管导通,这样蜂鸣器的电流形成回路,发出声音。当P1.5管脚为高时,与非门输出低电平,三极管截止,蜂鸣器不发出声音。在这里与非门是作为非门来用的,这里采用一个非门的作用是为了防止系统上电时峰鸣器发出声音,以为系统复位以后,I/O口输出的是高电平。用户可以通过程序控制P1.5管脚的置低和置高来使蜂鸣器发出声音和关闭。蜂鸣器的声音大小及音调可以通过调整P1.5管脚的置高时间及输出的波形进行控制,这一点可以在调试程序的时候来试验。当温度超过报警限时,单片机相应管脚输出一定频率的电平。蜂鸣器发出响声。下载电路下载程序代码用的是SPI接口,用ISP电缆对单片机进行编程。通信电路该模块用到跳线,不通信时D0、D1口作为常规I/O口使用;通信时其作为通信口使用,实现单片机与单片机或是其它上位机的通信。2.2.8输出驱动电路采用光控过零驱动晶闸管,进而控制电加热器的通断电。2.2.9电源电路电源电路是指提供给用电设备电力供应的电源部分的电路设计,使用的电路形式和特点。电源有交流电源也有直流电源。\o"查看图片"
直流电源电路直流电源电路分为开关电源和非开关电源两种形式,电路也大不相同。开关电源一般不使用变压器;非开关电源是传统的设计方式,电源电路里多使用变压器来变压后再整流滤波的方式。几个组件通过导线互相连接,形成“电路”,也可以称为“网络”。更特定地,电路是可以形成闭合回路的网络。“支路”是电路的一部分,每一个组件都有它独属的支路。任意两条或多条支路的相交点,称为“节点”。2.3总原理图电源连接口,连接时注意极性,接错将损坏单片机作为电源开关的跳线短路7805的跳线DX210k电源连接口,连接时注意极性,接错将损坏单片机作为电源开关的跳线短路7805的跳线DX210k电位器模拟电源输出JMN1LED灯与模拟输入的跳线DA1、DA2电源指示灯按钮共阳数码管外晶体跳线外参考电压跳线晶体编程接口ATmega16单片机C语言\o"查看图片"
是一种成功的系统描述语言,用C语言开发的UNIX操作系统就是一个成功的范例;同时C语言又是一种通用的程序设计语言,在国际上广泛流行。世界上很多著名的计算公司都成功的开发了不同版本的C语言,很多优秀的应用程序也都使用C语言开发的,它是一种很有发展前途的高级程序设计语言。1.C是中级语言。它把高级语言的基本结构和语句与低级语言的实用性结合起来。C语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。2.C是结构式语言。结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。3.C语言功能齐全。具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。而且计算功能、逻辑判断功能也比较强大,可以实现决策目的的游戏。4.C语言适用范围大。适合于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型。C语言对编写需要硬件进行操作的场合,明显优于其它解释型高级语言,有一些大型应用软件也是用C语言编写的。C语言具有较好的可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。它是数值计算的高级语言。常用的C语言IDE(集成开发环境)有MicrosoftVisualC++,Dev-C++,Code::Blocks,BorlandC++,WatcomC++,BorlandC++Builder,GNUDJGPPC++,Lccwin32CCompiler3.1,HighC,TurboC,C-Free,win-tc等等……c语言的学习对于一个初学者,MicrosoftVisualC++是一个比较好的软件。界面友好,功能强大,调试也很方便。这是微软出的一个C语言集成开发环境(IDE),主要有:VC++6.0、VS2005、VS2008、VS2010等,分为企业版和学生版等。对于初学者VC++6.0是比较容易上手的,但由于其对标准支持的不好可能使人养成不良编程习惯,因此论坛上也有人主张舍弃VC++6.0。在unix/linux操作系统上,学习c语言一般使用vim/emacx来编辑源文件,使用gcc/cc来编译源文件,使用make程序来管理编译过程。发展历史\o"查看图片"
C语言的祖先是BCPL语言。1967年,剑桥大学的MartinRichards对CPL语言进行了简化,于是产生了BCPL(BasicCombinedPogrammingLanguage)语言。1970年,美国贝尔实验室的KenThompson。以BCPL语言为基础,设计出很简单且很接近硬件的B语言(取BCPL的首字母)。并且他用B语言写了第一个UNIX操作系统。在1972年,美国贝尔实验室的D.M.Ritchie在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。为了使UNIX操作系统推广,1977年发表了不依赖于具体机器系统的C语言编译文本《可移植的C语言编译程序》。1978年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言。同时由B.W.Kernighan和D.M.Ritchie合著了著名的《TheCProgrammingLanguage》一书。通常简称为《K&R》,也有人称之为《K&R》标准。但是,在《K&R》中并没有定义一个完整的标准C语言,后来由美国国家标准化协会(AmericanNationalStandardsInstitute)在此基础上制定了一个C语言标准,于一九八三年发表。通常称之为ANSIC。K&R第一版在很多语言细节上也不够精确,对于pcc这个“参照编译器”来说,它日益显得不切实际;K&R甚至没有很好表达它所要描述的语言,把后续扩展扔到了一边。最后,C在早期项目中的使用受商业和政府合同支配,它意味着一个认可的正式标准是重要的。因此(在M.D.McIlroy的催促下),ANSI于1983年夏天,在CBEMA的领导下建立了X3J11委员会,目的是产生一个C标准。X3J11在1989年末提出了一个他们的报告[ANSI89],后来这个标准被ISO接受为ISO/IEC9899-1990。1990年,国际标准化组织ISO(InternationalOrganizationforStandards)接受了89ANSIC为ISOC的标准(ISO9899-1990)。1994年,ISO修订了C语言的标准。1995年,ISO对C90做了一些修订,即“1995基准增补1(ISO/IEC/9899/AMD1:1995)”。1999年,ISO有对C语言标准进行修订,在基本保留原来C语言特征的基础上,针对应该的需要,增加了一些功能,尤其是对C++中的一些功能,命名为ISO/IEC9899:1999。2001年和2004年先后进行了两次技术修正。目前流行的C语言编译系统大多是以ANSIC为基础进行开发的,但不同版本的C编译系统所实现的语言功能和语法规则有略有差别。C语言的优点简洁紧凑、灵活方便C语言一共只有32个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。C语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。运算符丰富C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。数据类型丰富.C语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据结构的运算。并引入了指针概念,使程序效率更高。另外C语言具有强大的图形功能,支持多种显示器和驱动器。且计算功能、逻辑判断功能强大。同时对于不同的编译器也有各种C是结构式语言结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。语法限制不太严格,程序设计自由度大虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。允许直接访问物理地址,对硬件进行操作由于C语言允许直接访问物理地址,可以直接对硬件进行操作,因此它既具有高级语言的功能,又具有低级语言的许多功能,能够像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元,可用来写系统软件。生成目标代码质量高,程序执行效率高一般只比汇编程序生成的目标代码效率低10へ20%。适用范围大,可移植性好C语言有一个突出的优点就是适合于多种操作系统,如DOS、UNIX、windows98、windowsNT;也适用于多种机型。C语言具有强大的绘图能力,可移植性好,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画,它也是数值计算的高级语言。C语言的一些缺点1.C语言的缺点主要表现在数据的封装性上,这一点使得C在数据的安全性上有很大缺陷,这也是C和C++的一大区别。2.C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不作检查等。从应用的角度,C语言比其他高级语言较难掌握。[C语言指针]指针是C语言的一大特色,可以说是C语言优于其它高级语言的一个重要原因。就是因为它有指针,可以直接进行靠近硬件的操作,但是C的指针操作也给它带来了很多不安全的因素。C++在这方面做了很好的改进,在保留了指针操作的同时又增强了安全性。Java取消了指针操作,提高了安全性,适合初学者使用。c语言与pascal语言的对比开发c语言最初是为了撰写unix操作系统,而开发pascal语言最初是为了讲授结搆化编程,是教学的目的。所以c语言就比较灵活,pascal语言就比较严谨。结构特点源程序可以由一个或多个源文件组成。函数组成。3.一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。4.源程序中可以有预处理命令(include命令仅为其中的一种),预处理命令通常应放在源文件或源程序的最前面。5.每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。6.标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。三、软件设计语言及注释#include<Atmega16.h>//Atmega16单片机头文件#include<macros.h>FlashunsignedcharSHUMA[]={0xC0,0xF9,0xA4,0XB0,0x99,0x920x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,};//定义数码管译码数组定义数码管位选数组;{SPI初始化;VoidSPI_MasterInit(void){DDRB|=(1〈〈5)|(1〈〈7);SPCR=(1〈〈6)|(1〈〈4)|(1〈〈5)|(1〈〈1)|(1〈〈0);}VoidSPI_595_Out(unsignedchari){SPDR=i;While(!SPDR&(1<<7))){;}}Voidmain(void){unsignedcharsaomiao=0;Unsignedcharw[10];DDRA=0x00;PORTA=0X00;DDRB=0XB0;PORTB=0Xff;DDRC=0XFC;PORTC=0XFF;PORTD=0X00;DDRD=0XFF;SPI_Masterlnit();While(1){{data[0]=1234;data[1]=5678;W[0]=data[0]%10;W[1]=data[0]/10%10;W[2]=data[0]/100%10;W[3]=data[0]/1000%10;W[4]=data[0]%10;W[5]=data[0]/10%10;W[6]=data[0]/100%10;W[1]=data[0]/1000%10;}PORTB&=~(1<<4);SPI_595_Out(weizhi[saomiao]);SPI_595_Out(disp[w[saomiao]];PORTB=|(1<<4);saomiao++;if(saomiao>=8saomiao=0;while(1){ucharj=0;uinti;DDAR=0xFF;DDRB=0XFF;PORTD=0XFF;DDRD=0X00;W
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公务用车购买保险合同范本
- 地震减灾服务项目风险分析和评估报告
- 医院手术合同范本
- 镁电气石项目年终总结报告
- 卖房交首付合同范本
- 人工雇佣合同范本
- 大学贫困生申请书范文
- 中国KVM切换器行业竞争格局分析及投资规划研究报告
- 公园步道砖合同范本
- KTV水电装修合同范本
- 数学-河南省三门峡市2024-2025学年高二上学期1月期末调研考试试题和答案
- 2025年春新人教版数学七年级下册教学课件
- 《心脏血管的解剖》课件
- 心肺复苏课件2024
- 2024-2030年中国并购基金行业发展前景预测及投资策略研究报告
- 河道清淤安全培训课件
- 2024各科普通高中课程标准
- 7.3.1印度(第1课时)七年级地理下册(人教版)
- 教师培训校园安全
- 北师大版语文四年级下册全册教案
- 《湖南师范大学》课件
评论
0/150
提交评论