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

单级隔离

  • Arduino学习笔记4_Arduino软件模拟PWM

    注:1.这篇文章断断续续写了很久,画图技术也不精,难免错漏,大家凑合看.有问题可以留言.      2.论坛排版把我的代码缩进全弄没了,大家将代码粘贴到arduino编译器,然后按ctrl+T重新格式化代码格式即可看的舒服. 一、什么是PWM PWM 即Pulse Wavelength Modulation 脉宽调制波,通过调整输出信号占空比,从而达到改 变输出平均电压的目的。相信Arduino 的PWM 大家都不陌生,在Arduino Duemilanove 2009 中,有6 个8 位精度PWM 引脚,分别是3, 5, 6, 9, 10, 11 脚。我们可以使用analogWrite()控 制PWM 脚输出频率大概在500Hz 的左右的PWM 调制波。分辨率8 位即2 的8 次方等于 256 级精度。但是有时候我们会觉得6 个PWM 引脚不够用。比如我们做一个10 路灯调光, 就需要有10 个PWM 脚。Arduino Duemilanove 2009 有13 个数字输出脚,如果它们都可以 PWM 的话,就能满足条件了。于是本文介绍用软件模拟PWM。 二、Arduino 软件模拟PWM Arduino PWM 调压原理:PWM 有好几种方法。而Arduino 因为电源和实现难度限制,一般 使用周期恒定,占空比变化的单极性PWM。 通过调整一个周期里面输出脚高/低电平的时间比(即是占空比)去获得给一个用电器不同 的平均功率。 如图所示,假设PWM 波形周期1ms(即1kHz),分辨率1000 级。那么需要一个信号时间 精度1ms/1000=1us 的信号源,即1MHz。所以说,PWM 的实现难点在于需要使用很高频的 信号源,才能获得快速与高精度。下面先由一个简单的PWM 程序开始: const int PWMPin = 13; int bright = 0; void setup() { pinMode(PWMPin, OUTPUT); } void loop() { if((bright++) == 255) bright = 0; for(int i = 0; i < 255; i++) { if(i < bright) { digitalWrite(PWMPin, HIGH); delayMicroseconds(30); } else { digitalWrite(PWMPin, LOW); delayMicroseconds(30); } } } 这是一个软件PWM 控制Arduino D13 引脚的例子。只需要一块Arduino 即可测试此代码。 程序解析:由for 循环可以看出,完成一个PWM 周期,共循环255 次。 假设bright=100 时候,在第0~100 次循环中,i 等于1 到99 均小于bright,于是输出PWMPin 高电平; 然后第100 到255 次循环里面,i 等于100~255 大于bright,于是输出PWMPin 低电平。无 论输出高低电平都保持30us。 那么说,如果bright=100 的话,就有100 次循环是高电平,155 次循环是低电平。 如果忽略指令执行时间的话,这次的PWM 波形占空比为100/255,如果调整bright 的值, 就能改变接在D13 的LED 的亮度。 这里设置了每次for 循环之后,将bright 加一,并且当bright 加到255 时归0。所以,我们 看到的最终效果就是LED 慢慢变亮,到顶之后然后突然暗回去重新变亮。 这是最基本的PWM 方法,也应该是大家想的比较多的想法。 然后介绍一个简单一点的。思维风格完全不同。不过对于驱动一个LED 来说,效果与上面 的程序一样。 const int PWMPin = 13; int bright = 0; void setup() { pinMode(PWMPin, OUTPUT); } void loop() { digitalWrite(PWMPin, HIGH); delayMicroseconds(bright*30); digitalWrite(PWMPin, LOW); delayMicroseconds((255 - bright)*30); if((bright++) == 255) bright = 0; } 可以看出,这段代码少了一个For 循环。它先输出一个高电平,然后维持(bright*30)us。然 后输出一个低电平,维持时间((255-bright)*30)us。这样两次高低就能完成一个PWM 周期。 分辨率也是255。 三、多引脚PWM Arduino 本身已有PWM 引脚并且运行起来不占CPU 时间,所以软件模拟一个引脚的PWM 完全没有实用意义。我们软件模拟的价值在于:他能将任意的数字IO 口变成PWM 引脚。 当一片Arduino 要同时控制多个PWM,并且没有其他重任务的时候,就要用软件PWM 了。 多引脚PWM 有一种下面的方式: int brights[14] = {0}; //定义14个引脚的初始亮度,可以随意设置 int StartPWMPin = 0, EndPWMPin = 13; //设置D0~D13为PWM 引脚 int PWMResolution = 255; //设置PWM 占空比分辨率 void setup() { //定义所有IO 端输出 for(int i = StartPWMPin; i <= EndPWMPin; i++) { pinMode(i, OUTPUT); //随便定义个初始亮度,便于观察 brights[ i ] = random(0, 255); } } void loop() { //这for 循环是为14盏灯做渐亮的。每次Arduino loop()循环, //brights 自增一次。直到brights=255时候,将brights 置零重新计数。 for(int i = StartPWMPin; i <= EndPWMPin; i++) { if((brights[i]++) == PWMResolution) brights[i] = 0; } for(int i = 0; i <= PWMResolution; i++) //i 是计数一个PWM 周期 { for(int j = StartPWMPin; j <= EndPWMPin; j++) //每个PWM 周期均遍历所有引脚 { if(i < brights[j])\   所以我们要更改PWM 周期的话,我们将精度(代码里面的变量:PWMResolution)降低就行,比如一般调整LED 亮度的话,我们用64 级精度就行。这样速度就是2x32x64=4ms。就不会闪了。

    标签: Arduino PWM 软件模拟

    上传时间: 2013-10-08

    上传用户:dingdingcandy

  • PCB版图设计报告--负反馈放大电路PCB设计

    Altium designer简介        Altium Designer 提供了唯一一款统一的应用方案,其综合电子产品一体化开发所需的所有必须技术和功能。Altium Designer 在单一设计环境中集成板级和FPGA系统设计、基于FPGA和分立处理器的嵌入式软件开发以及PCB版图设计、编辑和制造。并集成了现代设计数据管理功能,使得Altium Designer成为电子产品开发的完整解决方案-一个既满足当前,也满足未来开发需求的解决方案。 一、实验目的      1.了解并学会运用Altium designer软件绘制简单PCB      2.会运用Alitum designer软件设计库元件      3.掌握印刷电路板布线流程      4.掌握印刷电路板设计的基本原则 二、设计内容      1.要求用Alitum designer软件画出电路原理图      2.按照所画原理图自动生成PCB版图      3.会自己设计元件和库 三、实验步骤(负反馈放大器PCB设计)      1、新建工程、为工程添加项目:在D盘新建一个自己的文件夹重命名为ffk,运行Alitum designer软件,然后单击文件/新建/工程/PCB工程,然后右击所建的PCB工程选择给工程添加原理图,然后添加PCB,建完PCB工程保存工程到D/ffk内,保存时三个文件都命名为ffk.扩展名      2、画原理图:在原理图窗口画出所要画的PCB原理图,本次实验所画电路图如图1:

    标签: PCB 版图设计 报告 放大电路

    上传时间: 2013-10-21

    上传用户:chaisz

  • Xilinx UltraScale:为您未来架构而打造的新一代架构

      Xilinx UltraScale™ 架构针对要求最严苛的应用,提供了前所未有的ASIC级的系统级集成和容量。    UltraScale架构是业界首次在All Programmable架构中应用最先进的ASIC架构优化。该架构能从20nm平面FET结构扩展至16nm鳍式FET晶体管技术甚至更高的技术,同 时还能从单芯片扩展到3D IC。借助Xilinx Vivado®设计套件的分析型协同优化,UltraScale架构可以提供海量数据的路由功能,同时还能智能地解决先进工艺节点上的头号系统性能瓶颈。 这种协同设计可以在不降低性能的前提下达到实现超过90%的利用率。   UltraScale架构的突破包括:   • 几乎可以在晶片的任何位置战略性地布置类似于ASIC的系统时钟,从而将时钟歪斜降低达50%   • 系统架构中有大量并行总线,无需再使用会造成时延的流水线,从而可提高系统速度和容量   • 甚至在要求资源利用率达到90%及以上的系统中,也能消除潜在的时序收敛问题和互连瓶颈   • 可凭借3D IC集成能力构建更大型器件,并在工艺技术方面领先当前行业标准整整一代   • 能在更低的系统功耗预算范围内显著提高系统性能,包括多Gb串行收发器、I/O以及存储器带宽   • 显著增强DSP与包处理性能   赛灵思UltraScale架构为超大容量解决方案设计人员开启了一个全新的领域。

    标签: UltraScale Xilinx 架构

    上传时间: 2013-12-23

    上传用户:小儒尼尼奥

  • fpgasopc入门级实验指导书

    fpgasopc入门级实验指导书

    标签: fpgasopc 入门级 实验指导书

    上传时间: 2015-01-01

    上传用户:18707733937

  • 单管放大_从原理图到PCB

    运用PROTEL DXP 2004设计的项目“单管放大”视频教学,完整展现了从原理图到PCB的过程

    标签: PCB 单管放大 原理图

    上传时间: 2013-11-04

    上传用户:rologne

  • 混合信号PCB设计中单点接地技术的研究

    混合信号系统中地平面的处理一直是一个困扰着很多硬件设计人员的难题"详细讲述了单点接地的原理"以及在工程应用中的实现方法$

    标签: PCB 混合信号 接地技术

    上传时间: 2013-11-07

    上传用户:lyson

  • 用单层PCB设计超低成本混合调谐器

    今天,电视机与视讯转换盒应用中的大多数调谐器采用的都是传统单变换MOPLL概念。这种调谐器既能处理模拟电视讯号也能处理数字电视讯号,或是同时处理这两种电视讯号(即所谓的混合调谐器)。在设计这种调谐器时需考虑的关键因素包括低成本、低功耗、小尺寸以及对外部组件的选择。本文将介绍如何用英飞凌的MOPLL调谐芯片TUA6039-2或其影像版TUA6037实现超低成本调谐器参考设计。这种单芯片ULC调谐器整合了射频和中频电路,可工作在5V或3.3V,功耗可降低34%。设计采用一块单层PCB,进一步降低了系统成本,同时能处理DVB-T/PAL/SECAM、ISDB-T/NTSC和ATSC/NTSC等混合讯号,可支持几乎全球所有地区标准。图1为采用TUA6039-2/TUA6037设计单变换调谐器架构图。该调谐器实际上不仅是一个射频调谐器,也是一个half NIM,因为它包括了中频模块。射频输入讯号透过一个简单的高通滤波器加上中频与民间频段(CB)陷波器的组合电路进行分离。该设计没有采用PIN二极管进行频段切换,而是采用一个非常简单的三工电路进行频段切换。天线阻抗透过高感抗耦合电路变换至已调谐的输入电路。然后透过英飞凌的高增益半偏置MOSFET BF5030W对预选讯号进行放大。BG5120K双MOSFET可以用于两个VHF频段。在接下来的调谐后带通滤波器电路中,则进行信道选择和邻道与影像频率等多余讯号的抑制。前级追踪陷波器和带通滤波器的容性影像频率补偿电路就是专门用来抑制影像频率。

    标签: PCB 调谐器

    上传时间: 2013-11-21

    上传用户:时代将军

  • EDA工程建模及其管理方法研究2

    EDA工程建模及其管理方法研究2 1 随着微电子技术与计算机技术的日益成熟,电子设计自动化(EDA)技术在电子产品与集成电路 (IC)芯片特别是单片集成(SoC)芯片的设计应用中显得越来越重要。EDA技术采用“自上至下”的设计思想,允许设计人员能够从系统功能级或电路功能级进行产品或芯片的设计,有利于产品在系统功能上的综合优化,从而提高了电子设计项目的协作开发效率,降低新产品的研发成本。 近十年来,EDA电路设计技术和工程管理方面的发展主要呈现出两个趋势: (1) 电路的集成水平已经进入了深亚微米的阶段,其复杂程度以每年58%的幅度迅速增加,芯片设计的抽象层次越来越高,而产品的研发时限却不断缩短。 (2) IC芯片的开发过程也日趋复杂。从前期的整体设计、功能分,到具体的逻辑综合、仿真测试,直至后期的电路封装、排版布线,都需要反复的验证和修改,单靠个人力量无法完成。IC芯片的开发已经实行多人分组协作。由此可见,如何提高设计的抽象层次,在较短时间内设计出较高性能的芯片,如何改进EDA工程管理,保证芯片在多组协作设计下的兼容性和稳定性,已经成为当前EDA工程中最受关注的问题。

    标签: EDA 工程建模 管理方法

    上传时间: 2013-10-15

    上传用户:shen007yue

  • PCB布线原则

    PCB 布线原则连线精简原则连线要精简,尽可能短,尽量少拐弯,力求线条简单明了,特别是在高频回路中,当然为了达到阻抗匹配而需要进行特殊延长的线就例外了,例如蛇行走线等。安全载流原则铜线的宽度应以自己所能承载的电流为基础进行设计,铜线的载流能力取决于以下因素:线宽、线厚(铜铂厚度)、允许温升等,下表给出了铜导线的宽度和导线面积以及导电电流的关系(军品标准),可以根据这个基本的关系对导线宽度进行适当的考虑。印制导线最大允许工作电流(导线厚50um,允许温升10℃)导线宽度(Mil) 导线电流(A) 其中:K 为修正系数,一般覆铜线在内层时取0.024,在外层时取0.048;T 为最大温升,单位为℃;A 为覆铜线的截面积,单位为mil(不是mm,注意);I 为允许的最大电流,单位是A。电磁抗干扰原则电磁抗干扰原则涉及的知识点比较多,例如铜膜线的拐弯处应为圆角或斜角(因为高频时直角或者尖角的拐弯会影响电气性能)双面板两面的导线应互相垂直、斜交或者弯曲走线,尽量避免平行走线,减小寄生耦合等。一、 通常一个电子系统中有各种不同的地线,如数字地、逻辑地、系统地、机壳地等,地线的设计原则如下:1、 正确的单点和多点接地在低频电路中,信号的工作频率小于1MHZ,它的布线和器件间的电感影响较小,而接地电路形成的环流对干扰影响较大,因而应采用一点接地。当信号工作频率大于10MHZ 时,如果采用一点接地,其地线的长度不应超过波长的1/20,否则应采用多点接地法。2、 数字地与模拟地分开若线路板上既有逻辑电路又有线性电路,应尽量使它们分开。一般数字电路的抗干扰能力比较强,例如TTL 电路的噪声容限为0.4~0.6V,CMOS 电路的噪声容限为电源电压的0.3~0.45 倍,而模拟电路只要有很小的噪声就足以使其工作不正常,所以这两类电路应该分开布局布线。3、 接地线应尽量加粗若接地线用很细的线条,则接地电位会随电流的变化而变化,使抗噪性能降低。因此应将地线加粗,使它能通过三倍于印制板上的允许电流。如有可能,接地线应在2~3mm 以上。4、 接地线构成闭环路只由数字电路组成的印制板,其接地电路布成环路大多能提高抗噪声能力。因为环形地线可以减小接地电阻,从而减小接地电位差。二、 配置退藕电容PCB 设计的常规做法之一是在印刷板的各个关键部位配置适当的退藕电容,退藕电容的一般配置原则是:􀁺?电电源的输入端跨½10~100uf的的电解电容器,如果印制电路板的位置允许,采Ó100uf以以上的电解电容器抗干扰效果会更好¡���?原原则上每个集成电路芯片都应布置一¸0.01uf~`0.1uf的的瓷片电容,如遇印制板空隙不够,可Ã4~8个个芯片布置一¸1~10uf的的钽电容(最好不用电解电容,电解电容是两层薄膜卷起来的,这种卷起来的结构在高频时表现为电感,最好使用钽电容或聚碳酸酝电容)。���?对对于抗噪能力弱、关断时电源变化大的器件,ÈRA、¡ROM存存储器件,应在芯片的电源线和地线之间直接接入退藕电容¡���?电电容引线不能太长,尤其是高频旁路电容不能有引线¡三¡过过孔设¼在高ËPCB设设计中,看似简单的过孔也往往会给电路的设计带来很大的负面效应,为了减小过孔的寄生效应带来的不利影响,在设计中可以尽量做到£���?从从成本和信号质量两方面来考虑,选择合理尺寸的过孔大小。例如¶6- 10层层的内存模¿PCB设设计来说,选Ó10/20mi((钻¿焊焊盘)的过孔较好,对于一些高密度的小尺寸的板子,也可以尝试使Ó8/18Mil的的过孔。在目前技术条件下,很难使用更小尺寸的过孔了(当孔的深度超过钻孔直径µ6倍倍时,就无法保证孔壁能均匀镀铜);对于电源或地线的过孔则可以考虑使用较大尺寸,以减小阻抗¡���?使使用较薄µPCB板板有利于减小过孔的两种寄生参数¡���? PCB板板上的信号走线尽量不换层,即尽量不要使用不必要的过孔¡���?电电源和地的管脚要就近打过孔,过孔和管脚之间的引线越短越好¡���?在在信号换层的过孔附近放置一些接地的过孔,以便为信号提供最近的回路。甚至可以ÔPCB板板上大量放置一些多余的接地过孔¡四¡降降低噪声与电磁干扰的一些经Ñ?能能用低速芯片就不用高速的,高速芯片用在关键地方¡?可可用串一个电阻的方法,降低控制电路上下沿跳变速率¡?尽尽量为继电器等提供某种形式的阻尼,ÈRC设设置电流阻尼¡?使使用满足系统要求的最低频率时钟¡?时时钟应尽量靠近到用该时钟的器件,石英晶体振荡器的外壳要接地¡?用用地线将时钟区圈起来,时钟线尽量短¡?石石英晶体下面以及对噪声敏感的器件下面不要走线¡?时时钟、总线、片选信号要远ÀI/O线线和接插件¡?时时钟线垂直ÓI/O线线比平行ÓI/O线线干扰小¡? I/O驱驱动电路尽量靠½PCB板板边,让其尽快离¿PC。。对进ÈPCB的的信号要加滤波,从高噪声区来的信号也要加滤波,同时用串终端电阻的办法,减小信号反射¡? MCU无无用端要接高,或接地,或定义成输出端,集成电路上该接电源、地的端都要接,不要悬空¡?闲闲置不用的门电路输入端不要悬空,闲置不用的运放正输入端接地,负输入端接输出端¡?印印制板尽量使Ó45折折线而不Ó90折折线布线,以减小高频信号对外的发射与耦合¡?印印制板按频率和电流开关特性分区,噪声元件与非噪声元件呀距离再远一些¡?单单面板和双面板用单点接电源和单点接地、电源线、地线尽量粗¡?模模拟电压输入线、参考电压端要尽量远离数字电路信号线,特别是时钟¡?对¶A/D类类器件,数字部分与模拟部分不要交叉¡?元元件引脚尽量短,去藕电容引脚尽量短¡?关关键的线要尽量粗,并在两边加上保护地,高速线要短要直¡?对对噪声敏感的线不要与大电流,高速开关线并行¡?弱弱信号电路,低频电路周围不要形成电流环路¡?任任何信号都不要形成环路,如不可避免,让环路区尽量小¡?每每个集成电路有一个去藕电容。每个电解电容边上都要加一个小的高频旁路电容¡?用用大容量的钽电容或聚酷电容而不用电解电容做电路充放电储能电容,使用管状电容时,外壳要接地¡?对对干扰十分敏感的信号线要设置包地,可以有效地抑制串扰¡?信信号在印刷板上传输,其延迟时间不应大于所有器件的标称延迟时间¡环境效应原Ô要注意所应用的环境,例如在一个振动或者其他容易使板子变形的环境中采用过细的铜膜导线很容易起皮拉断等¡安全工作原Ô要保证安全工作,例如要保证两线最小间距要承受所加电压峰值,高压线应圆滑,不得有尖锐的倒角,否则容易造成板路击穿等。组装方便、规范原则走线设计要考虑组装是否方便,例如印制板上有大面积地线和电源线区时(面积超¹500平平方毫米),应局部开窗口以方便腐蚀等。此外还要考虑组装规范设计,例如元件的焊接点用焊盘来表示,这些焊盘(包括过孔)均会自动不上阻焊油,但是如用填充块当表贴焊盘或用线段当金手指插头,而又不做特别处理,(在阻焊层画出无阻焊油的区域),阻焊油将掩盖这些焊盘和金手指,容易造成误解性错误£SMD器器件的引脚与大面积覆铜连接时,要进行热隔离处理,一般是做一¸Track到到铜箔,以防止受热不均造成的应力集Ö而导致虚焊£PCB上上如果有¦12或或方Ð12mm以以上的过孔时,必须做一个孔盖,以防止焊锡流出等。经济原则遵循该原则要求设计者要对加工,组装的工艺有足够的认识和了解,例È5mil的的线做腐蚀要±8mil难难,所以价格要高,过孔越小越贵等热效应原则在印制板设计时可考虑用以下几种方法:均匀分布热负载、给零件装散热器,局部或全局强迫风冷。从有利于散热的角度出发,印制板最好是直立安装,板与板的距离一般不应小Ó2c,,而且器件在印制板上的排列方式应遵循一定的规则£同一印制板上的器件应尽可能按其发热量大小及散热程度分区排列,发热量小或耐热性差的器件(如小信号晶体管、小规模集³电路、电解电容等)放在冷却气流的最上(入口处),发热量大或耐热性好的器件(如功率晶体管、大规模集成电路等)放在冷却Æ流最下。在水平方向上,大功率器件尽量靠近印刷板的边沿布置,以便缩短传热路径;在垂直方向上,大功率器件尽量靠近印刷板上方布置£以便减少这些器件在工作时对其他器件温度的影响。对温度比较敏感的器件最好安置在温度最低的区域(如设备的µ部),千万不要将它放在发热器件的正上方,多个器件最好是在水平面上交错布局¡设备内印制板的散热主要依靠空气流动,所以在设计时要研究空气流动的路径,合理配置器件或印制电路板。采用合理的器件排列方式,可以有效地降低印制电路的温升。此外通过降额使用,做等温处理等方法也是热设计中经常使用的手段¡

    标签: PCB 布线原则

    上传时间: 2015-01-02

    上传用户:15070202241

  • 数字地模拟地的布线规则

    数字地模拟地的布线规则,如何降低数字信号和模拟信号间的相互干扰呢?在设计之前必须了解电磁兼容(EMC)的两个基本原则:第一个原则是尽可能减小电流环路的面积;第二个原则是系统只采用一个参考面。相反,如果系统存在两个参考面,就可能形成一个偶极天线(注:小型偶极天线的辐射大小与线的长度、流过的电流大小以及频率成正比);而如果信号不能通过尽可能小的环路返回,就可能形成一个大的环状天线(注:小型环状天线的辐射大小与环路面积、流过环路的电流大小以及频率的平方成正比)。在设计中要尽可能避免这两种情况。 有人建议将混合信号电路板上的数字地和模拟地分割开,这样能实现数字地和模拟地之间的隔离。尽管这种方法可行,但是存在很多潜在的问题,在复杂的大型系统中问题尤其突出。最关键的问题是不能跨越分割间隙布线,一旦跨越了分割间隙布线,电磁辐射和信号串扰都会急剧增加。在PCB设计中最常见的问题就是信号线跨越分割地或电源而产生EMI问题。 如图1所示,我们采用上述分割方法,而且信号线跨越了两个地之间的间隙,信号电流的返回路径是什么呢?假定被分割的两个地在某处连接在一起(通常情况下是在某个位置单点连接),在这种情况下,地电流将会形成一个大的环路。流经大环路的高频电流会产生辐射和很高的地电感,如果流过大环路的是低电平模拟电流,该电流很容易受到外部信号干扰。最糟糕的是当把分割地在电源处连接在一起时,将形成一个非常大的电流环路。另外,模拟地和数字地通过一个长导线连接在一起会构成偶极天线。

    标签: 数字地 布线规则 模拟

    上传时间: 2013-10-19

    上传用户:playboys0