当前位置:首页 > pic
  • PIC单片机常用的相关知识,你知道多少?

    PIC单片机常用的相关知识,你知道多少?

    什么是PIC单片机?你知道多少?时代的变迁,PIC单片机是这个时代的新宠。之前我们对pic单片机的I/O接口进行过阐述,不是很详细。本期对关于PIC单片机的各种内部硬件资源加以介绍,以帮助大家全面掌握pic单片机打下夯实基础。 数据存储器在单片机PIC16F84中,除了有存放程序的程序存储器外,还有数据存储器。单片机在执行程序过程中,往往需要随时向单片机输入一些数据,而且有些数据还可能随时改变。在这种情况下就需用数据存储器。由于数据存储器不但要能随时读取存放在其各个单元内的数据,而且还需随时写进新的数据,或改写原来的数据。因此,数据存储器需由随机存储器RAM构成。RAM存储器在断电时,所存数据随即丢失,这在实际应用中有时会带来不便。但是,在16F84单片机中有64×8位E2PROM数据存储器。存放在E2PROM中的数据在断电时不会丢失。 16F84单片机中的RAM数据存储器如表1所示,该RAM分为两个存储体:即存储体0(Bank0)和存储体1(Bank1)。每个存储体均可以直接用内部总线传送信息,所以它们都是以寄存器方式工作和寻址。这些八位寄存器,又可分为通用寄存器和专用寄存器两个部分。通用寄存器存放数据,专用寄存器存放控制单片机运作的信息。每个存储体最大可扩展到7FH(128个字节)。在每个存储体中,专用寄存器被安排在低位地址空间,通用寄存器被安排在高位地址空间。 通用寄存器用法单一,但专用寄存器却各有各的用处,现将较基本的专用寄存器作一简单介绍。 (1)程序计数器(PCL、PCLATH)。程序计数器PC是对程序进行管理的计数器。PIC16F84的程序计数器为13位宽,最大可寻址的存储空间为8k×14位。实际上16F84只使用前1k×14位(0000~03FFH)存储空间。因程序计数器有13位宽,而专用寄存器只有8位。因此PC由两个专用寄存器构成。其低八位PCL是一个可读/写寄存器(地址为02H或82H),而高字节PCH(有效位5位)不能直接进行读/写操作,它是通过一个8位的保持寄存器PCLATH(地址为0A或8AH)把高5位地址传送给程序计数器的高字节。当执行CALL、GOTO指写PCL时,PC值的高字节就从PCLATH寄存器中装入。 (2)状态寄存器STATUS。状态寄存器STATUS含有算术逻辑单元ALU运算结果的状态(如有无进位等)、复位状态及数据存储体选择位。有关位位的设定如表2所示,功能如下: 1)第0位。进位/借位位C。执行加、减运算指令表2IRP RP1 RP0 TO PD Z DC C后,若结果有进位或借位,则C被置1,否则置0。在执行移位指令时,也要用到这一位。 2)第1位。辅助进位/借位位DC。执行加、减运算指令后,若结果的低四位向高四位有进位或借位,则DC置1,否则置0。 3)第2位。零标志位运算结果为零,Z被置1;运算结果不为零,Z被清零。 4)第3位。低功耗标志位PD。上电复位或执行CLRWDT指令后置1,执行 指令后被清零。 5)第4位。定时时间到标志位TO。上电复位或执行CLRWDT、 指令后被置1,监视定时器的定时时间到被清零。 6)第5位和第6位(RP0、RP1)。这两位是用于直接寻址时的寄存器体选择位。即00——选中Bank0(00H~7FH);01——选中Bank1(80H~FFH),16F84只有两个存储体。故10、11不用。 7)第7位IRP。这是间接寻址的寄存体选择位。0——选中Bank0、1(00H~FFH),1——选中Bank2、3。16F84只有Bank0、1,所以此IRP位应被置为0。 (3)间接寻址INDF和FSR寄存器INDF寄存器不是一个物理寄存器,而是一个逻辑功能的寄存器(地址为00H或80H),当对INDF寄存器进行寻址时,实际上是访问FSR寄存器内容所指的单元,即把FSR寄存器作为间接寄存器使用。FSR称为“寄存器选择”寄存器,地址为(04H或84H)。 对INDF寄存器本身进行间接寻址访问,将读出FSR寄存器的内容,例如当FSR=00H时,间接寻址读出INDF的数据将为00H。用间接寻址方式写入INDF寄存器时,虽然写入操作可能会影响STATUS中的状态字,但写入的数据是无效的。以上就是PIC单片机的常见知识,希望能给大家帮助。

    时间:2020-05-12 关键词: pic 单片机 电路

  • pic单片机解惑篇,6个pic单片机问题解疑(上)

    pic单片机解惑篇,6个pic单片机问题解疑(上)

    pic单片机具备很多应用,对于pic单片机,想必大家并不陌生。往期文章中,小编对pic单片机做过诸多介绍。本文中,小编将为大家带来6个pic单片机问题,并予以解答。而在之后的pic单片机文章中,小编将带来另外6个问题。如果你对本次即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。 1、PIC单片机振荡电路中如何选择晶体? 对于一个高可靠性的系统设计,晶体的选择非常重要,尤其设计带有睡眠唤醒(往往用低电压以求低功耗)的系统。这是因为低供电电压使提供给晶体的激励功率减少,造成晶体起振很慢或根本就不能起振。这一现象在上电复位时并不特别明显,原因时上电时电路有足够的扰动,很容易建立振荡。在睡眠唤醒时,电路的扰动要比上电时小得多,起振变得很不容易。在振荡回路中,晶体既不能过激励(容易振到高次谐波上)也不能欠激励(不容易起振)。晶体的选择至少必须考虑:谐振频点、负载电容、激励功率、温度特性、长期稳定性。 2、如何判断电路中晶振是否被过分驱动? 电阻RS常用来防止晶振被过分驱动。过分驱动晶振会渐渐损耗减少晶振的接触电镀,这将引起频率的上升。可用一台示波器检测OSC输出脚,如果检测一非常清晰的正弦波,且正弦波的上限值和下限值都符合时钟输入需要,则晶振未被过分驱动;相反,如果正弦波形的波峰,波谷两端被削平,而使波形成为方形,则晶振被过分驱动。这时就需要用电阻RS来防止晶振被过分驱动。判断电阻RS值大小的最简单的方法就是串联一个5k或10k的微调电阻,从0开始慢慢调高,一直到正弦波不再被削平为止。通过此办法就可以找到最接近的电阻RS值 3、晶振电路中如何选择电容C1,C2? (1)因为每一种晶振都有各自的特性,所以最好按制造厂商所提供的数值选择外部元器件。 (2)在许可范围内,C1、C2值越低越好。C值偏大虽有利于振荡器的稳定,但将会增加起振时间。 (3)应使C2值大于C1值,这样可使上电时,加快晶振起振。 PIC系列单片机的任意一条I/O管脚都有很强的带负载能力(至少可提供或灌入25mA的电流)。因此,在某些场合,这些管脚可作为可控的电源。举个例子,在一些低功耗的设计中,希望一些周围的器件在系统待命时不耗电或尽量少耗电。此时可考虑这些器件的电源供电由一条I/O脚负责提供,在工作时MCU在该条管脚上输出高电平(接近VDD)带几个mA的负载绝对不成问题。若要进入低功耗模式MCU就在该管脚输出低电平(接近0),被控器件没有了电源也就不会耗电。比如LCD显示电路、信号调制电路等都非常适合此类控制。 5、为何系统在外界磁场和电场的干扰时不能正常工作? 如果在主控电路中没有滤波电路,您用的芯片在/MCLR端应接一个能保证滤去该端口上的窄脉冲电路。因/MCLR上加的低电平宽度应大于2US,系统才能复位,而小于2US的低电平将会干扰系统的正常工作。 6、使用带A/D的PIC芯片时,怎样才能提高A/D转换的精度? (1)保证您的系统的时钟应是适合的。如果您关闭/打开A/D模块,应等待一段时间,该段时间是采样时间;如果您改变输入通道,同样也需等待这段时间,和最后的TAD(TAD为完成每位A/D转换所需的时间)。TAD可以在ADCON0中(ADCS1、ADCS0)中选择,它应在2US-6US之间。如果TAD太小,在转换过程结束时,没有完全被转换;如果TAD太长,在全部转换结束之前,采样电容上的电压已经下降。对该时间的选择的具体细节请参照有关的数据手册或应用公式。 (2)通常模拟信号的输入端的电阻太高(大于10Kohms)会使采样电流下降从而影响转换精度。若输入信号不能很快的改变,建议在输入通道口用0.1UF的电容, 它将改变模拟通道的采样电压,由于电流的补给,内在的保持电容为51.2PF。 (3)若没有把所有的A/D通道用完,最好少用AN0端。因它的下一个脚与OSC1紧靠在一起会对A/D转换造成影响。 (4)最后,在系统中,若芯片的频率较低,A/D转换的时钟首选的是芯片的振荡。这将在很大范围内降低数字转换噪音的影响。同时,在系统中,在A/D转换开始后,进入SLEEP状态,必须选择片内的RC振荡作为A/D转换的时钟信号。该方法将提高转换的精度。 以上便是此次小编带来的“pic单片机”相关内容,通过本文,希望大家对文中提及的6个单片机问题已不再迷惑。如果你喜欢本文,不妨持续关注我们网站哦,小编将于后期带来更多精彩内容。最后,十分感谢大家的阅读,have a nice day!

    时间:2020-03-11 关键词: pic单片机 指数 pic 单片机

  • gcc c编译器如何编译c程序,如何为pic单片机选择c编译器

    gcc c编译器如何编译c程序,如何为pic单片机选择c编译器

    对于c编译器,大家应早已熟悉。往期文章中,小编带来诸多c编译器相关文章,尤其是gcc c编译器。本文中,小编将对gcc c编译器如何编译c程序予以介绍,并在文章的后半部分向大家讲解如果选择pic单片机的c编译器。如果你对本文即将要涉及的内容存在一定兴趣,不妨继续往下阅读哦。 一、GCC如何编译C语言程序 使用GCC将C语言源代码文件生成可执行文件的过程,需要经历四个的步骤: 预处理(Preprocessing) 编译(Compilation) 汇编(Assembly) 链接(Linking) 1、预处理(Preprocessing) 将C源程序预处理,生成.i文件。 预处理过程实质上是处理“#”,将#include包含的头文件直接拷贝到.c当中;将#define定义的宏进行替换;将#if #else #endif定义的无用代码过滤掉,同时将代码中没用的注释部分删除等。 预处理所完成的基本上是对源程序的“替代”工作。经过此种替代,生成一个没有宏定义、没有条件编译指令、没有特殊符号的输出文件。这个文件的含义同没有经过预处理的源文件是相同的,但内容有所不同。 2、编译(Compilation) 预处理后的.i文件编译为汇编语言,生成.s文件。 编译所要作的工作就是通过词法分析和语法分析,在确认所有的指令都符合语法规则之后,将其翻译成等价的中间代码表示或汇编代码。 3、汇编(Assembly) 将.s文件经过汇编,生成.o目标文件。 汇编过程实际上指把汇编语言代码翻译成目标机器指令的过程。对于被翻译系统处理的每一个C语言源程序,都将最终经过这一处理而得到相应的目标文件。目标文件中所存放的也就是与源程序等效的目标的机器语言代码。 目标文件由段组成。通常一个目标文件中至少有两个段: 代码段:该段中所包含的主要是程序的指令。该段一般是可读和可执行的,但一般却不可写。 数据段:主要存放程序中要用到的各种全局变量或静态的数据。一般数据段都是可读,可写,可执行的。 4、链接(Linking) 将.o文件链接起来生成一个可执行文件。 链接程序的主要工作就是将有关的目标文件彼此相连接,也即将在一个文件中引用的符号同该符号在另外一个文件中的定义连接起来,使得所有的这些目标文件成为一个能够被操作系统装入执行的统一整体。 根据库函数不同的链接方式,链接处理可分为静态链接和动态链接两种。使用静态链接的好处是,依赖的动态链接库较少,具有较好的兼容性;缺点是生成的程序比较大。使用动态链接的好处是,生成的程序比较小,占用较少的内存。 C语言中静态库和动态库简介 需要注意的是,.i文件、.s文件、.o文件可以认为是中间文件或临时文件,若使用 GCC 一次性完成C语言程序的编译,那么只能看到最终的可执行文件,这些中间文件都是看不到的,因为 GCC 已经将它们删除了。 二、如何选择PIC单片机的C编译器 如果是编译PIC10、PIC12、PIC16系列单片机,用CCS最好。而PIC18/PIC24/dsPIC/PIC32系列,用MCC最好。 PIC单片机的C编译器只有HI-TECH公司出品PICC编译器,和CCS公司的CCS编译器。还有PIC的生产商Microchip公司自行生产的只针对PIC18/PIC24/dsPIC/PIC32系列单片机的C语言编译器MCC(MCC18 / MCC30 / MCC32)。 IAR软件不能编译PIC的C语言或汇编语言。 要注意的一点是,CCS虽然也是C语言,但因为头文件不同,所以它的程序和PICC,MCC都不一样,三者的程序不能混着编译,比如针对CCS编写的程序只能用CCS的编译器编译,用PICC编译只能报错。 另外,HI-TECH已经被MICROCHIP收购,成为MICROCHIP旗下的全资子公司。 以上便是此次小编带来的“c编译器”相关内容,通过本文,希望大家对gcc c编译器编译c程序的过程具备一定的了解。如果你喜欢本文,不妨持续关注我们网站哦,小编将于后期带来更多精彩内容。最后,十分感谢大家的阅读,have a nice day!

    时间:2020-03-09 关键词: gcc c编译器 指数 pic

  • 是德科技携手NOEIC和CompoundTek,共同建立PIC自动化测试的布局设计标准

    2020年2月13日,北京——是德科技宣布,该公司即将与国家信息光电子创新中心(NOEIC)和CompoundTek展开合作,三方携手建立光子集成电路(PIC)自动化测试的布局设计标准。NOEIC是一家旨在为信息光电子产业打造世界级研发能力的创新机构;CompoundTek是提供新兴硅光解决方案(SiPh)的全球晶圆代工服务领先企业;是德科技是一家领先的技术公司,致力于帮助企业、服务提供商和政府客户加速创新,创造一个安全互联的世界。与分立元件和大体积光通信元件相比,PIC具有许多优点,比如显著减少占用空间、提高稳定性和降低能耗。PIC在电信网络解决方案中无处不在,在传感、生物医学、密码学和量子计算等新的应用领域也引起了越来越多的关注。随着PIC应用范围的扩大,为确保批量生产的可扩展性,保证产品良率和工艺监控,让PIC实现高度标准化和自动化已经成为当务之急。是德科技、NOEIC和CompoundTek将会联合建立一套全球公认的PIC布局标准化方法,以便推广自动化测试、通用组装和封装服务,支持更大规模的批量生产。其目标是进一步方便PIC设计人员在设计阶段定义测试协议,以及促进测试设备更好地进行自动化测试,轻松定义测量过程和测试参数。三方通过强强联合,将会围绕边缘耦合电路共同建立标准化的PIC布局惯例和设计规则,包括但不限于芯片方向、I/O端口位置、DC焊盘放置,以及为某些限制区域设置基准点和指示等;这些区域对于实现自动测试、组装和封装至关重要。在此过程中,采用和部署业经验证的集成解决方案有助于实现高吞吐量测试,比如在全自动探测台上使用是德科技的光信号分析套件,并结合速度优化的测试执行算法。该方案还支持可测试性设计(DFT)和一步到位的设计(FDR)技术,能够显著降低与测试相关的总体成本。是德科技的光信号分析套件由PathWave平台和光应用软件解决方案组成。

    时间:2020-02-13 关键词: 自动化测试 fdr pic

  • Microchip推出新型PIC®MCU系列产品,将软件任务移交硬件,加快系统响应速度

    在基于单片机(MCU)的系统设计中,软件系统通常是影响产品上市时间和系统性能的瓶颈。Microchip Technology Inc.(美国微芯科技公司)推出的下一代PIC18-Q43系列产品可以将多种软件任务转移至硬件上实现,从而帮助开发者更快地将性能更高的解决方案推向市场。新系列产品集成了丰富的外设,功能多样且简单易用,通过方便的开发工具,用户可创建基于硬件的定制功能。通过将可配置的外设智能互联,用户可近乎零延迟地共享数据、逻辑输入或模拟信号,而无须额外代码来提升系统响应时间。PIC18-Q43系列产品非常适合各种实时控制和互联应用,例如家用电器、安防系统、电机和工业控制、照明与物联网等。新产品还有助于减少开发板空间、物料清单(BoM)和总成本,并加快产品上市。独立于内核的外设(CIP)是指具有额外功能,无须中央处理单元(CPU)介入就可自主处理各种任务的外设。新系列产品具有多种CIP,如定时器、简化的脉宽调制(PWM)输出、CLC、具有计算功能的模数转换器(ADCC)以及多种串行通信模式等,旨在让开发者更容易地定制其特定设计配置。CLC提供不受软件执行速度限制的可编程逻辑,允许客户定制波形发生和时序测量等功能。CLC可充当“胶水”逻辑,来“粘合”芯片内部的各种外设,从而让硬件定制变得前所未有的容易。新系列产品中独立于内核的通信接口,包括UART、SPI以及I2C等,为寻求创建定制设备的开发人员提供灵活易用的构建模块,此外,新增加的多个DMA通道以及中断管理功能可通过简化软件循环来加速实时控制。使用Microchip提供的综合开发工具套件,用户可方便快捷地在图形化用户界面(GUI)环境中生成应用代码以及定制CIP组合。此外,新系列产品工作电压最高可达5V,有助于提升噪声抑制能力,并让客户与更多种类的传感器接口。Microchip 8位单片机事业部助理营销副总裁Greg Robinson表示:“PIC18-Q43系列产品提供了多种CIP,支持在可定制的片上硬件中实现多种功能甚至整个控制回路。通过结合灵活的CIP和高集成度的模拟功能,用户将大幅缩短开发时间。通过自动化的波形控制、时序和测量操作、以及逻辑功能,系统性能将得到极大提高。”开发工具PIC18-Q43系列产品的开发可在Microchip公司的MPLAB®X IDE和MPLAB Xpress IDE集成开发环境中进行,并支持MPLAB代码配置器(MCC)插件——这是一款自由软件插件,提供图形化界面,可根据具体应用需求来配置外设及相关功能。此外,用户也可使用PIC18F57Q43Curiosity Nano开发板来进行开发工作,这是一款紧凑型高性价比开发板,具有编程和调试功能。供货与定价PIC18-Q43系列包括各种存储大小、封装规格以及价格的产品,以满足广泛的应用需求。全系列产品均可提供多种封装的量产产品和样品。批量定购价格为每片0.64美元起。欲了解更多信息,请联系Microchip销售代表、全球授权分销商或访问Microchip网站。

    时间:2020-02-13 关键词: MCU cip pic

  • 处理PIC单片机的中断服务程序时存在哪些问题?

    处理PIC单片机的中断服务程序时存在哪些问题?

    PIC与51系列单片机一个显著的区别就是:PIC只有一个中断入口地址(为04H),而51有多个中断源。这样对PIC来说,无论发生何种中断程序 将自动转移执行04H处的程序语句,为了区分到底是哪种中断发生就必须在中断服务程序中通过判断中断标志位来确定并转移到相应的中断服务 程序中。在发生中断时,断点地址被首先压入硬件堆栈,而现场的一些参数须用户通过软件保存,必须保存的寄存器包括W寄存器、程序寄存器的高位字节PCLATH及状态标志寄存器STATUS等,另外一些在中断服务程序和主程序中均使用到的寄存器也必须保存,否则可能会导致不可预知的错误。如果需要保存的现场参数过多就会到来两个弊端:一是造成RAM资源的浪费,特别是对RAM资源紧张的应用系统;二是增加了中断服务 程序的运行时间而导致中断系统的实时性变差,甚至影响正常功能的实现,比如用单片机中的CCP模块实现对高速脉冲宽度的测量,则就要求中断服务程序的运行时间越短越好,否则会丢掉捕捉的机会而造成错误。因此建议在中断服务程序中尽量不要使用主程序中用到的寄存器,将中断中的寄存器设为专用,这样就省去了这些寄存器的保护和恢复程序并减少出错的几率。 另外一个注意的是,在中断服务程序中尽量避免使用有多级嵌套的子程序,本人在实际应用过程中曾遇到过此类问题,在很长一段时间内找不出问题的根源。PIC中档单片机的硬件堆栈为8级,假如在主程序中调用了一个具有6级嵌套的子程序,当主程序执行到最内层的子程序时,则8級堆栈中已用去了6级,如果刚好此时发生了中断,则断点被压入堆栈,此时堆栈中保存了七个地址,又假如在中断服务程序中存在一个二级嵌套的子程序,则堆栈将发生溢出,这必将导致程序不能正确返回到原来的地址,从而导致程序跑偏。由于该情况的发生需要满足一定的条件,即 主程序运行到最内层的子程序时发生中断,因而具有很大的不确定性,在产品开发开发调试阶段可能根本就没有发现有什么问题,等到产品经用户长期使用时才开始暴露出来,但此时已经给产品在用户心目中的形象造成了极坏的影响,损失已经无法挽回。因此作为开发人员应该特别注意。

    时间:2019-10-29 关键词: 电源技术解析 pic 单片机

  • pic单片机入门篇,pic单片机的那些风风雨雨

    pic单片机入门篇,pic单片机的那些风风雨雨

    Pic单片机的学习是存在一定难度的,一是因为必须具备一定的pic单片机基础知识,二是需对pic单片机的所有引脚等有一定的了解。这篇文章是小编在学习pic单片机写的一篇比较适合pic单片机初入门朋友阅读的文章,一起了解下吧。 学习PIC单片机的目的是打算做一款433M无线开关,之前学习过51与AVR单片机,对8位单片机有一些基础,不过PIC单片机还是第一次接触,先从入门开始吧!入门实验最经典的是点亮一只LED了,这次也它为例走一遍PIC开发的整个流程。虽然C语言已成主流,由于PIC单片机汇编指令只有35条,记忆容易,这次就从非主流开始! 一、准备工作 1. 在二手市场买来一本【PIC单片机原理与应用】第4版。 2. 在淘宝买来一个PIC的下载仿真器【PICkit3】。 3.从废旧设备上面拆下一片PIC16F886的28脚单片机,用覆铜板制作了一个简单的PIC最小系统板,可以用来下载仿真、按键输入、LED指示灯、AD输入。 4. PIC开发环境MPLAB X IDE V3.6。 5. 连接好硬件,如下图 PIC仿真下载器的引脚说明如下图 1脚连接到单片机的1脚;4脚连接到单片机的28脚;5脚连接到单片机的27脚;6脚空。 二、新建项目   三、配置位 PIC单片机配置位很重要,相当于AVR单片机的熔丝位,以下是官方文档对于配置位的说明,如下图 因为最小系统板没有外接晶振,所以要选择使用内部晶振,看门狗也关闭,还有一个是LVP这个要设置为OFF,否则下载后不运行,下面贴设置方法 四、编写程序 这里有几点需要注意的 1. 使用的IO口是否有上拉电阻功能,因为有的IO口没有,在设计电路时需要的话就要加上拉电阻 2. 操作相应的寄存器时可能需要先选择该寄存器所在的存储体,设置由状态寄存器【STATUS】的RP0和RP1位控制,或IRP(间接寻址)来进行选择。

    时间:2019-07-24 关键词: pic单片机 pic 单片机

  • Microchip推出3.0版MPLAB Harmony,为PIC 和SAM单片机提供统一的软件开发框架

    增强的工具链可通过模块化软件下载和简化的驱动程序加快开发 从基本器件配置到基于实时操作系统(RTOS)的设计,32位单片机(MCU)的应用在复杂性和开发模型方面差异巨大。为帮助开发人员简化和调整设计,Microchip Technology Inc.(美国微芯科技公司)今日宣布推出最新版本的统一软件框架MPLAB® Harmony 3.0(v3),首次为SAM MCU提供支持。其强大的开发环境将逐渐增加对Microchip所有32位PIC®和SAM MCU产品的支持,为开发人员提供更多选择,以满足不同的终端应用需求。新版本还增加了简化设计的功能,例如通过与wolfSSL合作免版权费用的安全软件,以及模块化软件下载,设计人员可根据应用的需要下载软件的选定部分。 MPLAB Harmony v3可为开发人员提供一个统一的平台,在架构、性能和应用程序上提供灵活的选择,帮助其在计算机上学习和维护单一的开发环境。MPLAB Harmony v3支持从基本器件配置到基于实时操作系统(RTOS)的应用程序等各种软件开发模型,当设计人员只需使用一小部分元素或组件时,不必下载整个软件套件。例如,开发人员现在可根据应用需求仅下载设备驱动程序或TCP / IP协议栈,从而节省时间和硬盘空间。该软件提供简化的驱动程序和优化的外设代码库,可进一步简化开发流程,帮助开发人员减少在较低级别驱动程序上所投入的时间和精力,使其能够专注于实现应用程序的差异化。 Microchip 32位单片机产品部副总裁Rod Drake表示:“Microchip持续对MPLAB® Harmony系列产品添加增强功能,使其更加灵活、集成且易用。在Harmony生态系统中增加SAM MCU之后,设计人员可利用平台的代码互操作性,优化的外设代码库和广泛的中间件支持等功能加速开发流程。” Microchip与wolfSSL携手在MPLAB Harmony 3.0中部署wolfSSL的安全套件软件元素,可缩短客户的嵌入式安全设计周期。与wolfSSL的多年合作协议为开发人员提供了即时可用、免版权费用,基于软件的安全解决方案,在速度、规模、可移植性和标准合规性方面提供支持。客户可在协议期内享有免费的商业许可进行生产,并可使用wolfSSL套件的wolfSSL TLS库,wolfMQTT客户端库和wolfSSH SSH库。 开发工具 MPLAB Harmony v3现支持用于SAM MCU的Xplained Pro和Ultra评估平台。MPLAB Harmony与MPLAB X集成开发环境(IDE)紧密配合,可覆盖Microchip 整个MCU产品线,为客户提供统一软件开发框架。MPLAB X和Harmony开发平台将继续支持PIC32系列MCU与相关开发平台(例如:Curiosity系列开发板)。另外,MPLAB Harmony还在其嵌入式开发框架中无缝集成第三方解决方案(例如:RTOS、中间件和驱动程序)。 供货和定价 MPLAB Harmony 3.0可从Microchip网站免费下载。MPLAB Harmony 3.0完全支持以下产品线: · SAM E/S/V7x · SAM C21/C20 · SAM D21/D20 MPLAB Harmony 3.0在测试级支持以下器件: · SAM D/E5x · PIC32MZ EF · PIC32MZ DA · PIC32MK MPLAB Harmony将在2019年中旬前,为其他32位SAM和PIC32 MCU系列陆续提供支持,未来也将增加对新系列的支持。如需了解更多信息,请联系Microchip销售代表、全球授权分销商或访问Microchip官网。

    时间:2019-04-08 关键词: Microchip am单片机 pic

  • 基于PIC单片机的倾角传感器的设计

    摘 要:介绍倾角传感器的工作原理,对pic16c72与倾角传感器的硬件接口电路及其软件进行了设计,并且该设计已经由实验得到验证。0 前 言 设计中的倾角传感器是新型变质面积电容式倾角传感器,该倾角传感器技术是为数不多的、能够兼有结构简单、可靠性高、有通用传感器集成电路等优点的倾角传感器技术之一。在测绘仪器仪表、建筑机械、天线定位、机器人技术、坦克和舰船火炮平台控制、飞机姿态、汽车电子控制、石油勘探、海上平台监控等方面有广泛应用。 1 倾角传感器的工作原理倾角传感器的电路原理如图1所示。图1 倾角传感器原理图 检测电路由比较器a1、a2、双稳态触发器及电容充放电回路组成。c1、c2为可变介质面积电容式倾角传感器,其容量大小与倾角变化成比例。双稳态触发器的两个输出端a、b作为差动脉冲宽度调制电路的输出。设电源接通时,触发器的a端为高电位,b端为低电位,因此a点通过r1对c1充电,直至m点的电位等于参考电压uf时,比较器a1产生一脉冲,触发器翻转,则a点呈低电位,b点呈高电位。此时m点电位经二级管d1迅速放电至零,而同时b点的高电位经r2向c2充电,当n点电位等于uf时,比较器a2产生一脉冲,使触发器又翻转一次,则a点呈高电位,b点呈低电位,重复上述过程。如此周而复始,在双稳(a)(b) 态触发器的两输出端各自产生一宽度受c1、c2调制的方波脉冲。 当c1=c2时,线路上各点电压波形如图2(a)所示,a、b两点间平均电压为零。当c1≠c2时,c1和c2充放电时间常数不同,电压波形如图2(b)所示,a、b两点间平均电压不再是零。输出直流电压usc由a、b两点间电压经低通滤波后获得,等于a、b两点间电压平均值uap和ubp之差。<!--[if !vml]--> 式中u1——触发器输出高电平。<!--[if !vml]--> 设充电电阻r1=r2=r,则得 图2 各点电压波形图 当倾角传感器在-90°=-+90°之间转动变化时,c1、c2的电容将随之发生变化。由上面的等式可知,差动电容的变化使充电时间不同,从而使双稳态触发器输出端的方波脉冲宽度不同,因此a、b两点间输出直流电压usc也不同,而且具有线性输出特性。 2 硬件设计 用芯片lm339 作为倾角传感器的两个电压比较器,芯片hbf4013af作为倾角传感器的rs触发器,芯片lm324用作电压跟随器。触发器的a点电压经低通滤波后,再由芯片lm324进行电压跟随,然后作为pic16c72单片机ra0端口的模拟输入量。基于pic单片机的检测电路如图3所示。 图3 pic硬件连接图 pic16c72 芯片是一种具有28个引脚的双列直插式芯片,有2k的程序存储器和128 byte的ram,它提供22个i/o引脚与电源掉电复位功能,内置的外围包括3个定时器,一个捕捉/比较/pwm模块和一个同步串行通信端口,这个通信端口可以设置为使用两线的集成电路间通信模式,或是三线的串行外围接口。pic16c72提供8个中断源,并可由软件来设置它们的优先权。 pic16c72芯片的最大特点就是带有8位a/d转换部件,有5个a/d通道模拟输入,这些多通道模拟输入共用一个采样/保持电路,用一个多路转换开关进行切换。使用a/d转换功能时,应首先对a/d控制寄存器adcon0、adcon1进行初始化定义,见图4. pic16c72的ra1端接有一校零电键,当pic16c72采样时,若电键按下,则把当前倾角传感器的倾斜角定为零度角。此时,数码管显示的数据为零(000.0). 图4 a/d控制寄存器 本设计中,由4 个led数码管显示倾角传感器的倾斜角度。第一个数码管显示符号位,中间两个

    时间:2019-02-28 关键词: 传感器 嵌入式开发 倾角 pic 单片机

  • PIC单片机16F84的内部硬件资源(三)

    http://  i/o口  单片机作为一个控制器件必定有数据输入和输出。输入量可能是温度、压力、转速等,而输出量可能是开关量和数据,以保证受控过程在规定的范围内运行。数据的输入和输出都需通过单片机内部有关电路,再与引脚构成输入/输出(i/o)端口。pic16f84单片机芯片有两个i/o端口(prota和portb)。端口a为5位口,端口b为8位口,共占用13位引脚。每个端口由一个锁存器(即数据存储器中的特殊功能寄存器05h、06h单元)、一个输出驱动器和输入缓冲器等组成。当把i/o口作输出时,数据可以锁存;作输入口时,数据可以缓冲。  16f84 porta口中的ra4是斯密特触发输入、漏极开路输出。而其它的ra口引脚都是ttl电平输入和全cmos驱动输出。端口portb是一个八位双向可编程i/o口。各端口虽然也由锁存器、驱动器、缓冲器等构成,但因功能略有不同而导致电路亦存在差别。现以porta口的ra0 ~ra3的电路(见左图)为例,说明其基本工作原理。  图中ra口的i/o引脚是由数据方向位(寄存器trisa)来定义数据流向。当trisa寄存器的位置为“1”时,其输出驱动器(由p沟道和n沟道mos管串接而成)呈高阻态,即两个mos管均截止,i/o口被定义为输入。此时,数据由i/o端输入,经ttl输入缓冲器到d触发器。当执行读指令时,此d触发器使能,数据经三态门进入数据总线。  当trisa的位置为“0”时,i/o口被定义为输出,此时输出锁存器的输出电平就是i/o口的输出电平。  读porta寄存器的结果就是读取i/o引脚上的电平,而写porta寄存器的结果是写入i/o锁存器。所有的写i/o口的操作都是一个“读入/修改/写入”的过程,即先读i/o引脚电平,然后由程序修改(按要求给定一个值),再置入i/o锁存器。  pic16f84单片机的输出可提供20ma的电流,所以它可直接驱动led。porta和portb各个位均可分别定义为输入和输出。下面以porta口初始化程序的实例,说明选择i/o口的方法。  clrf porta;端口a被清零  bsf status;状态寄存器status的rpo位置为1,选bank1。  movlw 0xcf ;将定向值         ;11001111置入w工作寄存器  movwf trisa;置ra(3~0)位为输入         ;ra 5?4位为输出          ;trisa 7?6位未用  在使用i/o口时应注意:  (1)当需要一个i/o口一会做输入、一会又做输出时,输出值会不确定。  (2)i/o引脚输出驱动电路为cmos互补推挽输出。当其为输出状态时,不能与其它输出脚接成“线或”或“线与”,否则,会因电流过载烧坏单片机。  (3)当对i/o口进行写操作后不宜直接进行读操作,一般要求在两条连续的写、读指令间至少加入一条nop指令。  例:movwf 6 ;写i/o  nop ;稳定i/o电平  movf 6,w;读i/o  5?堆栈  单片机执行程序时,常常要执行调用子程序。这样就产生了一个问题:如何记忆是从何处调用的子程序,以便执行子程序之后正确返回。此外,在程序执行过程中,还可能会发生中断,转而执行中断子程序,这时,又如何记忆从何处中断,以便返回呢?  满足上述功能的方法就是“堆栈”技术。  “堆栈”是一个用来保存临时数据的栈区。当主程序调用子程序时,单片机执行到call指令或发生中断时,就自动将下一条指令的地址“压栈”保存到栈区。当子程序结束,单片机执行返回指令时,就自动地把栈区的内容“弹出”,作为下步指令执行的新地址。  pic16f84单片机芯片内有一个8级13位宽(与pc同宽)的硬件堆栈,此堆栈既不占用程序存储空间,也不占用数据存储空间。当执行一条call指令或一个中断被响应后,程序计数器pc中的断点地址就自动被压栈(push)保护,而当执行return、retlw或者retfie指令时,堆栈中的断点地址会弹回(pop)程序计数器pc中。无论是push还是pop操作,都不影响pclath寄存器的内容。

    时间:2019-02-27 关键词: 资源 硬件 嵌入式开发 pic 单片机

  • PIC系列单片机应用设计与实例

    1.引言   在微控制器(Microcontroller)应用领域日益广泛的今天,各个领域的应用也向微控制器厂商提出了更高要求,希望速度更快、功耗更低、体积更小、价格更廉以及组成系统时所需要的外围器件更少;随着越来越多的各种非电子工程技术人员的应用需求,他们想把微控制器作为嵌入式部件应用到自己熟悉的领域中,还提出简单易学易用的要求。用户的需求就是厂商的市场和动力,老的半导体厂商顺应潮流不断推出新品种,新的半导体厂商则后来居上,把越来越多的外围接口器件集成到片内,功能越来越强、性能越来越高。迄今至少也有35家国外半导体厂商的微控制器进入中国市场。在这众多的五彩缤纷的微控制器中,美国Microchip技术公司的PIC系列微控制器则异军突起,独一帜。它率先推出采用精简指令集计算机(RISC--Reduced Instruction Set Computer)、哈佛(Harvard)双总线和两级指令流水线结构的高性能价格比的8位嵌入式控制器(Embedded Controller)。其高速度(每条指令最快可达160ns)、低工作电压(最低工作电压可为3V)、低功耗(3V,32kHz时15μA)、较大的输入输出直接驱动LED能力(灌电流可达25mA)、一次性编程(OTP--One Time Programmable)芯片的低价位、小体积、指令简单易学易用(35--37条指令)等,都体现了微控制器工业发展的新趋势。  这个系列的微控制器在市场上极具强劲的竞争力,在全球都可以看到PIC微控制器在从办公自动化设备、消费电子产品、电讯通信、智能仪器仪表到汽车电子、金融电子、工业控制等不同领域的广泛应用。PIC系列微控制器在世界微控制器市场份额排名中逐年提前,以至已成为一种新的8位微控制器的世界标准和最有影响力的主流嵌入式控制器。大家会发现,在国内目前仍然是Intel的MCS-51系列及其兼容的单片机占绝对主流地位,原因是该系列单片机引进历史最长,在国内应用一直繁荣而面广,参考资料相对丰富,使用惯性使然。 2.PIC系列微控制器系统扩展技术   系统扩展有两类不同的方法,一类是并行扩展,另一类是串行扩展。   对于并行扩展,目前使用的微处理器和微控制器绝大部分都采用总线结构,无论进行存储器扩展还是I/O接口扩展,都是利用数据总线、地址总线和控制总线这三总线来扩展。因为这个系列的微控制器的设计是基于真正的单片机应用,芯片引脚并未安排三总线。但是可以利用接口电路仿真三总线。任何一种微控制器,只要有足够多的I/O接口可用,就可以用一个8位I/O口作为8位I/O口仿真16位的地址线(实际上还可以根据需要扩展成任意位数据线和地址线)。当然这种方法占用I/O口资源太多,显得不经济。另外一种可用的方法就是模仿Intel的8031扩展方法,占用一个8位锁存器将地址信号分离出来;再根据需要扩展器件寻址范围的大小,用另外一个I/O口的若干位作为高位地址线。需要扩展的器件就可以与这三总线相应信号相连。当需要对扩展器件进行访问时,即可以在高8位地址线的I/O口先输出高位地址,再从分时复用的I/O口输出低8位地址,并用另外一个I/O线作为地址锁存允许信号线ALE去控制锁存器,锁存住8位的低位地址。这时就可对寻址单元进行访问。下面的并行扩展都采用这个方案。  对于串行扩展,比较简单,因为在PIC16CXX系列芯片中已有同步串行口部件SSP,可以直接进行I2C方式、SPI方式串行通信,另外还有异步通信接口USART。在PIC16C5X系列芯片中没有串行通信部件,但是可以用软件仿真实现。    PIC系列微控制器系统扩展技术有:1、数据存储器扩展,(1)并行数据存储器扩展(2)串行数据存储器扩展,例如,二总线EEPROM和三总线EEPROM同串行EEPROM,PIC16C5X与24XXXX系列串行EEPROM的接口,扩展I2C总线协议所规定地址空间技术-16C54与24LC65的接口方法和编程,16C5X与四线制串行EEPROM芯片93LC46的接口方法和编程,16CXX SPI接口和93LCXX的接口。2、PIC系列微控制器的I/O口扩展(1)74系列TTL集成电路芯片扩展技术(2)可编程并行接口扩展技术(3)用PIC16C5X实现数字电位器的功能(4)人机对话的键盘、LED数码显示、LCD驱动扩展,用PIC16C57直接扩展LED数码管和键盘,用PIC16C54/56扩展LED数码管和键盘,用PIC系列微控制器直接驱动LCD显示器。3、中断系统的扩展和实现,(1)软件中断技术(2)PORTB口作外部中断。4、I2C总线接口与串行通信,(1)I2C总线软件设计及其子程序(2)异步串行通信的软件实现(3)PIC16CXX系列异步串行通信中断驱动的软件实现 3、PIC系列微控制器应用系统开发及其常用工具   单片机应用系统的开发,用单片机开发设计制作的应用系统或产品,与纯粹用硬件电路实现的装置不一样。这是因为除了相应的硬件电路外,其关键在于应用系统软件的开发,而单片机本身并没有软件开发功能。编写的应用程序如何调试和修改?怎么能高效率地找出应用系统硬件和软件中的错误?又如何把最后调试好的程序固化到单片机片内程序存储器中?这些需要相应的开发工具,称

    时间:2019-02-27 关键词: 实例 嵌入式开发 系列 pic 单片机

  • PIC单片机的可编程电源的设计

    引言  随着各种电器和仪表设备的日渐丰富,对电源应用的灵活性提出了更高的要求。设计一款使用灵活、方便且价格相对便宜的通用电源,正越来越成为市场所需。现代单片机正朝着处理速度越来越快,外设资源越来越丰富,价格越来越便宜的方向发展,将单片机融入电源的设计中可以极大地提升电源的性能和灵活性。 本文介绍了一种单片机加pwm芯片的开关电源设计方法,既可以保留pwm芯片带来的稳定工作性能,又可以利用单片机的控制能力提供各种人机交互和通信接口。笔者设计的电源作为通用电源使用,可以提供灵活可编程的电压电流输出,另外还可以设置成铅酸电池充电器的模式,具有广阔的应用前景。  1 系统功能  通过对电源的编程,可以方便地实现图1所示的电压输出波形。其中,v1、v2、t1、t2、dv、dt都是可以通过编程来设定的。电压值的输出范围为0~16v,最大输出电流为10 a。输出电压精度为0.1 v,电流精度为10ma。电流的设定值指的是允许输出的最大电流,也可以被编程为与输出电压一样的波形。  另外,电源也可以工作在铅酸电池充电器的模式(简称“lbc模式”)。根据铅酸电池的特性,当电源工作在lbc模式时,电源首先将输出较大的充电电压和电流v1/i1,至少维持10s;当充电电流降到小于设定值i2时,电源输出较小的充电电压和电流v2/i2。如果到了设定时间t1,充电电流还未降到i2以下,这时电源输出也会降为v2/i2。当输出电流再次大于i2时,电源将再次输出v1/i1充电。其中,v2设定值必须小于14v。若设置为大于14 v,电源会自动将其设成14 v。i2的值必须大于1/8i1,否则将被自动设成1/8i1。lbc模式如图2所示。  用户可以通过3种方式对电源进行输出设定:  ① 通过电源面板上按键编程。通过按键对输出电压、电流限流值、时间等量进行设定。  ② 通过pc机串口编程。通过将pc机的串口rs232与电源串口相连,再运行pc机上一串口通信的软件对电源进行编程。  ③ 电源间相互编程。通过将两台电源的串口相连,操作其中一台电源面板上的按键来对另一台进行编程。操作的一台电源叫做“主电源”,被编程的电源叫做“从电源”。在这种编程方式中,只能将从电源的参数设置为与主电源完全一致,而不能对各个参数进行单独设定。一台电源只能提供100w的功率。这种方式可以应用在需要较大功率的场合,可将两台或多台具有相同设置的电源输出并联来方便地实现功率扩展。  2 工作原理  用单片机来控制开关电源,总的来说可以分为两种:   第一种是单片机通过输出pwm或da给电源电路提供一个基准电压,单片机本身不介入电源的反馈中(本设计所采用的就是这种方式);第二种为通过单片机输出的pwm信号直接控制开关管工作,取代pwm芯片,但这种方式对单片机的要求较高,需要具有相当高的时钟频率才能满足对输出pwm频率和分辨率的要求。  系统按模块来分可以分成两大模块:   电源模块和单片机控制模块。电源模块是以pwm芯片为核心的ac—dc变换器,pwm芯片采用安森美半导体的电流型pwm控制器ncp1200作为控制芯片。单片机控制模块采用美国微芯公司的pic16f874作为微控制器,主要实现电流电压信号的采样、显示、按键输入、串口通信以及为电源模块提供电压电流参考等功能。两个模块的关系可以用图3来说明。  电网电压经整流滤波后供给高频变换电路,由高频变换电路产生输出。单片机输出两路pwm信号,给电源模块提供输出电压的参考值和电流的限流值,电源模块按照单片机提供的参考值输出电压和限定最大电流。虽然单片机采样输出电压和电流进行显示,但这里单片机并不参与系统的反馈,反馈通过电源模块来实现(在后面的部分中会详细讲到)。  3 硬件设计  3.1 电源模块电路  ncp1200是安森美半导体公司(on semiconductor)推出的一款电流型pwm控制器。其应用电路只需要使用很少的外围元件,使设计更加紧凑。另外,芯片内集成输出短路的保护电路,使成本可以进一步降低。  是以ncp1200为控制芯片的电源电路的结构。从图中可以看到,电源模块中有两种反馈类型。第一种是输出电压反馈,输出电压采样值vss和单片机提供的设定值进行比较,通过光耦来控制ncp1200芯片fb脚的电压,调整drv脚输出pwm的脉宽来控制场效应管的导通和关断时间,从而达到调整输出电压值的目的。另一路反馈是电流限流反馈,当采样到的输出电流值iss超过单片机提供的最大限流值ipwm后,比较器输出正电压使得光耦最大导通,将fb脚电压拉低,使得ncp1200输出pwm脉宽减小,从而达到限流的目的。当输出电流小于单片机提供的限流值时,限流反馈不起作用。   电源提供+12 v的电压,另经三端稳压器件ka7805(图中未画出)产生+5v的电压,给比较器和单片机控制模块提供电源。 3.2 单片机控制电路

    时间:2019-02-26 关键词: 嵌入式开发 电源 可编程 pic 单片机

  • PIC单片机与16位串行D/A性能参数概述

    理想的线性d/a转换器,其输入与输出电路是相互隔离的,而且不接地。它的噪声为0,当数字输入为0时 ,模拟输出也为0,并目对应于一个确定的数字输入,有一个确定的输出电流(或电压电平)。  当数字输入发生单位码变化时,模拟输出的变化是等间距的,电流输出型其输出阻抗应为无限大;电压输 出型其输出阻抗应为0。当输入数码变化时。模似量的变化速率是无限大。此外,转换器的转换特性应不随 时间、温度、电源电压而变,所有转换器的误差应为0。  实际的d/a转换器不可能具备这样的特性,因此,需要通过一些参数的测量来衡量它们性能的优劣。所有 参数基本上可分为静态参数和动态参数两大类,下面将从这两个方面对d/a转换器的部分主要性能参数进行 简单介绍。  1.静态性能参数  (1)精度。  精度是转换器实际转换特性曲线与理想转换特性曲线之间的最大偏差,其单位通常用满量程范围fs的百分 数(%fs)或lsb表示。所谓理想转换特性曲线,对于d/a转换器来说,就是连接理想转换器特性上正、负最 大输出点的直线。精度分为相对相度和绝对精度在,0点和满量程值校正以后测得的精度为相对精度,否则 为绝对精度一般参数表中给出的为相对精度,绝对精度由于受时间和温度影响较大,因此很难给出特定的值 。  (2)分辨率。  分辨率有不同的定义方法。一种d/a转换器的分辨率的定义是d/a转换器模拟输出电平可能被分离的数目, 例如:一个二进制转换器,数字输入的位数为n,则其分辨率理论值为;另外一种把d/a转换器输出电平被分离的最大级数的倒数定义为d/a转换器的分辨率。分辨率可以用能处理 数码的位数来表示,也可以用它的总码位数相对于满度值的百分比(1/2%)来表示。  由于噪声、温度和时漂等因素的影响,转换器的分辨率有时要小于理论值。例如一个12位转换器在某一温 度范围内可能只有10位的实际分辨率,d/a转换器的实际分辨率受到它的相对精度的限制,但是分辨率并不 限制精度。  分辨率也能反映转换器的动态特性,信号的动态范围要求较严格,其分辨率也要求较高。  (3)误差参数。  d/a转换器在静态时主要有4种误差,即失调误差、增益误差、线性误差和微分线性误差。  失调误差是指数字输入为0时,其模拟输出与理想值之间的偏差。它可以用lsb为单位进行描述,也可以用 此偏差值相对于输出满度值的百分比来表示,对于单极性的转换器,此理想值应为0。  例如,图1中,失调误差为2lsb,或是满度值的0.2b6。d/a转换器的初始失调都可以被调节为0,但是失调 随温度变化的影响是无法消除的。  增益误差(也称为满度值误差)是指转换器的输出与输入之间的传输特性曲线的斜率。当转换器的失调误 差调节为0时,它的增益误差就是满度值误差。  例如,图2中,当它的数字输入从110变化到ill时,其模拟输出与其理论值之间的偏差就是它的增益误差 ,值为?。  增益误差是可以调节的,例如,在d/a转换器中,当参考输入存在偏差时,转换器的满度值将发生偏差, 即产生了增益误差。这并非由于组件的不匹配引起的,因此,可用外接组件进行适当调节。  线性误差(也称为相对精度或线性度),是指转换器的实际传输特性曲线与它的平均传输特性曲线(通过 端点值的平均线)之间的最大偏差,如图3所示(0点与满刻度值均己校准)。该误差量是用模拟量的偏差来 表示的,也可用绝对值或百分数表示。 图1 失调误差示意图   图2 线性误差示意图   图3 线性误差示意图  转换器的线性误差与转换器的内部组件的匹配性或线性特性等因素有关。在单片集成转换器中,这是不能 被调节的参数  微分线性误差(或微分线性度)是指任何两个相邻数码间隔所对应的模拟量间隔(称为步长)与标准值之 间的偏差。若这个步长为1lsb,则该转换器的微分线性误差为0,否则就称它存在微分线性误差,用公式表 示为:  式中ε是微分线性误差,δe为实际的模拟量步长,δen为标准值。  (4)尖峰。  这是指d/a转换器的数字输入速度变化时,其模拟输出中可能出现的尖峰波形,在高速d/a转换器中要求此 尖峰信号越小越好,这个参数将影响转换器动态工作时的精度。  2.动态性能参数  (1)建立时间。  它是描述d/a转换器特性的一个重要参数,

    时间:2019-02-26 关键词: 嵌入式开发 性能参数 pic 单片机

  • PIC单片机与8位并行D/A转换器设计元器件选型

    dac0832转换器由8位输入锁存器、8位dac寄存器、8位d/a转换电路及转换控制电路构成,dac0832芯片的封 装如图1所示。图1 dac0832芯片的封装图  dac0832芯片内部结构如图2所示。图2 dac0832芯片内部结构  欢迎转载,信息来源维库电子市场网()

    时间:2019-02-26 关键词: 元器件 转换器 嵌入式开发 pic 单片机

  • PIC单片机捕捉模块的设计思路

    pic16f877单片机配置了两个ccp(捕捉/比较/脉宽调制)模块,即ccp1和ccp2。它们各白都有独立的16位寄存器ccpr1和ccpr2。两个模块的结构、功能、操作方法基本一样,区别仅在于它们各自有独立的外部引脚和特殊事件触发器。ccp模块的功能包括外部信号捕捉、内部比较输出以及pwm输出,它往往与定时器/计数器配合使用。   ccp模块可工作在3种模式下:捕捉方式、比较方式和脉宽调制方式。   · 捕捉方式是指检测引脚上输入信号的状态,当信号的状态符合设定的条件时(信号上升沿或下降沿出现时)产生中断,并记录当时的定时器/计数器值,当ccp模块工作在捕捉方式时,tmr1控制寄存器必须工作在定时器或同步计数方式下。   · 比较方式是指将事先设定好的值与定时器方式或同步计数方式下的值相互比较,当两个值相等时,产生中断并驱动事先设定好的动作。   · 脉宽调制功能适用于从引脚上输出脉冲宽度随时可调的pwm信号,来实玑直流电机的调速、d/a转换和步进电机的步进控制。  本设计应用pic16f877单片机的ccp模块的捕获工作方式进行频率计的设计,具体设计要求如下。   测量对象为100~1000hz的ttl电平信号,待测量的参数有:   · 频率,测量误差小于0.1%;   · 周期,测量误差小于0.1%;   · 脉冲宽度(高电平持续时间),脉冲宽度大于100μs,测量误差小于1%;   · 占空比,占空比的变化范围为10%~90%,测量误差小于1%。   频率计的设计原理如下。  在t1时刻之前把ccp1设置为捕捉脉冲上升沿。当信号上升沿到来时,产生ccp中断,在中断服务程序中捕捉该时刻tmr1寄存器中16位的值time1,将ccp1设置为捕捉脉冲的下降沿。   当该信号下降沿到来时,产生cpp中断,在中断服务程序中捕捉该时刻tmr1寄存器中16位的值time2,而后再把ccp1设置为捕捉脉冲的上升沿。   当信号的下一个上升沿来到时,又产生ccp中断,在中断服务程序中捕捉此刻tmr1寄存器中的16位的值time3,则信号的周期t=(time3-time1)μs,信号频率f=1/t,脉冲宽度p=(time2-time1)μs,占空比d=p/t×100%。   考虑到ccp捕捉方式可能发生的最大误差为±1μs,为满足误差要求,可把上述过程多进行几次,将各次测试的平均值作为最后的测量值。  图 频率计设计原理示意图  如果需要测量的最高频率为1000hz,周期只有1000μs,且占空比的变化范围为10%~90%,则高低电平持续的最短时间都为100μs,可以有充分的时间执行中断服务程序。   如果实际应用中发现两次捕捉中断的时间间隔小于1次中断服务时间,则可以通过适当设置寄存器ccpicon的值,使ccp模块每4个脉冲上升沿捕捉1次或每16个脉冲上升沿捕捉一次,这样两次中断的时间间隔就增大了。如果还不能达到要求,则可用分频器对输入频率信号分频处理后,再由ccp1引脚输入。  欢迎转载,信息来源维库电子市场网()

    时间:2019-02-25 关键词: 模块 嵌入式开发 思路 pic 单片机

  • Microchip推出全新20引脚PIC单片机PIC16F677

    microchip宣布推出两款新型的20引脚pic单片机,进一步加强其8位单片机系列的阵营。   pic16f631为8引脚和14引脚器件向20引脚器件移植提供了极具成本效益的方案;而pic16f677则为小型闪存单片机市场的用户提供了价格合理的硬件i2c和spi功能。这两款器件均完全兼容于microchip最新的中档架构pic单片机,因此使它们成为向上移植的理想之选,从而为现有的20引脚设计丰富了功能,降低了成本。  新款单片机是对pic16f685/687/689/690系列的扩展和延伸,可直接替代拥有更多功能的相应器件。它们的电路板设计、控制代码及工具套件不用经过任何修改便可重复使用,使工程师们可以摆脱额外成本的束缚,更自由地进行基于平台的系统设计。  两款器件均具备以下特性:纳瓦技术,确保了电池驱动应用的功耗最少;备有s/r锁存模式的两个模拟比较器,免去了对分立器件的需求;以及实现现场可编程的在线串行编程技术(in-circuit serial programming)。这些特性方面的改进有助于简化日趋复杂的嵌入式控制系统。  新款pic16f631/677单片机适用于多元化市场,其应用领域包括:电池驱动设备(安防系统、烟雾和一氧化碳探测器和手持式设备等)、家用电器(电煎锅、洗衣机和烘干机等)及电源转换(电源、直流/直流转换器和电池充电器等)。主要特性包括:  两款器件共有的特性  高至3.5 kb的闪存程序存储器  高至128字节的ram存储器  范围较宽的内部时钟频率(31 khz至8 mhz)  两个具有s/r锁存模式的比较器  0.6v内部带隙参考源  超低功耗唤醒功能  增强型低电流看门狗定时器  增强型门控低功率定时器1  在线串行编程技术  具有软件控制选项的欠压复位功能  多至18个输入/输出引脚  节省空间的4x4 qfn封装pic16f677独有的特性  具有12条通道的10位数模转换器(adc)  由配备地址屏蔽选项的spi和i2c支持开发工具  microchip全套高性能开发工具均支持这两个新款器件,包括pickit 2入门工具包、免费的mplab? ide(集成新开发环境)和低成本mplab icd 2(在线调试器)。供货情况  这两款产品均为符合rohs的无铅器件,有20引脚pdip、soic、ssop和qfn四种封装形式可供选购。

    时间:2019-02-22 关键词: Microchip 嵌入式开发 引脚 pic 单片机

  • PIC单片机与16位串行D/A转换原理

    1.基本原理  d/a转换器相当于一种译码电路,它将数字输入传换为模拟输出:  其中,d是数字输入,vr是模拟参考输入,vo是模拟输出。这里模拟输出可以是电压,也可以是电流,式中 数字d是一个小于1的值。  式中an为1或0,由数字对应位的逻辑电平来决定,n是数字输入d的位数。由此(3.2)由此(3.1)  当参考电压输入tip.固定时,转换器的模拟输出d成正比关系。对于单位数字量的变化,模拟输出是按等 幅度的阶跃量变化的。  2.原理图  (1)串行d/a转换器。  串行d/a转换器一般由数字输入、基准电压源、模拟开关、电阻或电容网络、加法电路、运算放大器、模 拟输出等组成,如图1所示,根据集成度不同d/a转换器中可能不全包括其中的部分。图2所示为这种转换器 的原理图。图1 集成d/a转换器的组成框图图2 串行d/a转换器  数模转换器的基本工作原理是基于权的控制,即权电压或权电流相加。d/a转换器的几种常见结构,根据加 权网络等部分实现方法的不同,常见的dac结构有电流型、电压型、电荷型等,每一类又细分为若干小类, 接下来将分别进行介绍。  (2)权电阻型d/a转换器。  权电阻型d/a转换器的电路框图如图3所示。  杈电阻型d/a转换器是实现二进制数模转换的最简单的一种网络结构。其缺点是位数增多时,电阻的取值范 围很大,如要实现8位d/a转换器,电阻比值将高达128∶1,这一比值在工艺制造上难以实现,并且该结构对 于电阻精度的苛刻要术也使得的这结构的实现更加困难。  (3)r-2r梯形电阻网络d/a转换器。  图4所示为r-2r梯形电阻网络d/a转换器的电路原理框图。  (4)电流衰减型d/a转换器如图5所示。 图4 r-2r梯形电阻网络d/a转换器图5 电流衰减型d/a转换器  欢迎转载,信息来源维库电子市场网()

    时间:2019-02-21 关键词: 原理 嵌入式开发 pic 单片机

  • Microchip推出USB、LCD及通用8位PIC单片机系...

    microchip technology inc.(美国微芯科技公司)宣布推出12款全新的高性能、8位闪存单片机,其中包括该公司首款集成片上高速12位模数转换器外设的usb及lcd单片机系列。三个新产品系列共备有16种集成高分辨率片上模数转换器的高性能pic18 单片机,扩展了microchip通用pic18f4523系列产品线并极大地丰富了客户的选择。 在这三个新产品系列中,pic18f8723大容量存储器通用系列提供丰富的外设集以及高达10 mips的卓越性能;pic18f4553系列提供集成全速usb收发器和12 mips性能;而pic18f8493 lcd单片机系列则可提供低功耗显示应用所需的集成lcd驱动能力。 这些集成的模数转换功能可满足高速、高分辨率传感器测量所需的精度,在医疗、工业和公用仪表等应用中大派用场。此外,上述单片机系列还融合纳瓦技术特性,为设计工程师提供多元化的选择,以有效管理功耗并延长电池寿命。 microchip先进单片机架构部副总裁mitch obolsky表示:“今天,越来越多的嵌入式应用需要高精度的模拟设计,以及更优越的网络连接和更完善的显示选择。新单片机系列集上述关键功能为一体,有助节省电路板空间,降低系统总成本。” 12款新单片机均适用于精确测量及控制,涵盖广泛的应用领域,包括:工业 (数据记录、数据整理、压力传感器、温度传感器和流率传感器);医疗 (血液气体分析器、血压监测仪、心率监测仪、血糖计和家居监控传感器); 电力 (公用电表、电源变换和电池充电器) 以及家电 (触摸屏界面、远程诊断、温度控制器、湿度传感器、距离传感器和rtd炉传感器)。 开发工具 microchip标准的高性能开发系统均支持三个单片机系列,以缩短产品上市时间,其中包括:具有可视化器件初始化程序的免费mplab?集成开发环境(ide)、mplab c18 c编译器和mplab icd 2在线调试器。此外,pic18f8723通用系列还由picdem hpc explorer评估板(部件编号:dm183022) 提供支持;pic18f4553系列则通过picdem fs usb演示工具包(部件编号:dm163025) 提供代码开发支持;而pic18f8493 lcd系列则可配合picdem lcd 2演示板 (部件编号:dm163030)简化开发流程。 存储器/封装及供货情况 pic18f4553 usb系列 (4款器件):28引脚soic及pdip封装 44引脚tqfp及pdip 封装 24 kb至32 kb闪存 现在已提供样片和批量供货 pic18f8723通用系列 (4款器件):64引脚及80引脚tqfp封装 96 kb至128 kb闪存 现在已提供样片和批量供货 pic18f8493 lcd系列 (4款器件):64引脚及80引脚tqfp封装 8 kb至16 kb闪存 样片提供和批量供货预计于2008年第4季度开始

    时间:2019-02-21 关键词: USB Microchip 嵌入式开发 pic 单片机

  • 超低功耗PIC单片机

    开发支持 Microchip同时推出了用于Explorer 16开发板(部件编号DM240001)的PIC24F32KA304接插模块(部件编号MA240022)。另外,XLP 16位开发板(部件编号DM240311)支持采用20和28引脚的PDIP封装。MPLAB® IDE、针对PIC24 MCU和dsPIC® DSC的MPLAB C编译器、MPLAB ICD3在线调试器(部件编号DV164035)和PICkit™ 3调试器/编程器(部件编号PG164130)也已开始提供。所有这些工具均可以通过http:///get/492M购买。封装与供货PIC24F(FV)32KA304 MCU采用44引脚TQFP和8 mm x 8 mm QFN封装,以及48引脚6 mm x 6 mm UQFN封装。PIC24F(FV)32KA302 MCU采用28引脚SOIC、SSOP、SPDIP和6 mm x 6 mm QFN封装。最低引脚数选择包括采用20引脚PDIP、SOIC和SSOP封装的PIC24F(FV)16KA301 MCU。PIC24FXXKA3XX产品的工作电压为1.8 - 3.6V,PIC24FVXXKA3XX型号的工作电压为2 - 5V。Microchip Technology Inc.(美国微芯科技公司)宣布,通过增加片上12位ADC、EEPROM、智能mTouch™容性传感模块,以及能以5V电源工作的性能,扩展了其低引脚数16位超低功耗PIC® MCU产品阵容。PIC24F32KA304 MCU具备所有XLP PIC MCU产品众所周知的低至20 nA的超低休眠电流,为设计人员提供了当今最通用的低功耗产品,为他们带来了在设计工业、汽车、医疗、公用仪表、白色家电及在许多其他应用中的优势。 PIC24F32KA304系列在广受欢迎的PIC24F16KA系列基础上进行了扩展,增加了多达两倍的闪存程序存储容量和30%以上的RAM,从而可为无线通信协议栈提供更多的支持。此外,相比PIC24F16KA系列,其定时器和脉宽调制器的数量增加了两倍,UART、I2C™和SPI通道数量增加了一倍,模数转换器分辨率翻了两番达到12位,而引脚数增加至44个。全新PIC24F32KA304 MCU的智能mTouch传感模块包括在休眠模式下执行自动扫描的充电时间测量单元(CTMU),可以实现超低功耗的容性传感功能。此外,由于许多触摸传感应用采用电池供电,这种全新CTMU极大地减小了电流,进而节省更多电池电量。许多汽车和白色家电应用需要在高达5V的条件下运行,这些MCU无需使用分立式稳压器,可提供高达5V的全面模拟性能,简化了电源设计。Microchip:Microchip屡获殊荣的XLP技术给低功耗设计人员带来了他们要求的全球最低休眠和工作电流、多唤醒源,以及在休眠模式下运作而无需CPU干预的更多外设。PIC24F32KA304系列目前已有超过100款采用XLP技术的MCU,其智能化和越来越丰富的外设使设计人员能够在不增加功耗的条件下丰富应用功能。

    时间:2019-02-20 关键词: 功耗 嵌入式开发 超低 pic 单片机

  • PIC单片机与16位串行D/A转换器程序设计

    pic单片机与16位串行d/a转换器程序设计如下所示:  欢迎转载,信息来源维库电子市场网()

    时间:2019-02-19 关键词: 程序设计 转换器 嵌入式开发 pic 单片机

首页  上一页  1 2 3 4 5 6 7 8 9 10 下一页 尾页
发布文章

技术子站

更多

项目外包