目前,以单片机为核心的应用技术越来越广,本文是针对机车车顶高压设备配件是否接地。设计了电压信号采集系统装置,达到可以实时、动态的诊断出处于运行状态中的机车车顶绝缘故障,并及时提示与报警,消除机车安全隐患,减少故障率。
上传时间: 2013-11-24
上传用户:13033095779
五、变频器外控(二) 利用单片机系统隔离输出,控制变频器,实现变频器的正反转控制,系统具有启动、停止按键,左限开关和右限开关,启动后变频器以800r/min向左运行,当碰到左限开关变频器以600r/min向右运行,依次循环往返运行。任意时刻按下停止按钮变频器停止运行。变频器运行时使用数码管分别对应显示 800和600。可自行增加其他功能,如左右极限保护、报警指示等。 写出设计思路,画出硬件接线图,写出单片机程序
上传时间: 2014-12-25
上传用户:zhoujunzhen
利用stm32控制平板倒立摆使用了红外遥控,pwm控制,串口调试角加速度传感器
上传时间: 2014-11-10
上传用户:box2000
摘要:本文主要介绍了用51单片机设计控制洗衣机系统方案、原理和功能实现。这样一台洗衣机,允许用户可自行设置洗衣模式,可以选择泡衣(步进电机)、洗衣(直流电机)、甩衣(直流电机);每种洗衣模式下,用户可自由设定洗衣状态,即电机转速、电机转向、洗衣时间;每种选择在LED均有显示,用户可以清楚的了解每种状态的选择;在洗衣过程中,LED数码管会显示洗衣模式,LED点阵显示倒计时;每个洗衣模式结束,蜂鸣器会发声。 该系统融合了查询键盘、PWM、LED数码管显示、LED点阵显示、定时器、蜂鸣器、励磁信号控制步进电机等原理和技术,使洗衣系统人性化、智能化,最大限度的满足用户的需求。
上传时间: 2013-11-05
上传用户:macarco
摘要:AT89C2051是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,采用高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,适合许多高性价比的应用场合。文中采用AT89C2051芯片为北京某汽车公司设计了一个客车倒车监视系统,并介绍了相应的硬件设计和软件编程。只要挂上倒挡,系统便自动监视车后从0.35m至5.0m的视频图像,在客车进站中门打开时,系统会自动监视中门附近车内信息。该系统已投产使用,性能稳定,反应良好。关键词:AT89C2051;单片机;MCS一51;汽车电子
上传时间: 2013-10-25
上传用户:dianxin61
自学单片机(提高篇) 在入门篇里,我们利用网络资源建立了自己的学习环境,在提高篇里,我们将带领爱好者充分利用网络资源,登堂入室,尽快从学习者变为一个开发者。当爱好者学到一定程度后,必然会结合自身的情况,向各个不同的方向发展,这里无法对每一个方向作详细论述,仅讨论一些能从网络上获得的、典型的资源,难免挂一漏万,但希望能够给读者一些引导。 、分门别类用单片机目前,国内单片机应用呈现百花齐放之势,很多不同类型的单片机逐渐进入中国,这给我们增加了选择余地,不必不管什么应用千篇一律都用51单片机。因此在入门以后,爱好者可以根据实际情况,选择进一步学习另一种或多种单片机。通常每一种单片机都会在国内找一些代理公司,要使用这些单片机,最好是找到这些代理,可以得到较好的技术支持。目前,爱好者有可能接触和使用的单片机主要是这要的一些种类:图4 21ic资料搜索1.51系列基于51内核的单片机依然是最多的,目前国内较常见的有以下几种。1)PHILPS公司的的LPC系列,基于80C51内核的微控制器,每机器周期只需6个时钟,比标准51快一倍;嵌入了诸如掉电检测、模拟功能以及片内RC振荡器等功能,可减少外部元件的使用;低功耗。该系列芯片适用于大批量、低成本、低功耗的应用,如电子门禁系统、倒车雷达、里程表等。该系列单片机由周立功公司代理,网址:http://www.zlgmcu.com。
标签: 单片机
上传时间: 2013-11-13
上传用户:674635689
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。
上传时间: 2013-10-27
上传用户:wsf950131
键盘是单片机系统中重要的人机交互方式之一。电梯、遥控器、电话、门禁系统都需要用到单片机所构成的键盘。当采用键盘扫描方式时,MCU在效率上存在着一定的浪费,而且由于程序的不停循环扫描,另一方面也相对地增加了系统的功耗。LPC900系列单片机提供了节电模式和键盘中断激活,有效地解决了以上问题。本文将以LPC900 Flash 单片机为准,和大家一起探讨键盘电路的构建及程序的设计。
上传时间: 2013-11-16
上传用户:tangsiyun
介绍了P89C51RA 单片机的性能和特点,设计了智能广播系统控制器。详细分析了该型号单片机ISP 功能,实现了智能广播系统控制器的在系统升级。通过串口通信对PC 主机命令进行接收并解析,实现对广播设备和广播分区的控制。系统成功地进行了系统调试,经长期运行表明,该系统结构简洁,运行稳定可靠,性价比高。关键词:控制器;智能广播系统;P89C51RA;ISP;串口通信随着计算机技术和多媒体技术的发展,计算机越来越多地应用到社会各个领域。智能广播系统是计算机技术和多媒体技术在广播系统中的综合应用,是在原有广播系统的基础上增加计算机系统和控制器实现广播系统的智能化升级。智能广播系统具有以下功能:程序化自动广播;广播分区预设;无人职守全自动运行;支持多种广播模式。智能广播系统一方面可以大大减轻广播节目制作和播放人员的工作量,另一方面还为广播节目的制作提供了丰富的素材和节目来源。智能广播系统将广泛地应用于大、中、小各类学校和部分企、事业单位。智能广播系统主要由计算机软件系统、计算机硬件系统、控制器和原有广播体系构成。控制器在整个系统中起着连接计算机系统和原有广播体系的桥梁作用,实现对计算机发出的各种控制指令的解释和执行,因此,智能广播系统控制器的性能在一定程度上决定着整个系统安全、可靠和稳定地运行。本文研究开发了一种基于P89C51RA 的智能广播系统控制器来实现整个系统的安全可靠运行。
上传时间: 2014-01-07
上传用户:mengmeng444425
涡卷式空气压缩机是一种新型空气压缩机,具有噪声低、体积小、可靠性好等特点。本文提出了一种基于ATMEL 89C52 单片机的涡卷式空气压缩机电气控制系统的实现方案,详细说明了总体方案设计、硬件设计与软件设计,并给出了关键元器件的选型。实际结果表明:该系统具有可靠性好、控制精度高、操作简便、配置灵活、直观的故障指示及完善的自保护等特点,完全满足了涡卷式空气压缩机现场控制的要求,是涡卷式空气压缩机的理想配套产品。常规的涡卷式空压机电控系统主要采用继电器加压力开关的方式进行控制,故障率高,可靠性低,控制参数的修改非常不便。本文提出了一种采用智能化微电脑集成设计技术的电控系统实现方案,它通过对关键点各种传感器进行实时检测来控制整个系统的工作状态,减少了常规控制方式下的电器元件及执行机构数量,提高了可靠性,降低了运行成本;清晰的实时状态指示,灵活的控制参数设置,完善的故障诊断,直观的故障显示,是空压机的理想配套产品。
上传时间: 2013-10-21
上传用户:ysystc670