📄 max539c.lst
字号:
C51 COMPILER V8.02 MAX539C 08/10/2007 11:39:52 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE MAX539C
OBJECT MODULE PLACED IN MAX539C.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE MAX539C.C BROWSE DEBUG OBJECTEXTEND
line level source
1 /******************************************************************/
2 /* 这是MAX539 C51语言程序-不是调用汇编的,文件名为MAX539C.C */
3 /* 功能:本程序是用C51语言编写的实现MAX539芯片的D/A转换程序。 */
4 /* 程序中转换的十六进制值依次为0x0fff,0x07ff,0x03ff,0x01ff,0 */
5 /* VOUT脚输出转换后的模拟信号,它既可用万用表的直流电压档测试*/
6 /* ,也可用示波器的探头点在此处观察。 */
7 /******************************************************************/
8 #include <reg52.h>
9 #define uchar unsigned char
10 #define uint unsigned int
11
12 void delay1(uint x);
13 uchar i;
14
15 sbit DIN= P1^0;
16 sbit SCK= P1^1;
17 sbit CS = P1^2;
18 sbit DOUT=P1^3;
19
20 void delay1(uint x) //延时程序
21 {
22 1 uchar tw;
23 1 while (x-->0){
24 2 for (tw=0;tw<125;tw++){;}
25 2 }
26 1 }
27
28 void send(uchar ch) // 发送数据子程序,ch为要发送的数据
29 {
30 1 uchar BitCounter = 8; //位数控制
31 1 uchar tmp; //中间变量控制
32 1 bit C;
33 1 do
34 1 {
35 2 tmp = ch;
36 2 SCK = 0;
37 2 if ((tmp&0x80)==0x80) //如果最高位是1
38 2 C = 1;
39 2 else
40 2 C = 0;
41 2 DIN=C;
42 2 SCK = 1;
43 2 tmp = ch<<1; //左移
44 2 ch = tmp;
45 2 BitCounter--;
46 2 }
47 1 while(BitCounter);
48 1 SCK = 0;
49 1 }
50 void main() //主程序
51 {
52 1 SP=0xcf;
53 1 delay1(1000);
54 1 EA=0;
55 1 CS=1;
C51 COMPILER V8.02 MAX539C 08/10/2007 11:39:52 PAGE 2
56 1 CS=0;
57 1 send(0x0f); // 将十六进制值0x0fff送MAX539芯片作D/A转换
58 1 send(0xff);
59 1 CS=1;
60 1 delay1(1000); // 延时
61 1 CS=0;
62 1 send(0x07); // 将十六进制值0x07ff送MAX539芯片作D/A转换
63 1 send(0xff);
64 1 CS=1;
65 1 delay1(1000); // 延时
66 1 CS=0;
67 1 send(0x03); // 将十六进制值0x03ff送MAX539芯片作D/A转换
68 1 send(0xff);
69 1 CS=1;
70 1 delay1(1000); // 延时
71 1 CS=0;
72 1 send(0x01); // 将十六进制值0x01ff送MAX539芯片作D/A转换
73 1 send(0xff);
74 1 CS=1;
75 1 delay1(1000); // 延时
76 1 CS=0;
77 1 send(0x00); // 将十六进制值0x0000送MAX539芯片作D/A转换
78 1 send(0x00);
79 1 CS=1;
80 1 delay1(1000); // 延时
81 1 while(1);
82 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 152 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -