?? display_board2.1.lis
字號:
0084 .dbline 76
0084 ; char HeadEN =1;
0084 87E0 ldi R24,7
0086 20900800 lds R2,_disp_key_count
008A 8215 cp R24,R2
008C 18F4 brsh L14
008E .dbline 77
008E ; int DataIndex =0;
008E 2224 clr R2
0090 20920800 sts _disp_key_count,R2
0094 L14:
0094 .dbline 78
0094 ; int FileLength =0;
0094 10910800 lds R17,_disp_key_count
0098 01E0 ldi R16,1
009A 0E940000 xcall lsl8
009E 202F mov R18,R16
00A0 80E0 ldi R24,<_Disp_Buff
00A2 90E0 ldi R25,>_Disp_Buff
00A4 E0910800 lds R30,_disp_key_count
00A8 FF27 clr R31
00AA E80F add R30,R24
00AC F91F adc R31,R25
00AE 0081 ldd R16,z+0
00B0 B4DF xcall _disp_bit
00B2 .dbline 79
00B2 ; unsigned int time_out_ms=1; //接收數據時限
00B2 B099 sbic 0x16,0
00B4 0AC0 rjmp L16
00B6 .dbline 80
00B6 ; unsigned char time_out_s=0; //試圖通訊重新時限
00B6 80E0 ldi R24,<_key_buff
00B8 90E0 ldi R25,>_key_buff
00BA E0910800 lds R30,_disp_key_count
00BE FF27 clr R31
00C0 E80F add R30,R24
00C2 F91F adc R31,R25
00C4 81E0 ldi R24,1
00C6 8083 std z+0,R24
00C8 09C0 xjmp L17
00CA L16:
00CA .dbline 82
00CA 80E0 ldi R24,<_key_buff
00CC 90E0 ldi R25,>_key_buff
00CE E0910800 lds R30,_disp_key_count
00D2 FF27 clr R31
00D4 E80F add R30,R24
00D6 F91F adc R31,R25
00D8 2224 clr R2
00DA 2082 std z+0,R2
00DC L17:
00DC .dbline -2
00DC L13:
00DC .dbline 0 ; func end
00DC 0895 ret
00DE .dbend
00DE .dbfunc e dec_hex_disp _dec_hex_disp fV
00DE ; temp -> R20,R21
00DE ; i -> R22
.even
00DE _dec_hex_disp::
00DE 0E940000 xcall push_gset2
00E2 .dbline -1
00E2 .dbline 85
00E2 ;
00E2 ; //特效處理
00E2 ; char DispModel =0;
00E2 ; int ModelDelayTime =0;
00E2 ; char ModelContJuge=0;
00E2 .dbline 88
00E2 ; /************************************************
00E2 ; 函數申明
00E2 ; **************************************************/
00E2 40910900 lds R20,_disp_code
00E6 50910A00 lds R21,_disp_code+1
00EA .dbline 89
00EA ; //基本初始化
00EA 6627 clr R22
00EC 11C0 xjmp L22
00EE L19:
00EE .dbline 90
00EE 84E0 ldi R24,4
00F0 869F mul R24,R22
00F2 9001 movw R18,R0
00F4 8A01 movw R16,R20
00F6 0E940000 xcall asr16
00FA C801 movw R24,R16
00FC 8F70 andi R24,15
00FE 9070 andi R25,0
0100 E0E0 ldi R30,<_Disp_Buff
0102 F0E0 ldi R31,>_Disp_Buff
0104 A62F mov R26,R22
0106 BB27 clr R27
0108 AE0F add R26,R30
010A BF1F adc R27,R31
010C 8C93 st x,R24
010E L20:
010E .dbline 89
010E 6395 inc R22
0110 L22:
0110 .dbline 89
0110 6730 cpi R22,7
0112 68F3 brlo L19
0114 .dbline -2
0114 L18:
0114 0E940000 xcall pop_gset2
0118 .dbline 0 ; func end
0118 0895 ret
011A .dbsym r temp 20 I
011A .dbsym r i 22 c
011A .dbend
011A .dbfunc e Key_num _Key_num fV
011A ; j -> R16
011A ; i -> R18
.even
011A _Key_num::
011A .dbline -1
011A .dbline 94
011A ; void port_int(void);
011A ; void timer_int(void);
011A ; void uart_int(void);
011A ; void device_int(void);
011A ;
011A .dbline 96
011A ; //按鍵顯示事件處理
011A ; void Display_event(void); //顯示事件
011A 0027 clr R16
011C .dbline 97
011C ; void KEY_event(void); //按鍵事件處理
011C 2224 clr R2
011E 30901A00 lds R3,_key_delay
0122 2314 cp R2,R3
0124 20F4 brsh L24
0126 .dbline 98
0126 ;
0126 832D mov R24,R3
0128 8150 subi R24,1
012A 80931A00 sts _key_delay,R24
012E L24:
012E .dbline 99
012E ; //特效處理
012E 2227 clr R18
0130 0DC0 xjmp L29
0132 L26:
0132 .dbline 100
0132 ; void Disp_Model(void); //屏幕顯示特效模式
0132 .dbline 101
0132 ;
0132 80E0 ldi R24,<_key_buff
0134 90E0 ldi R25,>_key_buff
0136 E22F mov R30,R18
0138 FF27 clr R31
013A E80F add R30,R24
013C F91F adc R31,R25
013E 8081 ldd R24,z+0
0140 8130 cpi R24,1
0142 19F4 brne L30
0144 .dbline 102
0144 ; //外部RAM讀寫操作
0144 .dbline 103
0144 ; void data_store(char data);
0144 20930F00 sts _new_key_num,R18
0148 .dbline 104
0148 ; char RAM_Read(int adress);
0148 01E0 ldi R16,1
014A .dbline 105
014A ; void RAM_Write(int adress,char data);
014A L30:
014A .dbline 106
014A L27:
014A .dbline 99
014A 2395 inc R18
014C L29:
014C .dbline 99
014C 87E0 ldi R24,7
014E 8217 cp R24,R18
0150 80F7 brsh L26
0152 .dbline 107
0152 ;
0152 ; //顯示屏數據發送
0152 0023 tst R16
0154 19F4 brne L32
0156 .dbline 108
0156 ; void Screen_send(void);
0156 8FE0 ldi R24,15
0158 80930F00 sts _new_key_num,R24
015C L32:
015C .dbline 109
015C ; void SPI_data_send(unsigned char send_data);
015C 80910E00 lds R24,_old_key_num
0160 8F30 cpi R24,15
0162 61F4 brne L34
0164 80910F00 lds R24,_new_key_num
0168 8F30 cpi R24,15
016A 41F0 breq L34
016C 20901A00 lds R2,_key_delay
0170 2220 tst R2
0172 21F4 brne L34
0174 .dbline 110
0174 ;
0174 282E mov R2,R24
0176 20920D00 sts _key_num,R2
017A 29C0 xjmp L35
017C L34:
017C .dbline 111
017C ; //UART收發數據
017C 80910E00 lds R24,_old_key_num
0180 8F30 cpi R24,15
0182 89F0 breq L36
0184 30900F00 lds R3,_new_key_num
0188 3816 cp R3,R24
018A 69F4 brne L36
018C .dbline 112
018C ; void uart_TX(unsigned char data);
018C .dbline 113
018C ; void uart_time_out(void);
018C 8FE0 ldi R24,15
018E 80930D00 sts _key_num,R24
0192 .dbline 114
0192 ;
0192 80911800 lds R24,_key_down_time
0196 90911900 lds R25,_key_down_time+1
019A 0196 adiw R24,1
019C 90931900 sts _key_down_time+1,R25
01A0 80931800 sts _key_down_time,R24
01A4 .dbline 115
01A4 ; //中斷函數
01A4 14C0 xjmp L37
01A6 L36:
01A6 .dbline 117
01A6 ; void exi_int0(void);
01A6 ; void timer1_vof(void);
01A6 .dbline 118
01A6 ; void usart_rcx(void);
01A6 80910E00 lds R24,_old_key_num
01AA 8F30 cpi R24,15
01AC 81F0 breq L38
01AE 80910F00 lds R24,_new_key_num
01B2 8F30 cpi R24,15
01B4 61F4 brne L38
01B6 .dbline 119
01B6 ; /*************************************************
01B6 .dbline 120
01B6 ; * 子函數區 *
01B6 8FE0 ldi R24,15
01B8 80930D00 sts _key_num,R24
01BC .dbline 121
01BC ; * *
01BC 2224 clr R2
01BE 3324 clr R3
01C0 30921900 sts _key_down_time+1,R3
01C4 20921800 sts _key_down_time,R2
01C8 .dbline 122
01C8 ; *************************************************/
01C8 84E6 ldi R24,100
01CA 80931A00 sts _key_delay,R24
01CE .dbline 123
01CE ;
01CE L38:
01CE .dbline 124
01CE ; /****************************************
01CE L37:
01CE L35:
01CE .dbline 125
01CE ; 端口定義
01CE 20900F00 lds R2,_new_key_num
01D2 20920E00 sts _old_key_num,R2
01D6 .dbline -2
01D6 L23:
01D6 .dbline 0 ; func end
01D6 0895 ret
01D8 .dbsym r j 16 c
01D8 .dbsym r i 18 c
01D8 .dbend
01D8 .dbfile C:\Documents and Settings\fli\桌面\廣告屏程序\寫字庫程序/flash_M16.h
01D8 .dbfunc e FlashRead _FlashRead fc
01D8 ; data -> R20
01D8 ; data_adress -> y+2
.even
01D8 _FlashRead::
01D8 0E940000 xcall push_arg4
01DC 0E940000 xcall push_gset1
01E0 .dbline -1
01E0 .dbline 26
01E0 .dbline 28
01E0 82B3 in R24,0x12
01E2 8B7F andi R24,251
01E4 82BB out 0x12,R24
01E6 .dbline 28
01E6 .dbline 29
01E6 919A sbi 0x12,1
01E8 .dbline 29
01E8 .dbline 30
01E8 FE01 movw R30,R28
01EA 0281 ldd R16,z+2
01EC 1381 ldd R17,z+3
01EE 2481 ldd R18,z+4
01F0 3581 ldd R19,z+5
01F2 79D0 xcall _AdressSend
01F4 .dbline 31
01F4 2224 clr R2
01F6 2ABA out 0x1a,R2
01F8 .dbline 32
01F8 49B3 in R20,0x19
01FA .dbline 33
01FA 929A sbi 0x12,2
01FC .dbline 33
01FC .dbline 34
01FC 042F mov R16,R20
01FE .dbline -2
01FE L40:
01FE 0E940000 xcall pop_gset1
0202 2496 adiw R28,4
0204 .dbline 0 ; func end
0204 0895 ret
0206 .dbsym r data 20 c
0206 .dbsym l data_adress 2 L
0206 .dbend
0206 .dbfunc e FlashWrite _FlashWrite fV
0206 ; data -> R10
0206 ; data_adress -> R12,R13
.even
0206 _FlashWrite::
0206 0E940000 xcall push_gset4
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -