📄 essai.lss
字号:
}
164: df 91 pop r29
166: cf 91 pop r28
168: 1f 91 pop r17
16a: 0f 91 pop r16
16c: 08 95 ret
0000016e <ecrit_data_lcd>:
void ecrit_data_lcd(unsigned char data)
{
unsigned char data_tmp = 0x00;
LCD|=_BV(0);
16e: a8 9a sbi 0x15, 0 ; 21
LCD|=_BV(1);
170: a9 9a sbi 0x15, 1 ; 21
data_tmp = data;
data_tmp &= 0xF0;
172: 98 2f mov r25, r24
174: 90 7f andi r25, 0xF0 ; 240
data_tmp = data_tmp>>2;
176: 96 95 lsr r25
178: 96 95 lsr r25
data_tmp |= 0x03;
17a: 93 60 ori r25, 0x03 ; 3
LCD = data_tmp;
17c: 95 bb out 0x15, r25 ; 21
can be achieved.
*/
void
_delay_loop_1(uint8_t __count)
{
__asm__ volatile (
17e: 95 e8 ldi r25, 0x85 ; 133
180: 29 2f mov r18, r25
182: 2a 95 dec r18
184: f1 f7 brne .-4 ; 0x182 <ecrit_data_lcd+0x14>
_delay_us(100); //modif 10ms
LCD&=~_BV(1);
186: a9 98 cbi 0x15, 1 ; 21
data_tmp = 0x00;
LCD|=_BV(0);
188: a8 9a sbi 0x15, 0 ; 21
LCD|=_BV(1);
18a: a9 9a sbi 0x15, 1 ; 21
data_tmp = data;
data_tmp &= 0x0F;
18c: 8f 70 andi r24, 0x0F ; 15
data_tmp = data_tmp<<2;
18e: 88 0f add r24, r24
190: 88 0f add r24, r24
data_tmp |= 0x03;
192: 83 60 ori r24, 0x03 ; 3
LCD = data_tmp;
194: 85 bb out 0x15, r24 ; 21
196: 9a 95 dec r25
198: f1 f7 brne .-4 ; 0x196 <ecrit_data_lcd+0x28>
_delay_us(100);//modif 10ms
LCD&=~_BV(1);
19a: a9 98 cbi 0x15, 1 ; 21
}
19c: 08 95 ret
0000019e <lcd_init>:
milliseconds can be achieved.
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
19e: 80 e2 ldi r24, 0x20 ; 32
1a0: 9e e4 ldi r25, 0x4E ; 78
1a2: 01 97 sbiw r24, 0x01 ; 1
1a4: f1 f7 brne .-4 ; 0x1a2 <lcd_init+0x4>
void lcd_init(void)
{
_delay_ms(20);
LCD&=~_BV(0);
1a6: a8 98 cbi 0x15, 0 ; 21
can be achieved.
*/
void
_delay_loop_1(uint8_t __count)
{
__asm__ volatile (
1a8: 91 e0 ldi r25, 0x01 ; 1
1aa: 89 2f mov r24, r25
1ac: 8a 95 dec r24
1ae: f1 f7 brne .-4 ; 0x1ac <lcd_init+0xe>
_delay_us(1);
LCD|=_BV(1);
1b0: a9 9a sbi 0x15, 1 ; 21
LCD=0x0E;
1b2: 8e e0 ldi r24, 0x0E ; 14
1b4: 85 bb out 0x15, r24 ; 21
milliseconds can be achieved.
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
1b6: 20 e1 ldi r18, 0x10 ; 16
1b8: 37 e2 ldi r19, 0x27 ; 39
1ba: f9 01 movw r30, r18
1bc: 31 97 sbiw r30, 0x01 ; 1
1be: f1 f7 brne .-4 ; 0x1bc <lcd_init+0x1e>
_delay_ms(10);
LCD&=~_BV(1);
1c0: a9 98 cbi 0x15, 1 ; 21
1c2: e8 e8 ldi r30, 0x88 ; 136
1c4: f3 e1 ldi r31, 0x13 ; 19
1c6: 31 97 sbiw r30, 0x01 ; 1
1c8: f1 f7 brne .-4 ; 0x1c6 <lcd_init+0x28>
_delay_ms(5);
LCD&=~_BV(0);
1ca: a8 98 cbi 0x15, 0 ; 21
can be achieved.
*/
void
_delay_loop_1(uint8_t __count)
{
__asm__ volatile (
1cc: 49 2f mov r20, r25
1ce: 4a 95 dec r20
1d0: f1 f7 brne .-4 ; 0x1ce <lcd_init+0x30>
_delay_us(1);
LCD|=_BV(1);
1d2: a9 9a sbi 0x15, 1 ; 21
LCD=0x0E;
1d4: 85 bb out 0x15, r24 ; 21
milliseconds can be achieved.
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
1d6: f9 01 movw r30, r18
1d8: 31 97 sbiw r30, 0x01 ; 1
1da: f1 f7 brne .-4 ; 0x1d8 <lcd_init+0x3a>
_delay_ms(10);
LCD&=~_BV(1);
1dc: a9 98 cbi 0x15, 1 ; 21
1de: e8 ee ldi r30, 0xE8 ; 232
1e0: f3 e0 ldi r31, 0x03 ; 3
1e2: 31 97 sbiw r30, 0x01 ; 1
1e4: f1 f7 brne .-4 ; 0x1e2 <lcd_init+0x44>
_delay_ms(1);
LCD&=~_BV(0);
1e6: a8 98 cbi 0x15, 0 ; 21
can be achieved.
*/
void
_delay_loop_1(uint8_t __count)
{
__asm__ volatile (
1e8: 49 2f mov r20, r25
1ea: 4a 95 dec r20
1ec: f1 f7 brne .-4 ; 0x1ea <lcd_init+0x4c>
_delay_us(1);
LCD|=_BV(1);
1ee: a9 9a sbi 0x15, 1 ; 21
LCD=0x0E;
1f0: 85 bb out 0x15, r24 ; 21
milliseconds can be achieved.
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
1f2: f9 01 movw r30, r18
1f4: 31 97 sbiw r30, 0x01 ; 1
1f6: f1 f7 brne .-4 ; 0x1f4 <lcd_init+0x56>
_delay_ms(10);
LCD&=~_BV(1);
1f8: a9 98 cbi 0x15, 1 ; 21
LCD&=~_BV(0);
1fa: a8 98 cbi 0x15, 0 ; 21
can be achieved.
*/
void
_delay_loop_1(uint8_t __count)
{
__asm__ volatile (
1fc: 9a 95 dec r25
1fe: f1 f7 brne .-4 ; 0x1fc <lcd_init+0x5e>
_delay_us(1);
LCD|=_BV(1);
200: a9 9a sbi 0x15, 1 ; 21
LCD=0x0A;
202: 8a e0 ldi r24, 0x0A ; 10
204: 85 bb out 0x15, r24 ; 21
milliseconds can be achieved.
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
206: c9 01 movw r24, r18
208: 01 97 sbiw r24, 0x01 ; 1
20a: f1 f7 brne .-4 ; 0x208 <lcd_init+0x6a>
_delay_ms(10);
LCD&=~_BV(1);
20c: a9 98 cbi 0x15, 1 ; 21
ecrit_instr_lcd(0x28);
20e: 88 e2 ldi r24, 0x28 ; 40
210: 7d df rcall .-262 ; 0x10c <ecrit_instr_lcd>
ecrit_instr_lcd(0x06);
212: 86 e0 ldi r24, 0x06 ; 6
214: 7b df rcall .-266 ; 0x10c <ecrit_instr_lcd>
ecrit_instr_lcd(0x0C);
216: 8c e0 ldi r24, 0x0C ; 12
218: 79 df rcall .-270 ; 0x10c <ecrit_instr_lcd>
ecrit_instr_lcd(0x01);
21a: 81 e0 ldi r24, 0x01 ; 1
21c: 77 df rcall .-274 ; 0x10c <ecrit_instr_lcd>
}
21e: 08 95 ret
00000220 <lcd_clear>:
void lcd_clear(void)
{
ecrit_instr_lcd(0x01);
220: 81 e0 ldi r24, 0x01 ; 1
222: 74 df rcall .-280 ; 0x10c <ecrit_instr_lcd>
}
224: 08 95 ret
00000226 <lcd_puts>:
void lcd_puts(char *str)
{
226: cf 93 push r28
228: df 93 push r29
22a: ec 01 movw r28, r24
22c: 02 c0 rjmp .+4 ; 0x232 <lcd_puts+0xc>
while(*str != 0x00)
{
ecrit_data_lcd(*str++);
22e: 21 96 adiw r28, 0x01 ; 1
230: 9e df rcall .-196 ; 0x16e <ecrit_data_lcd>
ecrit_instr_lcd(0x01);
}
void lcd_puts(char *str)
{
while(*str != 0x00)
232: 88 81 ld r24, Y
234: 88 23 and r24, r24
236: d9 f7 brne .-10 ; 0x22e <lcd_puts+0x8>
{
ecrit_data_lcd(*str++);
}
}
238: df 91 pop r29
23a: cf 91 pop r28
23c: 08 95 ret
0000023e <main>:
double temperature;
char *temperature_str="00.0";
int main(void)
{
23e: cf 93 push r28
240: df 93 push r29
//DDRA=0xFE;
//PORTA=0xFE;
DDRD=0xFF;
242: 8f ef ldi r24, 0xFF ; 255
244: 81 bb out 0x11, r24 ; 17
DDRB=0x00;
246: 17 ba out 0x17, r1 ; 23
DDRC=0x3F;
248: 8f e3 ldi r24, 0x3F ; 63
24a: 84 bb out 0x14, r24 ; 20
//ADCSRA=0x85;
lcd_init();
24c: a8 df rcall .-176 ; 0x19e <lcd_init>
lcd_clear();
24e: e8 df rcall .-48 ; 0x220 <lcd_clear>
ecrit_instr_lcd(0x80);
250: 80 e8 ldi r24, 0x80 ; 128
252: 5c df rcall .-328 ; 0x10c <ecrit_instr_lcd>
// ("L1-----------------+L3-0123456789ABCDEF+L2-0123456789ABCDEF+L4-0123456789ABCDEF+" );
// while(1)
// {
lcd_puts("===MENU PRINCIPAL===____________________T:0.00癈 H:0.00 1-Setup |08:00");
254: 80 e8 ldi r24, 0x80 ; 128
256: 90 e0 ldi r25, 0x00 ; 0
258: e6 df rcall .-52 ; 0x226 <lcd_puts>
25a: c8 ee ldi r28, 0xE8 ; 232
25c: d3 e0 ldi r29, 0x03 ; 3
//if (CH==""){CHb="1";}
//if (CH!=CHb){lcd_puts(CH); CHb="";}
//lcd_goto(50);
//CHb=CH;
unsigned char A = "";
A=getkey();
25e: 01 df rcall .-510 ; 0x62 <getkey>
if (A == "1") {lcd_puts("=======OPTION=======2-T Cons. 5- 1-Dat/Heu 4- 3-H Cons. 6-Retour");}
260: 90 e0 ldi r25, 0x00 ; 0
262: 82 57 subi r24, 0x72 ; 114
264: 90 40 sbci r25, 0x00 ; 0
266: 19 f4 brne .+6 ; 0x26e <__stack+0xf>
268: 81 ed ldi r24, 0xD1 ; 209
26a: 90 e0 ldi r25, 0x00 ; 0
26c: dc df rcall .-72 ; 0x226 <lcd_puts>
26e: ce 01 movw r24, r28
270: 01 97 sbiw r24, 0x01 ; 1
272: f1 f7 brne .-4 ; 0x270 <__stack+0x11>
274: f4 cf rjmp .-24 ; 0x25e <main+0x20>
00000276 <_exit>:
276: f8 94 cli
00000278 <__stop_program>:
278: ff cf rjmp .-2 ; 0x278 <__stop_program>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -