📄 main.lst
字号:
C51 COMPILER V7.06 MAIN 10/18/2006 23:54:20 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <stdio.h>
2 #include <absacc.h>
3 #include <intrins.h>
4 #include <./Atmel/at89x52.h>
5 #include "source.h"
6 void delay_10us(unsigned char tus){//在晶振频率为18.432MHZ时延时10微秒的函数
7 1 tus--;
8 1 while(tus--){
9 2 _nop_();_nop_();_nop_();
10 2 _nop_();_nop_();_nop_();
11 2 _nop_();_nop_();_nop_();
12 2 }
13 1 }
14 main(void){
15 1 unsigned char temp,i;
16 1 test_sram();//测试写入SRAM的值是否和写入RAM的值是一致的
17 1 delay_10us(100);//延时1毫秒
18 1 temp=test_ADC();
19 1 delay_10us(100);//延时1毫秒
20 1 test_DAC(0x55);
21 1 delay_10us(100);//延时1毫秒
22 1 temp=test_SWITCH();
23 1 delay_10us(100);//延时1毫秒
24 1 test_LED_ON();
25 1 for(i=0;i<500;i++){ //延时LED灯亮500毫秒
26 2 delay_10us(100);//延时1毫秒
27 2 }
28 1 test_LED_OFF();
29 1 for(i=0;i<500;i++){ //延时LED熄灭500毫秒
30 2 delay_10us(100);//延时1毫秒
31 2 }
32 1 test_GPIO();
33 1 }
34 void test_sram(void){
35 1 unsigned char SRAM_BUFFWR[8]={0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08};
36 1 unsigned char SRAM_BUFFRD[8];
37 1 unsigned char i;
38 1 for(i=0;i++;i<8)
39 1 XBYTE[SRAM+i]=SRAM_BUFFWR[i]; // 向SRAM写数据
40 1 for(i=0;i++;i<8)
41 1 SRAM_BUFFRD[i]=XBYTE[SRAM+i]; // 从SRAM读数据
42 1 }
43
44 unsigned char test_ADC(void){
45 1 unsigned char result,i;
46 1 XBYTE[ADC0804]=0; // 启动ADC
47 1 for(i=0;i<500;i++){ //延时500毫秒或检测ADC_INT,为低电平时读AD转换值
48 2 delay_10us(100);//延时1毫秒
49 2 }
50 1 result=XBYTE[ADC0804];//AD转换完毕,读取转换后的值
51 1 return result;
52 1 }
53
54 void test_DAC(unsigned char dac){//测试DA转换,把数值dac转换成模拟电压输出
55 1 XBYTE[AD5330]=dac;//把dac值转换成模拟值
C51 COMPILER V7.06 MAIN 10/18/2006 23:54:20 PAGE 2
56 1 }
57
58 unsigned char test_SWITCH(void){//测试开关
59 1 unsigned char ret;
60 1 ret=XBYTE[SWITCH];//读开关的的状态
61 1 return ret;
62 1 }
63
64 void test_LED_ON(void){//LED点亮
65 1 XBYTE[LED]=0;//LED灯寄存器D0设置为0
66 1 }
67 void test_LED_OFF(void){//LED等熄灭
68 1 XBYTE[LED]=1;//LED灯寄存器D0设置为1
69 1 }
70 void test_GPIO(void){
71 1 unsigned char IO3,IO4;
72 1 XBYTE[GPIO_C]=0x55; // 写GPIO16~GPIO23输出状态
73 1 XBYTE[GPIO_D]=0xAA; // 写GPIO31~GPIO24输出状态
74 1 IO3=XBYTE[GPIO_A]; // 读GPIO7~GPIO0的状态
75 1 IO4=XBYTE[GPIO_B]; // 读GPIO15~GPIO8的状态
76 1 }
77
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 242 ----
CONSTANT SIZE = 8 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 18
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 + -