本设计采用ATMEL公司的AT91SAM7S64芯片作为处理器,ADC使用片上ADC。扩展外围电路包括输入保护电路,USB接口,20针JTAG口,复位电路,工作状态指示灯。实现单路ADC采样,采样频率为200KHz,SD卡存储采集的数据。
2 AT91SAM7S64
AT91SAM7S64是Atmel 32位ARM RISC处理器小引脚数Flash微处理器家族的一员,采用64脚的LQPF封装。它集成了ARM7TDMI ARM Thumb处理器,ARM7TDMI内核既可以执行32位的ARM指令集,也可以执行16位的Thumb指令集,从而可以使用户在高性能和高代码密度之间进行平衡。ARM7TDMI处理器为冯-诺依曼结构,具有三级流水线,即指令获取、解码和执行三个阶段。
AT91SAM7S64拥有64K字节的片内高速Flash和16K字节的SRAM。片内高速Flash存储器共512页,每页128字节,在最坏的条件下可以以30MHz的速度进行单时钟周期访问,10000次的写寿命,具有将数据保存10年的能力。片内高速SRAM可以在最高时钟速度下进行单周期访问操作。
AT91SAM7S64拥有丰富的外设资源,包括:时钟发生器(CKGR,包括低功耗RC振荡器,3到20MHz的片上振荡器和一个PLL),电源管理控制器(PMC),中断控制器(AIC),调试单元(DBUG,两线UART,支持调试通讯通道中断),周期性间隔定时器(PIT,包括20位可编程计数器和12位间隔计数器),看门狗(WDT),实时定时器(RTT),并行输入/输出控制器(PIOA),11个外设数据控制器(PDC)通道,一个USB2.0全速(12Mbps)设备端口,一个同步串行控制器(SSC),两个通用的同步/异步收发器(USART),主/从串行外设接口(SPI),一个3通道的16位定时/计数器(TC),一个4通道的16位PWM控制器(PWMC),一个两线接口(TWI),一个8通道的10位模数转换器(ADC)。丰富的外设资源使外部器件数目减至最低。
AT91SAM7S64是一个通用处理器。它集成了USB设备端口,使得它成为连接PC或手机的外设应用的理想芯片;Flash存储器可以通过JTAG-ICE进行编程,或者是在贴装之前利用编程器的并行接口进行编程;锁定位可以防止固件不小心被改写,而安全锁定位则可以保护固件的安全;复位控制器可以管理芯片的上电顺序以及整个系统;BOD和看门狗则可以监控器件是否正确工作。极具竞争力的性价比进一步拓展了它在低成本、大产量的消费类产品中的应用。
下面就具体介绍下本实验设计中遇到的一些外设
2.1 时钟发生器(CKGR)
时钟发生器是由一个PLL,一个主振荡器,一个RC振荡器组成,它提供下列时钟:
SLCK,慢速时钟,系统内唯一恒定时钟。
MAICK,为主振荡器输出。
PLLCK,为分频器与PLL快输出。
慢速时钟是RC振荡器输出,且是包括电源管理器控制在内的系统内唯一恒定时钟。它是PMC强制操作。
主振荡器的方框图如图1所示
图1 主振荡器方框图
该振荡器为20M的基频晶体,典型的晶体连接见图2只有在频率低于8MHz时才需要1K欧姆的电阻,当然这里就不需要了。振荡器每个XIN与XOUT引脚上有一个25pF的电容,当晶体有12.5pF的负载电容时,将CL1与CL2去掉。
图2 典型晶体连接
PLL内设置一个输入分频器以增加结果时钟信号的精度。但是当对分频器编程时,用户必须考虑PLL最小输入功率。
分频器与PLL模块方框图如图3所示
图3 分频器与PLL模块方框图
PLL需要通过PLLRC引脚与一个外部二阶滤波器连接。与PLLRC连接的R、C1与C2值由PLL输入频率、PLL输出频率及相位容限决定。必须在输出信号过量与启动时间间找到平衡。
滤波器示意图如图4所示
图4 PLL滤波器电路
2.2 电源管理控制器
电源管理控制器(PMC)通过控制系统及用户外设时钟来优化功耗。PMC使能/禁用许多外设及ARM处理器的时钟输入。电源管理控制器提供下列时钟:主机时钟(MCK)、处理器时钟(PCK)、外设时钟、UDP时钟(UDPCK)、可编程时钟。 雷达测距信号的RAM实现+源代码(2):http://www.youerw.com/tongxin/lunwen_2095.html