jiuzhuaxiong
全部博文(610)
Mips(0)
avr32(0)
MCS51(0)
Powerpc(0)
ARM(1)
安装指导(0)
NUnit(0)
282xx(0)
2833X(0)
bios(0)
ucos(0)
2812(3)
CMD file(0)
kgdb(6)
buddy算法(0)
内存管理(0)
ORCALE(0)
IBM DB2(0)
mysql(0)
sqlite(0)
SSL(0)
61850(0)
SNMP(0)
HTTP(1)
BACNET(0)
TCP/IP(3)
SPI(0)
I2C(0)
PCI驱动(0)
触摸屏(0)
ATA/IDE(0)
TTY驱动(0)
CAN(0)
串口/485(0)
LCD(0)
USB驱动技术(5)
滤波器设计(1)
linux内存管理(5)
linux 进程间通信(14)
排序算法(0)
常用数据结构(6)
VXWORKS BSP开发(0)
VXWORKS启动过程(0)
VXWORKS多任务机(0)
VXWORKS在AT91RM9(0)
VXWORKS在MPC860(0)
linux块设备驱动(3)
深入linux驱动开(3)
深入linux网络开(2)
深入linux内核(32)
linux中断分析(16)
内核跟文件系统合(0)
Image启动(0)
ulmage启动(0)
bootpImage启动(0)
zImage启动(0)
linux内核启动方(0)
LINUX 网卡驱动(1)
LCD 驱动开发(2)
QT 4开发(3)
LINUX驱动开发笔(1)
LINUX内核移植(0)
S2C2410LINUX2.6.(0)
AT9200 LINUX2.6.(19)
SHELL命令学习(4)
U-BOOT POWERPC移(0)
UCLINUX开发笔记(0)
AT91RM9200开发笔(12)
AVR在LINUX平台下(1)
MAKEFILE制作(2)
ARM嵌入式开发(2)
LINUX系统启动(9)
RAMDISK系统的制(6)
JFFS2文件系统制(4)
LINUX交叉编译器(4)
U-BOOT移植(7)
2016年(5)
2015年(18)
2014年(12)
2013年(16)
2012年(297)
2011年(45)
2010年(37)
2009年(79)
2008年(101)
leon_yu
g_progra
glinuxi
commshar
tekkaman
shiyigud
cynthia
vcdtwo
浪花小雨
Bsolar
我爱你我
stavesha
easy2012
now_zhou
分类: LINUX
2008-04-18 22:35:11
怎么让设计的at91rm9200开发板工作起来?-这里有几个需要注意的地方!(作者:gliethttp)
at91rm9200开发板从工厂拿回来之后,将9200芯片焊上去,将18.432MHz晶振接到XIN、XOUT引脚上,之后就是焊两个电容,接下来 将9200工作电源、复位电路焊上去,这些工作完成之后,你想看看DBGU口是不是可以蹦C,把BMS引脚拉高,之后呢?你肯定不能在DBGU口上观测到 “C”的出现,为什么?这时你可能怀疑自己的电路是不是设计的有问题,然后自然而然的想到用示波器测测XIN、XOUT是不是输出18.432MHz的正 弦波了,你肯定测不到波形! 首先你的硬件设计很少会有问题,问题到底出在哪里?对于刚接触at91rm9200的兄弟们可能不知道at91rm9200的一些软硬件特性,下面说说怎 么让9200蹦出“C”:9200上电之后,在nrst引脚要有至少92µs的低电平保持,之后XIN、XOUT引脚内部的起振电路默认情况下不会工作, 需要软件控制CKGR_MOR主振荡器寄存器的MOSCEN域,所以这就需要程序,但是蹦“C”的部分是由固化在9200内部ROM中的程序完成的,那么 为什么XIN、XOUT引脚还是不能测到波形呢?这就需要清楚,9200CPU上电之后的系统时钟情况了,我们都知道CPU的运行在于CPU的clock 的驱动,那么没有clock的cpu,是没有时序上的概念的,那么9200上电后工作的PMC主机时钟来自哪里呢,CKGR_MOR的MOSCEN域默认 情况是不让XIN、XOUT引脚起振的,必须由软件程序使能MOSCEN域,那我们写的程序的第一条语句都是跳转指令,都不是上来对MOSCEN域赋值, 所以上电后9200默认工作的时钟断然不是XIN、XOUT时钟,通过PMC主机时钟寄存器的CSS主机时钟选择域可以证实我们的这种假设,CSS域的上 电默认选择是“慢时钟sclk”,这时可能恍然大悟了,原来我们还少焊了一个9200上电后到MOSCEN域使能之间运行程序使用的PMC-“慢时钟 sclk”,9200规定XIN32、XOUT32引脚之间的慢时钟晶振是9200系统中唯一的一个不变的时钟-其值固定为32.768 kHz,好了,把32.768 kHz的晶振和两个电容焊到XIN32、XOUT32引脚上,就可以在DBGU口接收到“C”了,因为蹦“C”程序将MOSCEN域使能,所以XIN、 XOUT引脚上也能测到波形了:)大家好运~~
上一篇:Linux 2.6.12内核上加载一个简单的模块
下一篇:无绳电话PLL控制芯片MC145162驱动源码at91rm9200
登录 注册