📄 num_led.lst
字号:
##############################################################################
# #
# IAR Atmel AVR C/EC++ Compiler V2.28A/WIN, Evaluation Version09/Dec/2002 15:57:51 #
# Copyright 1996-2002 IAR Systems. All rights reserved. #
# #
# Source file = C:\work\mega128\num_led\num_led.c #
# Command line = --cpu=m128 -ms -o C:\work\mega128\num_led\Debug\Obj\ #
# -I "C:\IAR SYSTEMS\EW23\AVR\SRC\CLIB\INC\" -D iar -lcN #
# C:\work\mega128\num_led\Debug\List\ -e -y #
# --initializers_in_flash -z3 --no_cse --no_inline #
# --no_code_motion --no_cross_call --no_clustering #
# --debug C:\work\mega128\num_led\num_led.c #
# List file = C:\work\mega128\num_led\Debug\List\num_led.lst #
# Object file = C:\work\mega128\num_led\Debug\Obj\num_led.r90 #
# #
# #
##############################################################################
1 #include <iom128.h>
2 #ifndef iar
3 #include <macros.h>
4 #endif
5 #define xtal 4
6 const unsigned char seg_table[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,
7 0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
8 unsigned char led_buff[4]={0,0,0,0};
9 void delay_1ms(void)
10 {
11 unsigned int i;
12 for(i=1;i<(unsigned int)(xtal*143-2);i++)
13 ;
14 }
15 /*void delay_ms(unsigned int n)
16 {
17 unsigned int i=0;
18 while(i<n)
19 {
20 delay_1ms();
21 i++;
22 }
23 }*/
24 void led_display(void)
25 {
26 unsigned char i;
27 DDRA=0xff;
28 PORTA=0xff;
29 DDRC|=0xf0;
30 PORTC|=0xf0;
31 for(i=0;i<4;i++)
32 {
33 PORTA=led_buff[i];
34 PORTC&=~(1<<(i+4));
35 delay_1ms();
36 PORTC|=0xf0;
37 }
38 }
39 void led_fill(unsigned char index)
40 {
41 unsigned char i;
42 for(i=0;i<4;i++)
43 {
44 led_buff[i]=seg_table[index+i];
45 }
46 }
47 void main(void)
48 {
49 unsigned char i,j;
50 while(1)
51 {
52 for(j=0;j<4;j++)
53 {
54 led_fill(4*j);
55 for(i=0;i<200;i++)
56 led_display();
57 }
58 }
59 }
60
Maximum stack usage in bytes:
Function CSTACK RSTACK
-------- ------ ------
delay_1ms 0 0
led_display 2 2
-> delay_1ms 2 2
led_fill 0 0
main 2 2
-> led_display 2 2
-> led_fill 2 2
4 bytes in segment ABSOLUTE
170 bytes in segment CODE
14 bytes in segment INITTAB
16 bytes in segment NEAR_I
16 bytes in segment NEAR_ID
4 bytes in segment NEAR_Z
186 bytes of CODE memory (+ 14 bytes shared)
20 bytes of DATA memory (+ 4 bytes shared)
Errors: none
Warnings: none
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -