产品数量实时统计器.doc_第1页
产品数量实时统计器.doc_第2页
产品数量实时统计器.doc_第3页
产品数量实时统计器.doc_第4页
产品数量实时统计器.doc_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

产品数量实时统计器目 录摘要3第一章 绪论41.1、产品实时统计器与自动化技术41.2、项目所能实现的功能4第二章 技术的实现方案62.1、硬件设计方框图62.2 AT89C51与外部硬件的连接62.3 电路工作原理72.4 电路组成72.5 单元电路原理7第三章 器件的选用及性能参数123.1 电阻123.2 三极管123.3 电容123.4 4位7段数码显示器123.5 AT89C51单片机133.6、74LS273 8位并行输入输出锁存器74LS273153.7 555定时器16第四章 算法分析和软件设计184.1 程序主流程图流程图184.2 定时器流程图194.3 外部中断程序流程图204.4 程序编写及程序分析214.5 程序的特点234.6 程序功能简介244.7 程序算法解析244.8 程序算法分析及工作过程27第五章 电路调试及问题分析295.1 单片机没有运行295.2 显示字符不正确295.3、显示不够亮30结束语31参考文献32附 录33致 谢35摘要自动化技术是本世纪以来发展极迅速和影响极大的科学技术之现代自动化技术是一种完全新型的生产力,是直接创造社会财富的主要手段之一,对人类的生产活动和物质文明起着极大的推动作用。这次毕业设计,我将设计一产品数量实统计器,“产品数量实时统计器”是企业自动化是一个不可缺少重要组成部份!它取代人工计数,提高了生产效率。解决了人工计数容易出错,浪费人力资源等缺点!产器数量实时统计器它具有实时统计产器数量的功能,时间的显示及设置功能。还有密码保护功能。AT89C51单片机作为这次毕业设计的核心控制芯片。采用keilcx51 v.7.0编译器,单片机高级语言C语言进行编程。关键词:自动化技术、AT89C51单片机,keilcx51 v.7.0编译器第一章 绪论1.1、产品实时统计器与自动化技术自动化技术是本世纪以来发展极迅速和影响极大的科学技术之现代自动化技术是一种完全新型的生产力,是直接创造社会财富的主要手段之一,对人类的生产活动和物质文明起着极大的推动作用。因此,自动化技术受到世界各国的广泛重视和越来越多的应用。我将要设计的“产品数量实时统计器”是企业自动化是一个不可缺少重要组成部份!它取代人工计数,提高了生产效率。解决了人工计数容易出错,浪费人力资源等缺点!它的成本低又实用,而且使用起来也特别方便,是现代企业不可缺少产品实时统计的工具。自动化程度较高的企业,产品数量实时统计器已与计算计系统组成自动化生产系统。它不但能够自动实统计产品数量,随时方便查询数量,并能可以计算机系统连接,可以实现产品数量自动控制,与其它工序构成全自动生产系统。产品数量实时统计器始终是自动化生产不可缺少的重要组成部份。它将朝使用更加方便,成本更低,体积更小巧方向发展。我将使用89c51单片机为核心控制器件,89c51单片机具有IO口资源丰富,容易学习,特别是它的C编译器比较成熟,而且用起来很方便。所以这次我采用keilcx51 v.7.0单片机C编译器进行编写。这样我就可以使用C语言进行编写程序,采用C语言可以大大缩短开发周期,程序的框架清晰,特别进行一些单片机主要用来完成计数、数据处理及控制,起到核心作用。用6位数码管作显示,采用动态显示放式,采用动态显示可以节省硬件资源。用12个键盘,主要是给用户控制,查询,及设置用等。用光敏三极管做采集产品数量信号。除外还电源系统一起构成了我的硬件设备,我将用最少器件实现它所有功能。1.2、项目所能实现的功能(1)有密码保护功能。在使用时要核对密码,才能查看产品数量等信息。有了这个功能保密性会更好。(2)时间显示及设置功能。(3)产品实时统计功能,它可以通过光敏电阻检测到,每个产品的通过时产生一个光脉冲,再将脉冲送入单片机外部中断,进行计数,它将每个小时统计的数量保存起来,以便查询。可以查询到前4个小时每个小时产品的数量。并可以将前4个小时的数量加起来并可以进行查询。 第二章 技术的实现方案2.1、硬件设计方框图蜂鸣器及驱动电路AT89C51单片机显示驱动74LS2736位7LED数码显示片选电路矩阵键盘 光敏器件整形电路单片机外部中断 图一 系统方框图2.2 AT89C51与外部硬件的连接图二 芯片管脚资源分配图2.3 电路工作原理电路工作过程:当单片机上电复位后单片机蜂鸣器发声,持续1秒左右自动停止与此同时单片机又通过数据总线端口P0口向8位并行输入输出锁存器74LS273的输入端口D0-D7送入已经经过编码的闪动的字符FF,以提示用户输入4位密码,若用户密码输入的密码不正确,它会自动清除显示提示再次输入,直到输入正确为止。若用户密码输入正确的密码。则这时单片机经过了核对。后进入了时间显示界面,初始时间是00点00分00秒,若你要修改时间你可以按时间设置键这是小时十位就会闪烁提示你进行修改,这时你通过0-9字符按键键入你正确的时间紧接就进行时钟的个位修改与此类推直到修改完秒钟为止若你想切换回时间显示摸式。则按时间显示摸式键,这时又会显示已修改好的时间,若你要查看产品实时统计的数据,你可以按查看按键这时你看到是当前这个小时的产品,若想再前一小时产品数量则可以继续按查看键则可以看再聚合前一小时数量,按同样的操作你可以续看到前1-4小时及1-4小时总数量当然自你上电之后产品统计功能一直在运行,既使你进行一些密码输入或进行是时间显示等操作,统计功能一在运行直运行的。2.4 电路组成本作品主要有电源电路,显示电路,键盘扫描电路,光电转换电路,脉冲整形电路。2.5 单元电路原理1)电源电路图三 电源电路图电源电路是常用的线性直流稳压电源它一个9V/3W变压器,4个整流二极管,2个0.1UF及2个470UF/25V的电解电容.一个三端稳压7805组成,工作原理:从变压器出来的9V交流电压送入4个二极管组成的桥式整流电路,进行整流,整流过后再送两个电容组成的高低频滤波电路进行滤波之后再送入7805进行稳压,这样7805输出端就输出了5V稳定的电压再进行高低频滤波.2)显示电路:显示电路原理图图四 显示电路图本作品的显示电路可以显示6位字符,是属动态显示电路,主要由2个4位7段数码管,7个100欧姆电阻,1个8位并行输入输出的的锁存器74LS273,6个PNP三极管9015组成电路原理:动态显示是利用的视觉的暂留特性原理而设计成的,6个三极管是用来控制位显示,要让哪一位显示则只要向控制那一位显示的三极管的基极送入低电平使三极管导通,若你看到的是6位同时显示,其是你的眼睛欺骗了你,其实在同一时刻只有一位显示, 由于视觉的暂留特性,只要你让6位快速轮显示,只要速度足够快,人的眼睛就感觉不到它在闪烁.看起来就像稳定的显示那样.在这个电路里74LS273起了锁存数据及驱动显示的作用,显示开始时单片机通P0口响74LS273送入要显示的字符,74LS273将单片送出的字符数据锁存输出在Q0-Q7再分别接100欧的电阻再接上数码管的段显示.只有段信号还不够还得有位信号,当锁存器的输出的信号准备好后这时单片机再向相应的位控制三极管的基极送入低电平。这相应的位就有显示了,然后显示一段时间后让向三极管基极送高电平让刚才亮的那一位灭掉,然后再向锁存器送入下位显示的字符,之后再向下位位制三极管基极送低电平让其对应的位显示字符如此快速轮流显示就以“同时”显示多个字符了一般最多可以显示8位数码管,超过8位就会有闪烁感了。3)光电转换电路:图五 光电转换电路图光电转换电路主要是用业光信号转换电信号再送入整形电路产生矩形波以便单片机处理,由一个光敏电阻及一个NPN三极管构成的,和一个分压电阻构成工作过程,在没有产品从流水线上流过时.有束过束会射向光敏电阻光敏电接收到光之后电阻迅速变小从而使三极管的ib迅速增大使9014进入饱和状态,分压电阻将输出一个高电平某一时刻产品从流水线上流过时光线会被产品遮住光由于光敏电阻没有受光照这时光敏电阻的阻值迅速变大,ib几乎为0这时三极管进入截止状态.分压电阻的电压为0伏.4)脉冲整形电路图五 整形电路图脉冲整形电路主要功能是将光电转换电路输出的未处理的的脉冲进行整形以得波形较好的矩形波再送入单片机进行处理.它由555时基IC及一个0.1UF的高频虑波电容组成的,在这里555芯片的2与6脚短接作为信号的输入这种接法是把555用作斯密特触发器.当输入电压大于2/3时3脚将输出一个高电平,当电压小于1/3时就输出一个低电平.当3脚电平由高到低变低的过程中单片机外部中断采集到下降沿之后,单片机就进行计数等处理.5)键盘扫描电路图六 键盘电路图本作品的键盘扫描电路是属矩阵式4*3键盘扫描电路其中P1.4-P1.7作为输出作为列信号,而P1.0-P1.3作为输入作为行信号.工作过程:当按键按下时P1.0-P1.3其中一个脚会将电平拉为低电平这时单片机将反复查询,当查询到的确有键按下则进行列信扫描最后得到键值,再通过单片机的再进行处理控制相应的操作.6)复位电路图七 复位电路图AT89C51单片机的是高平复位,由图可知这个复位电路主要由一个按键和两个电阻R17,R18还有一10UF/16V电容构成的.R18的一端接地一端接单片机的RESTER脚当按下键时R18两端的电压为5V单片机就进入了复位状态,松开键后电容开始充电R18两端的电压逐渐降低最后变为0伏,单片机又开始正常运行.第三章 器件的选用及性能参数3.1 电阻R0-R7是1K 1/4W的电阻,R8=3K,R9-R1510K 1/4W,R20=10K 3.2 三极管V1-V6为8550 PNP极管,V7-V8为9014NPN管.3.3 电容C0-C1为0.1UF的瓷介电容,C2-C3为470UF/16V电解电容C4-C5为30P的瓷介电容.3.4 4位7段数码显示器图八 四位数码管本作品用的是共阳极4位7段数码显示器,如图所示它有12个引脚其中ABCDEFGH是段信输入端用来控制段显示,bit1-bit4是位显示控制端,只要让相应的bit加上高电平就可以让相应的位根据段信号的编码显示要显示的字符。3.5 AT89C51单片机图九 芯片管脚分布1994年美国ATMEL CORPORATION(爱特梅尔公司)通过技术交换取得8031单片机内核的使用权,并结合自身EEPROM存储设计、制造领域内的优势,将一定容量的FLASH存储器集成了80C31单片机内核,形成独具特色的AT89C系列的单片机芯片与INTEL公司MCS-51保持100%兼容,价格低廉,程序修改灵活(片内FLASH存储器可以重复擦除1000次)AT89C系列的单片机型号主要有AT89C51、AT89LV51、AT89C52、AT89C1051、AT89C2051和AT89S8252其中:AT89C51、AT89LV51硬件资源、引脚排列、指令系统与INTEL公司的80C31完全兼容;AT89C52、AT89LV52硬件资源、引脚排列、指令系统与INTEL公司的80C32完全兼容AT89C51系列主要特点(1) 用INTEL80C31内核,硬件资源,引脚排列、指令系统分别与MCS-51系列100%兼容(2) 片内程序存储器类型号为FLASH,容量为4K可重复擦写1000次。(3) 工作压为5V,时钟频率为0HZ24HZ;(4) 同于采用80C31内核,同样具有正常,节电,掉电三种操作方式。(5) 三级程序存储器加密功能。(6) 可以利用P0、P2口扩展程序存储器和数据存储器空间。(7) AT89C51是DIP40脚封装,它有P0、P1、P2、P3四组IO口每共有32个IO口,其中P1口结构最简单,功能也单一仅作为普通数据输入/输出端口使用。P0口端口较为复杂在需要扩展外部存储器时,它可以作为地址/数据总线使用。当然也可以普通IO端口使用。当作为普通IO端口使用时P0口要接上拉电阻才能正常使用。P2口1可以作为普通IO口使用也可以作为地址总线。在没有外部程序存储器或虽有外部数据存储器但容量不大于256B,不需要高8位地址时,P2口可以作为I/O端口使用。P2口端口作为地址总时,P2口将输出高8位地址总线。与P0口不同无须分时使用,因此P2口上的地址信息或数据地址寄存器高8位DPH保存时间长,无须锁存。 P3口是个多功能口除了可以作为普通I/O端口外还具有第二功能。如表所示表一 P3口管脚的第二功能P3口引脚第二功能备注P3.0RXD(串行输入端)输入P3.1TXD(串行输出端)输出P3.2IN0(外部中断0)输入P3.3IN1(外部中断1)输入P3.4T0定时/计数器0的外部输入端)输入P3.5T1定时/计数器1的外部输入端)输入P3.6WR(外部数据存储器写信号)输出P3.7RD(外部数据存储器读信号)输出AT89C51单片机七种寻址方式:立即数寻地址、直接寻址方式、寄存器寻址方式、寄存器间接寻址方式、位寻址方式、变址寻址方式、相对寻址方式。AT89C51单片机指令系统可以划分五类1) 数据传送类指令(29)2) 算术运算类指令(24)3) 逻辑运算类与移位类指令(24)4) 控制指令转移类指令(17)5) 位操作指令(17)3.6、74LS273 8位并行输入输出锁存器74LS273 图十 74LS273内部原理图如图所示其实74LS273是由8个D型触发器构成,1D-8D是74LS273的数据信号输入端,1Q-8Q是它的数据端,CP是时钟输入端,RD是清0端。GND是电源负极,VCC是电源的正端,正常使用电压为5V,74LS273的工作过程是:当要锁存的信号已送到锁存器的力输入端后即是1D-8D后只要向CP送入一个脉冲,在脉冲的上升沿,锁存器将输入端数据的锁存到1Q-8Q。以供给后级使用,直到来CP再来一个脉冲数据才更新。3.7 555定时器图十一 555定时器管脚名称555定时器是一种种使用非常方便灵活,应用广泛的多功能电路利用它方便地组成脉冲产生,整形,廷时,和定时电路。555定时器的电源电压范围宽,对于TTL555定时器为5-16V,CMOS555定时器为3-18V,可提供一定的输出功率,TTL单定时器型号的最后的3位数为555,双定时器为556;COMS单定时器的最后4位数为7555,双定时器为7556,双定时器为7556,它们的逻辑功能和外部引线排列完全相同。它由电阻分压器、电压比较器、基本RS触发器、MOS开关管和输出缓冲级的组成。表二 555的功能表输入输出THTRRDOUTV状态XX00导通2/3VDD1/3VDD10导通2/3VDD1/3VDD11截止2/3VDD1/3VDD1保持原态保持原来的状态CO一般接对地0.1UF的电容以虑除同频噪声.提高555的抗干扰能力第四章 算法分析和软件设计4.1 程序主流程图流程图提示密码输入并输入密码密码核对OR错程序开始时间显示模式要切换到时间设置模式吗要切换到产品数量统计显示模式吗?当前这个小时的产品数量.时间设置查询前一小时产品数量?显示前一小时产品数量错是否否否是否是对对是 要退出吗?4.2 定时器流程图微秒寄存器加1微秒计数器是否大于10 否秒计数器加1微秒计数器清0秒计数器是否大于59是否分针是否大于23分针计数器加1,秒计数器清0否时针计数器加1,数量统计时钟计数器加1时针计数器是否大于23否时针计数器清0退出定时器中断程序4.3 外部中断程序流程图时钟统计标志位1吗?退出外部中断程序H3数量统计变量加1标志位复位H2数量统计变量加1H0数量统计变量加1H1数量统计变量加1时钟统计标志位4吗时钟统计标志位3吗否是时钟统计标志位2吗否是否是H3数量统计变量加1标志位复位退出外部中断程序4.4 程序编写及程序分析本作品采用keilcx51 v.7.0编译器进行编程单片机高级语言C语言,uVision2集成开发环境采用C语言,会使程序框架清晰,程序模块化好。这样可以大大缩短开发周期。特别是编写较长的程序的时候它优势就体现出来了,编写长程序时候由用汇编语言程序模块化不好。长长的程序让人看起来就眼花,跳来跳去好乱,使用C语言就不同了,它将程序分为一个个功能模块,只要通过调用函数就可实现了。1)品实时统计器程序/*产品数量实时统计器程序 */ /*选用芯片89C51 */ /*编译器选用keilcx51v7.0*/*2006年4月10日完成 */ #include #include #include /*89c51头文件*/ /* 定义全局变量 */ unsigned char sxbz;/*闪动显示标志变量*/ unsigned char min=0;/*定义一个分针变量*/ unsigned char hour=0;/*定义时针变量*/ unsigned char usec=0;/*定义微秒针变量*/ unsigned char sec=0;/*定义秒针变量*/ static char pdata pk=0xff; /*外部存储器变量*/ unsigned char oldkey,newkey;/*oldkey存储前上次键值变量,newkey存储新键值的变量*/ unsigned char biaoz,biaoz3,biaoz2;/*biaoz消抖标志biaoz3密码显示相干标志位变量*/ unsigned char keybuf1;/*键值*/ unsigned char dat,datb;/*密码变量*/ unsigned char buftime;/*蜂鸣器计数器*/ int keyt1;/*键盘扫描计数器*/ char bitbl;/*bitbl显示位控制标志变量*/ char ssbiaoz;/*时间设置位控制标志变量*/ char xsbz;/*显示模式标志变量*/ char bitc8;/*存储时间位变量的字符变量*/ char hour2;/*数量统计的时钟标志变量*/ /*定义数码显示编码表格常数*/unsignedchar pg13=0x40,0x79,0x24,0x30,0x19,0x12,0x82,0x78,0x00,0x10,0x09,0x0e,0x06; unsigned char mmsg4=8,8,8,8;/*初始密码设置*/ char srmmsg4;/*存储输入的密码的变量*/ int suju5=0,0,0,0,0;/*产品数量统计变量初始化*/ /* 程序区*/ void mimadsp(dat);/*密码输入显示函数*/。 void time(cs);/*廷时函数*/。 void onebitdsp(dat);/*位显示控制函数*/。 void jpsm();/*按键扫描函数*/。 void mfsrydsp(f);/*时间设置函数*/。 void sjdsp();/*时间函数*/。 void sjudsp(dat);/*产品数量显示函数*/。 void kg();/*按键开关函数*/。 void sjfz();/*时间赋值函数*/。 void mmsr(xc);/*密码输入函数*/。4.5 程序的特点 从我的程序可以看出一个特点,就是我的主程函很短,自定义的功能函数倒是很多,每一个功能都用一个函数实现,这就是模块化的程序,若要增加或去掉某个功能,只要增加或去掉某个函数就可以了非常方便,这样克服了汇编语言模块化不好,条理不清晰,运算不方便等的缺点。4.6 程序功能简介 1)密码输入显示函数void mimadsp(dat);功能:主要完成密码输入时驱动数码显示的字符的控制及位的控制,除此之外还将按键得到键值保存起来,以作输入函数密码核对作用。2)密码输入函数void mmsr(xc);功能:主要是完成密码输入控制,及密码核对功能。3)*廷时函数*void time(cs);功能:主要起来到廷时作用,可以通过控制CS参数来控制廷时时间。当CS值越大廷时时间越长。4)位显示控制函数void onebitdsp(dat);功能:位显示控制作用,它根据位显示控制标志变量bitbl的值来控制相应的位显示。5)按键扫描函数void jpsm();功能:主要来扫描键盘有无键按下,若有键按下将得到键值保存起来,以给后续函数处理。6)时间设置函数*void mfsrydsp(f);功能:主要用来作时间的设置作用。7)时间显示函数void sjdsp();功能:在时间显示模式作显示时间作用。产品数量显示函数void sjudsp(dat);功能:主要用显示产品数量的显示驱动程序。8)外部中断函数。4.7 程序算法解析因为程序太长这理我只选几个比较重要的几个程序,键盘扫描函数,位控制显函数作详细解析。1)键盘扫描函数解析 void jpsm() unsigned char keyb4;定义存储键值的临时字符变量(无符号字符型) P1=F0h;让P1口高4位作为作输出,低4位作输入。 oldkey=newkey; 将上次的键值存入oldkey; keyb4=P1&0x0f;读取低4位的键值并将其保存在临时变量keyb4; newkey=keyb4;if(oldkey=newkey)若上次读取键值与这次读取键值相等。且扫描计数器的值小于50则让扫描计数器加1; if(keyt150) keyt1+; if(keyt1=50)若keyt1=50说明的确有键按下,不是干扰,下面进入列扫描阶段。 p14=1; time(10); keyb4=P1&0x0f; if(keyb4!=oldkey) 判断是否是 p14对应的列。 if(biaoz=0)若按键松键标志为0即上次按键已松开则可以得到一个键值; keybuf1=0x10+oldkey;按键的键值送给keybuf1。 buftime=0; p34=0;开蜂鸣器。 biaoz3=biaoz3+1;if(biaoz3=5) biaoz3=1; biaoz=1; goto bb; p15=1; time(10); keyb4=P1&0x0f; if(keyb4!=oldkey) 判断是否是p15对应的列。 if(biaoz=0) keybuf1=0x20+oldkey; biaoz3=biaoz3+1; p34=0;/*开蜂鸣器*/ buftime=0;if(biaoz3=5) biaoz3=1; biaoz=1;让松键标置1表示键盘还未松开; goto bb; 退出键盘扫描程序。 p16=1; time(10); keyb4=P1&0x0f; if(keyb4!=oldkey) 判断是否是p16对应的列。 if(biaoz=0) keybuf1=0x40+oldkey; p34=0; buftime=0; biaoz3=biaoz3+1;if(biaoz3=0x05) biaoz3=1; biaoz=1; goto bb; p17=1; time(10); keyb4=P1&0x0f; if(keyb4!=oldkey) 判断是否是p17对应的列。 if(biaoz=0) keybuf1=0x80+oldkey; p34=0; buftime=0; biaoz3=biaoz3+1;if(biaoz3=0x05) biaoz3=1; biaoz=1; goto bb; else if(keyt1=50) keyt1=0; biaoz=0; else keyt1=0;bb: ;4.8 程序算法分析及工作过程 首先让P1高4位设置为输出,低4位设置为输入,然后将上次读取低4位的键值保存起来,然后读取低4位的键值,接下来将这次读取的键值与上次读取 键值稳定区 让扫描计数器计数 图十二 按键的电平变化的物理特性示意图键值进行比较若两次键值相等,则让扫描计数器加1当计数器的值已达到50说明读取了50次键值都相等说明的确有键按下(正是在键值稳定区读取)若读取小于50次时,前后两次键值出现不相等就说明是键盘抖动或是干扰,这时让扫描计数器清0,起到消除抖动,及干扰作用。这是本键盘扫描程序消除抖动原理。若判断到的确有键按下,则下个阶段进行列扫描以确定是哪列键按下。首先让P14置1然后进行一段廷时再去读取低4位的键值,这时再与oldkey比较若不相等则说明就P14对应的列,这时这个按键已可以确下来了,然后进行键值处理,用keybuf1=0x40+oldkey;语句即可。 keybuf1得到的键值就是某个键盘对应的键值。之后就退出扫描程序,不过退出之前先让松键标志置1这个松键标志可以防止按下一个键进行数次操作,有了松键标志后只能松键后才能进行下次按键操作。否则无反应。若列键不是P14对应那列则进行下一列扫描,即让P15置1再重复上面操作。直到判断键值。这就是本作器键盘扫描程序的算法。第五章 电路调试及问题分析在搞本次的毕业设计中,遇到了很多的问题。无论是硬件问题还是软件在制作过程中都出现了不少问题但最后还是把问题一一解决了,但这个过程序我学到了不少的知识。使无论软件和硬件方面都得到很大的提高。做好硬件电路之后要测试一下硬件电路有无出现问题,首先检测一下单片机硬件电路工作是否正常,单片机正常工作三个基本的条件就是:单片机时钟有无起振,二复位电路是否正常,电源电压是否正常。为了测试单片机的硬件是否正常我通常是一个确定是正常的单片机,然后编写一些简单的程序来测试单片机是否正常工作,这个测试很重要的,若不进行这一步。而你的毕业设计一开始就不正常,你就不知道是软件问题还是硬件电路。致于其它硬件电路就根据具件器件来检测了它是否正常工作。当所有硬件都没有问题的时候,就可以正式编写软件。下面我以自已在搞毕业设计出现的问题及其原因跟大家分享。5.1 单片机没有运行刚做好单片机硬件系统时为了测试单片机硬件系统是否工作正常,我编了一条让LED发亮的程序。这是单片机的最小系统。但是单片机老是没按程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论