一段嵌入式代码的理解

2019-03-25 19:32发布

int main(void)
{
  
      // disable JTAG port
    DDPCONbits.JTAGEN = 0;   
  
    // 3.2 initialization
    TRISB = 0;      // all PORTA as output
    T1CON = 0x8030; // TMR1 on, prescale 1:256 PB     // 3.3 the main loop
    while( 1)
    {
        // 3.3.1 display loop, hand moving to the right
       
            PORTBbits.RB13=0;
            PORTBbits.RB14=1;
           
            HAL_DelayMS(1000);              
            PORTBbits.RB13=1;
            PORTBbits.RB14=0;             HAL_DelayMS(1000);
    } // main loop
} // main /* 功能     : 基本延时函数*/
void HAL_DelayMS (INT16U r_iTime)
{
 while(r_iTime--)
 {
  HAL_DelayUS(1000);
 } 
}
/* 功能     : 基本延时函数*/
void HAL_DelayUS (INT16U r_iTime)
{
 int i,j;  r_iTime--;  __asm("nop");
 __asm("nop");
 __asm("nop");
 __asm("nop");
 __asm("nop");
 __asm("nop");
 __asm("nop");
 __asm("nop");
 __asm("nop");
 __asm("nop");
 __asm("nop");
 __asm("nop");
 __asm("nop");
 __asm("nop");
 
 while(r_iTime)
 {
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");   __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");   __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");   __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");
  __asm("nop");   r_iTime--;
 }
 
 r_iTime = 0; 
}
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
wuhaijing231
1楼-- · 2019-03-26 02:09
又是新手,很多基础不是很了解。。
wanghongyang
2楼-- · 2019-03-26 02:53
LZ怎么理解的?
wuhaijing231
3楼-- · 2019-03-26 03:17
就是不知道该怎么学习它
wuhaijing231
4楼-- · 2019-03-26 04:36
就是让我编的时候傻眼。。

一周热门 更多>