📄 new.lst
字号:
__start:
__text_start:
0061 E5CF LDI R28,0x5F
0062 E0D4 LDI R29,4
0063 BFCD OUT 0x3D,R28
0064 BFDE OUT 0x3E,R29
0065 51CE SUBI R28,0x1E
0066 40D0 SBCI R29,0
0067 EA0A LDI R16,0xAA
0068 8308 STD Y+0,R16
0069 2400 CLR R0
006A ECE4 LDI R30,0xC4
006B E0F0 LDI R31,0
006C E010 LDI R17,0
006D 3EEB CPI R30,0xEB
006E 07F1 CPC R31,R17
006F F011 BEQ 0x0072
0070 9201 ST R0,Z+
0071 CFFB RJMP 0x006D
0072 8300 STD Z+0,R16
0073 E5EE LDI R30,0x5E
0074 E0F0 LDI R31,0
0075 E6A0 LDI R26,0x60
0076 E0B0 LDI R27,0
0077 E010 LDI R17,0
0078 3CE2 CPI R30,0xC2
0079 07F1 CPC R31,R17
007A F021 BEQ 0x007F
007B 95C8 LPM
007C 9631 ADIW R30,1
007D 920D ST R0,X+
007E CFF9 RJMP 0x0078
007F D188 RCALL _main
_exit:
0080 CFFF RJMP _exit
FILE: F:\programme\RF905\main.c
(0001) #include <stdio.h>
(0002) #include <iom8v.h>
(0003) #include <macros.h>
(0004) #include "nrf905.h"
(0005)
(0006) unsigned char hz0[65]={"智能家电控制系统 输入 "};
(0007) unsigned char KeyV,KeyFlag;
(0008) extern uchar TxBuf[],RxBuf[];
(0009) unsigned char value_T,set_data;
(0010) unsigned char times=0;
(0011) //unsigned char KeyD[5];
(0012) //unsigned char KeyI=0;
(0013)
(0014) void spi_init(void)
(0015) {
(0016) SPCR = 0x51; //setup SPI
_spi_init:
0081 E581 LDI R24,0x51
0082 B98D OUT 0x0D,R24
0083 9508 RET
_print_temp:
wendu --> Y+4
temp --> Y+0
address --> R10
0084 D73B RCALL push_gset3
0085 2EA0 MOV R10,R16
0086 9760 SBIW R28,0x10
(0017) //SPSR = 0x00; //setup SPI
(0018) }
(0019)
(0020) void print_temp(unsigned char address)
(0021) {
(0022)
(0023) float wendu;
(0024) unsigned long int temp;
(0025) wendu=GetTemp()*0.0625;
0087 D5F5 RCALL _GetTemp
0088 0118 MOVW R2,R16
0089 E500 LDI R16,0x50
008A E010 LDI R17,0
008B D758 RCALL lpm32
008C 933A ST R19,-Y
008D 932A ST R18,-Y
008E 931A ST R17,-Y
008F 930A ST R16,-Y
0090 0181 MOVW R16,R2
0091 D7A4 RCALL int2fp
0092 933A ST R19,-Y
0093 932A ST R18,-Y
0094 931A ST R17,-Y
0095 930A ST R16,-Y
0096 D879 RCALL empy32f
0097 01FE MOVW R30,R28
0098 8304 STD Z+4,R16
0099 8315 STD Z+5,R17
009A 8326 STD Z+6,R18
009B 8337 STD Z+7,R19
(0026) temp=wendu*10000;
009C E40C LDI R16,0x4C
009D E010 LDI R17,0
009E D745 RCALL lpm32
009F 933A ST R19,-Y
00A0 932A ST R18,-Y
00A1 931A ST R17,-Y
00A2 930A ST R16,-Y
00A3 01FE MOVW R30,R28
00A4 8420 LDD R2,Z+8
00A5 8431 LDD R3,Z+9
00A6 8442 LDD R4,Z+10
00A7 8453 LDD R5,Z+11
00A8 925A ST R5,-Y
00A9 924A ST R4,-Y
00AA 923A ST R3,-Y
00AB 922A ST R2,-Y
00AC D863 RCALL empy32f
00AD 01FE MOVW R30,R28
00AE 8704 STD Z+12,R16
00AF 8715 STD Z+13,R17
00B0 8726 STD Z+14,R18
00B1 8737 STD Z+15,R19
00B2 01FE MOVW R30,R28
00B3 8424 LDD R2,Z+12
00B4 8435 LDD R3,Z+13
00B5 8446 LDD R4,Z+14
00B6 8457 LDD R5,Z+15
00B7 925A ST R5,-Y
00B8 924A ST R4,-Y
00B9 923A ST R3,-Y
00BA 922A ST R2,-Y
00BB E408 LDI R16,0x48
00BC E010 LDI R17,0
00BD D726 RCALL lpm32
00BE 933A ST R19,-Y
00BF 932A ST R18,-Y
00C0 931A ST R17,-Y
00C1 930A ST R16,-Y
00C2 D81C RCALL cmp32f
00C3 F114 BLT 0x00E6
00C4 01FE MOVW R30,R28
00C5 8424 LDD R2,Z+12
00C6 8435 LDD R3,Z+13
00C7 8446 LDD R4,Z+14
00C8 8457 LDD R5,Z+15
00C9 925A ST R5,-Y
00CA 924A ST R4,-Y
00CB 923A ST R3,-Y
00CC 922A ST R2,-Y
00CD E408 LDI R16,0x48
00CE E010 LDI R17,0
00CF D714 RCALL lpm32
00D0 933A ST R19,-Y
00D1 932A ST R18,-Y
00D2 931A ST R17,-Y
00D3 930A ST R16,-Y
00D4 D7BD RCALL sub32f
00D5 D72D RCALL fp2long
00D6 0118 MOVW R2,R16
00D7 0129 MOVW R4,R18
00D8 E040 LDI R20,0
00D9 E050 LDI R21,0
00DA E060 LDI R22,0
00DB E870 LDI R23,0x80
00DC 0E24 ADD R2,R20
00DD 1E35 ADC R3,R21
00DE 1E46 ADC R4,R22
00DF 1E57 ADC R5,R23
00E0 01FE MOVW R30,R28
00E1 8620 STD Z+8,R2
00E2 8631 STD Z+9,R3
00E3 8642 STD Z+10,R4
00E4 8653 STD Z+11,R5
00E5 C00B RJMP 0x00F1
00E6 01FE MOVW R30,R28
00E7 8504 LDD R16,Z+12
00E8 8515 LDD R17,Z+13
00E9 8526 LDD R18,Z+14
00EA 8537 LDD R19,Z+15
00EB D717 RCALL fp2long
00EC 01FE MOVW R30,R28
00ED 8700 STD Z+8,R16
00EE 8711 STD Z+9,R17
00EF 8722 STD Z+10,R18
00F0 8733 STD Z+11,R19
00F1 01FE MOVW R30,R28
00F2 8420 LDD R2,Z+8
00F3 8431 LDD R3,Z+9
00F4 8442 LDD R4,Z+10
00F5 8453 LDD R5,Z+11
00F6 01FE MOVW R30,R28
00F7 8220 STD Z+0,R2
00F8 8231 STD Z+1,R3
00F9 8242 STD Z+2,R4
00FA 8253 STD Z+3,R5
(0027)
(0028) lcd_write_comm(0x30);
00FB E300 LDI R16,0x30
00FC E010 LDI R17,0
00FD D376 RCALL _lcd_write_comm
(0029) lcd_write_comm(address);
00FE 2D0A MOV R16,R10
00FF 2711 CLR R17
0100 D373 RCALL _lcd_write_comm
(0030) lcd_write_data((temp/1000000)%10+0x30);
0101 E440 LDI R20,0x40
0102 E452 LDI R21,0x42
0103 E06F LDI R22,0xF
0104 E070 LDI R23,0
0105 01FE MOVW R30,R28
0106 8020 LDD R2,Z+0
0107 8031 LDD R3,Z+1
0108 8042 LDD R4,Z+2
0109 8053 LDD R5,Z+3
010A 937A ST R23,-Y
010B 936A ST R22,-Y
010C 935A ST R21,-Y
010D 934A ST R20,-Y
010E 0181 MOVW R16,R2
010F 0192 MOVW R18,R4
0110 D624 RCALL div32u
0111 E04A LDI R20,0xA
0112 E050 LDI R21,0
0113 E060 LDI R22,0
0114 E070 LDI R23,0
0115 937A ST R23,-Y
0116 936A ST R22,-Y
0117 935A ST R21,-Y
0118 934A ST R20,-Y
0119 D61D RCALL mod32u
011A 0118 MOVW R2,R16
011B 0129 MOVW R4,R18
011C E340 LDI R20,0x30
011D E050 LDI R21,0
011E E060 LDI R22,0
011F E070 LDI R23,0
0120 0E24 ADD R2,R20
0121 1E35 ADC R3,R21
0122 1E46 ADC R4,R22
0123 1E57 ADC R5,R23
0124 0181 MOVW R16,R2
0125 0192 MOVW R18,R4
0126 D338 RCALL _lcd_write_data
(0031) lcd_write_data((temp/100000)%10+0x30);
0127 EA40 LDI R20,0xA0
0128 E856 LDI R21,0x86
0129 E061 LDI R22,1
012A E070 LDI R23,0
012B 01FE MOVW R30,R28
012C 8020 LDD R2,Z+0
012D 8031 LDD R3,Z+1
012E 8042 LDD R4,Z+2
012F 8053 LDD R5,Z+3
0130 937A ST R23,-Y
0131 936A ST R22,-Y
0132 935A ST R21,-Y
0133 934A ST R20,-Y
0134 0181 MOVW R16,R2
0135 0192 MOVW R18,R4
0136 D5FE RCALL div32u
0137 E04A LDI R20,0xA
0138 E050 LDI R21,0
0139 E060 LDI R22,0
013A E070 LDI R23,0
013B 937A ST R23,-Y
013C 936A ST R22,-Y
013D 935A ST R21,-Y
013E 934A ST R20,-Y
013F D5F7 RCALL mod32u
0140 0118 MOVW R2,R16
0141 0129 MOVW R4,R18
0142 E340 LDI R20,0x30
0143 E050 LDI R21,0
0144 E060 LDI R22,0
0145 E070 LDI R23,0
0146 0E24 ADD R2,R20
0147 1E35 ADC R3,R21
0148 1E46 ADC R4,R22
0149 1E57 ADC R5,R23
014A 0181 MOVW R16,R2
014B 0192 MOVW R18,R4
014C D312 RCALL _lcd_write_data
(0032) lcd_write_data((temp/10000)%10+0x30);
014D E140 LDI R20,0x10
014E E257 LDI R21,0x27
014F E060 LDI R22,0
0150 E070 LDI R23,0
0151 01FE MOVW R30,R28
0152 8020 LDD R2,Z+0
0153 8031 LDD R3,Z+1
0154 8042 LDD R4,Z+2
0155 8053 LDD R5,Z+3
0156 937A ST R23,-Y
0157 936A ST R22,-Y
0158 935A ST R21,-Y
0159 934A ST R20,-Y
015A 0181 MOVW R16,R2
015B 0192 MOVW R18,R4
015C D5D8 RCALL div32u
015D E04A LDI R20,0xA
015E E050 LDI R21,0
015F E060 LDI R22,0
0160 E070 LDI R23,0
0161 937A ST R23,-Y
0162 936A ST R22,-Y
0163 935A ST R21,-Y
0164 934A ST R20,-Y
0165 D5D1 RCALL mod32u
0166 0118 MOVW R2,R16
0167 0129 MOVW R4,R18
0168 E340 LDI R20,0x30
0169 E050 LDI R21,0
016A E060 LDI R22,0
016B E070 LDI R23,0
016C 0E24 ADD R2,R20
016D 1E35 ADC R3,R21
016E 1E46 ADC R4,R22
016F 1E57 ADC R5,R23
0170 0181 MOVW R16,R2
0171 0192 MOVW R18,R4
0172 D2EC RCALL _lcd_write_data
(0033) lcd_write_data('.');
0173 E20E LDI R16,0x2E
0174 E010 LDI R17,0
0175 D2E9 RCALL _lcd_write_data
(0034) lcd_write_data((temp/1000)%10+0x30);
0176 EE48 LDI R20,0xE8
0177 E053 LDI R21,3
0178 E060 LDI R22,0
0179 E070 LDI R23,0
017A 01FE MOVW R30,R28
017B 8020 LDD R2,Z+0
017C 8031 LDD R3,Z+1
017D 8042 LDD R4,Z+2
017E 8053 LDD R5,Z+3
017F 937A ST R23,-Y
0180 936A ST R22,-Y
0181 935A ST R21,-Y
0182 934A ST R20,-Y
0183 0181 MOVW R16,R2
0184 0192 MOVW R18,R4
0185 D5AF RCALL div32u
0186 E04A LDI R20,0xA
0187 E050 LDI R21,0
0188 E060 LDI R22,0
0189 E070 LDI R23,0
018A 937A ST R23,-Y
018B 936A ST R22,-Y
018C 935A ST R21,-Y
018D 934A ST R20,-Y
018E D5A8 RCALL mod32u
018F 0118 MOVW R2,R16
0190 0129 MOVW R4,R18
0191 E340 LDI R20,0x30
0192 E050 LDI R21,0
0193 E060 LDI R22,0
0194 E070 LDI R23,0
0195 0E24 ADD R2,R20
0196 1E35 ADC R3,R21
0197 1E46 ADC R4,R22
0198 1E57 ADC R5,R23
0199 0181 MOVW R16,R2
019A 0192 MOVW R18,R4
019B D2C3 RCALL _lcd_write_data
(0035) lcd_write_data((temp/100)%10+0x30);
019C E644 LDI R20,0x64
019D E050 LDI R21,0
019E E060 LDI R22,0
019F E070 LDI R23,0
01A0 01FE MOVW R30,R28
01A1 8020 LDD R2,Z+0
01A2 8031 LDD R3,Z+1
01A3 8042 LDD R4,Z+2
01A4 8053 LDD R5,Z+3
01A5 937A ST R23,-Y
01A6 936A ST R22,-Y
01A7 935A ST R21,-Y
01A8 934A ST R20,-Y
01A9 0181 MOVW R16,R2
01AA 0192 MOVW R18,R4
01AB D589 RCALL div32u
01AC E04A LDI R20,0xA
01AD E050 LDI R21,0
01AE E060 LDI R22,0
01AF E070 LDI R23,0
01B0 937A ST R23,-Y
01B1 936A ST R22,-Y
01B2 935A ST R21,-Y
01B3 934A ST R20,-Y
01B4 D582 RCALL mod32u
01B5 0118 MOVW R2,R16
01B6 0129 MOVW R4,R18
01B7 E340 LDI R20,0x30
01B8 E050 LDI R21,0
01B9 E060 LDI R22,0
01BA E070 LDI R23,0
01BB 0E24 ADD R2,R20
01BC 1E35 ADC R3,R21
01BD 1E46 ADC R4,R22
01BE 1E57 ADC R5,R23
01BF 0181 MOVW R16,R2
01C0 0192 MOVW R18,R4
01C1 D29D RCALL _lcd_write_data
(0036) lcd_write_data((temp/10)%10+0x30);
01C2 E04A LDI R20,0xA
01C3 E050 LDI R21,0
01C4 E060 LDI R22,0
01C5 E070 LDI R23,0
01C6 01FE MOVW R30,R28
01C7 8020 LDD R2,Z+0
01C8 8031 LDD R3,Z+1
01C9 8042 LDD R4,Z+2
01CA 8053 LDD R5,Z+3
01CB 937A ST R23,-Y
01CC 936A ST R22,-Y
01CD 935A ST R21,-Y
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -