📄 initial.lst
字号:
C51 COMPILER V7.06 INITIAL 11/09/2004 16:39:44 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE INITIAL
OBJECT MODULE PLACED IN initial.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE initial.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 //***********************************************************************
2 //FILE: initial.c
3 //功能: 初始化所有外设
4 //***********************************************************************
5 #include"HI2C_C51.H"
6 #include"time.h"
7 #include"main.h"
8 #include"key.h"
9 #include"temperature.h"
10 #include"spi.h"
11 //***********************************************************************
12 void InitialTime() //初始化时间参量
13 {
14 1 Year =4; //初始化年
15 1 Month =10; //初始化月
16 1 Day =20; //初始化日
17 1 Hour =2; //初始化小时
18 1 Ampm =1; //初始化AM/PM标志
19 1 Minute =24; //初始化分钟
20 1 Second =0; //初始化秒
21 1 HalfSec =0; //初始化秒信号量
22 1 AlarmHour=1; //初始化闹钟小时
23 1 AlarmMinute=1; //初始化闹钟分钟
24 1 AlarmAmpm=1; //初始化闹钟AM/PM
25 1 }
26 //***********************************************************************
27 void InitialIO() //初始化I/O口
28 {
29 1 P0M1 =0xB0; //设置按键为准双向
30 1 P0M2 =0x00;
31 1 P1M1 =0x3f; //设置SPI片选和BEEP
32 1 P1M2 =0x0c;
33 1 P2M1 =0xd9; //设置SPI总线I/O
34 1 P2M2 =0x00;
35 1 }
36 //***********************************************************************
37 void InitialRTC() //初始化RTC
38 {
39 1
40 1 RTCL =0x7f; //设置RTC的重装值
41 1 RTCH =0x00;
42 1 RTCCON =0x43; //允许RTC中断,使能RTC
43 1 WDCON =0xe0; //关闭WDT
44 1 IEN0 |=0x40; //使能RTC中断
45 1 }
46 //***********************************************************************
47 void Initial8576D() //初始化PCF8576D
48 {
49 1 ISendByte(PCF8576,0x48);//1:4显示,开显示
50 1 ISendByte(PCF8576,0x70);//不闪烁
51 1 }
52 //***********************************************************************
53 void InitialKey() //初始化按键相关
54 {
55 1 KBMASK =0x4f; //使能相应按键中断
C51 COMPILER V7.06 INITIAL 11/09/2004 16:39:44 PAGE 2
56 1 KBCON =0x00; //清按键中断标志
57 1 IEN1 |=0x02; //允许按键中断
58 1 Mode =1; //显示模式初始化为1(时间模式)
59 1 KeyFlag =0; //初始化为无按键标志
60 1 ModifyP =0;
61 1 }
62 //***********************************************************************
63 void InitialSPI() //初始化SPI总线
64 {
65 1 SPCTL =0xdc; //初始化SPI时钟
66 1 SPSTAT =0xc0; //设置上升沿有效
67 1 }
68 //***********************************************************************
69 void InitialAll() //总初始化函数
70 {
71 1 InitialTime(); //初始化时间参量
72 1 InitialSPI(); //初始化SPI总线
73 1 InitialIO(); //初始化I/O口
74 1 InitialRTC(); //初始化RTC
75 1 InitialKey(); //初始化按键相关
76 1 Initial8576D(); //初始化PCF8576D
77 1 SendDatTo595(0xff<<Mode);//指示默认模式
78 1 EA=1; //开总中断
79 1 }
80 //********************************END************************************
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 141 ----
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 + -