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

📄 prac10_matrix.lst

📁 msp430系列开发板源代码
💻 LST
📖 第 1 页 / 共 4 页
字号:
                  1151 
                  1152 
                  1153 
                  1154 
                  1155 
                  1156 
                  1157 
                  1158 
                  1159 
                  1160 
                  1161 
                  1162 
                  1163 
                  1164 
                  1165 
                  1166 
                  1167 
                  1168 
                  1169 
                  1170 
                  1171 
                  1172 
                  1173 
                  1174 
                  1175 
                  1176 
                  1177 
                  1178 
                  1179 
                  1180 
                  1181 
                  1182 
                  1183 
                  1184 
                  1185 
                  1186 
                  1187 
                  1188 
                  1189 
                  1190 
                  1191 
                  1192 
                  1193 
                  1194 
                  1195 
                  1196 
                  1197 
                  1198 
                  1199 
                  1200 
                  1201 
                  1202 
                  1203 
                  1204 
                  1205 
                  1206 
                  1207 
                  1208 
                  1209 
                  1210 
                  1211 
                  1212 
                  1213 
                  1214 
                  1215 
                  1216 
                  1217 
                  1218 
                  1219 
                  1220 
                  1221 
                  1222 
                  1223 
                  1224 
                  1225 
                  1228 
                  1229 
                  1230 
                  1231 
                  1232 
                  1233 
                  1234 
                  1235 
                  1236 
                  1237 
                  1238 
                  1239 
                  1240 
                  1241 
                  1242 
                  1243 
                  1244 
                  1245 
                  1246 
                  1247 
                  1248 
                  1249 
                  1250 
                  1251 
                  1254 
                  1255 
                  1256 
                     2 ;-------------------------------------------------------------
                     3 ;MSP-Test44x Demo   key,LCD
                     4 ;
                     5 ;                          MSP430F449             
                     6 ;                       -----------------
                     7 ;                   /|\|              XIN|-  
                     8 ;                    | |                 |            key
                     9 ;         LCD        --|RST          XOUT|-       
                    10 ;        ----------    |                 |       |             | 
                    11 ;       |     COM0|<---|COM0         P1.0|------>|1  2  3  *   |
                    12 ;       |       . |  . |  .            . |   .   |4  5  6  0   |
                    13 ;       |     COM3|<---|COM3           . |   .   |7  8  9  #   |    
                    14 ;       |      S0 |<---|S0             . |   .   |             | 
                    15 ;       |       . |  . |             P1.7|------>|             |
                    16 ;       |      S14|<---|S14              |
                    17 ;
                    18 ;--------------------------------------------------------------
     200             19 flag                    equ             200h        ;
     201             20 led_disp_data           equ             201h        ;
     202             21 led_disp_bit            equ             202h        ;
     203             22 com_byte                equ             203h        ;
     204             23 buffer                  equ             204h
     205             24 key_num                 equ             205h        ;
     206             25 counter1                equ             206h        ;
     207             26 key_vaule               equ             207h        ;
     208             27 key_buff                equ             208h        ;
     209             28 counter                 equ             209h        ;
                    29 
                    30 ;---------------------------------------------------------------
                    31 ;--------------   flag byte defin    ---------------------------
                    32 ;---------------------------------------------------------------
     01             33 ms                      equ             01h         ;
     02             34 key_press               equ             02h         ;
     01             35 flash_busy_bit          equ             01h
                    36 ;---------------------------------------------------------------
                    37 ;---------------   port   defin     ----------------------------
                    38 ;---------------------------------------------------------------
                    39 ;
                    40 ;
                    41 ;
                    42 ;
                    43 ;
                    44 ;
                    45 ;
                    46 ;
                    47 
                    48 ;----------------------------------------------------------------
                    49                 .pseg code, abs=01100h
                    50 ;----------------------------------------------------------------
                    51 Reset
1100 3140000a       52                 mov.w   #0a00h,SP
                    53 StopWDT
1104 b240805a2001   54                 mov.w   #(0x5A00)+(0x0080),&WDTCTL
110a f2430802       55                 mov.b   #0ffh,&key_buff
110e f2d00f002200   56                 bis.b   #0fh,&P1DIR
1114 f0d20bef       57                 bis.b   #08h,P1OUT
1118 e0d207ef       58                 bis.b   #04h,P1OUT
111c e0d303ef       59                 bis.b   #02h,P1OUT
1120 b0126611       60                 call    #lcd_display_ona             ;open lcd
                    61 ;----------------------------------------------------------------
                    62 ;
                    63 ;----------------------------------------------------------------
                    64 mainloop
