13.c和汇编的相互调用

 

新建light.c:

13.c和汇编的相互调用

修改start.S:

13.c和汇编的相互调用

修改Makefile:加light.o

13.c和汇编的相互调用

最后make成功,烧写成功。

 

同样,我们也可以在C函数里调用我们的汇编里面的函数:

修改start.S:把light_led申明为global:

13.c和汇编的相互调用

在light.c中被调用:

13.c和汇编的相互调用

Make编译烧写到开发板:发现灯是可以被点亮的。在C中调用汇编函数成功。

接下来的是在C中嵌入汇编代码,而不是调用:

  1. C内嵌入汇编的格式:

13.c和汇编的相互调用

 

13.c和汇编的相互调用

输出部分:是从c到r,输入是从r到c。破坏部是程序改变的寄存器。

 

 

 

 

 

 

 

 

 

 

 

 

 

编程实例:

13.c和汇编的相互调用

13.c和汇编的相互调用

 

 

 

 

 

 

 

 

 

 

 

 

 

  1. C嵌入汇编的优化:

13.c和汇编的相互调用

 

实现点灯:

13.c和汇编的相互调用

Make烧写,灯亮。

 

相关文章:

  • 2022-12-23
  • 2021-07-03
  • 2021-07-16
  • 2022-12-23
  • 2021-10-04
  • 2022-12-23
  • 2022-12-23
  • 2021-11-10
猜你喜欢
  • 2021-10-27
  • 2021-07-03
  • 2021-08-18
  • 2022-12-23
  • 2021-05-23
相关资源
相似解决方案