电子说
在电力线通信(PLC)领域,Atmel ATPL00B作为一款功能强大的系统级芯片(SoC),为自动化抄表、街道照明、家庭自动化等应用提供了可靠的解决方案。本文将深入剖析ATPL00B的各项特性、架构以及应用要点,帮助电子工程师更好地理解和应用这款芯片。
文件下载:ATPL00BDK-99.pdf
ATPL00B是一款采用FSK调制的电力线通信SoC,集成了增强型8051核心(ADD8051C3A)、媒体访问控制器(ADD1210)和PLC调制解调器(ADD1310)。它的设计旨在降低PLC系统中CPU的计算负载,使微控制器能够专注于应用任务。
ADD8051C3A与传统8051微控制器完全兼容,但在硬件上有一些改进。其机器周期从12个时钟周期减少到3个时钟周期,大多数指令在1或2个机器周期内执行,程序执行速度比标准8051架构设备快至少4倍。芯片内集成了128KB的SRAM,程序内存和外部数据(XDATA)内存共享该SRAM,其中低64KB始终用于存储程序内存,高64KB可根据银行切换页面大小配置不同的程序和XDATA内存大小。
ATPL00B的程序内存和XDATA内存共享128KB的SRAM,通过内部RD和PSEN信号功能访问。程序内存只能读取,写入可能导致意外结果。有64KB的基本程序内存,可通过扩展程序页面增加容量。XDATA占用独立的地址空间,最多可寻址64KB。此外,ADD8051C3A核心还包含384字节的内部数据内存(IDATA)。
ATPL00B的指令集提供了多种快速寻址模式,支持对内部RAM的字节操作,还支持单比特变量的直接操作,适用于需要布尔处理的控制和逻辑系统。指令集包括算术指令、逻辑指令、数据传输指令、布尔指令和跳转指令等。
CPU执行时间分为机器周期,每个机器周期由3个状态组成,持续3个时钟周期。除MOVX指令外,所有指令的取指/执行序列相同。MOVX指令需要两个机器周期执行。ADD8051C3A具有空闲和掉电两种省电模式,可通过设置特殊功能寄存器PCON中的位来激活。
微控制器有10个用户中断源,包括2个外部中断、3个定时器中断、3个串行端口中断和2个标准串行外设中断。中断优先级可由用户选择,范围从“000”到“011”。每个中断源可通过设置特殊功能寄存器IE和IE2中的位来单独启用或禁用。
P1、P3、P4和P5端口为双向端口,每个端口由寄存器、输出驱动器和输入缓冲器组成。端口3、4和5的引脚具有多功能,可作为微控制器外设的输入或输出。端口可配置为伪双向模式或推挽模式。
ATPL00B配备了一套完整的定时器,包括两个16位可配置定时器/计数器(定时器0和定时器1)、三个8位自动重载计数器(定时器11、12和14)、一个8位带18位预分频器的看门狗定时器(定时器3)和一个16位定时器/计数器(定时器2)。
定时器0和定时器1具有2位预分频器,可通过TPR、TMOD和TCON寄存器进行控制。它们有四种操作模式,可选择定时器或计数器功能。
定时器2是一个16位定时器/计数器,由TH2和TL2两个8位定时器寄存器级联组成。其操作模式包括捕获模式、自动重载模式、波特率生成器模式和可编程时钟输出模式,可通过T2MOD和T2CON寄存器进行配置。
看门狗定时器包括一个18位预分频器,当/EWDG引脚接地时激活。T3必须由软件重新加载以避免溢出和程序重启,重新加载T3需要设置PCON寄存器中的WLE位。
ATPL00B的串行端口为全双工,可同时进行发送和接收。串行端口控制和状态寄存器为SCON(0,1,2),包含模式选择位、第9位数据位和串行端口中断位。串行端口可工作在4种模式下,传输由写入SBUF指令启动,接收由特定条件触发。
定时器11、12和14用于作为UART 0、1和2的波特率生成器,它们类似于配置为8位自动重载模式的T1。
ATPL00B实现了两个串行外设接口SPI0和SPI1,均为全双工、同步通信总线,具有主模式和从模式两种操作模式。SPI0为字节导向的SPI,SPI1为字节缓冲的SPI。
SPI通信中,主设备负责初始化传输、数据移位和采样,所有活动与时钟信号同步。SPI0通过SPCTL、SPSTAT和SPDAT三个特殊功能寄存器进行配置和控制,SPI1通过SPCTL1、SPSTAT1和SPDAT1N寄存器进行配置和控制。
SPI有四种时钟相位和极性组合,主设备可随时切换。正确选择时钟相位和极性对于数据传输至关重要。
SPI0在发送方向为单缓冲,接收方向为双缓冲。在传输过程中写入数据寄存器会导致写冲突,WCOL位会被置位,新数据将丢失。
SPI通信在单主系统中操作简单,主设备和从设备配置为相同模式并开启,主设备选择从设备并写入数据即可启动传输。多主配置中,设备可在主模式和从模式之间切换。
ATPL00B需要外部SPI闪存存储器来存储固件和非易失性数据,内部128KB的SRAM用于固件执行和存储易失性变量。引导加载器在系统启动时将目标程序从串行闪存加载到内部SRAM,并在以下情况下执行:上电后、异步复位信号(RSTA)复位系统后、CONF SFR中的第2位被设置时以及看门狗超时且CONF SFR中的第1位被设置时。
系统在执行模式下上电或重新加载后,引导加载器将固件的易失性副本从闪存存储器传输到SRAM存储器,传输过程可能持续约400ms。传输完成后,微控制器开始执行程序。
ATPL00B SoC包含一个调光器外设,可控制多达四个三端双向可控硅(TRIAC)和四个开关。该外设可进行相位角控制以改变负载功率,也可用于生成PWM控制信号。
调光器外设的配置寄存器用于改变触发角、开启/关闭负载以及读取开关状态。这些寄存器包括DIM_CTRL、INP_ST、OUT_ST、OUT_REF、POLARITY、D_CONF、V_SWC、PWM_PER和INP_SOURCE等。
控制连接到ATPL00B的负载需要一些外部组件,外部电路的配置取决于集成电路GND引脚是否连接到电力线中性线。
在电力线通信系统中,媒体访问控制(MAC)任务需要大量的CPU计算时间。ATPL00B通过ADD1210硬连线MAC单元加速关键任务的执行,以减轻集成MCU(8051C3A核心)的计算负载。
MAC可根据启用的纠错和检测机制,以不同配置封装数据包。标准数据包封装包括前导码、头部、有效负载和后导码。
MCU与MAC的接口通过将其作为外部数据RAM进行寻址实现。MAC有十五个配置寄存器,可由MCU访问,用于控制MAC的操作。
MAC配置寄存器包括CTRL、FLAGS1、FLAGS2、DATA、TH_PREAM、TH_HEADER、BAUDRATE、TRACK、PREAM、CTRL2、BC、MODE1 - MODE4、VTB_BE_HARD、VTB_BE_SOFT和FEC_BER等,用于配置MAC的工作模式、波特率、错误检测阈值等。
MAC有多种操作模式,包括旁路模式、WHD模式、BYTE模式、FEC模式、VTB模式、FCS模式和NULL模式。不同模式适用于不同的应用场景。
操作程序包括STOP周期、WHD模式操作程序、传输程序和接收程序。这些程序指导MCU如何与MAC硬件进行交互。
ATPL00B的PLC调制解调器支持多波特率,工作在132.5kHz的载波频率下。它可由硬连线MAC ADD1210控制,也可由微控制器ADD8051C3A控制,在微控制器控制时,MAC处于旁路模式。
逻辑符号“1”和“0”通过不同的频率值表示,可选择不同的频率偏差。
调制解调器有一组配置寄存器,用于设置主要工作特性,包括GAIN、CONTROL2、CONFIG、GFSK_DX、COMP、KNX_EN、CD_ENABLE、CD_DECISION_TIME、CD_DECISION_ERROR、TXRX_CTL和Ri等寄存器。
包括绝对最大额定值、推荐工作条件、直流特性、功耗、热数据、振荡器和上电等方面的特性。
采用144引脚的LQFP封装,引脚间距0.4mm,封装尺寸为16 x 16 mm。
包括标准回流焊条件和手动焊接条件,确保芯片的正确安装和使用。
Atmel ATPL00B作为一款功能丰富的电力线通信SoC,在自动化抄表、街道照明、家庭自动化等领域具有广泛的应用前景。其强大的核心性能、完善的外设功能和灵活的配置选项,为电子工程师提供了一个可靠的解决方案。在实际应用中,工程师需要根据具体需求合理配置芯片的各项参数,以充分发挥其性能优势。你在使用ATPL00B的过程中遇到过哪些问题呢?欢迎在评论区分享你的经验和见解。
全部0条评论
快来发表一下你的评论吧 !