my blog my blog

Tag: 单片机
假期将近,各位童鞋假期愉快

 

今天考完了最后一门单片机,大三还有一个课程设计交完就算交代了,下学期来了就大四了,就正儿八经的是学长了,呃,时间匆匆了,朱老先生,你也觉得匆匆了哇,奶牛也觉得匆匆了,得学点儿啥,寻思着最好能留下点儿啥~~~

提前祝各位还是同学的童鞋假期愉快,奶牛最后一个暑假,要充实起来哇~~

发一套51单片机资料(5G iso文件)

 

发一套51单片机的资料,是我自己买的板子送的,感觉还挺好的,转了iso分享上来。

用的115网盘(PS:不要骂俺用yunfile,俺也讨厌那东西),呃…

下面的广告各位也看到了哇,呃,如果有愿意的可以自愿捐赠资助本博客,文件我上传了6个来小时,多了就不解释了。

下载地址:http://115.com/file/bec23mx6            #学习光盘(HC6800EM3).iso

51单片机日记:说说长调短调及返回

 

每次仔细看遍书都会有收获。今天记录下子程序调用。其实呢,就是lcall或者acall到一个address,然后这时候其实sp指针是有动作的哦,然后通过ret可以将sp指针的变化弹到pc指针,回到程序,这个过程就是程序的调用啦。

 

  1.                ORG        1000H 
  2. Father:        MOV        A,        #0FFH 
  3.                LCALL      Son                   ;调用子程序 
  4.                LJMP       Father 
  5. Son:           ANL        A,        #0FH        ;高位清零 
  6.                RET                              ;返回主程序 

过程是这样子的,首先father进程把FFH赋值给累加器A,然后调用子程序,这时候PC=(PC)+3 ; SP=(SP)+1 ;(SP)=(PC)L ; SP=(SP)+1 ;(SP)=(PC)H ; 然后开始跳到子程序son,在RET的时候,SP先弹值到(PC)H,然后SP-1,再弹值到(PC)L,最后SP-1回到初值,这样子,PC就又变为LJMP语句所在的地址了,也就是从LJMP开始继续执行。

PUSH与POP哇,LCALL/ACALL与RET哇一定要成对使用避免错误产生~~~