文章
博客 网店

 C程序中调用汇编函数测试程序


main.c文件:

/********************************
  C程序中调用汇编函数测试程序 
  文件名:main.c
  编译:WinAVR-20070122

  硬件:CA-M8X  
      配置:外部4MHz
      打开:S6(1,2) S1(8)
  
  芯艺设计室 2004-2007  版权所有 
  转载请保留本注释在内的全部内容
  WEB: http://www.chipart.cn
  Email: changfutong@sina.com
*******************************/
#include 
#include 
#include 

//声明两个汇编函数
void set_grn_led(void);  
void clr_grn_led(void);

void DelayMs(uint16_t t)
{
  uint16_t i;
  for(i=0;i     _delay_loop_2(4*250);
}

int main(void)
{
  //LED口初始化
  DDRB=_BV(PB0);
  
  while(1)
  {
    DelayMs(300);
    set_grn_led();
    DelayMs(300);  
    clr_grn_led();
  }
}



汇编源文件asm.s内容:

;  C程序中调用汇编函数测试程序 
;  文件名:asm.s
; 硬件:CA-M8X
;  
;  芯艺设计室 2004-2007

#include 

  .section .text
  .global  set_grn_led      ;外部函数声明
set_grn_led:                ;点亮红发光管
  cbi _SFR_IO_ADDR(PORTB),0
  ret
  
  .global clr_grn_led
clr_grn_led:                ;熄灭红发光管
  sbi _SFR_IO_ADDR(PORTB),0
  ret
  

芯艺工作室    蒙ICP备06005492号
Copyright© 2004-2023 ChipArt Studio All Rights Reserved