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

📄 训练项目七:键盘的使用.lis

📁 长沙理工自己的实验程序
💻 LIS
📖 第 1 页 / 共 2 页
字号:
                        .area vector(rom, abs)
                        .org 16
 0010 0C94A300          jmp _key_check
                        .module _训练项目七:键盘的使用.c
                        .area data(ram, con, rel)
 0000           _k::
 0000                   .blkb 1
                        .area idata
 0000 00                .byte 0
                        .area data(ram, con, rel)
 0001           _n::
 0001                   .blkb 2
                        .area idata
 0001 0000              .word 0
                        .area data(ram, con, rel)
                        .area text(rom, con, rel)
                        .area  func_lit(rom, con, rel)
 0000           L24:
 0000 2200              .word `L8
 0002 2A00              .word `L9
 0004 3200              .word `L10
 0006 3A00              .word `L11
 0008 A100              .word `L6
 000A A100              .word `L6
 000C A100              .word `L6
 000E A100              .word `L6
 0010 4200              .word `L12
 0012 4A00              .word `L13
 0014 5200              .word `L14
 0016 5A00              .word `L15
 0018 A100              .word `L6
 001A A100              .word `L6
 001C A100              .word `L6
 001E A100              .word `L6
 0020 6200              .word `L16
 0022 6A00              .word `L17
 0024 7200              .word `L18
 0026 7A00              .word `L19
 0028 A100              .word `L6
 002A A100              .word `L6
 002C A100              .word `L6
 002E A100              .word `L6
 0030 8200              .word `L20
 0032 8A00              .word `L21
 0034 9200              .word `L22
 0036 9A00              .word `L23
                        .area text(rom, con, rel)
                ;              i -> R10
                        .even
 0000           _main::
 0000           ; /****************************************************************************
 0000           ; ** File Name:          键盘的使用
 0000           ; ** Createed By:        Wangchangsong
 0000           ; ** Create Date:        07/28/2008
 0000           ; ** Version:            1.0
 0000           ; ** Descriptions:       led display
 0000           ; **
 0000           ; **---------------------------------------------------------------------------
 0000           ; ** Modified By:
 0000           ; ** Modified Date:
 0000           ; ** Version:
 0000           ; ** Descriptions:
 0000           ; **
 0000           ; ****************************************************************************/
 0000           ; 
 0000           ; #include <iom128v.h>
 0000           ; 
 0000           ; #define data (PIND&0x04)==0x04
 0000           ;                                                 /* 判断PD2是否为1            */
 0000           ; #define set_cs asm("sbi 0x18,2")             
 0000           ;                                                 /* PB输出为1                 */
 0000           ; #define set_clk asm("sbi 0x18,3")
 0000           ;                                                 /* PB3输出为1                */  
 0000           ; #define set_data asm("sbi 0x12,2")
 0000           ;                                                 /* PD2输出为1                */
 0000           ; #define cl_cs  asm("cbi 0x18,2")
 0000           ;                                                 /* PB2输出为0                */ 
 0000           ; #define cl_clk asm("cbi 0x18,3")
 0000           ;                                                 /* PB3输出为0                */                     
 0000           ; #define cl_data asm("cbi 0x12,2")
 0000           ;                                                 /* PD2输出为0                */
 0000           ; #pragma interrupt_handler key_check:5
 0000           ;                                                 /* 外部中断3                 */
 0000           ; unsigned char k = 0x00;n = 0;
 0000           ; 
 0000           ; /****************************************************************************
 0000           ; ** Function Name:      main       
 0000           ; ** Descriptions:       
 0000           ; ** Input Parameters:   uiTime
 0000           ; ** Output parameters:  void
 0000           ; ** Returned Value:     void
 0000           ; **---------------------------------------------------------------------------
 0000           ; ****************************************************************************/
 0000           ; 
 0000           ; void main()
 0000           ; {
 0000           ;     unsigned char i = 0;
 0000 AA24              clr R10
 0002           ;       
 0002           ;     init_7279();
 0002 E5D0              xcall _init_7279
 0004           ;     s_delay();
 0004 49D1              xcall _s_delay
 0006           ;     send (0xA4); 
 0006 04EA              ldi R16,164
 0008 10E0              ldi R17,0
 000A F4D0              xcall _send
 000C 9AC0              xjmp L3
 000E           L2:
 000E           ; 	                                              /* 复位                     */
 000E           ;     while(1)
 000E           ;     {
 000E           ;         switch(k)
 000E 40910000          lds R20,_k
 0012 5527              clr R21
 0014 4134              cpi R20,65
 0016 E0E0              ldi R30,0
 0018 5E07              cpc R21,R30
 001A 0CF4              brge X3
 001C 92C0              xjmp L6
 001E           X3:
 001E           X0:
 001E 8CE5              ldi R24,92
 0020 90E0              ldi R25,0
 0022 8417              cp R24,R20
 0024 9507              cpc R25,R21
 0026 0CF4              brge X4
 0028 8CC0              xjmp L6
 002A           X4:
 002A           X1:
 002A 80E0              ldi R24,<L24
 002C 90E0              ldi R25,>L24
 002E FA01              movw R30,R20
 0030 E154              subi R30,65
 0032 F040              sbci R31,0
 0034 EE0F              lsl R30
 0036 FF1F              rol R31
 0038 E80F              add R30,R24
 003A F91F              adc R31,R25
 003C 2790              elpm R2,Z+
 003E 3690              elpm R3,Z
 0040 F101              movw R30,R2
 0042 0994               ijmp
 0044           L8:
 0044           ;         {
 0044           ;         case 65:set_cs;send(0xc8);send(0x00);break;/*下载数据且按方式1译码     */
 0044 C29A              sbi 0x18,2
 0046 08EC              ldi R16,200
 0048 10E0              ldi R17,0
 004A D4D0              xcall _send
 004C 0027              clr R16
 004E 1127              clr R17
 0050 D1D0              xcall _send
 0052 77C0              xjmp L6
 0054           L9:
 0054           ;         case 66:set_cs;send(0xc8);send(0x01);break;
 0054 C29A              sbi 0x18,2
 0056 08EC              ldi R16,200
 0058 10E0              ldi R17,0
 005A CCD0              xcall _send
 005C 01E0              ldi R16,1
 005E 10E0              ldi R17,0
 0060 C9D0              xcall _send
 0062 6FC0              xjmp L6
 0064           L10:
 0064           ;         case 67:set_cs;send(0xc8);send(0x02);break;
 0064 C29A              sbi 0x18,2
 0066 08EC              ldi R16,200
 0068 10E0              ldi R17,0
 006A C4D0              xcall _send
 006C 02E0              ldi R16,2
 006E 10E0              ldi R17,0
 0070 C1D0              xcall _send
 0072 67C0              xjmp L6
 0074           L11:
 0074           ;         case 68:set_cs;send(0xc8);send(0x03);break;
 0074 C29A              sbi 0x18,2
 0076 08EC              ldi R16,200
 0078 10E0              ldi R17,0
 007A BCD0              xcall _send
 007C 03E0              ldi R16,3
 007E 10E0              ldi R17,0
 0080 B9D0              xcall _send
 0082 5FC0              xjmp L6
 0084           L12:
 0084           ;         case 73:set_cs;send(0xc8);send(0x04);break;
 0084 C29A              sbi 0x18,2
 0086 08EC              ldi R16,200
 0088 10E0              ldi R17,0
 008A B4D0              xcall _send
 008C 04E0              ldi R16,4
 008E 10E0              ldi R17,0
 0090 B1D0              xcall _send
 0092 57C0              xjmp L6
 0094           L13:
 0094           ;         case 74:set_cs;send(0xc8);send(0x05);break;
 0094 C29A              sbi 0x18,2
 0096 08EC              ldi R16,200
 0098 10E0              ldi R17,0
 009A ACD0              xcall _send
 009C 05E0              ldi R16,5
 009E 10E0              ldi R17,0
 00A0 A9D0              xcall _send
 00A2 4FC0              xjmp L6
 00A4           L14:
 00A4           ;         case 75:set_cs;send(0xc8);send(0x06);break;
 00A4 C29A              sbi 0x18,2
 00A6 08EC              ldi R16,200
 00A8 10E0              ldi R17,0
 00AA A4D0              xcall _send
 00AC 06E0              ldi R16,6
 00AE 10E0              ldi R17,0
 00B0 A1D0              xcall _send
 00B2 47C0              xjmp L6
 00B4           L15:
 00B4           ;         case 76:set_cs;send(0xc8);send(0x07);break;
 00B4 C29A              sbi 0x18,2
 00B6 08EC              ldi R16,200
 00B8 10E0              ldi R17,0

⌨️ 快捷键说明

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