Микроконтролер PIC18FXX2

Автор работы: Пользователь скрыл имя, 16 Ноября 2011 в 16:49, курсовая работа

Краткое описание

Микропроцессор – функционально законченное устройство обработки информации, управляемое хранимой в памяти программой. Появление микропроцессоров (МП) стало возможным благодаря развитию интегральной электронике. Это позволило перейти от схем малой и средней степени интеграции к большим и сверхбольшим интегральным микросхемам (БИС и СБИС).

Содержание работы

Введение…………………………………………………………………….1
Глава 1. Микроконтроллеры……………………………………………….6
1.1 Микроконтроллеры………………..…………………………………...6
1.2 Описание микроконтроллера PIC18FXX2………..…………………..9
Глава 2. Программирование микроконтроллеров………………….........17
2.1. Программирование микроконтроллеров PIC16/PIC18 на языке C...17
Глава 3. Сборка устройства……………………………………………….21
3.1 Система виртуального моделирования PROTEUS VSM………….21
3.2 Сборка схемы………………………………………………………….24
3.3 Программирование и настройка контроллера………………………26
Заключение……………………………………………………………….42
Список литературы……………………………………………………...43

Содержимое работы - 1 файл

Курсовая.docx

— 1.32 Мб (Скачать файл)

      ADDLW 0xFF

      BRA label268435669

label268435670

      MOVF CompTempVar114, W

      MOVWF gbl_portc

      MOVF gbl_5_tbuff+D'3', F

      BNZ label268435671

      MOVF gbl_5_tbuff+D'2', F

      BNZ label268435671

      MOVLW 0x0C

      MOVWF interrupt_1_mask

      BRA label268435680

label268435671

      MOVF gbl_5_tbuff+D'3', F

      BNZ label268435676

      MOVF gbl_5_tbuff+D'2', F

      BZ label268435676

      MOVLW 0x08

      MOVWF interrupt_1_mask

      BRA label268435680

label268435676

      CLRF interrupt_1_mask

label268435680

      MOVLW 0x04

      CPFSLT gbl_5_digit

      BRA label268435682

      MOVLW 0x01

      MOVWF CompTempVar116

      MOVF gbl_5_digit, W

label268435688

      ANDLW 0xFF

      BZ label268435689

      BCF STATUS,C

      RLCF CompTempVar116, F

      ADDLW 0xFF

      BRA label268435688

label268435689

      MOVF interrupt_1_mask, W

      ANDWF CompTempVar116, W

      BZ label268435690

      SETF gbl_portd

      BRA label268435693

label268435690

      MOVLW HIGH(gbl_5_tbuff) 

      MOVWF FSR0H

      MOVLW LOW(gbl_5_tbuff+D'0')

      MOVWF FSR0L

      MOVF gbl_5_digit, W

      ADDWF FSR0L, F

      MOVF INDF0, W

      MOVWF CompTempVar118

      MOVLW HIGH(gbl_map) 

      MOVWF FSR0H

      MOVLW LOW(gbl_map+D'0')

      MOVWF FSR0L

      MOVF CompTempVar118, W

      ADDWF FSR0L, F

      DECF gbl_5_digit, W

      BNZ label268435699

      CLRF CompTempVar121

      BRA label268435701

label268435699

      MOVLW 0x80

      MOVWF CompTempVar121

label268435701

      MOVF CompTempVar121, W

      IORWF INDF0, W

      MOVWF gbl_portd

label268435693

      DECF gbl_isthcopen, W

      BNZ label268435711

      MOVLW HIGH(gbl_open) 

      MOVWF FSR0H

      MOVLW LOW(gbl_open+D'0')

      MOVWF FSR0L

      MOVF gbl_5_digit, W

      ADDWF FSR0L, F

      MOVF INDF0, W

      MOVWF gbl_portd

      BRA label268435711

label268435682

      MOVLW 0x04

      CPFSEQ gbl_5_digit

      BRA label268435707

      MOVLW 0x9C

      MOVWF gbl_portd

      BRA label268435711

label268435707

      MOVLW 0x05

      CPFSEQ gbl_5_digit

      BRA label268435711

      MOVLW 0xC6

      MOVWF gbl_portd

label268435711

      MOVLW 0x05

      MOVWF delay_100u_00000_arg_del

      CALL delay_100u_00000

      SETF gbl_portd

      INCF gbl_5_digit, F

      INFSNZ gbl_5_interrupt_timer, F

      INCF gbl_5_interrupt_timer+D'1', F

      BCF gbl_disoff_out,0

      MOVLW 0x01

      MOVWF delay_100u_00000_arg_del

      CALL delay_100u_00000

      BSF gbl_disoff_out,0

      MOVFF Int1Context+D'3',  PRODL

      MOVFF Int1Context+D'2',  PRODH

      MOVFF Int1Context+D'1',  FSR0L

      MOVFF Int1Context,  FSR0H

      RETFIE 1

; } interrupt function end 

      ORG 0x00300002

      DW 0xFEFF

      END

     После написания кода необходимо скомпилировать проект с помощью компилятора MPASM. 

После этого  наш проект полностью готов.

Демонстрация  программы (рис. 12) 
 
 

 

Заключение 

     По  полученному заданию была проделана  работа в  полном  объеме,  разработан электронный термометр для вычесления особо больших температур на  микроконтроллере PIC18F452,   написана   программа   для   него, рассмотрены вопросы программирования МК. При выполнении  данной  работы  был получен ценный  опыт   разработки  подобных  устройств получены  навыки  в разработке  программ  на  языке ассемблер также был   закреплены    знания, полученные на занятиях.

 

Список  литературы

  1. Фрунзе  А.В.  Микроконтроллеры? Это же просто! Т.2. – М.: ИД СКИМЕН, 2002, – 392 с.
  2. Мысловский Э., Власов А., Акристиний М. Краткий обзор популярных семейств современных микроконтроллеров // Электронные компоненты. №5. 2002. С.47-50
  3. Архитектура микроконтроллеров MCS-51 // Официальный сайт Сибирского государственного университета телекоммуникаций и информатики. http://www.sibsutis.ru/~mavr/MCS51/MCS_51.htm
  4. Ахметов М. 8-разрядные RISC микроконтроллеры // Новости о микросхемах.  http://chipnews.gaw.ru/html.cgi/arhiv/99_09/stat_2.htm
  5. Кривченко И.В. AVR – микроконтроллеры: очередной этап на пути развития // Компоненты и технологии. №3. 2002. С.30-34
  6. Микроконтроллеры и интегрированные процессоры Motorola // Лаборатория микропроцессорной техники. http://embedded.ifmo.ru/lib/DOC/MCS/MOTOROLA/WWW_Server/intro8.htm
  7. Технические решения на базе цифровых сигнальных процессоров компании Motorola // Консультационно-технический центр по микроконтроллерам. http://www.cec-mc.ru/read/art6.shtml
  8. Дэвис Генри (перевод Ахметова М., Биленко А.), Стандартный DSP или конфигурируемый микроконтроллер // Новости о микросхемах. http://www.chip-news.ru/archive/chipnews/200102/4.html

Информация о работе Микроконтролер PIC18FXX2