Changes for page API контроллеров AZ®
Last modified by Max on 2025/03/02 15:18
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -657,18 +657,18 @@ 657 657 Example program 658 658 659 659 {{code language="assembler"}} 660 -AZ$CSR регистркомандисостояния(CSR)661 -AZ$DR регистрданных(DR)660 +AZ$CSR = 177220; Command and Status Register (CSR) 661 +AZ$DR = 177222; Data Register (DR) 662 662 663 663 664 -; trap 50 - cбросAZ664 +; trap 50 - reset AZ 665 665 ; результат в R1 =0 ok 666 666 AZreset: MOV #AZ$CSR,R1 667 -1$: CLR (R1); Пошлемкоманду"Сброс"668 - TSTB (R1); Проверимготовностьконтроллера669 - BPL 1$; Еслинеготов,сбрасываемеще670 - разипроверяемснова671 - TST (R1); Проверимнаошибку,667 +1$: CLR (R1); Send the "Reset" command 668 + TSTB (R1); Check the controller readiness 669 + BPL 1$; If not ready, reset again 670 +; once and check again 671 + TST (R1); Check for an error, 672 672 BMI 0ERR$ 673 673 CLR R1 674 674 return ... ... @@ -676,27 +676,27 @@ 676 676 COM R1 677 677 return 678 678 679 -; trap 55 - записьэнергонезависимойпамятиизбуферасадресаADREEPROMMEM в блок 1 EEPROM679 +; trap 55 - write non-volatile memory from the buffer at address ADREEPROMMEM в блок 1 EEPROM 680 680 WriteEEPROM: push R1 681 681 push R2 682 682 push R3 683 - call AZreset; сбросим683 + call AZreset; reset 684 684 tst R1 685 685 bne 0ERR$ 686 686 687 687 MOV #AZ$CSR,R1 688 - mov #23,(R1); командуемчтобудемписатьданныевбуфер689 -0$: TSTB (R1); проверяемрезультатвыполнения690 - BPL 0$; ждем691 - TST (R1)+; инкрементируем688 + mov #23,(R1);command that we will write data to the buffer 689 +0$: TSTB (R1); check the result of executio 690 + BPL 0$; wait 691 + TST (R1)+; increment 692 692 mov #ADREEPROMMEM+2,R3 693 - mov #255.,R2; пишем255.слов;первоесловопропускаем-результатчтения694 -1$: mov (R3)+,(R1); отдаемвконтроллер693 + mov #255.,R2; write 255. words; skip the first word - the result of reading 694 +1$: mov (R3)+,(R1); send to the controller 695 695 sob R2,1$ 696 - tst -(R1); декрементируем697 - mov #24,(R1); записатьизбуферавблок1энергонезависимойпамяти698 -2$: TSTB (R1); проверяемрезультатвыполнения699 - BPL 2$; ждем696 + tst -(R1); decrement 697 + mov #24,(R1); write from the buffer to block 1 of non-volatile memory 698 +2$: TSTB (R1); check the result of execution 699 + BPL 2$; we are waiting 700 700 br 0END$ 701 701 0ERR$: CLR R3 702 702 0END$: pop R3 ... ... @@ -705,7 +705,7 @@ 705 705 return 706 706 {{/code}} 707 707 708 -** Обращаювнимание**,призаписи,буферидетсразусданными,тенетпервогословасостатусом.708 +**Please note** that when recording, the buffer immediately comes with the data, i.e. there is no first word with the statu 709 709 710 710 711 711