[原创] LPC1500体验+@4-systick系统滴达定时器【系列教程】

fxyc87   2014-7-5 21:32 楼主
此例程使用系统滴达定时器产生1HZ的时钟点亮LED。 此系列教程全部由我原创 可在论坛搜索 LPC1500体验+@ 来查找我的其它教程 我也是个新手,和大家共同学习
  1. #include "lpc15xx.h"
  2. int main(void){
  3. LPC_SYSCON->SYSAHBCLKCTRL0|=1<<13|1<<14|1<<15|1<<16; //开启iocon,p0,p1,p2时钟
  4. SysTick_Config(6000000); //12mhz 0.5s,没有启用PLL,时钟默认是RC,12MHZ,
  5. //注意,此函数是标准的NVIC函数,是推荐的函数,不是库,注意
  6. //我的系列教程全都是写寄存器操作,便于理解,没有使用相关的库函数
  7. LPC_GPIO_PORT->DIR[1]|=1<<1; //p1.1紫色灯指示,设置为输出
  8. while(1);
  9. }
  10. void SysTick_Handler(){
  11. LPC_GPIO_PORT->NOT[1]=1<<1; //0.5s反向一次,即以1HZ频率闪烁。
  12. }
  13. void SystemInit(void){
  14. }
  15. //end
注意,系统滴达定时器是24位的,最大值为16,777,215,即最大定时只能到1.39810125S,
Systick 定时器.zip (83.06 KB)
(下载次数: 9, 2014-7-5 21:31 上传)
我的其它教程 1 LPC1500体验+@1-入门环境熟悉【系列教程】 2 LPC1500体验+@2-点亮LED【系列教程】 3 LPC1500体验+@3-GPIO中断【系列教程】4.LPC1500体验+@4-systick系统滴达定时器【系列教程】 大家互相学习,如有问题可发表互相交流, 如果支持就多多回复,让我更有信心再继续发表。谢谢大家。 本帖最后由 fxyc87 于 2014-7-5 21:33 编辑

回复评论 (1)

LPC15XX 的IO操作非常方便,比第一代的LPC13XX,LPC11XX方便多了
有专门的置IO寄存器,比如SET置1,CLR清0,NOT反向IO,IO口可单独位操作,也可以以32位一起操作

非常灵活。。。
点赞  2014-7-5 21:35
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复