Составители:
19
PCL при сложении с индексом элемента массива. Сумма PCL и индекса
должна быть в пределах байтового представления, т. е. не больше 255.
Поэтому рекомендуется располагать подпрограммы-массивы в самом начале
памяти программ и использовать массивы размера менее 250.
Работа с массивами в ОЗУ
Для работы с массивами в ОЗУ используется косвенная адресация через
регистр FSR.
В регистр FSR помещается адрес очередного элемента массива, а
затем выполняется операция с операндом, расположенным по нулевому
адресу. На самом деле при этом будет выполняться обращение не к операнду по
нулевому адресу ОЗУ, а косвенное обращение к ячейке ОЗУ, адрес которой
хранится в FSR (в текущей странице).
Пример:
------------------------------------------------
movlw 0х55 ; загрузили в акк.
константу 0x55
movwf FSR ; переслали константу в FSR
movfw 0 ; загрузка в W ячейки ОЗУ с адресом 0х55 (косвенно через FSR)
-----------------------------------------------
Для обработки элементов массива в цикле следует организовать цикл по
некоторой переменной, хранящейся в ОЗУ и использовать эту переменную для
косвенной адресации к очередному элементу массива.
Пример: Программа выполняет перенос массива констант из ПЗУ в ОЗУ.
Листинг программы можно найти в Приложении 1.
Семисегментный светодиодный индикатор
Семисегментный индикатор предназначен для отображения цифровой
информации. Изображение цифра формируется из нескольких светящихся
сегментов (см. рис. 1). Если не считать сегмента-точки, то всего сегментов
семь, откуда и произошло название этого типа индикаторов.
Страницы
- « первая
- ‹ предыдущая
- …
- 19
- 20
- 21
- 22
- 23
- …
- следующая ›
- последняя »