lpc8xx是基于arm cortex-m0 +的低成本32位mcu系列,工作频率高达30 mhz。其中lpc824和lpc845是此系列中代表性的,使用范围相当广泛,小巧紧凑的体积以及丰富的外设资源使其在市场当中具备强大的竞争力,而外设功能的灵活分配得益于其强大的创新性功能之一——(swm)。
是一种内部路径可灵活配置的功能模块,可将mcu各个外设功能的信号作为开关矩阵的入口,各个复用i/o端口便是对应的出口,通过相应寄存器配置,能够把特定外设功能灵活分配到所需的引脚。在lpc8xx系列中,可以通过开关矩阵分配外设有:三路串口usart0/1/3、两路spi0/1、sct定时器的多路输入及输出、两路i2c1/2、adc模块、模拟比较器acmp输出、时钟频率输出clkout及gpio中断输出。
2主要功能及配置步骤 通过引脚分配寄存器将可移动功能表中列出的所有内部信号连接到封装上的外部引脚,也可以反过来将内部模块所需的信号输入分配到各个引脚。外部引脚由其默认gpio引脚号pio0_n标识。按照以下步骤将内部信号连接到外部引脚:
● 使能开关矩阵时钟及需要开启的外设功能时钟;
● 在可移动功能表中找到所需操作的外设功能;
● 查找lpc8xx数据手册来决定lpc8xx封装的哪个引脚连接引脚功能;
● 使用引脚描述表查找分配给封装引脚x的默认gpio功能pio0_n。 x是引脚号;
● 在开关矩阵寄存器描述中找到对应功能的引脚分配寄存器;
● 禁止pinenable0寄存器中的该引脚pio0_n的任何特殊功能,由于有些特殊功能是默认分配在特定引脚的,如外部晶振输入,关闭后可防止功能冲突;
● 引脚编号n编程到分配给引脚功能的位中。引脚功能现在连接到封装上的引脚x。