LPC2368学习笔记
开发环境 MDK(KEIL for ARM) + JLINK
IO口:
IO口有两种模式,快速模式和普通模式,快速模式只有PORT0与PORT1,而PORT2/3/4只能使用高速模式,官方手册描述快速模式比普通模式快了3.5倍。 PORT0与PORT1通过寄存器SCS的最低位来选择是否工作在快速模式。当工作在高速模式时,传统寄存器不再起作用,反之亦然。 LPC2368的引脚是复用的,通过寄存器PINSEL来选择引脚的功能,PINMODE来选择IO口是否有上拉或者下拉电阻。
传统模式的IO口寄存器:
IOPINx IO口状态,无论引脚是否工作在IO状态,也无视IO口的输入输出,都能对相应的引脚进行读写操作。
IOSETx 写1置高IO口,写0没作用。
IODIRx IO的方向,1输出,0输入
IOCLRx 写1置低IO口,写0没作用。
以上四个寄存器都是整字(32位)读写的,而快速模式中,读写更加灵活。
高速模式的IO口寄存器:
直排溜冰鞋教程 FIO1DIR
FIO1MASK
FIO1PIN
FIO1SET
FIO1CLR
其中比传统模式多了MASK寄存器,用于屏蔽不需要操作的位,其他寄存器用法与传统模式相同。除此之外,还包括字节与半字操作,读写更加灵活。
PLL:
LPC2368内置锁相环,可以将较低的时钟倍频到较高的时钟。 PLL的输入(FIN)可以是三中输入中的一种,包括:外部时钟,看门狗时钟,以及内部RC震荡时钟。PLL将输入时钟倍频M倍,然后分频N倍,通过一个公式得到一个较高的时钟(FCCO),公式如下
FCCO=FIN*M*2/N;
其中,建议N的值越小越好。
机顶盒支架FCCO通过各种分频器供给CPU,USB以及各种外围设备。
例如,CPU分频器CCLKSEL=8,则CPU的时钟为FCCO/8。其他寄存器与此类似。但USB时钟必须为48M。
Lpc2368的中断控制中,有专门的寄存器存储中断服务函数的地址和优先级,当产生中断时,CPU会根据对应寄存器保存的地址进行跳转,执行中断服务函数。
在设置中断地址寄存器时,要先将中断禁止,设置完以后再打开中断。在执行中断服务函数以后,要将中断向量寄存器清零。中断向量寄存器中保存的是产生中断请求的向量号。
JLINK设置可以参考下图,在KEIL中点击TARGET 进入
烟花生产
这里选择JLINK的驱动,根据你自己的保存路径设置。
然后点击Configure RDI Driver一体式三格化粪池
选择FLASH
镇流器外壳
选择使用的器件,点击确定。
选择 Utilities
单击Settings
弹出界面
点击OK
选择相应的驱动,和DEBUG操作一样,不再赘述。