Нам не хватает еще одного важного элемента – «общего провода» или «корпуса». Элементы такого типа выбираются в режиме Terminals Mode, для чего требуется щелкнуть по иконке с соответствующей надписью на панели инструментов. После этого в окне Object Selector появится список доступных элементов. Точный русскоязычный эквивалент этих терминов в настоящее время не определился. Будем называть эти элементы клеммами. Выберите из списка элемент Ground (земля, общий провод) и поместите его под светодиодом. В итоге должно получиться расположение элементов, приведенное на рис. 2.
3.3.4. Теперь необходимо соединить элементы между собой согласно принципиальной схеме, приведенной на рис. 1. Рассмотрим методику соединения или по-другому «разводки» на примере соединения вывода 6 (RB0/INT) микроконтроллера с выводом резистора R1.
Курсор мыши, при расположении его в произвольном участке схемы, имеет вид бесцветного карандаша. Подведите курсор к выводу 6 (RB0/INT) микроконтроллера. Цвет курсора изменится на зеленый, а на выводе появится красный квадратик, показывающий, что соединение возможно. Щелкните левой кнопкой мыши. Курсор мыши изменится на бесцветный карандаш, чтобы показать, что происходит разводка, и предполагаемый путь будет следовать за движением мыши к концу проводника. При соприкосновении курсора с выводом резистора R1 цвет курсора вновь изменится на зеленый, и появится красный квадратик. Это говорит о том, что соединение возможно. Щелкните левой кнопкой мыши. На схеме появится проводник, соединяющий вывод 6 микроконтроллера с верхним выводом резистора R1.
Рис. 2. Расположение элементов на схеме МКУ
По аналогии выполните соединения нижнего вывода резистора R1 с анодом светодиода, а затем катода светодиода с клеммой общего провода («землей»).
3.3.5. Теперь необходимо изменить значение сопротивления резистора на 300 Ом и изменить тип модели резистора R1 на цифровой (digital). С этой целью подведите курсор к изображению резистора R1 и дважды щелкните левой кнопкой мыши. Откроется окно редактирования свойств компонента. Введите в поле Resistance число 300 (сопротивление), а затем нажмите кнопку в поле Mode Type и выберите пункт DIGITAL. Нажмите кнопку OK для подтверждения выбора параметров. Выбор типа модели резистора digital (цифровой) нужен для того, чтобы симулятор не тратил время на обсчет аналоговых свойств резистора. Это позволяет разгрузить процессор компьютера при моделировании цифровых схем, где элементы работают только при двух уровнях напряжений – высоком и низком. Итак, схема МКУ готова.
Теперь нужно сохранить проект в вашей папке. Выберите пункт меню File > Save Design As… Раскройте вашу папку и сохраните проект под именем led.dsn.
3.3.6. Разработка программы работы МКУ. Предположим, что после включения питания микроконтроллера (его сброса) светодиод будет мигать с частотой 1 Гц. Текст программы на языке Ассемблера может иметь следующий вид.
list p=16f84a
#include<p16f84a.inc>
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _HS_OSC
Count1 equ 0x0C ; регистры хранения переменных
Count2 equ 0x0D
Count3 equ 0x0E ; для подпрограммы временной задержки
org 0x000
clrf PORTB ; очистить регистр-защелку порта B
bsf STATUS,RP0 ; выбрать банк 1
clrf TRISB ; настроить все линии порта В на вывод
bcf STATUS,RP0 ; выбрать банк 0
cycle
bsf PORTB,0 ; включить светодиод
call del500ms ; задержка на 500 мс
bcf PORTB,0 ; выключить светодиод
call del500ms ; задержка на 500 мс
goto cycle ; зацикливание программы
#include”del500ms.asm”
end
В этой программе строка “__CONFIG _CP_OFF …..” является директивой Ассемблера, под руководством которой в выходной hex-файл заносится информация о битах конфигурации микроконтроллера. Она означает:
_CP_OFF – бит защиты кода после программирования не устанавливать;
_WDT_OFF – сторожевой таймер отключен;
_PWRTE_ON – таймер задержки сброса при подаче питания включен;
_HS_OSC – высокочастотный кварцевый резонатор.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.