帆板控制系统毕业论文

上传人:1666****666 文档编号:39588322 上传时间:2021-11-11 格式:DOC 页数:47 大小:477.02KB
返回 下载 相关 举报
帆板控制系统毕业论文_第1页
第1页 / 共47页
帆板控制系统毕业论文_第2页
第2页 / 共47页
帆板控制系统毕业论文_第3页
第3页 / 共47页
点击查看更多>>
资源描述
摘 要该系统为一个帆板控制系统,通过对风扇转速的控制,调节风力大小改变帆板角度。为了满足帆板控制系统的设计要求,进行了各单元模块的比较论证及确定,本系统以AT89C52单片机作为系统的核心控制芯片,选HQ7101模拟三轴加速度传感器模块来测量帆板转动的角度,灵敏度高,满足对角度的准确测量。对于关键的电机驱动电路,经过充分的比较与论证,最终选用驱动模块L298N,通过单片机输出PWM脉冲,更好地实现了电机的调速;并且加入PID控制,实现了控制角度的优化。系统显示部分采用12864液晶显示,串行接口,编程容易,并且现实的信息量大。关键词: AT89C52 ;PWM脉冲;L298N44AbstractThis system is a panel control system, through the control of the fan speed, adjust the size change wind windsurfing angle. In order to meet the requirements of design panel control system, compares and demonstrates each module and determination, this system takes the AT89C52 single chip as the core control chip, HQ7101 simulation of three axis accelerometer module to measure the windsurfing rotation angle, high sensitivity, accurate measurement of the angle of the meeting.The key of the motor drive circuit, through comparison with sufficient argumentation, the final selection of the drive module L298N, pulse through the singlechip output PWM, better realize the motor speed; and adding PID control, to realize the optimization of control angle. System display part adopts 12864 liquid crystal display, serial interface, easy programming, and the amount of information real big.Keywords: AT89C52 ; PWM pulse; L298N.目录1绪论11.1课题研究的背景及目的11.2帆板控制系统在国内外的现状分析11.3课题研究的主要内容21.4课题研究的目标21.5拟解决的关键问题22系统方案选择及论证32.1系统方案32.1.1主控制器的选择32.1.2电源模块的选择42.1.3角度信号采集模块的选择42.1.4 A/D转换模块的选择42.1.5驱动模块的选择52.1.6显示模块的选择52.2 系统理论分析与计算53系统硬件设计与实现63.1系统硬件的基本组成63.2硬件电路模块设计63.2.1 AT89C52控制芯片设计63.2.2驱动模块电路设计93.2.3采集模块电路设计103.2.4显示模块电路设计103.5电源模块电路设计113.5.1 直流稳压电源的基本原理113.5.2 电源电路设计134 软件设计144.1程序功能描述与设计思路144.2 LCD液晶显示的设计144.3 角度控制流程图154.4系统流程图155 结论与总结165.1 结论165.2 总结176 致谢177 参考文献181绪论1.1课题研究的背景及目的利用帆板角度控制系统可以测量风力大小,假如可以精确测量出帆板偏转角度,那样就可以算出风力大小,研究成功,帆板角度控制系统将成为测量风力大小产品,就可以节约很多电能,又可以把测量风力设备向智能化产品过渡,而且在原来基础上更加完美和人性化。单片机应用意义不仅在于它广阔范围及所带来经济效益。更重要意义在于,单片机应用从根本上改变了控制系统传统设计思想和设计方法。以前采用硬件电路实现大部分控制功能,正在用单片机通过软件方法来实现。以前自动控制中PID调节,现在可以用单片机实现具有智能化数字计算控制、模糊控制和自适应控制。单片机又称单片微控制器,单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度等物理量的测量。本系统就是以单片机为核心建立起来的,要实现对帆板转角大小的控制,其归根就是对风扇的控制,帆板的转角随着风扇风力的变化而变化,角度传感器给单片机不同的角度检测信号,经单片机处理后在LCD液晶上显示。系统体现了模块化的设计理念,将单片机和各个器件结合在一起,完成系统化的设计,充分发挥了单片机的可靠性、可操作性和强大处理功能。在摇动帆式风力发电系统中,通过帆板的往复摇转转变为旋转运动后可以驱动发电机发电,且具有发电效率高和良好的低风速发电特性和优异的耐强风性特点。帆板转角在一定范围内时发电效率较高。1.2帆板控制系统在国内外的现状分析目前国内外有类似的研究,但是不是很多,因为帆板控制系统本身也有它的局限性,首先,可应用的范围是比较广泛,但是一般不可单独使用,很多时候需要其他设备的辅助和支持,但是不可否认,它的的确确得到了一定的应用,例如在条件要求极其苛刻,不允许有漏电,电磁辐射等破坏和干扰的条件下,所有电器几乎都不用使用,帆板控制系统就可以实现较远距离的闭环式自动控制,满足特殊环境下的控制要求,不仅如此它在农业、军事、航空等领域也都有重大应用潜力。单片机源于20世纪70年代,到现在也有一定历史,单片机发展经历了几个不同阶段,现在单片机越来越成熟,成为一些智能化产品设计者研究对象。随着社会发展,智能化已经成为现代化产品发展新趋势,基于微机控制系统智能化有利于对帆板控制。是否可以实现远程控制、是否可以进行语音报警。又成为越来越感兴趣研究方向。国内外走在积极发展这方面技术一应用于生产生活,控制系统随社会发展需求发展,将会更加智能化,便捷化,更灵活,更方便应用于生产生活,帆板转角控制系统研究发展就沿这趋势。1.3课题研究的主要内容以单片机控制系统为核心,设计一个帆板控制系统,通过对风扇转速的控制,调节风力大小,改变帆板转角,可实现转角值的实时显示和控制。1.4课题研究的目标提高了系统抗干扰性、准确性和稳定性,整个控制系统响应速度快,成本低,容易驱动控制,噪音小、低功耗,。就基本满足设计要求。1.5拟解决的关键问题(1)对风扇电机转速进行快速而准确控制,以保证风扇转角在控制范围内;(2)为保证系统精度要求,必须要对帆板转动角度进行实时检测;(3)为保证帆板在尽可能短时间内达到预定角度还需要相应设定及显示电路。2系统方案选择及论证2.1系统方案本系统主要由主控制模块、驱动模块、采集模块、显示模块、电源模块组成,系统框图见图2-1所示。图2-1系统总框图该系统的工作原理是:通过调节装置(单片机)控制电机驱动芯片L298N,控制电机带动风扇的转动(通过调节PWM调节电机的转速),使帆板与竖直平面达到到一定的夹角,通过角度传感器不断测量帆板的转角(即实际转角),该实际转角与给定转角作比较,形成转角偏差,通过直流电机控制风扇的转速,通过PID控制不断修正该转角偏差,最终使转角保持在给定范围之内。2.1.1主控制器的选择 方案一:采用FPGA作为系统的控制器 FPGA采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模实时系统控制核心。但由于本设计对数据处理的速度要求不高,同时由于芯片的引脚较多,电路板布线复杂,加大了电路设计和实际焊接的工作量。 方案二:采用AT89C51系列的单片机作为主控制器 51系列芯片目前使用范围最广,价格便宜,但速度较慢,数据量大时速度难以满足要求。而且其功能单一,需要仿真器来实现软硬件调试,较为烦琐。 方案三:AT89C52控制芯片AT89C52控制芯片是一个低电压,片内含8kbytes的可反复擦写的只读程序存储器和256bytes的随机存取数择方据存储器,器件采用的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元.综合以上三种方案,选案三。2.1.2电源模块的选择方案一:所有器件采用单一电源(5节五号电池)。供电较简单,但由于电动机启动瞬间电流很大,会造成电压不稳、有毛刺等干扰,严重时可能会造成单片机系统掉电,且容易没电,使之不能完成题目的要求。方案二:使用交流电220v供电,搭建独立电源模块,经变压器变压后,再用7812、7805芯片进行稳压。5V电源为单片机及其他传感器、显示屏等模块供电。使用220v交流电不仅能保证电量充足,而且相对于干电池有恒定的电压和电流。综合以上两种方案,故拟采用方案二。2.1.3角度信号采集模块的选择方案一:使用无触点磁敏电位器自制重锤角度传感器。该角度传感器安装在帆板上,当帆板处在非平衡状态时,帆板的倾斜角度反映在重锤的转角上,再通过AD转换将角度信号采集到处理器中进行相关的处理。但在本设计中要使帆板达到一定的角度就要克服传感器的重量,而这样会大大的增加帆板的负重,影响设计效果。方案二:采用HQ7101模拟三轴加速度模块。此传感器功耗电流降低至200A,比同类器件的功耗典型值低50%,测量动态范围是3g,具有10000g额定耐冲压强度,具有良好的0g偏压稳定性和良好的灵敏度,且该传感器灵敏度高、体积小、质量轻且易操作,所以该传感器能很好的测量帆板转动角度,根据本题的要求,选择第二种方案。2.1.4 A/D转换模块的选择方案一:TLC1543美国TI司生产的多通道10位模数转换器。采用串行通信接口,具有输入通道多、性价比高、易于和单片机接口的特点,可广泛应用于各种数据采集系统,但其AD转换精度不能满足该系统对帆板角度的准确测量。方案二:AD7715是美国ADI公司生产的16位模数转换器,采用单一5V或3V电源供电,可用最少数量的口线与单片机或微处理器相接,适用于单通道低速小信号采样的应用场合。在该系统中,它以16位的串行方式直接传送给微控制器或微处理器,适合在系统测量中的应用。根据本设计的要求,我们最终选用了方案二。2.1.5驱动模块的选择方案一:采用大功率三极管,二极管,电阻电容等元件。用上述元件搭建两个H桥,通过对各路信号放大来驱动电机,原理简单。但由于放大电路很难做到完全一致,当电机的功率较大时运行起来会不稳定,很难精确控制。方案二:采用L298N驱动芯片。L298N芯片是较常用的电机驱动芯片。该芯片有两个TTL/CMOS兼容电平的输入,具有良好的抗干扰性能,可用单片机的I/O口提供信号,其输出的PWM脉冲控制直流电机,能够对电机转速的上升与下降进行平滑调节,保证调节过程中本身对风扇的影响最低,且电路简单、易用、稳定,具有较高的性价比。综上所述,我们决定采用方案二。2.1.6显示模块的选择方案一:用LED显示,优点亮度高、成本低,易于单片机编程,但是显示时占用I/O口多,信息量不足。方案二:采用LCD_12864液晶显示,功耗低、无辐射显示稳定、抗干扰能力强,编程控制简单,使用方便,显示信息能力强等特点。考虑到本设计的要求,我们选择方案二。2.2 系统理论分析与计算根据题目设计要求,控制风扇风力的大小,使帆板能在0到60度范围内变化。我们通过按键控制单片机输出的PWM信号控制电机转速的快慢来控制风扇风力的大小。通过加速度传感器检测帆板的角度,经AD转换电路转换为数字量变化,从而也可以通过调节PWM来调节电机的转速,所以只要帆板能在0到60度范围内变化,并且能够控制电机的转速使帆板保持在一定的角度。3系统硬件设计与实现3.1系统硬件的基本组成控制器按键传感器电 机驱动电路显 示本系统主要由主控制模块、驱动模块、采集模块、显示模块、电源模块组成其结构框图如图3-1所示,几个模块之间相互独立且存在联系,实现状态的上传和控制命令的下发。图3-1系统控制框图3.2硬件电路模块设计3.2.1 AT89C52控制芯片设计AT89C52是一个低电压,片内含8kbytes的可反复擦写的只读程序存储器和256bytes的随机存取数据存储器,器件采用的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。(1)功能及主要特性:1、兼容MCS51指令系统2、8k可反复擦写(大于1000次)FlashROM;3、32个双向I/O口;4、256x8bit内部RAM;5、3个16位可编程定时/计数器中断;6、时钟频率0-24MHz;7、2个串行中断,可编程UART串行通道;8、2个外部中断源,共8个中断源;9、2个读写中断口线,3级加密位;10、低功耗空闲和掉电模式;11、有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。(2)引脚功能及管脚 图3-2AT89C52引脚图主要管脚有:XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。RST/Vpd(9脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。P0P3为可编程通用I/O脚,其功能用途由软件定义,在本设计中,P0端口(3239脚)被定义为N1功能控制端口,分别与N1的相应功能管脚相连接,13脚定义为IR输入端,10脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12脚、27脚及28脚定义为握手信号功能端口,连接主板CPU的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口:P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器2的外部计数输入(P1.0/T2)和输入(P1.1/T2EX)P2口:P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4TTL逻辑门电路。对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVXDPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器(如执行MOVXRI指令)时,P2口输出P2锁存器的内容。Flash编程或校验时,P2亦接收高位地址和一些控制信号。P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000HFFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。3.2.2驱动模块电路设计驱动模块采用L298N驱动芯片。利用12V电源供电,通过单片机的I/O口提供输入信号,其输出的PWM脉冲控制直流电机,能够对电机转速的启动与停止进行调节,其电路原理图如图3-3所示。图3-3驱动模块电路原理图3.2.3采集模块电路设计采集模块电路分别有传感器模块和转换模块组成,传感器模块利用HQ7101三轴加速度传感器实现信息的采集,转换模块使用AD7715芯片实现模数转换功能,当加速度传感器检测到有效信号时,便将信号传输给AD7715进行转算,AD771再将转换后的信号传输给单片机从而实现角度的测量,其硬件电路图如图3-4所示。图3-4采集模块电路原理图3.2.4显示模块电路设计显示模块利用ST7920的12864液晶显示,液晶通过串行工作方式与单片机I/O口连接,当显示数据时,液晶能很好的显示出所要的效果,其电路原理图如3-5所示。图3-5显示模块电路原理图3.5电源模块电路设计3.5.1 直流稳压电源的基本原理直流稳压电源一般由电源变压器T、整流、滤波及稳压电路所组成,基本框图如图3-6所示。图3-6直流稳压电源框图及波形1、电源变压器T的作用是将220V的交流电压变换成整流滤波电路所需要的交流电压Ui。变压器副边与原边的功率比为P2/P1=n,式中n是变压器的效率。2、整流电路:整流电路将交流电压Ui变换成脉动的直流电压。再经滤波电路滤除较大的波纹成分,输出波纹较小的直流电压U1。常用的整流滤波电路有全波整流滤波、桥式整流滤波等。图3-7 整流电路 3、滤波电路:各滤波电路C满足RL-C=(35)T/2,式中T为输入交流信号周期,RL为整流滤波电路的等效负载电阻。图3-8 滤波电路4、稳压电路:常用的稳压电路有两种形式:一是稳压管稳压电路,二是串联型稳压电路。二者的工作原理有所不同。稳压管稳压电路其工作原理是利用稳压管两端的电压稍有变化,会引起其电流有较大变化这一特点,通过调节与稳压管串联的限流电阻上的压降来达到稳定输出电压的目的。它一般适用于负载电流变化较小的场合。串联型稳压电路是利用电压串联负反馈的原理来调节输出电压的。集成稳压电源事实上是串联稳压电源的集成化。3.5.2 电源电路设计 根据上述介绍设计,电源电路包括变压器、整流电路、滤波电路、稳压电路等模块组成,使用LED进行电源工作状态指示。LM78XX系列三端稳压IC来组成稳压电源所需的外围元件极少电路内部还有过流、过热及调整管的保护电路,如图3-9所示。 图3-9电源电路模块图4 软件设计4.1程序功能描述与设计思路1、程序功能描述根据题目要求软件部分主要实现键盘的设置和液晶的显示。1)键盘实现功能:首先,键盘我们选择6个独立按键,通过调节按键来控制电机的转速从而控制风速的大小、风扇的启动与停止以及设定角度的调节。2)显示部分:在液晶上显示帆板转动的实时角度,并且显示程序设定的角度。2、程序设计思路通过按键控制单片机输出PWM脉冲,经驱动电路L298N带动电机的转动与电机的控制,从而控制帆板的旋转的角度,经AD转换芯片将传感器输出的模拟信号量转换成数字信号量,送回到单片机中,与实际角度相比较后,经PID调节输出PWM的脉宽,来控制电机的转速达到调解帆板角度的目的。4.2 LCD液晶显示的设计 本系统采用LCD12864屏作为本系统的显示器,12864有两种显示模式,串行及并行两种方式,本系统采用串行通信,采用较少的单片机管脚。液晶显示及树状目录分页是本系统设计的一大特色。 根据本题目要求,我们设计了人性化的开机及操作界面。我们程序设计采用了C语言进行设计,我们都知道C语言基于过程的,但我们树状目录采用类似C+语言的面向对象的变成思路。操作非常简单直观。4.3 角度控制流程图分析此题本题是PID控制中最典型的一种,其算法简单。但题目要求能再在5秒内完成这一过程,这是本题的难点。我们通过分析提出了继电器和PWM控制结合的思路。主要思路是,通过控制继电器使风扇在1-2秒获得比较高的转速,然后通过PID算法控制风扇达到设定角度,实验证明此方法极大缩短了风扇提速时间。并最终能再题目要求的时间内达到设定角度。设定角度CPU开启AD获取角度信息两者角度做差值运算控制风扇减速或加速最终达到设定角度图4-1 角度控制流程图4.4系统流程图系统程序流程图如图48所示:图48系统流程图5 结论与总结5.1 结论 完成的功能和达到的技术指标 (1)用手转动帆板,能够数字显示帆板的转角。显示范围为060,分辨力为2,绝对误差5。 (2)当间距d=10cm 时,通过操作键盘控制风力大小,使帆板转角能够在060范围内变化,并要求实时显示。 (3)当间距d=10cm 时,通过操作键盘控制风力大小,使帆板转角稳定在455范围内。要求控制过程在10秒内完成,实时显示,并由声光提示,以便进行测试。 (4)风扇选用台式计算机散热风扇或其他形式的直流供电轴流风扇, 帆板的材料和厚度自定,固定轴应足够灵活,不阻碍帆板运动。5.2 总结 本系统以单片机AT89C52芯片为核心,利用角度传感器测角度、电机驱动技并结合软件的算法实现帆板的转角测试、LCD液晶显示、风扇的转速控制、声光提示等功能,最终使系统完成竞赛题目的任务要求。在系统设计过程中,力求硬件线路单,充分发挥软件编程方便灵活的特点,来满足设计的要求。由于时间有限,该系统有需要改进的地方。 在本次设计的过程中,虽然遇到了许多困难,但通过全组成员的共同努力,最终我们还是把困难解决了。这让我们深深体会到了团队协作的重要性。同时,在备战及竞赛毕业设计中,我们也学到了很多电子专业知识,丰富了自己的知识库,提高了解决问题的能力及创新能力。6 致谢 大学三年学习时光已经接近尾声,在此我想对我的母校,我的父母、亲人们,我的老师和同学们表达我由衷的谢意。 感谢我的家人对我大学三年学习的默默支持;感谢我的母校兰州工业学院给了我在大学三年深造的机会,让我能继续学习和提高;感谢兰州工业学院电气工程系的老师和同学们三年来的关心和鼓励。 老师们课堂上的激情洋溢,课堂下的谆谆教诲;同学们在学习中的认真热情,生活上的热心主动,所有这些都让我的三年充满了感动。 这次毕业论文设计我得到了很多老师和同学的帮助,其中我的论文指导老师刘青老师对我的关心和支持尤为重要。每次遇到难题,我最先做的就是向刘老师寻求帮助,而刘老师每次不管忙或闲,总会抽空来找我面谈,然后一起商量解决的办法。刘老师平日里工作繁多,但我做毕业设计的每个阶段,从选题到查阅资料,论文提纲的确定,中期论文的修改,后期论文格式调整等各个环节中都给予了我悉心的指导。这一个多月以来,刘老师不仅在学业上给我以精心指导,同时还在思想给我以无微不至的关怀,在此谨向刘老师致以诚挚的谢意和崇高的敬意。同时,本篇毕业论文的写作也得到了尹国龙,窦润发等同学的热情帮助。 感谢在整个毕业设计期间和我密切合作的同学,和曾经在各个方面给予过我帮助的伙伴们,在此,我再一次真诚地向帮助过我的老师和同学表示感谢! 7 参考文献1孙焕铭.51单片机C程序应用实例详解M.北京:北京航空航天大学出版社,2011.32杨欣,王玉凤,刘湘黔.51单片机应用从零开始M.北京:清华大学出版社,2008.13陆彬.21天学通51单片机开发M.北京:电子工业出版社,2010.54黄智伟.全国大学生电子设计竞赛系统设计M.北京:北京航空航天大学出版社,2011.25郭天祥.新概念51单片机C语言教程:入门、提高、开发、拓展全攻略M.北京:电子工业出版社,2009.16黄智伟.全国大学生电子设计竞赛常用电路模块制作M.北京:北京航空航天大学出版社,2011.1附录A 部分程序主函数/*/#include#includecontrol.h#include12864.h#includeADXL.H#defineucharunsignedchar#defineuintunsignedintsbitkey=P27;voidtimer_init()TMOD=0X10;TH1=(65535-100)/256;TL1=(65535-100)%256;EA=1;ET1=1;TR1=1;voidmain()chardevid;timer_init();lcd_12864_init();Init_ADXL345();/初始化ADXL345devid=Single_Read_ADXL345(0X00);/读出的数据为0XE5,表示正确while(1)adxl345();if(key=0)keyscan_1();elsekeyscan();/*/Controh.H文件#ifndef_contral_h_#define_contral_h_externsignedcharpwm;externvoiddelayms(unsignedintxms);externvoidkeyscan();externvoidkeyscan_1();#endif/*/Control.C文件#include#includecontrol.h#include12864.h#defineucharunsignedchar#defineuintunsignedint#definekeydataP0sbitA1=P24;sbitA2=P25;sbitENA=P26;signedintcount=0;signedcharpwm=0;signedcharanjian=0;ucharnumshi=0;ucharnumge=0;voiddelayms(unsignedintxms)unsignedinti,j;for(i=0;ixms;i+)for(j=0;j=100)count=0;if(countpwm)ENA=1;
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸下载 > CAD图纸下载


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!