📄 x5043.lst
字号:
C166 COMPILER V6.04, X5043 09/08/2007 15:46:25 PAGE 1
C166 COMPILER V6.04, COMPILATION OF MODULE X5043
OBJECT MODULE PLACED IN X5043.OBJ
COMPILER INVOKED BY: E:\program files\keil\C166\BIN\C166.EXE X5043.C MODV2 BROWSE MODV2 DEBUG
stmt lvl source
1 //****************************************************************************
2 // 文件名: X5043.C
3 // 功 能: SPI EEPROM X5043 读写C程序
4 // 作 者: 乐志梅
5 // 版 本: V1.0
6 // 日 期: 2007.06.01
7 // 修 订:
8 // 说 明:
9 //****************************************************************************
10
11 //****************************************************************************
12 // @Project Includes
13 //****************************************************************************
14
15 #include "MAIN.H"
16
17 //****************************************************************************
18 // @Function ubyte Read_Data(unsigned char address)
19 //
20 //----------------------------------------------------------------------------
21 // @Description 从X5043的某个地址读取一个字节的数据
22 //
23 //----------------------------------------------------------------------------
24 // @Returnvalue 从X5043的某个地址读取的一个字节数据
25 //
26 //----------------------------------------------------------------------------
27 // @Parameters address X5043的地址
28 //
29 //----------------------------------------------------------------------------
30 // @Date 2007-6-1 by lezm
31 //
32 //****************************************************************************
33 ubyte Read_Data(unsigned char address)
34 {
35 1 //读数据序列
36 1 CS_X5043 = 0; //片选信号激活(‘0’有效)
37 1 delay(50);
38 1
39 1 SSC0_vSendData(READ); //读数据指令
40 1 delay(500);
41 1
42 1 SSC0_vSendData(address); //发送地址
43 1 delay(500);
44 1
45 1 SSC0_RIC_IR = 0;
46 1 SSC0_vSendData(0xff); //为了产生SCLK信号,发送一个无效的数据
47 1 delay(500);
48 1
49 1 CS_X5043 = 1; //片选信号无效(‘1’无效)
50 1 delay(50);
51 1 return((ubyte)(SSC0_uwGetData())); //返回从X5043接收到的数据
52 1
53 1 }
54
55 //****************************************************************************
C166 COMPILER V6.04, X5043 09/08/2007 15:46:25 PAGE 2
56 // @Function ubyte Read_Status(void)
57 //
58 //----------------------------------------------------------------------------
59 // @Description 主设备从X5043读取状态寄存器的值
60 //
61 //----------------------------------------------------------------------------
62 // @Returnvalue X5043状态寄存器的值
63 //
64 //----------------------------------------------------------------------------
65 // @Parameters None
66 //
67 //----------------------------------------------------------------------------
68 // @Date 2007-6-1 by lezm
69 //
70 //****************************************************************************
71 ubyte Read_Status(void)
72 {
73 1 //读状态寄存器序列
74 1 CS_X5043 = 0; //片选信号激活(‘0’有效)
75 1 delay(50);
76 1
77 1 SSC0_vSendData(RDSR); //读状态寄存器指令
78 1 delay(500);
79 1
80 1 SSC0_RIC_IR = 0;
81 1 SSC0_vSendData(0xff); //为了产生SCLK信号,发送一个无效的数据
82 1 delay(500);
83 1
84 1 CS_X5043 = 1; //片选信号无效(‘1’无效)
85 1 delay(50);
86 1 return((ubyte)(SSC0_uwGetData())); //返回从X5043接收到的数据
87 1
88 1 }
89
90 //****************************************************************************
91 // @Function void Write_Enable(void)
92 //
93 //----------------------------------------------------------------------------
94 // @Description X5043写使能
95 //
96 //----------------------------------------------------------------------------
97 // @Returnvalue None
98 //
99 //----------------------------------------------------------------------------
100 // @Parameters None
101 //
102 //----------------------------------------------------------------------------
103 // @Date 2007-6-1 by lezm
104 //
105 //****************************************************************************
106 void Write_Enable(void)
107 {
108 1 //写使能序列
109 1 CS_X5043 = 0;
110 1 delay(50);
111 1
112 1 SSC0_vSendData(WREN); //写使能指令
113 1 delay(500);
114 1
115 1 CS_X5043 = 1;
116 1 delay(500);
117 1
C166 COMPILER V6.04, X5043 09/08/2007 15:46:25 PAGE 3
118 1 }
119
120 //****************************************************************************
121 // @Function void Write_Disable(void)
122 //
123 //----------------------------------------------------------------------------
124 // @Description X5043写禁止
125 //
126 //----------------------------------------------------------------------------
127 // @Returnvalue None
128 //
129 //----------------------------------------------------------------------------
130 // @Parameters None
131 //
132 //----------------------------------------------------------------------------
133 // @Date 2007-6-1 by lezm
134 //
135 //****************************************************************************
136 void Write_Disable(void)
137 {
138 1 //写禁止指令
139 1 CS_X5043 = 0;
140 1 delay(50);
141 1
142 1 SSC0_vSendData(WRDI); //写禁止指令
143 1 delay(500);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -