- •Лабораторна робота №3
- •Текст програми
- •Interrupt movwf w_copy ;Сохраняем контекст
- •Incf number,f ;Подготавливаемся к воспроизведению следующей мелодии
- •Incf counter,f ;Инкрементируем счетчик номера ноты
- •Incf number,f ;Подготавливаемся к воспроизведению следующей мелодии
- •Xorwf temp3,w ;Последний светодиод был?
- •Приводимо текст нех файла:
- •Використані команди:
- •Висновки:
Приводимо текст нех файла:
:020000040000FA
:10000000831207309F002329F0000308F10080309D
:10001000810072088400000986003F307206031DCB
:1000200013282030F200F20A780803191728F70184
:1000300076080B3C031C20280B3C8A0182074929C7
:100040007808031D2A28F60A76080B3C031CF601E3
:100050000A30F8007220C83067200B117108830045
:10006000F00E700E09008A01820708341034203423
:100070003034403460348034FF34183C031C003486
:100080008A01183C8207FC34EE34E034D434CA349C
:10009000BE34B234A8349E3496348E3486347E34E2
:1000A000773470346A3465345F34593454344F349F
:1000B0004B34473443343F3407398A018207FE34D6
:1000C000FC34F834F034E034C03480340034FA00C6
:1000D000FA08031908000301013E031D6C28FA0BFE
:1000E0006C280800860164306720FF308600080015
:1000F000F50007393320F400F50CF50C750C1F39A9
:100100003D20F50077085C208600F70A831605304D
:1001100081008312F508031D7915730881000B1106
:100120007908F508031D85007508FD3EFF3E031D97
:1001300096287911F9157908F508031D85007503CE
:10014000FF3E031DA028F91179150B1D9028F40B13
:100150008D287911790885000430672083160030D6
:1001600081008312F60A76080B3C031CF601080096
:100170002108A2002308A400A500A6002708A800C3
:10018000A900AA00AB00AC00AD00AE002F08B00083
:10019000B100B200B300B400B500B600B700B800BB
:1001A000B900BA00BB00BC00BD00BE00BF01080022
:1001B0008B137C080319F3280310A00D03182014D7
:1001C0000310A10D031821140310A30D0318231409
:1001D0000310A70D031827140310AF0D03182F14D5
:1001E000FF3E031DDC28B8208B177E08672008001F
:1001F0008B13B8208B177E08672008008530A0007D
:100200009630A1009830A300A030A700C030AF0006
:10021000D8200800FC01FE207F08FE07FC0A0830F9
:100220007C06031D0B29FB0B0A2908000730FC0084
:10023000FE207F08FE07FC03FF307C06031D182903
:10024000FB0B162908008508860803138316013066
:100250008500003086000030810083128501FF3068
:100260008600F901F6012030F2000530F800810126
:10027000A0308B003B29F030FE000530FB00FF3042
:10028000FF0016210530FB000130FF001621F803A6
:100290003B298C30F30083166B309B0083161C14B3
:1002A00000001A088312782083169B0A1B08831209
:1002B000803A031920284E2992007A006C005400DD
:1002C0007A007A006A007A005C004400FC00320088
:1002D00042005400FA0052008A008A007A0072003C
:0402E0007C00232952
:02400E00303F41
:00000001FF
Використані команди:
№ |
Команда |
Опис команди |
Приклад використання |
1 |
ORG |
Встановити адресу програми |
ORG 0 |
2 |
CLRF |
Очистити f |
CLRF PORTA |
3 |
BCF |
Очистити біт b у реєстрі f |
BCF STATUS,RP0 |
4 |
BSF |
Встановити біт b у реєстрі f |
BSF STATUS,RP0 |
5 |
MOVLW |
Переслати константу у W |
MOVLW D'7' |
6 |
MOVWF |
Переслати W в f |
MOVWF CH2 |
7 |
MOVF |
Переслати f |
MOVF RW,0 |
8 |
DECFSZ |
Відняти 1 із f і пропустити якщо 0 |
DECFSZ CH1,1 |
9 |
RETLW |
Повернення з підпрограми із загрузкою константи |
RETLW B'00000001' |
10 |
CALL |
Виклик підпрограми |
CALL KOM |
11 |
GOTO |
Безумовний перехід |
GOTO А |
