微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > dsPIC30F6010单片机的原理及应用

dsPIC30F6010单片机的原理及应用

时间:11-06 来源:互联网 点击:
1 前言

随着电子技术的发展以及集成电路规模的不断扩大,工业等各应用领域对于核心芯片的要求越来越苛刻。因而,计算机芯片也朝着高速化、专业化、模块化、功能化、低功耗、低电压工作等方向不断地发展、更新。

Microchip公司的PIC系列单片机以其内置Flash以及精简指令集等技术特点成为中低档8位单片机的主流产品,但是在一些复杂系统应用中,它仍存在一些缺陷和不足。为此,Microchip公司新推出了dsPIC30F系列16位单片机。它是一种具有单片机和DSP综合功能的16位CPU,不但保留了单片机的基本性能、丰富了外围模块,还兼具DSP的高速运算能力,是嵌入式系统设计的最佳解决方案之一。由于集多种功能于单一芯片,从而大大节省了电路板空间。目前开发的dsPIC30F产品主要分为通用系列、电机控制和电源变换系列、传感器系列等。其中dsPIC30F6010以其丰富的外围模块、I/O接口、可支持多种电机控制等特点,广泛应用于电机控制、开关电源控制等领域。该单片机在许多应用中优于32位控制器。dsPIC30F6010的主要特点有:

●Flash程序空间容量大,外围部件丰富;

●强大的中断能力,可灵活处理中断;

●编程开发能力强大,可支持C编译,并可方便地与PIC系列单片机结合使用;

●强大的DSP演算能力,与其它DSP的指令集相比,dsPIC30F6010只有84个基本指令且多为单周期指令,从而大大简化了编程效率;



●内嵌SPI、UART、CAN等多种通讯模块,且具有适合于电机控制的8通道PWM以及正交编码接口器;

●内含10位高速A/D和16位深度结果缓冲区,有多种数据方式;可在睡眠方式下进行转换;同时具有多种时钟模式;

●宽范围工作电压(2.5V~5.5V),大大优于其它单片机的5V工作电压和DSP的3.3V工作电压。

2 dsPIC30F6010的结构特点

2.1 CPU结构

dsPIC30F6010采用改进型哈佛结构,CPU核具有24位宽指令字。dsPIC30F6010的硬件结构框图如图1所示。它的PC指针为23位宽(最低位恒为“0”),可寻址4M×24位程序存储器空间。除了跳转、表格等指令外,所有的指令均在一个周期内完成。指令采用流水线操作方式,分为MCU和MAC等级指令,适合C编译。dsPIC30F6010拥有16个16位工作寄存器(W0~W15),可作为数据、地址或地址偏移量寄存器,其中W15还可作为CALL指令或中断的软件堆栈指针。dsPIC30F6010共有54个中断源和8个不可屏蔽陷阱,每个中断源有7个中断优先级,可通过状态寄存器进行软件编写,故可灵活控制中断,中断控制器可支持5个外部中断(INT0~INT4)请求。

dsPIC30F6010与PIC单片机最大的区别在于其内嵌一个DSP高速引擎,从而提高了CPU核的运算能力。DSP引擎包括一个17×17乘法器、一个40位AGU、两个40位饱和累加器、一个40位双向桶形移位器。DSP引擎的引入可以方便单片机快速、高效地进行一些数据处理,以提高整个系统的实时性。

2.2 数据RAM结构

dsPIC30F6010的数据存储器为16位宽,共32K字。图2是整个数据存储器映射图,其中特殊功能寄存器共2kB,地址为0x0000~0x07FF,主要包括CPU和外围设备的控制或状态寄存器。RAM地址从0x8000开始,分为X数据存储器和Y数据存储器,可分开作为2个单独的数据空间(相对于一些DSP指令而言),也可合并作为线性数据空间(相对于MCU指令而言)。每个存储器都有自己的AGU地址发生单元。双源DSP操作的MAC等级指令可对 X和Y数据存储器进行操作,从而把数据空间分成两部分以分别存放两个操作数。MCU指令只能通过X存储器的AGU来寻址整个寄存器的数据空间,以便以W寄存器作为地址指针来进行读/写操作。数据存储器顶部的32kB数据可任意映射到16k字程序空间中。dsPIC30F6010的大部分指令都能够进行数据存储器的读/写、工作寄存器(数据)读、程序存储器读3个操作。对于DSP指令,用W8和W9可执行X存储器空间内的储存器读写,若指向Y存储器,则返回“0”,如果指向未执行的地址,将产生错误的地址捕捉。同理,W10和W11作为Y存储器的地址指针。8kB的近似数据空间可以直接通过工作寄存器指令形成的13位绝对地址来存取。



Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top