1124 52120802       65                 push.b  &key_buff
1128 f2410802       66                 pop.b   &key_buff
112c 7f43           67                 mov.b   #0ffh,r15
112e 5f83           68 delay           dec.b   r15
1130 fe23           69                 jnz     delay
1132 b0123c11       70                 call    #lcd_display              ;lcd display
1136 b0129011       71                 call    #scan_key_deal
113a f43f           72                 jmp     mainloop
                    73 
                    74 
                    75 ;----------------------------------------------------------------   
                    76 
                    77 ;----------------------------------------------------------------
                    78 lcd_display
113c 7f409100       79                 mov.b       #LCDM1,R15
                    80 
1140 5d420802       81                 mov.b       &key_buff,R13
1144 7df00f00       82                 and.b       #0fh,R13
1148 5e4d6c12       83                 mov.b       lcd_table(R13),R14
114c cf4e0100       84                 mov.b       R14,1(R15)
1150 cf4e0000       85                 mov.b       R14,0(R15)
1154 cf4e0300       86                 mov.b       R14,3(R15)
1158 cf4e0200       87                 mov.b       R14,2(R15)
115c cf4e0500       88                 mov.b       R14,5(R15)
1160 cf4e0400       89                 mov.b       R14,4(R15)
1164 3041           90                 ret
                    91 ;-----------------------------------------------------------
                    92 
                    93 lcd_display_ona
1166 f240fc003300   94                   mov.b    #0FCh,&P5SEL                     ;Enable R(LCD) + COM Lines
116c f2405d009000   95                   mov.b    #(0x01)+((0x10)+(0x08)+(0x04))+(0x40),&LCDCTL     ;STK LCD 4Mux, S0-S19
1172 b0128011       96                   call     #show_clr                        ;clear LCD
1176 f24010004000   97                   mov.b   #(0x10),&BTCTL
117c 0943           98                   clr      R9
117e 3041           99                   ret
                   100 
                   101 
                   102 ;-----------------------------------------------------------         
                   103 ;
                   104 ;-----------------------------------------------------------
                   105 show_clr
1180 4f43          106                 mov.b   #00h,r15                            ; clear display memory
                   107 show_clr1
1182 cf439100      108                 mov.b   #00h,((0x0091))(r15)
1186 5f53          109                 inc.b   r15
1188 7f900a00      110                 cmp.b   #0ah,r15
118c fa23          111                 jnz     show_clr1
118e 3041          112                 ret
                   113 
                   114 
                   115 ;-------------------------------------------------- 
                   116 ;
                   117 ;-------------------------------------------------- 
                   118 scan_key_deal
1190 f0400f008eee  119             mov.b     #0fh,P1DIR                 ;
1196 f2430302      120             mov.b     #0ffh,&com_byte
119a f0c285ee      121             bic.b     #08h,P1OUT
119e e0c281ee      122             bic.b     #04h,P1OUT
11a2 e0c37dee      123             bic.b     #02h,P1OUT
11a6 0343          124             NOP
11a8 0343          125             nop
11aa 0343          126             nop
11ac d24220000402  127             mov.b     &P1IN,&buffer
11b2 f2f0f0000402  128             and.b     #0f0h,&buffer
11b8 f290f0000402  129             cmp.b     #0f0h,&buffer
11be 3624          130             jz        ret_end                       ;
11c0 f0d25fee      131             bis.b     #08h,P1OUT                    ;
11c4 e0d25bee      132             bis.b     #04h,P1OUT
11c8 e0d357ee      133             bis.b     #02h,P1OUT
11cc f2430302      134             mov.b     #0ffh,&com_byte
11d0 0343          135             nop
11d2 0343          136             nop
11d4 c2430502      137             clr.b     &key_num                      ;
11d8 e2430302      138             mov.b     #02h,&com_byte
11dc d0c025f041ee  139             bic.b     com_byte,P1OUT
11e2 f24003000602  140             mov.b     #03h,&counter1                ;
11e8 12d3          141             setc                                    ;set c=1
                   142 scan
11ea f2b010002000  143             bit.b     #10h,&P1IN                    ;
11f0 2224          144             jz        take_key_vaule                ;
11f2 d2530502      145             inc.b     &key_num                      ;
                   146 
11f6 f2b020002000  147             bit.b     #20h,&P1IN                    ;
11fc 1c24          148             jz        take_key_vaule                ;
11fe d2530502      149             inc.b     &key_num                      ;
                   150 
