K60学习打卡之GPIO小灯实验代码研读

一、代码分析
main()函数的主体代码如下:

main(){
  DelayInit(); //初始化Delay
//GPIO快速初始化 PTE的第6引脚配置为推免输出模式
  GPIO_QuickInit(HW_GPIOE, 6, kGPIO_Mode_OPP);
//控制第6引脚输出低电平
  GPIO_WriteBit(HW_GPIOE, 6, 0);
  while(1){
  //第6引脚的输出位翻转
    PEout(6) = !PEout(6);
//延时500ms
    DelayMs(500);
  }
}

现在这里做一个局部的分析,今天只分析DelayInit()函数,这个函数最终完成的实现的代码是:

     /* enable DEM */
    CoreDebug->DEMCR |= CoreDebug_DEMCR_TRCENA_Msk;
    /* enable counter */
    DWT->CTRL |= DWT_CTRL_CYCCNTENA_Msk;

二、构图

K60学习打卡之GPIO小灯实验代码研读_第1张图片
Paste_Image.png

三、文档阅读
关于这部分的资料也是很奇怪,并没有相关寄存器的资料。也算是一个遗留的问题吧。
四、分析总结
今天是第一次这样写,这两天的时间也很紧,就没有对复杂的代码分析,之后回不上。
下面是一些小的知识:
浮空输入:输入端的电压不确定。一般用于ADC
上拉输入:无信号时输入端为高电平,输入低电平时为低电平
下拉输入:无信号时输入端为低电平,输入低电平时为低电平

你可能感兴趣的:(K60学习打卡之GPIO小灯实验代码研读)