|
|||||||||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Алгоритм прошивкиПрошивка микроконтроллера представляет собой программу формирующую код КПТШ 5,8 и КПТШ 7,9 с кодовым циклом 1.6с и 1.86с соответственно. Сигнал КПТШ представляет собой последовательность импульсов и интервалов определенной длительности, временные параметры для каждого кода приведены в таблице №2. Таблица №2 Временные параметры кода.
Так как программа разрабатывается на ассемблере, структура прошивки состоит из: 1. Шапка программы. В шапке указывается начальная информация для компилятора. list p=16f84 - директива; #include<p16f84.inc> __CONFIG _CP_OFF&_WDT_OFF&_PWRTE_ON&_HS_OSC – установление параметров программы. cblock 0x0C; автоматическое присвоение адресов заданным именам vrem1 vrem2 vrem3 vrem4 vrem5 pauza end ORG 0x000 clrf PORTA – обнуление содержимого регистров clrf PORTB bsf STATUS, RP0; * Выбор первого банка ОЗУ * movlw b'00011111'; * PORTА на вход * movwf PORTA movlw b'00000000'; * PORTВ на выход * movwf PORTB ; * Проверка входных условий порта А* nach btfsc PORTA,3;пров 0 бита,если третий бит равен 0 то след строку пропуск goto KPTCH58 btfsc PORTA,0;пров 0 бита,если нулевой бит равен 0 то след строку пропуск goto zela btfsc PORTA,1;пров 1 бита,если первый бит равен 0 то след строку пропуск goto gola btfsc PORTA,2;пров 2 бита,если второй бит равен 0 то след строку пропуск goto kga
2. Тело программы. Здесь записываются инструкции, которые буду выполняться микроконтроллером, то есть сама прошивка. Рассмотрим Часть прошивки соответствующей КПТШ 7,9 для кода Зеленый (З). ; Формирование непрерывного кода З зеленого КПТШ 7,9
zela movlw b'00000001';установака 0 бита порта В в 1 movwf PORTB movlw d'35';350; первый импульс кода З movwf vrem3 - пересылка регистра W в регистр f cycle1a call mc10 decfsz vrem3, f goto cycle1a movlw b'00000000';переход 0 бита порта В в 0 movwf PORTB movlw d'12';120;пауза 0,12мс импульса кода З movwf vrem3 cycle2a call mc10 decfsz vrem3, f goto cycle2a movlw b'00000001';переход 0 бита порта В в 1 movwf PORTB movlw d'24';0,24 с второй импульс кода З movwf vrem3 cycle3a call mc10 decfsz vrem3, f goto cycle3a movlw b'00000000';переход 0 бита порта В в 0 movwf PORTB movlw d'12'; пауза 0,12 с импульса кода З movwf vrem3 cycle4a call mc10 decfsz vrem3, f goto cycle4a movlw b'00000001';переход 0 бита порта В в 1 movwf PORTB movlw d'24'; 0,24 с третий импульс кода З movwf vrem3 cycle5a call mc10 decfsz vrem3, f goto cycle5a movlw b'00000000';переход 0 бита порта В в 0 movwf PORTB movlw d'79'; пауза 0,79 с импульса кода З movwf vrem3 cycle7a call mc10 decfsz vrem3, f goto cycle7a goto nach; переход в начало
Для остальных кодов КПТШ программа формируется по аналогичной схеме. Листинг разработанной программы-прошивки для PIC16F84 представлен в ПРИЛОЖЕНИИ Б. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |