⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd.asm

📁 这个是我DSP板的LCD显示程序
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;***************************************************************
;* TMS320C54x C/C++ Codegen                          PC v4.1.0 *
;* Date/Time created: Sat May 02 20:48:28 2009                 *
;***************************************************************
	.compiler_opts --mem_model:code=near --mem_model:data=flat --quiet 
	.mmregs
FP	.set	AR7
	.c_mode

DW$CU	.dwtag  DW_TAG_compile_unit
	.dwattr DW$CU, DW_AT_name("Lcd.c")
	.dwattr DW$CU, DW_AT_producer("TMS320C54x C/C++ Codegen PC v4.1.0 Copyright (c) 1996-2005 Texas Instruments Incorporated")
	.dwattr DW$CU, DW_AT_stmt_list(0x00)
	.dwattr DW$CU, DW_AT_TI_VERSION(0x01)

DW$1	.dwtag  DW_TAG_subprogram, DW_AT_name("abs"), DW_AT_symbol_name("_abs")
	.dwattr DW$1, DW_AT_type(*DW$T$10)
	.dwattr DW$1, DW_AT_declaration(0x01)
	.dwattr DW$1, DW_AT_external(0x01)
DW$2	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
	.dwendtag DW$1

DW$3	.dwtag  DW_TAG_variable, DW_AT_name("portbfff"), DW_AT_symbol_name("_portbfff")
	.dwattr DW$3, DW_AT_location[DW_OP_addr 0xbfff]
	.dwattr DW$3, DW_AT_type(*DW$T$51)
	.dwattr DW$3, DW_AT_external(0x01)
DW$4	.dwtag  DW_TAG_variable, DW_AT_name("portbffe"), DW_AT_symbol_name("_portbffe")
	.dwattr DW$4, DW_AT_location[DW_OP_addr 0xbffe]
	.dwattr DW$4, DW_AT_type(*DW$T$51)
	.dwattr DW$4, DW_AT_external(0x01)
DW$5	.dwtag  DW_TAG_variable, DW_AT_name("LIB16x24"), DW_AT_symbol_name("_LIB16x24")
	.dwattr DW$5, DW_AT_type(*DW$T$53)
	.dwattr DW$5, DW_AT_declaration(0x01)
	.dwattr DW$5, DW_AT_external(0x01)
DW$6	.dwtag  DW_TAG_variable, DW_AT_name("LIB24x24"), DW_AT_symbol_name("_LIB24x24")
	.dwattr DW$6, DW_AT_type(*DW$T$53)
	.dwattr DW$6, DW_AT_declaration(0x01)
	.dwattr DW$6, DW_AT_external(0x01)
DW$7	.dwtag  DW_TAG_variable, DW_AT_name("LIB16x16"), DW_AT_symbol_name("_LIB16x16")
	.dwattr DW$7, DW_AT_type(*DW$T$53)
	.dwattr DW$7, DW_AT_declaration(0x01)
	.dwattr DW$7, DW_AT_external(0x01)
DW$8	.dwtag  DW_TAG_variable, DW_AT_name("LIB8x16"), DW_AT_symbol_name("_LIB8x16")
	.dwattr DW$8, DW_AT_type(*DW$T$53)
	.dwattr DW$8, DW_AT_declaration(0x01)
	.dwattr DW$8, DW_AT_external(0x01)
DW$9	.dwtag  DW_TAG_variable, DW_AT_name("LIB64"), DW_AT_symbol_name("_LIB64")
	.dwattr DW$9, DW_AT_type(*DW$T$53)
	.dwattr DW$9, DW_AT_declaration(0x01)
	.dwattr DW$9, DW_AT_external(0x01)
DW$10	.dwtag  DW_TAG_variable, DW_AT_name("WhiteList"), DW_AT_symbol_name("_WhiteList")
	.dwattr DW$10, DW_AT_type(*DW$T$55)
	.dwattr DW$10, DW_AT_declaration(0x01)
	.dwattr DW$10, DW_AT_external(0x01)
DW$11	.dwtag  DW_TAG_variable, DW_AT_name("WordList1"), DW_AT_symbol_name("_WordList1")
	.dwattr DW$11, DW_AT_type(*DW$T$55)
	.dwattr DW$11, DW_AT_declaration(0x01)
	.dwattr DW$11, DW_AT_external(0x01)
DW$12	.dwtag  DW_TAG_variable, DW_AT_name("WordList2"), DW_AT_symbol_name("_WordList2")
	.dwattr DW$12, DW_AT_type(*DW$T$55)
	.dwattr DW$12, DW_AT_declaration(0x01)
	.dwattr DW$12, DW_AT_external(0x01)
DW$13	.dwtag  DW_TAG_variable, DW_AT_name("IconList"), DW_AT_symbol_name("_IconList")
	.dwattr DW$13, DW_AT_type(*DW$T$55)
	.dwattr DW$13, DW_AT_declaration(0x01)
	.dwattr DW$13, DW_AT_external(0x01)
;	E:\CCStudio_v3.3\C5400\cgtools\bin\acp500.exe -@C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI10012 
	.sect	".text"
	.global	_delay

DW$14	.dwtag  DW_TAG_subprogram, DW_AT_name("delay"), DW_AT_symbol_name("_delay")
	.dwattr DW$14, DW_AT_low_pc(_delay)
	.dwattr DW$14, DW_AT_high_pc(0x00)
	.dwattr DW$14, DW_AT_begin_file("Lcd.c")
	.dwattr DW$14, DW_AT_begin_line(0x0e)
	.dwattr DW$14, DW_AT_begin_column(0x06)
	.dwpsn	"Lcd.c",15,3

	.dwfde DW$CIE

;***************************************************************
;* FUNCTION DEF: _delay                                        *
;***************************************************************
_delay:
	.dwcfa	0x0e, 1
	.dwcfa	0x80, 34, 1
        PSHM      AR1
	.dwcfa	0x0e, 2
	.dwcfa	0x80, 10, 2
        FRAME     #-2
        NOP
	.dwcfa	0x0e, 4
;* A     assigned to _k
DW$15	.dwtag  DW_TAG_formal_parameter, DW_AT_name("k"), DW_AT_symbol_name("_k")
	.dwattr DW$15, DW_AT_type(*DW$T$19)
	.dwattr DW$15, DW_AT_location[DW_OP_reg0]
DW$16	.dwtag  DW_TAG_variable, DW_AT_name("k"), DW_AT_symbol_name("_k")
	.dwattr DW$16, DW_AT_type(*DW$T$19)
	.dwattr DW$16, DW_AT_location[DW_OP_breg17 0]
DW$17	.dwtag  DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
	.dwattr DW$17, DW_AT_type(*DW$T$19)
	.dwattr DW$17, DW_AT_location[DW_OP_breg17 1]
        STL       A,*SP(0)
	.dwpsn	"Lcd.c",17,9
        ST        #0,*SP(1)             ; |17| 
        MVDK      *SP(0),*(AR0)
        MVDK      *SP(1),*(AR1)
	.dwpsn	"Lcd.c",17,13
        CMPR      1,AR1                 ; |17| 
        BC        L2,NTC                ; |17| 
        ; branchcc occurs ; |17| 
L1:    
DW$L$_delay$2$B:
	.dwpsn	"Lcd.c",17,17
        ADDM      #1,*SP(1)             ; |17| 
        MVDK      *SP(0),*(AR0)
        MVDK      *SP(1),*(AR1)
	.dwpsn	"Lcd.c",17,13
        CMPR      1,AR1                 ; |17| 
        BC        L1,TC                 ; |17| 
        ; branchcc occurs ; |17| 
DW$L$_delay$2$E:
	.dwpsn	"Lcd.c",15,3
L2:    
        FRAME     #2
	.dwcfa	0x0e, 2
        POPM      AR1
	.dwcfa	0xc0, 10
	.dwcfa	0x0e, 1
        RET
        ; return occurs

DW$18	.dwtag  DW_TAG_loop
	.dwattr DW$18, DW_AT_name("E:\CCStudio_v3.3\MyProjects\lcd\Lcd.asm:L1:1:1241268508")
	.dwattr DW$18, DW_AT_begin_file("Lcd.c")
	.dwattr DW$18, DW_AT_begin_line(0x11)
	.dwattr DW$18, DW_AT_end_line(0x11)
DW$19	.dwtag  DW_TAG_loop_range
	.dwattr DW$19, DW_AT_low_pc(DW$L$_delay$2$B)
	.dwattr DW$19, DW_AT_high_pc(DW$L$_delay$2$E)
	.dwendtag DW$18

	.dwattr DW$14, DW_AT_end_file("Lcd.c")
	.dwattr DW$14, DW_AT_end_line(0x12)
	.dwattr DW$14, DW_AT_end_column(0x03)
	.dwendentry
	.dwendtag DW$14

	.sect	".text"
	.global	_lcd_init

DW$20	.dwtag  DW_TAG_subprogram, DW_AT_name("lcd_init"), DW_AT_symbol_name("_lcd_init")
	.dwattr DW$20, DW_AT_low_pc(_lcd_init)
	.dwattr DW$20, DW_AT_high_pc(0x00)
	.dwattr DW$20, DW_AT_begin_file("Lcd.c")
	.dwattr DW$20, DW_AT_begin_line(0x14)
	.dwattr DW$20, DW_AT_begin_column(0x06)
	.dwpsn	"Lcd.c",21,3

	.dwfde DW$CIE

;***************************************************************
;* FUNCTION DEF: _lcd_init                                     *
;***************************************************************
_lcd_init:
	.dwcfa	0x0e, 1
	.dwcfa	0x80, 34, 1
        LD        #64,A
	.dwpsn	"Lcd.c",22,4
        PORTW     *(AL),0bfffH          ; |22| 
        LD        #48,A
	.dwpsn	"Lcd.c",23,4
        PORTW     *(AL),0bffeH          ; |23| 
        LD        #135,A
	.dwpsn	"Lcd.c",24,4
        PORTW     *(AL),0bffeH          ; |24| 
        LD        #7,A
	.dwpsn	"Lcd.c",25,4
        PORTW     *(AL),0bffeH          ; |25| 
        LD        #39,A
	.dwpsn	"Lcd.c",26,4
        PORTW     *(AL),0bffeH          ; |26| 
        LD        #43,A
	.dwpsn	"Lcd.c",27,4
        PORTW     *(AL),0bffeH          ; |27| 
        LD        #239,A
	.dwpsn	"Lcd.c",28,4
        PORTW     *(AL),0bffeH          ; |28| 
        LD        #41,A
	.dwpsn	"Lcd.c",29,4
        PORTW     *(AL),0bffeH          ; |29| 
        LD        #0,A
	.dwpsn	"Lcd.c",30,4
        PORTW     *(AL),0bffeH          ; |30| 
        LD        #68,A
	.dwpsn	"Lcd.c",32,4
        PORTW     *(AL),0bfffH          ; |32| 
        LD        #0,A
	.dwpsn	"Lcd.c",33,4
        PORTW     *(AL),0bffeH          ; |33| 
        LD        #0,A
	.dwpsn	"Lcd.c",34,4
        PORTW     *(AL),0bffeH          ; |34| 
        LD        #240,A
	.dwpsn	"Lcd.c",35,4
        PORTW     *(AL),0bffeH          ; |35| 
        LD        #0,A
	.dwpsn	"Lcd.c",36,4
        PORTW     *(AL),0bffeH          ; |36| 
        LD        #42,A
	.dwpsn	"Lcd.c",37,4
        PORTW     *(AL),0bffeH          ; |37| 
        LD        #240,A
	.dwpsn	"Lcd.c",38,4
        PORTW     *(AL),0bffeH          ; |38| 
        LD        #0,A
	.dwpsn	"Lcd.c",39,4
        PORTW     *(AL),0bffeH          ; |39| 
        LD        #84,A
	.dwpsn	"Lcd.c",40,4
        PORTW     *(AL),0bffeH          ; |40| 
        LD        #0,A
	.dwpsn	"Lcd.c",41,4
        PORTW     *(AL),0bffeH          ; |41| 
        LD        #0,A
	.dwpsn	"Lcd.c",42,4
        PORTW     *(AL),0bffeH          ; |42| 
        LD        #90,A
	.dwpsn	"Lcd.c",44,4
        PORTW     *(AL),0bfffH          ; |44| 
        LD        #0,A
	.dwpsn	"Lcd.c",45,4
        PORTW     *(AL),0bffeH          ; |45| 
        LD        #91,A
	.dwpsn	"Lcd.c",47,4
        PORTW     *(AL),0bfffH          ; |47| 
        LD        #28,A
	.dwpsn	"Lcd.c",48,4
        PORTW     *(AL),0bffeH          ; |48| 
        LD        #89,A
	.dwpsn	"Lcd.c",50,4
        PORTW     *(AL),0bfffH          ; |50| 
        LD        #84,A
	.dwpsn	"Lcd.c",51,4
        PORTW     *(AL),0bffeH          ; |51| 
        RET
        ; return occurs
	.dwattr DW$20, DW_AT_end_file("Lcd.c")
	.dwattr DW$20, DW_AT_end_line(0x35)
	.dwattr DW$20, DW_AT_end_column(0x03)
	.dwendentry
	.dwendtag DW$20

	.sect	".text"
	.global	_clearscr1

DW$21	.dwtag  DW_TAG_subprogram, DW_AT_name("clearscr1"), DW_AT_symbol_name("_clearscr1")
	.dwattr DW$21, DW_AT_low_pc(_clearscr1)
	.dwattr DW$21, DW_AT_high_pc(0x00)
	.dwattr DW$21, DW_AT_begin_file("Lcd.c")
	.dwattr DW$21, DW_AT_begin_line(0x37)
	.dwattr DW$21, DW_AT_begin_column(0x06)
	.dwpsn	"Lcd.c",56,3

	.dwfde DW$CIE

;***************************************************************
;* FUNCTION DEF: _clearscr1                                    *
;***************************************************************
_clearscr1:
	.dwcfa	0x0e, 1
	.dwcfa	0x80, 34, 1
        PSHM      AR1
	.dwcfa	0x0e, 2
	.dwcfa	0x80, 10, 2
        FRAME     #-2
	.dwcfa	0x0e, 4
DW$22	.dwtag  DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
	.dwattr DW$22, DW_AT_type(*DW$T$19)
	.dwattr DW$22, DW_AT_location[DW_OP_breg17 0]
        LD        #70,A
	.dwpsn	"Lcd.c",58,4
        PORTW     *(AL),0bfffH          ; |58| 
        LD        #0,A
	.dwpsn	"Lcd.c",59,4
        PORTW     *(AL),0bffeH          ; |59| 
        LD        #0,A
	.dwpsn	"Lcd.c",60,4
        PORTW     *(AL),0bffeH          ; |60| 
        LD        #76,A
	.dwpsn	"Lcd.c",61,4
        PORTW     *(AL),0bfffH          ; |61| 
	.dwpsn	"Lcd.c",62,4
        CALLD     #_delay               ; |62| 
        NOP
        LD        #10,A
        ; call occurs [#_delay] ; |62| 
        LD        #66,A
	.dwpsn	"Lcd.c",63,4
        PORTW     *(AL),0bfffH          ; |63| 
	.dwpsn	"Lcd.c",64,4
        CALLD     #_delay               ; |64| 
        NOP
        LD        #10,A
        ; call occurs [#_delay] ; |64| 
	.dwpsn	"Lcd.c",65,9
        ST        #0,*SP(0)             ; |65| 
        STM       #10752,AR0
        MVDK      *SP(0),*(AR1)
	.dwpsn	"Lcd.c",65,13
        CMPR      1,AR1                 ; |65| 
        BC        L4,NTC                ; |65| 
        ; branchcc occurs ; |65| 
L3:    
DW$L$_clearscr1$2$B:
	.dwpsn	"Lcd.c",65,22
        ADDM      #1,*SP(0)             ; |65| 
        LD        #0,A
        MVDK      *SP(0),*(AR1)
	.dwpsn	"Lcd.c",65,13
        CMPR      1,AR1                 ; |65| 
	.dwpsn	"Lcd.c",65,27
        PORTW     *(AL),0bffeH          ; |65| 
	.dwpsn	"Lcd.c",65,13
        BC        L3,TC                 ; |65| 
        ; branchcc occurs ; |65| 
DW$L$_clearscr1$2$E:
	.dwpsn	"Lcd.c",56,3
L4:    
        FRAME     #2
	.dwcfa	0x0e, 2
        POPM      AR1
	.dwcfa	0xc0, 10
	.dwcfa	0x0e, 1
        RET
        ; return occurs

DW$23	.dwtag  DW_TAG_loop
	.dwattr DW$23, DW_AT_name("E:\CCStudio_v3.3\MyProjects\lcd\Lcd.asm:L3:1:1241268508")
	.dwattr DW$23, DW_AT_begin_file("Lcd.c")
	.dwattr DW$23, DW_AT_begin_line(0x41)
	.dwattr DW$23, DW_AT_end_line(0x41)
DW$24	.dwtag  DW_TAG_loop_range
	.dwattr DW$24, DW_AT_low_pc(DW$L$_clearscr1$2$B)
	.dwattr DW$24, DW_AT_high_pc(DW$L$_clearscr1$2$E)
	.dwendtag DW$23

	.dwattr DW$21, DW_AT_end_file("Lcd.c")
	.dwattr DW$21, DW_AT_end_line(0x42)
	.dwattr DW$21, DW_AT_end_column(0x03)
	.dwendentry
	.dwendtag DW$21

	.sect	".text"
	.global	_clearscr2

DW$25	.dwtag  DW_TAG_subprogram, DW_AT_name("clearscr2"), DW_AT_symbol_name("_clearscr2")
	.dwattr DW$25, DW_AT_low_pc(_clearscr2)
	.dwattr DW$25, DW_AT_high_pc(0x00)
	.dwattr DW$25, DW_AT_begin_file("Lcd.c")
	.dwattr DW$25, DW_AT_begin_line(0x45)
	.dwattr DW$25, DW_AT_begin_column(0x06)
	.dwpsn	"Lcd.c",70,3

	.dwfde DW$CIE

;***************************************************************
;* FUNCTION DEF: _clearscr2                                    *
;***************************************************************
_clearscr2:
	.dwcfa	0x0e, 1
	.dwcfa	0x80, 34, 1
        PSHM      AR1
	.dwcfa	0x0e, 2
	.dwcfa	0x80, 10, 2

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -