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

📄 main.lis

📁 飞思卡尔U08开发平台下可以自由运行
💻 LIS
字号:
                        .module main.c
                        .area text
                        .area func_lit
 0000           L30:
 0000 00C4              .word  L8
 0002 00D6              .word  L9
 0004 00E8              .word  L10
 0006 00FA              .word  L11
 0008 010C              .word  L12
 000A 011E              .word  L13
 000C 0130              .word  L14
 000E 0238              .word  L5
 0010 0238              .word  L5
 0012 0238              .word  L5
 0014 0238              .word  L5
 0016 0238              .word  L5
 0018 0238              .word  L5
 001A 0238              .word  L5
 001C 0238              .word  L5
 001E 0238              .word  L5
 0020 0142              .word  L15
 0022 0154              .word  L16
 0024 0166              .word  L17
 0026 0178              .word  L18
 0028 018A              .word  L19
 002A 019C              .word  L20
 002C 01AE              .word  L21
                        .area text
                ;       KB_valve -> 2,X
 0000           _main::
 0000 A7FD              ais #-3
 0002 95                tsx
 0003           ; /*-----------------------------------------------------*
 0003           ; *工 程 名:PWM.prj                                      *
 0003           ; *硬件接线:PTD.4,即定时器1通道0(21脚)接指示灯或蜂鸣器   *
 0003           ; *程序描述:通过对PWM占空比的调节实现现指示灯的渐亮的功能*
 0003           ; *         当占空比为100%时再从0%逐渐增加             *
 0003           ; *目    的:学习HC08系列定时器脉宽调制功能               *
 0003           ; *---------《嵌入式应用技术基础教程》教学实例----------*/
 0003           ; /*[头文件]*/
 0003           ; #include "GP32C.H"               //包含头文件
 0003           ; #include "KB.h"
 0003           ; /*函数声明*/
 0003           ; extern void PWMInit(unsigned int );     //PWM初始化
 0003           ; extern void PWMconf(unsigned int);      //PWM设置
 0003           ; extern void Delay_ms(unsigned char );   //延时
 0003           ; /*主程序*/
 0003           ; void main()
 0003           ; {     
 0003           ;       unsigned char KB_valve;
 0003           ;       DDRB=0xFF;
 0003 A6FF              lda #-1
 0005 B705              sta 0x5
 0007           ;       PTB=0xFF;            
 0007 A6FF              lda #-1
 0009 B701              sta 0x1
 000B CC0242            jmp L3
 000E           L2:
 000E           ;       //[主循环]
 000E           ;       while(1)
 000E           ;       {
 000E           ;           //KB_Init();
 000E           ;           KB_valve=KB_Scan();
 000E CD0000            jsr _KB_Scan
 0011 95                tsx
 0012 B700              sta *__r1
 0014 E702              sta 2,X
 0016           ;           KB_valve=KB_Def(KB_valve);
 0016 87                psha
 0017 CD0000            jsr _KB_Def
 001A A701              ais #1
 001C 95                tsx
 001D B700              sta *__r1
 001F E702              sta 2,X
 0021           ;           switch(KB_valve)
 0021 7F                clr ,X
 0022 E701              sta 1,X
 0024 F6                lda ,X
 0025 B700              sta *__r0
 0027 5500              ldhx *__r0
 0029 650031            cphx #49
 002C 95                tsx
 002D 9003              bge X9
 002F CC0238            jmp L5
 0032           X9:
 0032 E601              lda 1,X
 0034 B700              sta *__r1
 0036 F6                lda ,X
 0037 B700              sta *__r0
 0039 5500              ldhx *__r0
 003B 650047            cphx #71
 003E 95                tsx
 003F 922C              bgt L29
 0041 E601              lda 1,X
 0043 A031              sub #49
 0045 B700              sta *__r1
 0047 F6                lda ,X
 0048 A200              sbc #0
 004A B700              sta *__r0
 004C 3800              lsl *__r1
 004E 3900              rol *__r0
 0050 B600              lda *__r1
 0052 AB00              add #<L30
 0054 B700              sta *__r1
 0056 B600              lda *__r0
 0058 A900              adc #>L30
 005A B700              sta *__r0
 005C 5500              ldhx *__r0
 005E E601              lda 1,x
 0060 B700              sta *__r1
 0062 F6                lda ,x
 0063 95                tsx
 0064 B700              sta *__r0
 0066 B600              lda *__r1
 0068 87                psha
 0069 B600              lda *__r0
 006B 87                psha
 006C 81                rts
 006D           L29:
 006D F6                lda ,X
 006E 2609              bne X0
 0070 E601              lda 1,X
 0072 A161              cmp #97
 0074 2603              bne X10
 0076 CC01C0            jmp L22
 0079           X10:
 0079           X0:
 0079 F6                lda ,X
 007A 2609              bne X1
 007C E601              lda 1,X
 007E A162              cmp #98
 0080 2603              bne X11
 0082 CC01D2            jmp L23
 0085           X11:
 0085           X1:
 0085 F6                lda ,X
 0086 2609              bne X2
 0088 E601              lda 1,X
 008A A163              cmp #99
 008C 2603              bne X12
 008E CC01E3            jmp L24
 0091           X12:
 0091           X2:
 0091 F6                lda ,X
 0092 2609              bne X3
 0094 E601              lda 1,X
 0096 A164              cmp #100
 0098 2603              bne X13
 009A CC01F4            jmp L25
 009D           X13:
 009D           X3:
 009D F6                lda ,X
 009E 2609              bne X4
 00A0 E601              lda 1,X
 00A2 A165              cmp #101
 00A4 2603              bne X14
 00A6 CC0205            jmp L26
 00A9           X14:
 00A9           X4:
 00A9 F6                lda ,X
 00AA 2609              bne X5
 00AC E601              lda 1,X
 00AE A166              cmp #102
 00B0 2603              bne X15
 00B2 CC0216            jmp L27
 00B5           X15:
 00B5           X5:
 00B5 F6                lda ,X
 00B6 2609              bne X6
 00B8 E601              lda 1,X
 00BA A167              cmp #103
 00BC 2603              bne X16
 00BE CC0227            jmp L28
 00C1           X16:
 00C1           X6:
 00C1 CC0238            jmp L5
 00C4           X7:
 00C4           ;              {
 00C4           L8:
 00C4           ;                 
 00C4           ;                 case '1':PWMconf(523);PTB=0xF0;break;//1~7
 00C4 45020B            ldhx #523
 00C7 89                pshx
 00C8 8B                pshh
 00C9 CD0000            jsr _PWMconf
 00CC A702              ais #2
 00CE 95                tsx
 00CF A6F0              lda #-16
 00D1 B701              sta 0x1
 00D3 CC0242            jmp L6
 00D6           L9:
 00D6           ;                 case '2':PWMconf(587);PTB=0xF0;break;
 00D6 45024B            ldhx #587
 00D9 89                pshx
 00DA 8B                pshh
 00DB CD0000            jsr _PWMconf
 00DE A702              ais #2
 00E0 95                tsx
 00E1 A6F0              lda #-16
 00E3 B701              sta 0x1
 00E5 CC0242            jmp L6
 00E8           L10:
 00E8           ;                 case '3':PWMconf(659);PTB=0xF0;break;
 00E8 450293            ldhx #659
 00EB 89                pshx
 00EC 8B                pshh
 00ED CD0000            jsr _PWMconf
 00F0 A702              ais #2
 00F2 95                tsx
 00F3 A6F0              lda #-16
 00F5 B701              sta 0x1
 00F7 CC0242            jmp L6
 00FA           L11:
 00FA           ;                 case '4':PWMconf(698);PTB=0xF0;break;
 00FA 4502BA            ldhx #698
 00FD 89                pshx
 00FE 8B                pshh
 00FF CD0000            jsr _PWMconf
 0102 A702              ais #2
 0104 95                tsx
 0105 A6F0              lda #-16
 0107 B701              sta 0x1
 0109 CC0242            jmp L6
 010C           L12:
 010C           ;                 case '5':PWMconf(784);PTB=0xF0;break;
 010C 450310            ldhx #784
 010F 89                pshx
 0110 8B                pshh
 0111 CD0000            jsr _PWMconf
 0114 A702              ais #2
 0116 95                tsx
 0117 A6F0              lda #-16
 0119 B701              sta 0x1
 011B CC0242            jmp L6
 011E           L13:
 011E           ;                 case '6':PWMconf(880);PTB=0xF0;break;
 011E 450370            ldhx #880
 0121 89                pshx
 0122 8B                pshh
 0123 CD0000            jsr _PWMconf
 0126 A702              ais #2
 0128 95                tsx
 0129 A6F0              lda #-16
 012B B701              sta 0x1
 012D CC0242            jmp L6
 0130           L14:
 0130           ;                 case '7':PWMconf(988);PTB=0xF0;break;
 0130 4503DC            ldhx #988
 0133 89                pshx
 0134 8B                pshh
 0135 CD0000            jsr _PWMconf
 0138 A702              ais #2
 013A 95                tsx
 013B A6F0              lda #-16
 013D B701              sta 0x1
 013F CC0242            jmp L6
 0142           L15:
 0142           ;                
 0142           ;                 case 'A':PWMconf(262);PTB=0xF0;break;//#1~~~~#7
 0142 450106            ldhx #262
 0145 89                pshx
 0146 8B                pshh
 0147 CD0000            jsr _PWMconf
 014A A702              ais #2
 014C 95                tsx
 014D A6F0              lda #-16
 014F B701              sta 0x1
 0151 CC0242            jmp L6
 0154           L16:
 0154           ;                 case 'B':PWMconf(294);PTB=0xF0;break;
 0154 450126            ldhx #294
 0157 89                pshx
 0158 8B                pshh
 0159 CD0000            jsr _PWMconf
 015C A702              ais #2
 015E 95                tsx
 015F A6F0              lda #-16
 0161 B701              sta 0x1
 0163 CC0242            jmp L6
 0166           L17:
 0166           ;                 case 'C':PWMconf(330);PTB=0xF0;break;
 0166 45014A            ldhx #330
 0169 89                pshx
 016A 8B                pshh
 016B CD0000            jsr _PWMconf
 016E A702              ais #2
 0170 95                tsx
 0171 A6F0              lda #-16
 0173 B701              sta 0x1
 0175 CC0242            jmp L6
 0178           L18:
 0178           ;                 case 'D':PWMconf(349);PTB=0xF0;break;
 0178 45015D            ldhx #349
 017B 89                pshx
 017C 8B                pshh
 017D CD0000            jsr _PWMconf
 0180 A702              ais #2
 0182 95                tsx
 0183 A6F0              lda #-16
 0185 B701              sta 0x1
 0187 CC0242            jmp L6
 018A           L19:
 018A           ;                 case 'E':PWMconf(392);PTB=0xF0;break;
 018A 450188            ldhx #392
 018D 89                pshx
 018E 8B                pshh
 018F CD0000            jsr _PWMconf
 0192 A702              ais #2
 0194 95                tsx
 0195 A6F0              lda #-16
 0197 B701              sta 0x1
 0199 CC0242            jmp L6
 019C           L20:
 019C           ;                 case 'F':PWMconf(440);PTB=0xF0;break;
 019C 4501B8            ldhx #440
 019F 89                pshx
 01A0 8B                pshh
 01A1 CD0000            jsr _PWMconf
 01A4 A702              ais #2
 01A6 95                tsx
 01A7 A6F0              lda #-16
 01A9 B701              sta 0x1
 01AB CC0242            jmp L6
 01AE           L21:
 01AE           ;                 case 'G':PWMconf(494);PTB=0xF0;break;
 01AE 4501EE            ldhx #494
 01B1 89                pshx
 01B2 8B                pshh
 01B3 CD0000            jsr _PWMconf
 01B6 A702              ais #2
 01B8 95                tsx
 01B9 A6F0              lda #-16
 01BB B701              sta 0x1
 01BD CC0242            jmp L6
 01C0           L22:
 01C0           ;                 
 01C0           ;                 case 'a':PWMconf(1046);PTB=0xF0;break;//*1~~~~*7
 01C0 450416            ldhx #1046
 01C3 89                pshx
 01C4 8B                pshh
 01C5 CD0000            jsr _PWMconf
 01C8 A702              ais #2
 01CA 95                tsx
 01CB A6F0              lda #-16
 01CD B701              sta 0x1
 01CF CC0242            jmp L6
 01D2           L23:
 01D2           ;                 case 'b':PWMconf(1175);PTB=0xF0;break;
 01D2 450497            ldhx #1175
 01D5 89                pshx
 01D6 8B                pshh
 01D7 CD0000            jsr _PWMconf
 01DA A702              ais #2
 01DC 95                tsx
 01DD A6F0              lda #-16
 01DF B701              sta 0x1
 01E1 205F              bra L6
 01E3           L24:
 01E3           ;                 case 'c':PWMconf(1318);PTB=0xF0;break;
 01E3 450526            ldhx #1318
 01E6 89                pshx
 01E7 8B                pshh
 01E8 CD0000            jsr _PWMconf
 01EB A702              ais #2
 01ED 95                tsx
 01EE A6F0              lda #-16
 01F0 B701              sta 0x1
 01F2 204E              bra L6
 01F4           L25:
 01F4           ;                 case 'd':PWMconf(1397);PTB=0xF0;break;
 01F4 450575            ldhx #1397
 01F7 89                pshx
 01F8 8B                pshh
 01F9 CD0000            jsr _PWMconf
 01FC A702              ais #2
 01FE 95                tsx
 01FF A6F0              lda #-16
 0201 B701              sta 0x1
 0203 203D              bra L6
 0205           L26:
 0205           ;                 case 'e':PWMconf(1568);PTB=0xF0;break;
 0205 450620            ldhx #1568
 0208 89                pshx
 0209 8B                pshh
 020A CD0000            jsr _PWMconf
 020D A702              ais #2
 020F 95                tsx
 0210 A6F0              lda #-16
 0212 B701              sta 0x1
 0214 202C              bra L6
 0216           L27:
 0216           ;                 case 'f':PWMconf(1760);PTB=0xF0;break;
 0216 4506E0            ldhx #1760
 0219 89                pshx
 021A 8B                pshh
 021B CD0000            jsr _PWMconf
 021E A702              ais #2
 0220 95                tsx
 0221 A6F0              lda #-16
 0223 B701              sta 0x1
 0225 201B              bra L6
 0227           L28:
 0227           ;                 case 'g':PWMconf(1976);PTB=0xF0;break;
 0227 4507B8            ldhx #1976
 022A 89                pshx
 022B 8B                pshh
 022C CD0000            jsr _PWMconf
 022F A702              ais #2
 0231 95                tsx
 0232 A6F0              lda #-16
 0234 B701              sta 0x1
 0236 200A              bra L6
 0238           L5:
 0238           ;                 
 0238           ;                 default :T1SC|=(1<<5);T1SC0=0x0e;PTB=0xFF;break;//停止定时器1计数器计数               
 0238 1A20              bset #5,0x20
 023A A60E              lda #14
 023C B725              sta 0x25
 023E A6FF              lda #-1
 0240 B701              sta 0x1
 0242           L6:
 0242           L3:
 0242 CC000E            jmp L2
 0245           X8:
 0245           L1:
 0245 A703              ais #3
 0247                   .dbline 0 ; func end
 0247 81                rts

⌨️ 快捷键说明

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