久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

A51與C語言的混合編程

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2012年01月02日   【字體:

我研究一上午,寫了個程序,可謂麻雀雖小可五臟俱全,希望正在學習這塊的人能少找點資料,少花點時間更快的掌握。

#include <reg52.h>
/****在匯編中定義*****/
extern void delay(void) ;
extern add(int a,int b);
//測試匯編調用的代碼(不想直接用匯編來走主程序)
extern void test();
/***在匯編中定義的代碼段****/
extern  unsigned char cc;

//  C語言中定義的函數(shù)
void delay_c();
unsigned int addcc(unsigned int wd1,unsigned int wd2);
//C語言中定義的數(shù)據(jù)段
unsigned int aa;
unsigned int bb;

void main()
{
  
   delay();
   cc=add(10,15);
   test();
   while(1);
}
void delay_c()
{
  unsigned char cc;
  cc=0xff;
  while(cc--);
}
unsigned int addcc(unsigned int wd1,unsigned int wd2)
{
unsigned int cl;
cl=wd1+wd2;
return cl;
}


delay.asm


NAME  ONE        ;模塊的名稱
;ORG  1000H       ;函數(shù)存放的起始單元
?PR?delay?ONE      SEGMENT CODE   ;標注函數(shù)的定義位置
?PR?_add?ONE       SEGMENT CODE
?PR?test?ONE    SEGMENT CODE
cc       DATA   33H     ;直接 定義數(shù)據(jù)的地址
PUBLIC delay     ;聲明為全局
PUBLIC _add
PUBLIC test
PUBLIC cc     ;聲明全局
EXTRN DATA(aa)  ;注意這里是extrn 而不是C中extern  在 c中定義
EXTRN DATA(bb)
EXTRN CODE(delay_c)
EXTRN CODE(_addcc)        ;帶參數(shù)的網上的資料EXTRN CODE(addcc) 我沒測試成功。按理名字應該加_fun 這個是帶參的定義方式
;EXTRN DATA(?_addcc?BYTE) ;網上傳參通過這個我也沒試成功,直接對寄存器做數(shù)據(jù)的處理了。

   RSEG  ?PR?delay?ONE   ;(不帶參函數(shù))重新定位函數(shù)的代碼位置
delay:
   MOV R0 , #44H
   DJNZ R0,$
   RET
  RSEG ?PR?_add?ONE      ;(帶參函數(shù))參數(shù)自動防止到寄存器中可以網上查下,這里 15分別存放到R7,R6  10存入R5,R4
_add:
   MOV A,R5
   ADD A,R7
   MOV R7,A
   MOV A,R4
   ADDC A,R6
   MOV aa,R7
   RET

RSEG ?PR?test?ONE
test:
  ;掉用不帶參數(shù)的C函數(shù)
  CALL delay_c
  ;調用帶參數(shù)的C函數(shù)
  MOV R5,#15
  MOV R7,#11
  LCALL _addcc
  MOV cc,R7
  RET
END  ;程序結束
關閉窗口

相關文章

主站蜘蛛池模板: 美女福利视频 | 精品国产精品三级精品av网址 | www.久久久久久| 色综合天天综合网国产成人网 | 91l九色lporny| 国产综合久久 | 国产精品国产三级国产专区53 | 三年中文在线看免费观看 | 欧美日韩亚洲视频 | 亚洲www. | 天天摸天天干 | 国产精品美女 | 日本精品视频 | 日韩精品一区二区在线 | 成人国产一区 | 精品视频一区二区三区 | 国产精品久久久久久妇女6080 | 在线一区视频 | 色综合久久天天综合网 | 国内精品国产成人国产三级 | 超碰免费在线播放 | 在线免费观看黄色片 | 久久性 | 欧美vieox另类极品 | 色天堂影院 | 欧美国产日韩一区二区 | 好色综合| 成年人的免费视频 | 亚洲欧美在线视频 | 欧美激情视频网站 | 精品国产999久久久免费 | 欧美精品成人一区二区在线观看 | 在线观看黄色小视频 | 亚洲三区在线观看 | 九九热在线观看 | 黄色片免费看 | 一区二区影院 | 91青青| 亚洲免费在线观看视频 | 亚洲福利一区二区 | 九色91在线 |