本帖最后由 zl2168 于 2017-3-27 15:01 编辑
楼上不完整解答。AD转换后的是数字量:0~255,而不是模拟量1V。因此,有数字量转换为模拟量的运算及其编程。
在显示数转换为显示数字子程序中,满量程A-D值FFH(255)对应UREF+(5V),显示时需将A-D值按比例变换:255→500。变换方法为:(A-D值÷255)×500=(A-D值÷51)×100V。在变换过程中,数值会超出一字节(大于255)。因此,C51程序先将原来定义于字符型变量的A-D值转换为整型变量,然后进行255→500的数值变换,以免出错。汇编程序则巧妙利用变换后高8位数值最大为1(总数值≤510)的特征,避免采用二字节除法子程序,从而简化了变换程序。
以上摘自张志良编著《80C51单片机实用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9, 用于学习51单片机原理,程序(c和汇编)语句条条有注解,便于阅读理解,便于自学。
|