软件程序清单.doc

软件程序清单.doc

ID:61906755

大小:71.50 KB

页数:10页

时间:2021-03-27

软件程序清单.doc_第1页
软件程序清单.doc_第2页
软件程序清单.doc_第3页
软件程序清单.doc_第4页
软件程序清单.doc_第5页
资源描述:

《软件程序清单.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件程序清单ORG0000HLJMPMAIN;转主程序ORG0003H;外部中断INT0的入口地址LJMPINTA;转外部中断INT0服务程序ORG000BH;T0中断的入口地址LJMPT0-SEV;转T0溢出中断服务程序ORG0300HDATABUFEQU50H;数据缓冲区的首地址DISBUF1EQU60H;给定速度显示缓冲区的首地址DISBUF2EQU64H;实际速度显示缓冲区的首地址SAMP-D1EQU0000H;保存给定速度采样数据的首地址SAMP-D2EQU0500H;保存实际速度采样数据的首地址MAIN:MOVSP,#70H;设置堆栈指针MOVTMO

2、D,#01H;定时器T0工作方式1MOVTL0,#18H;定时器赋初值,定时1msMOVTH0,#0FCHMOVR0,#0FH;软件计数器R0赋初值,计数15次SETBTR0;启动T0工作SETBEX0;允许INT0中断SETBEA;开CPU中断SJMP$;等待中断T0-SEV:;T0中断服务子程序MOVTL0,#18H;定时器重新赋值MOVTH0,#0FCHSETBIT0;中断触发方式为边沿触发方式SETBEA;CPU开中断SETBEX0;允许外部中断0中断INTA:PUSHACC;保护现场PUSHDPHPUSHDPLACALLAD1;调用AD1给定速度采样子

3、程序ACALLFILTER;调用中值滤波子程序ACALLFA1ACALLAD2;调用AD2实际速度采样子程序ACALLFILTER;调用中值滤波子程序ACALLFA2POPDPH;恢复现场POPDPLPOPACCRETIACALLPID;调用数值PID控制算法子程序ACALLDAC;调用DAC转换程序LCALLTRAST1LCALLDBCD1LCALLDIS1;调用速度显示子程序MOVA,2AH;实际速度值送ALCALLTRAST1;调用代码转换子程序LCALLDBCD2;将实际转速压缩BCD码转换成单独的BCD码LCALLDIS2;调用实际速度显示子程序RET

4、I;中断返回AD1:;调用AD1给定速度采样子程序MOVR0,#2CH;采样值起始地址送R0MOVR2,#03H;采样次数初值送R2MOVDPTR,#6FF8HJMPADC1AD2:MOVR0,#2CH;采样值起始地址送R0MOVR2,#03H;采样次数初值送R2MOVDPTR,#6FF9HADC1:MOVX@DPTR,A;启动ADC0809工作MOVR3,#20HDLYDJNZR3,DLY;延时HERE:JBP3.3,HERE;等待A/D完成MOVXA,@DPTR;采样值送AMOV@R0,A;存放采样值INCR0DJNZR2,ADC1;若采样未完,则ADC1R

5、ET;若采样完,则返回FILTER:;中值滤波算法子程序MOVA,2CH;(2CH)送ACJNEA,2DH,CMP1;(2CH)≠(2DH),则CMP1AJMPCMP2;否则转CMP2CMP1:JNCCMP2;若(2CH)=(2DH),则CMP2XCHA,2DHXCHA,2CHCMP2:MOVA,2DH;(2DH)送ACJNEA,2EH,CMPP3;若(2DH)≠(2EH),则CMP3MOV2AH,A;否则(2DH)送2AHRET;返回CMP3:JCCMP4;若(2DH)<(2EH),则CMP4MOV2AH,A;否则(2DH)送2AHERT;返回CMP4:MOV

6、A,2EH;(2EH)送ACJNEA,2CH,CMP5;若(2EH)≠(2CH),则CMP5MOV2AH,A;否则(2EN)送2AHRET;返回CMP5:JCCMP6;若(2EH)<(2CH),则CMP6XCHA,2CH;否则(2EH)(2CH)CMP6:MOV2AH,A;A送2AHRETFA1:MOVDPTR,#SAMP-D1MOVX@DPTR,A;将采样值送到外部RAM中的0000H单元MOV1AH,AINCDPTRFA2:MOVDPTR,#SAMP-D2MOVX@DPTR,A;将采样值送到外部RAM中的0000H单元INCDPTRRETPID:;数字PID

7、控制算法子程序MOVR5,1AH;给定值Ug送R5R4MOVR4,#00HMOVR3,2AH;实际值送UI(K)R3R2MOVR2,#00HACALLCPL1;取UI(K)的补码ACALLDSUM;双字节加法,计算E(K)MOV39H,R7;E(K)送39H和3AHMOV3AH,R6MOVR5,35H;KI送R5R4MOVR4,36HMOVR0,#4AH;起始地址送4AH送R0ACALLMULT1;双字节带符号乘法,计算PI=KI*E(K)MOVR5,39H;E(K)送R5R4MOVR4,3AHMOVR3,3BH;E(K-1)送R3R2MOVR2,3CHACAL

8、LCPL1;对E(K-1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。