?? lcd.lst
字號:
1 .file "lcd.c"
2 .arch atmega128
3 __SREG__ = 0x3f
4 __SP_H__ = 0x3e
5 __SP_L__ = 0x3d
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .global __do_copy_data
9 .global __do_clear_bss
11 .text
12 .Ltext0:
69 .global adress_table
70 .section .progmem.data,"a",@progbits
73 adress_table:
74 0000 80 .byte -128
75 0001 81 .byte -127
76 0002 82 .byte -126
77 0003 83 .byte -125
78 0004 84 .byte -124
79 0005 85 .byte -123
80 0006 86 .byte -122
81 0007 87 .byte -121
82 0008 90 .byte -112
83 0009 91 .byte -111
84 000a 92 .byte -110
85 000b 93 .byte -109
86 000c 94 .byte -108
87 000d 95 .byte -107
88 000e 96 .byte -106
89 000f 97 .byte -105
90 0010 88 .byte -120
91 0011 89 .byte -119
92 0012 8A .byte -118
93 0013 8B .byte -117
94 0014 8C .byte -116
95 0015 8D .byte -115
96 0016 8E .byte -114
97 0017 8F .byte -113
98 0018 98 .byte -104
99 0019 99 .byte -103
100 001a 9A .byte -102
101 001b 9B .byte -101
102 001c 9C .byte -100
103 001d 9D .byte -99
104 001e 9E .byte -98
105 001f 9F .byte -97
106 .global sse
109 sse:
110 0020 2A2A B0E6 .string "**\260\346\261\276\272\305 V0.11**"
110 B1BE BAC5
110 2056 302E
110 3131 2A2A
110 00
111 .global ssd
114 ssd:
115 0031 D6C7 C4DC .string "\326\307\304\334\323\315\317\344\277\330\326\306\317\265\315\263"
115 D3CD CFE4
115 BFD8 D6C6
115 CFB5 CDB3
115 00
116 .global ssa
119 ssa:
120 0042 2D2D 2D2D .string "----\271\342\303\242\265\347\327\323----"
120 B9E2 C3A2
120 B5E7 D7D3
120 2D2D 2D2D
120 00
121 .global ssb
124 ssb:
125 0053 B1B1 BBAA .string "\261\261\273\252\272\275\314\354\271\244\322\265\321\247\324\272"
125 BABD CCEC
125 B9A4 D2B5
125 D1A7 D4BA
125 00
126 .global character12
127 .data
130 character12:
131 0000 B3F5 CABC .string "\263\365\312\274\273\257TIME\315\352\263\311.."
131 BBAF 5449
131 4D45 CDEA
131 B3C9 2E2E
131 00
132 .global character11
135 character11:
136 0011 B3F5 CABC .string "\263\365\312\274\273\257GSM \315\352\263\311.."
136 BBAF 4753
136 4D20 CDEA
136 B3C9 2E2E
136 00
137 .global character10
140 character10:
141 0022 2A2A B7A2 .string "**\267\242\313\315\315\352\263\311......"
141 CBCD CDEA
141 B3C9 2E2E
141 2E2E 2E2E
141 00
142 .global character9
145 character9:
146 0033 2A2A B7A2 .string "**\267\242\313\315\266\314\320\305......"
146 CBCD B6CC
146 D0C5 2E2E
146 2E2E 2E2E
146 00
147 .global character8
150 character8:
151 0044 B3F5 CABC .string "\263\365\312\274\273\257DS18B20..."
151 BBAF 4453
151 3138 4232
151 302E 2E2E
151 00
152 .global character7
155 character7:
156 0055 B3F5 CABC .string "\263\365\312\274\273\257TIME......"
156 BBAF 5449
156 4D45 2E2E
156 2E2E 2E2E
156 00
157 .global character6
160 character6:
161 0066 B3F5 CABC .string "\263\365\312\274\273\257GSM......."
161 BBAF 4753
161 4D2E 2E2E
161 2E2E 2E2E
161 00
162 .global character5
165 character5:
166 0077 2A2A CFB5 .string "**\317\265\315\263starting**"
166 CDB3 7374
166 6172 7469
166 6E67 2A2A
166 00
167 .global character4
170 character4:
171 0088 B1B1 BBAF .string "\261\261\273\257\272\275\314\354\271\244\322\265\321\247\324\272"
171 BABD CCEC
171 B9A4 D2B5
171 D1A7 D4BA
171 00
172 .global character3
175 character3:
176 0099 2020 2020 .string " \260\346\261\276\272\305\243\27201 "
176 B0E6 B1BE
176 BAC5 A3BA
176 3031 2020
176 00
177 .global character2
180 character2:
181 00aa D6C7 C4DC .string "\326\307\304\334\265\347\301\246\271\334\300\355\317\265\315\263"
181 B5E7 C1A6
181 B9DC C0ED
181 CFB5 CDB3
181 00
182 .global character1
185 character1:
186 00bb 2A2A 2A2A .string "****************"
186 2A2A 2A2A
186 2A2A 2A2A
186 2A2A 2A2A
186 00
187 .text
190 .global delay
192 delay:
1:APP1/lcd.c **** #include <avr/io.h>
2:APP1/lcd.c **** #include <avr/pgmspace.h>
3:APP1/lcd.c **** #include "lcd.h"
4:APP1/lcd.c **** char character1[]="****************";
5:APP1/lcd.c **** char character2[]="智能電力管理系統";
6:APP1/lcd.c **** char character3[]=" 版本號:01 ";
7:APP1/lcd.c **** char character4[]="北化航天工業學院";
8:APP1/lcd.c **** char character5[]="**系統starting**";
9:APP1/lcd.c **** char character6[]="初始化GSM.......";
10:APP1/lcd.c **** char character7[]="初始化TIME......";
11:APP1/lcd.c **** char character8[]="初始化DS18B20...";
12:APP1/lcd.c **** char character9[]="**發送短信......";
13:APP1/lcd.c **** char character10[]="**發送完成......";
14:APP1/lcd.c **** char character11[]="初始化GSM 完成..";
15:APP1/lcd.c **** char character12[]="初始化TIME完成..";
16:APP1/lcd.c ****
17:APP1/lcd.c **** const char ssb[] PROGMEM="北華航天工業學院";
18:APP1/lcd.c **** const char ssa[] PROGMEM="----光芒電子----";
19:APP1/lcd.c **** const char ssd[] PROGMEM="智能油箱控制系統";
20:APP1/lcd.c **** const char sse[] PROGMEM="**版本號 V0.11**";
21:APP1/lcd.c **** #define SET_SCK PORTC|=0x04;//串行時鐘線
22:APP1/lcd.c **** #define CLR_SCK PORTC&=0xfb;
23:APP1/lcd.c **** #define SET_SID PORTC|=0x02;//串行數據線
24:APP1/lcd.c **** #define CLR_SID PORTC&=0xfd;
25:APP1/lcd.c **** #define SET_CS PORTC|=0x01; //片選
26:APP1/lcd.c **** #define CLR_CS PORTC&=0xfe;
27:APP1/lcd.c **** const unsigned char adress_table[] PROGMEM=
28:APP1/lcd.c **** {
29:APP1/lcd.c **** 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,//第一行漢字位置
30:APP1/lcd.c **** 0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,//第二行漢字位置
31:APP1/lcd.c **** 0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,//第三行漢字位置
32:APP1/lcd.c **** 0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,//第四行漢字位置
33:APP1/lcd.c **** };
34:APP1/lcd.c **** /************************寫入字節函數(內部)********************/
35:APP1/lcd.c **** void delay(unsigned int);
36:APP1/lcd.c **** void write_byte(unsigned char Data) //單純寫字節,8位字節SID為數據 SCLK為時鐘
37:APP1/lcd.c **** {
38:APP1/lcd.c **** unsigned char i,Temp_data;
39:APP1/lcd.c **** for(i=0;i<8;i++)
40:APP1/lcd.c **** {
41:APP1/lcd.c **** Temp_data=Data;
42:APP1/lcd.c **** Temp_data<<=i;
43:APP1/lcd.c **** if(Temp_data&0x80) {SET_SID;}
44:APP1/lcd.c **** else {CLR_SID;}
45:APP1/lcd.c **** delay(50);
46:APP1/lcd.c **** SET_SCK;
47:APP1/lcd.c **** delay(50);
48:APP1/lcd.c **** CLR_SCK;
49:APP1/lcd.c **** }
50:APP1/lcd.c **** }
51:APP1/lcd.c **** /************************延時函數**************************/
52:APP1/lcd.c **** void delay(unsigned int t)
53:APP1/lcd.c **** { unsigned int i,j;
194 .LM1:
195 /* prologue: frame size=0 */
196 /* prologue end (size=0) */
197 .L34:
54:APP1/lcd.c **** for(i=0;i<t;i++)
199 .LM2:
200 0000 0097 sbiw r24,0
201 0002 11F0 breq .L11
203 .LM3:
204 0004 0197 sbiw r24,1
205 0006 FCCF rjmp .L34
206 .L11:
207 0008 0895 ret
208 /* epilogue: frame size=0 */
209 /* epilogue: noreturn */
210 /* epilogue end (size=0) */
211 /* function delay size 5 (5) */
216 .Lscope0:
219 .global write_byte
221 write_byte:
223 .LM4:
224 /* prologue: frame size=0 */
225 000a 0F93 push r16
226 000c 1F93 push r17
227 000e CF93 push r28
228 0010 DF93 push r29
229 /* prologue end (size=4) */
230 0012 082F mov r16,r24
231 0014 C0E0 ldi r28,lo8(0)
232 0016 D0E0 ldi r29,hi8(0)
233 0018 17E0 ldi r17,lo8(7)
234 .L41:
236 .LM5:
237 001a 802F mov r24,r16
238 001c 9927 clr r25
239 001e 0C2E mov r0,r28
240 0020 02C0 rjmp 2f
241 0022 880F 1: lsl r24
242 0024 991F rol r25
243 0026 0A94 2: dec r0
244 0028 E2F7 brpl 1b
246 .LM6:
247 002a 87FF sbrs r24,7
248 002c 02C0 rjmp .L39
249 002e A99A sbi 53-0x20,1
250 0030 01C0 rjmp .L40
251 .L39:
253 .LM7:
254 0032 A998 cbi 53-0x20,1
255 .L40:
257 .LM8:
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -