📄 adc0.lst
字号:
C51 COMPILER V7.02b ADC0 10/31/2005 16:30:55 PAGE 1
C51 COMPILER V7.02b, COMPILATION OF MODULE ADC0
OBJECT MODULE PLACED IN .\output\ADC0.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ADC0.c DEBUG OBJECTEXTEND OBJECT(.\output\ADC0.obj)
stmt level source
1 /************************************************************************************
2 * Copyright (c) 2004,西安铭朗电子科技有限责任公司
3 * All rights reserved.
4 *
5 * 文件名称: ADC0.C
6 * 文件标识: none
7 * 适用器件: c8051f020
8 *
9 * 摘 要: 本文件是AD子程序;使用外部22.1184MHz晶振,将跳线器JP3短接
10 *
11 * 当前版本:1.0
12 * 作 者:卢 阳
13 * 完成日期:2004年11月14日
14 *
15 * 历史版本:0.9
16 * 原作者 : 李林利
17 * 完成日期:2004年1月1日
18 *************************************************************************************/
19
20 /************************************************************************************/
21 // 引用外部头文件
22
23 #include "c8051f020.h"
24 #include <stdio.h>
25 #include "ADC.h"
26
27 /************************************************************************************/
28
29 /***********************************************************************************
30 * 函数名称:UART0_Init;
31 *
32 * 函数功能描述:设置UART0使用定时器Timer1, 应用 <baudrate> 和 8-N-1.
33 *
34 * 输入参数:none;
35 *
36 * 返回数据:none;
37 *
38 * 注意: none;
39 ************************************************************************************/
40
41 void UART0_Init (void)
42 {
43 1 SCON0 = 0x50; // SCON0: 模式1, 8位UART, 使能RX
44 1 TMOD = 0x20; // TMOD: 定时器1, 模式2, 8位重载
45 1 TH1 = -(SYSCLK/BAUDRATE/16); // 设置定时器Timer1重装载值,应用 <baudrate>
46 1 TR1 = 1; // 启动Timer1
47 1 CKCON |= 0x10; // 定时器Timer1使用系统时钟作为时间基准
48 1 PCON |= 0x80; // SMOD00 = 1
49 1 TI0 = 1; // Indicate TX0 ready
50 1 }
51
52 /***********************************************************************************
53 * 函数名称:ADC0_Init;
54 *
55 * 函数功能描述:设置ADC0使用定时器Timer3溢出作为转换源,转换完成后产生中断,使用左对齐输出模式
C51 COMPILER V7.02b ADC0 10/31/2005 16:30:55 PAGE 2
56 *
57 * 输入参数:none;
58 *
59 * 返回数据:none;
60 *
61 * 注意: none;
62 ************************************************************************************/
63
64 void ADC0_Init (void)
65 {
66 1 ADC0CN = 0x45; // 关闭ADC0; 低能追踪模式
67 1 // DC0使用定时器Timer3溢出作为转换源;
68 1 //使用左对齐输出模式
69 1
70 1 REF0CN = 0x07; // 打开温度传感器, on-chip VREF,
71 1 // VREF输出缓存器
72 1 AMX0SL = 0x00; // 选择AIN0作为ADC mux输出
73 1 ADC0CF = (SYSCLK/2500000) << 3; // ADC转换时钟= 2.5MHz
74 1 ADC0CF &= ~0x07; // PGA gain = 1
75 1
76 1 EIE2 |= 0x02; // 打开ADC中断
77 1 }
78
79
80 /***********************************************************************************
81 * 函数名称:Timer3_Init;
82 *
83 * 函数功能描述:lcd_init;
84 *
85 * 输入参数:none;
86 *
87 * 返回数据:none;
88 *
89 * 注意: none;
90 ************************************************************************************/
91
92 void Timer3_Init (int counts)
93 {
94 1 TMR3CN = 0x02; // 停止Timer3; 清除TF3;
95 1 // 使用SYSCLK作为时间基准
96 1 TMR3RL = -counts; // 初始化装载值
97 1 TMR3 = 0xffff; // 设置立即装载
98 1 EIE2 &= ~0x01; // 关闭定时器Timer3中断
99 1 TMR3CN |= 0x04; // 开启Timer3
100 1 }
101
102 /***********************************************************************************
103 * 函数名称:ADC0_enable
104 *
105 * 函数功能描述:ADC0开关,1:打开;0:关闭
106 *
107 * 输入参数:1:打开;0:关闭
108 *
109 * 返回数据:none;
110 *
111 * 注意: none;
112 ************************************************************************************/
113
114 void ADC0_enable(unsigned char flag)
115 {
116 1 if(flag)
117 1 {
C51 COMPILER V7.02b ADC0 10/31/2005 16:30:55 PAGE 3
118 2 AD0EN = 1; // 打开ADC
119 2 EA = 1; // 开启全局中断
120 2 }
121 1 else
122 1 {
123 2 AD0EN = 0; // 关闭ADC
124 2 // EA = 0; // 关闭全局中断
125 2 }
126 1 }
127
128
129 /***********************************************************************************/
130 // 文件结束
131 /***********************************************************************************/
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 76 ----
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 + -