1202 f2b040002000  151             bit.b     #40h,&P1IN                    ;
1208 1624          152             jz        take_key_vaule                ;
120a d2530502      153             inc.b     &key_num                      ;
                   154 
120e f2b080002000  155             bit.b     #80h,&P1IN                    ;
1214 1024          156             jz        take_key_vaule                ;
1216 d2530502      157             inc.b     &key_num                      ;
121a d26203020302  158             rlc.b     &com_byte                     ;
1220 d0c0e1effded  159             bic.b     com_byte,P1OUT                ;
1226 d2830602      160             dec.b     &counter1
122a df23          161             jnz       scan
                   162 ret_end
122c e2c30002      163             bic.b     #key_press,&flag              ;
1230 f043d5ef      164             mov.b     #0ffh,key_vaule
1234 3041          165             ret
                   166 take_key_vaule
1236 e2d30002      167             bis.b     #key_press,&flag
                   168 test_key_m1
123a d240e4ed0402  169             mov.b     P1IN,&buffer                  ;
1240 f2f0f0000402  170             and.b     #0f0h,&buffer
1246 f290f0000402  171             cmp.b     #0f0h,&buffer
124c f623          172             jnz       test_key_m1                   ;
124e 56420502      173             mov.b     &key_num,R6                   ;
1252 d24660120702  174             mov.b     key_table(R6),&key_vaule
1258 d24660120802  175             mov.b     key_table(R6),&key_buff
                   176 retun_end
125e 3041          177             ret
                   178 ;-----------------------------------------------------------------                                                                                                                       
                   179 ;
                   180 ;----------------------------------------------------------------- 
                   181 key_table
1260 0b            182             db        0bh           ;*(key_vaule)       00(key_nem)
1261 09            183             db        09h           ;9                  01
1262 08            184             db        08h           ;8                  02
1263 07            185             db        07h           ;7                  03
1264 00            186             db        00h           ;0                  04
1265 06            187             db        06h           ;6                  05
1266 05            188             db        05h           ;5                  06
1267 04            189             db        04h           ;4                  07
1268 0a            190             db        0ah           ;#                  08
1269 03            191             db        03h           ;3                  09
126a 02            192             db        02h           ;2                  0a
126b 01            193             db        01h           ;1                  0b
                   194 
                   195 ;-----------------------------------------------------------              
                   196 ;
                   197 ;----------------------------------------------------------- 
                   198 lcd_table
126c 7b            199             db        7bh            ;0
126d 12            200             db        12h            ;1
126e 4f            201             db        4fh            ;2
126f 1f            202             db        1fh            ;3
1270 36            203             db        36h            ;4
1271 3d            204             db        3dh            ;5
1272 7d            205             db        7dh            ;6
1273 13            206             db        13h            ;7
1274 7f            207             db        7fh            ;8
1275 3f            208             db        3fH            ;9
1276 6d            209             DB        06dH           ;e
1277 65            210             DB        065H           ;f
                   211 ;------------------------------------------------------------                  
                   212 ; Interrupt Vector Table
                   213 ;-----------------------------------------------------------             
                   214             .pseg INT_VECTORS,abs=0xFFE0    ; MSP430 RESET Vector
                   215 ;-------------------------------------------------------------           
ffe0 0011          216             DW      Reset                   ;0FFE0h
ffe2 0011          217             DW      Reset                   ;0FFE2h
ffe4 0011          218             DW      Reset                   ;0FFE4h
ffe6 0011          219             DW      Reset                   ;0FFE6h
ffe8 0011          220             DW      Reset                   ;0FFE8h
ffea 0011          221             DW      Reset                   ;0FFEAh
ffec 0011          222             DW      Reset                   ;0FFECh
ffee 0011          223             DW      Reset                   ;0FFEEh
fff0 0011          224             DW      Reset                   ;0FFF0h
fff2 0011          225             DW      Reset                   ;0FFF2h
fff4 0011          226             DW      Reset                   ;0FFF4h
fff6 0011          227             DW      Reset                   ;0FFF6h
fff8 0011          228             DW      Reset                   ;0FFF8h
fffa 0011          229             DW      Reset                   ;0FFFAh
fffc 0011          230             DW      Reset                   ;0FFFCh
fffe 0011          231             DW      Reset                   ;0FFFEh
                   232             END
                   233 
                   234 
                   235 
                   236 
                   237 
                   238 
                   239 
                   240 
                   241 
                   242 
                   243 
                   244 
                   245 
                   246 
                   247 
                   248 

⌨️ 快捷键说明

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