📄 lcd1.lst
字号:
140 00003 C7C0E300 S mov.b #R, pd1 ; LCD儌僕儏乕儖偐傜偺撉傒崬傒偵愝掕
141 ; (億乕僩P10乣P13傪擖椡億乕僩偵愝掕)
142 ; (億乕僩P14乣P16傪弌椡億乕僩偵愝掕)
143 00007 __lcd1__initial_end:
144 00007 F3 RTS ; 62.5ns亊6
145
146
147 ;""SUBR COMMENT""**************************************************************
148 ; ID : ---
149 ; 僒僽儖乕僠儞柤 : void _lcd1__wait(unsigned int t)
150 ; 婡擻 : t亊100兪s懸偮
151 ; 擖椡 : unsigned int t: 懸偪帪娫乮倲亊50兪s乯
152 ; 弌椡 : 側偟
153 ; 巊梡僒僽儖乕僠儞: 側偟
154 ; 僗僞僢僋 : 0僶僀僩
155 ; 拲堄帠崁 : 戞1堷悢t(100兪s傪壗夞僇僂儞僩偡傞偐傪帵偡僇僂儞僩悢)偼
156 ; : R1儗僕僗僞偵庴偗搉偝傟偰偄傞(堷悢堷搉偟婯懃)丅
157 ; : wait_loop_10偺儖乕僾偵偰50兪s偺僜僼僩僂僃傾僂僃僀僩傪嶌傞丅
158 ; : wait_loop偵偰t亊50兪s偺僜僼僩僂僃傾僂僃僀僩傪嶌傞丅
159 ; : 寁嶼傪妝偵偡傞偨傔彮偟懡傔偺帪娫偲側傞丅
160 ; :
161 ; : 100偺抣偺堄枴崌偄(1僒僀僋儖 = 50ns@20MHz)
162 ; : 50000ns 佮 50 亊 (1+100亊(3+7)-4)
163 ; : | | | |
164 ; : | | | +---暘婒偟側偄偲偒
165 ; : | | +------ADJNZ
166 ; : | +--------NOP亊3
167 ; : +----------------MOV
168 ; History : ---
169 ;""SUBR COMMENT END""**********************************************************
170 .section program ; C偺僾儘僌儔儉椞堟偲摨堦僙僋僔儑儞
171 .glb $_lcd1__wait ; 僌儘乕僶儖愰尵
172 00000 $_lcd1__wait:
173
174 00000 wait_loop:
175 00000 C464 S mov.b:s #100, R0L ; 50ns亊1
176 00002 wait_loop_10:
177 00002 04 nop ; 50ns亊1
178 00003 04 nop ; 50ns亊1
179 00004 04 nop ; 50ns亊1
180 00005 F8F0FB adjnz.b #-1, R0L, wait_loop_10 ; 50ns亊7(暘婒偟側偄帪偼-4)
181 00008 F9F1F6 adjnz.w #-1, R1, wait_loop ; 50ns亊7(暘婒偟側偄帪偼-4)
182
183 0000B $_lcd1__wait_end:
184 0000B F3 rts ; 50ns亊6
185
186
* R8C/Tiny SERIES ASSEMBLER * SOURCE LIST Fri Oct 15 09:52:59 2004 PAGE 004
SEQ. LOC. OBJ. 0XMSDA ....*....SOURCE STATEMENT....7....*....8....*....9....*....0....*....1....*....2....*....3....*....4
187 ;""SUBR COMMENT""**************************************************************
188 ; ID : ---
189 ; 僒僽儖乕僠儞柤 : void _lcd1__wr_nibble_creg(int command)
190 ; 婡擻 : LCD(SC1602BS*2)偺command儗僕僗僞偵command傪彂偔
191 ; 擖椡 : int command: 彂偒崬傓僨乕僞(壓埵4bit偺傒桳岠)
192 ; 弌椡 : 側偟
193 ; 巊梡僒僽儖乕僠儞: 側偟
194 ; 僗僞僢僋 : 0僶僀僩
195 ; 拲堄帠崁 : 堷悢command(LCD儌僕儏乕儖偵彂偒崬傓僐儅儞僪)偼
196 ; : R1儗僕僗僞偵庴偗搉偝傟偰偄傞(堷悢堷搉偟婯懃)
197 ; :
198 ; : 僞僀儈儞僌偼埲壓偱惂屼偟偰偄傞丅帪娫傕婯掕桳傝側偺偱梫拲堄
199 ; : --------------------------+--+--+--+-------+----+-----
200 ; : TIME RS RW E I/O-DIR LCD M16C
201 ; : --------------------------+--+--+--+-------+----+-----
202 ; : def= x 0 0 RD | IN IN
203 ; : BCLR:G RS 50亊3=150 0 . . . | . .
204 ; : MOV.B:S #W 50亊2=100 . . . WR | . OUT
205 ; : BSET:G E 50亊3=150 . . 1 . | . .
206 ; : MOV.B:G 50亊2=100 . . . . | . .
207 ; : MOVLL 50亊5=250 . . . . |(WR Command)
208 ; : BCLR:G E 50亊3=150 . . 0 . | . .
209 ; : MOV.B:S #R 50亊2=100 . . . RD | IN
210 ; History : ---
211 ;""SUBR COMMENT END""**********************************************************
212 .section program ; C偺僾儘僌儔儉椞堟偲摨堦僙僋僔儑儞
213 .glb $_lcd1__wr_nibble_creg
214 ; 僌儘乕僶儖愰尵
215 00000 $_lcd1__wr_nibble_creg:
216 ;---- 僐儅儞僪傪慖戰 ----
217 00000 7E8F0E07 bclr:g p1_6_RS ; 僐儅儞僪傪慖戰
218 ; (LCD儌僕儏乕儖偺RS抂巕傪"L")
219
220 ;---- LCD傊偺彂偒崬傒偵愝掕 ----
221 ;bclr:g p1_X_RW ; LCD儌僕儏乕儖傪擖椡偵愝掕
222 ; ; (LCD偺RW傪"L":WRITE偵愝掕)
223 00004 C7CFE300 S mov.b:s #W, pd1 ; CPU傪弌椡偵愝掕
224 ; (P10乣P13傪弌椡億乕僩偵愝掕)
225
226 ;---- 4bit彂偒崬傒 ----
227 00008 7E9F0F07 bset:g p1_7_E ; LCD儌僕儏乕儖偺E抂巕傪"H"
228 0000C 7220 mov.b:g R1L, R0L ; LCD偵堷悢(R1)傪彂偒崬傓
229 0000E 7C8FE100 movll R0L, p1 ; 仾 (P1 = R1L 壓埵4bit偱揮憲)
230 00012 7E8F0F07 bclr:g p1_7_E ; LCD儌僕儏乕儖偺E抂巕傪"L"
231
232 ;---- 億乕僩傪弶婜忬懺偵栠偡 ----
233 00016 C7C0E300 S mov.b:s #R, pd1 ; P10乣P13傪擖椡億乕僩偵栠偡
234 ; (P10乣P13傪擖椡億乕僩偵愝掕)
235 0001A F3 rts
236
237
238 ;""SUBR COMMENT""**************************************************************
239 ; ID : ---
240 ; 僒僽儖乕僠儞柤 : void _lcd1__wr_nibble_dreg(int data)
241 ; 婡擻 : LCD(SC1602BS*2)偺data儗僕僗僞偵data傪彂偔
242 ; 擖椡 : int data: 彂偒崬傓僨乕僞(壓埵4bit偺傒桳岠)
243 ; 弌椡 : 側偟
244 ; 巊梡僒僽儖乕僠儞: 側偟
245 ; 僗僞僢僋 : 0僶僀僩
246 ; 拲堄帠崁 : 堷悢data(LCD儌僕儏乕儖偵彂偒崬傓僨乕僞)偼
247 ; : R1儗僕僗僞偵庴偗搉偝傟偰偄傞(堷悢堷搉偟婯懃)
248 ; :
* R8C/Tiny SERIES ASSEMBLER * SOURCE LIST Fri Oct 15 09:52:59 2004 PAGE 005
SEQ. LOC. OBJ. 0XMSDA ....*....SOURCE STATEMENT....7....*....8....*....9....*....0....*....1....*....2....*....3....*....4
249 ; : 僞僀儈儞僌偼埲壓偱惂屼偟偰偄傞丅帪娫傕婯掕桳傝側偺偱梫拲堄
250 ; : --------------------------+--+--+--+-------+----+-----
251 ; : TIME RS RW E I/O-DIR LCD M16C
252 ; : --------------------------+--+--+--+-------+----+-----
253 ; : def= x 0 0 RD | IN IN
254 ; : BSET:G RS 50亊3=187.5 1 . . . | . .
255 ; : MOV.B:S #W 50亊2=125.0 . . . WR | . OUT
256 ; : BSET:G E 50亊3=187.5 . . 1 . | . .
257 ; : MOV.B:G 50亊2=125.0 . . . . | . .
258 ; : MOVLL 50亊5=312.5 . . . . |(WR Data)
259 ; : BCLR:G E 50亊3=187.5 . . 0 . | . .
260 ; : MOV.B:S #R 50亊2=125.0 . . . RD | IN
261 ; History : ---
262 ;""SUBR COMMENT END""**********************************************************
263 .section program ; C偺僾儘僌儔儉椞堟偲摨堦僙僋僔儑儞
264 .glb $_lcd1__wr_nibble_dreg
265 ; 僌儘乕僶儖愰尵
266 00000 $_lcd1__wr_nibble_dreg:
267 ;---- 僨乕僞慖戰 ----
268 00000 7E9F0E07 bset:g p1_6_RS ; 僨乕僞傪慖戰
269 ; (LCD儌僕儏乕儖偺RS抂巕傪"H")
270
271 ;---- LCD傊偺彂偒崬傒偵愝掕 ----
272 ;bclr:g p1_X_RW ; LCD儌僕儏乕儖傪擖椡偵愝掕
273 ; ; (LCD偺RW傪"L":WRITE偵愝掕)
274 00004 C7CFE300 S mov.b:s #W, pd1 ; CPU懁傪弌椡偵愝掕
275 ; (P10乣P13傪弌椡億乕僩偵愝掕)
276
277 ;---- 4bit彂偒崬傒 ----
278 00008 7E9F0F07 bset:g p1_7_E ; LCD儌僕儏乕儖偺E抂巕傪"H"
279 0000C 7220 mov.b:g R1L, R0L ; LCD偵堷悢(R1)傪彂偒崬傓
280 0000E 7C8FE100 movll R0L, p1 ; 仾 (P1 = R1L 壓埵4bit偱揮憲)
281 00012 7E8F0F07 bclr:g p1_7_E ; LCD儌僕儏乕儖偺E抂巕傪"L"
282
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -