📄 da0.lst
字号:
C51 COMPILER V7.06 DA0 05/31/2008 19:40:01 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE DA0
OBJECT MODULE PLACED IN DA0.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE DA0.C BROWSE DEBUG OBJECTEXTEND
stmt level source
1 // 程序产生锯齿波,DAC输出更新发生在写DAC0H时.
2 #include <c8051f020.h> /*SFR定义*/
3 sfr16 DAC0 = 0xd2; /*DAC0数据*/
4 void DAC_Init(void);
5 void SYSCLK_Init()
6 {
7 1 unsigned int i;
8 1 OSCXCN=0X67; //0X67=0110,0111
9 1 for(i=0;i<256;i++); //等待>1ms
10 1 while(!(OSCXCN&0X80)); //等待XTLVLD变为1
11 1 OSCICN=0X88; //时钟失效监测器,选择外部时钟源作为系统时钟
12 1 }
13 void main (void) {
14 1 unsigned int i;
15 1 WDTCN = 0xde; /*关看门狗*/
16 1 WDTCN = 0xad;
17 1 SYSCLK_Init();
18 1 DAC0=0x0;
19 1 DAC_Init(); /*DAC初始化*/
20 1 while (1)
21 1 {
22 2 DAC0L=DAC0L ; /*设置待转换的值并启动D/A转换*/
23 2 DAC0H=DAC0H ;
24 2 for(i=0;i<=1;i++); /*延时*/
25 2 DAC0=DAC0+1; /*DAC输出值递增*/
26 2 }
27 1 }
28 void DAC_Init(void) /*初始化I/O口*/
29 {
30 1 REF0CN =0x03;/*内部偏压发生器和电压基准缓冲器工作,基准从VREF引脚输出*/
31 1 DAC0CN |=0x80; /*DAC0允许,DAC输出更新发生在写DAC0H时*/
32 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 82 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -