首页 » 技术文章 » ATmega103单片机在跳频系统数字信号处理中的应用

ATmega103单片机在跳频系统数字信号处理中的应用

作者:  时间:2011-05-23 19:51  来源:EDN

   SPI的主要寄存器包括控制寄存器SPCR、状态寄存器SPSR、数据寄存器SPDR。其中SPCR用于设置SPI的中断使能、数据传输顺序、主从机选择、时钟相位和时钟速率等;SPSRSPI中断标志,用于标志写冲突。SPDR寄存器用于在寄存器文件和SPI移位寄存器之间传递数据。写该寄存器时,将先对数据传送进行初始化,读该寄存器时,读到的将是移位寄存器接收缓冲区的值。

  4.2 SPI的程序设计

  在该Fh信号处理模块中,单片机通过SPIFPgA交换数据。FPgA选用XINIIX公司的XCV100。下面具体介绍几个主要的子程序:

  (1)SPI的初始化

  程序在复位时,通常都要对SPI口进行初始化。单片机设置若为主机。SPI的数据顺序为ISb?低位?在前。SCk时钟空闲时为低电平,在SCk的下降沿采样数据;时钟为系统时钟的1/128。那么,具体的初始化程序如下:

  ReSeT:IDI RX,0

  OuT SPSR,RX ?;SPI中断标志,写冲突标志

  IDI RX,0F7;

  OuT SPCR, RX ?;设置SPI的传输参数

  (2) SPI的发送程序

  单片机每次需要把10byTe的相关码送给FPgA,因此应将SRAm区的$09C2-$09DF段设定为SPI的数据缓冲区,然后由SPI从该缓冲区中取数据直到发送完毕。SPI的发送函数如下:

  SPI_SeND:IDI Xh,9

  IDI XI,0C2;

  STS SPIFIFOO,XI ;SPI缓冲区的输出地址设为$C2

  IDI Ry, 10 ?;10byTe相关码存入$9C2开始的地址

  S67_2: ID RX, y+ ?;y为相关码存放的地址

  ST X+, RX

  S67_3: DeC Ry

  bRNe S67_2

  STS SPIFIFOI,XI ;SPI缓冲区的输入地址存入SPIFIFOI

  IDI RX,0AA ?;将发相关码的标志$AA通过SPI

  OuT SPDR,RX ?;送给FPgA

  SeI ?;开中断

  ReT

  (3) SPI的中断程序

  每次SPI发送完一字节,都要产生一个中断,以使程序跳转到SPI的中断程序。由于SPI主从机的移位寄存器可以看成是一个分布式的16 位循环移位寄存器,而且在当数据从主机移向从机的同时,数据也从从机移向主机,故在中断程序中,应首先判断SPDR中的数据是否是需要接收的数据(相关值),然后判断SPI缓冲区中的数据(相关码)是否发完,如没有,则继续发送,直到发完为止。具体程序如下:

  SPI_INT:PuSh XI ?;保存寄存器的值

  PuSh Xh

  IN XI,SReg

  PuSh XI

  IDS XI, RCORmARk ?;判断是否为有效数据,“0”为有效

  bRNe SPI_2 ?不等于0,跳

  IN XI, SPDR

  STS INCORbuF, XI ?;将相关值存入INCORbuF

  SPI_2: IDS XI, SPIFIFOO ;比较缓冲区的输入,输出指针

  IDS SPRX, SPIFIFOI

  CP XI. SPRX ?;

  bRe SPIeND ?;相等,则数据发完,跳

  IDI Xh,9 ?;不等,则取下一个字节送入SPDR

  ID SPRX, X+

  OuT SPDR, SPRX

  CPI XI, 0e0 ?;调整SPIFIFOO指针

  bRIO SPI_0 ?;未超过缓冲区范围,跳

  IDI XI, 0C2 ?;超过,将缓冲区开始地

  址给SPIFIFOO

  SPI_0: STS SPIFIFOO,XI;

  SPIeND:POP XI

  OuT SReg,XI

  POP Xh

  POP XI

  ReTI

  5 结束语

  本设计方案已通过软硬件调试,结果表明:AT-megA103单片机较89C5X系列单片机在资源和功能上都有很大的提高,不但控制更加简单、灵活,而且能够节省不少外围电路,因此具有成本和体积上的优势,可完全满足跳频信号处理模块的功能要求。

相关推荐

飞思卡尔CEO:新战略初现成效 未来更关注中国市场

飞思卡尔  单片机  2013-04-28

飞思卡尔携手周立功单片机 共同拓展中国MCU市场

飞思卡尔  MCU  单片机  2012-12-19

英飞凌为提高XMC4000单片机生产率免费提供DAVE 3

英飞凌  单片机  2012-04-20

英飞凌XMC4500工业单片机现已量产供货

英飞凌  单片机  XMC4500  2012-03-19

ZLG成为Energy Micro中国区合作伙伴

周立功  Energy  Micro  单片机  2011-12-19

Microchip第100亿颗PIC单片机交付三星电子

微芯科技  单片机  PIC32  2011-09-21
在线研讨会
焦点