![](/user_photo/2706_HbeT2.jpg)
- •Кафедра «Мехатронные системы»
- •Изучение модуля Таймер а микроконтроллера msp430f2013 Ижевск 2012
- •Введение
- •Задание
- •1 Порядок выполнения работы
- •2 Структура и содержание отчета
- •3 Контрольные вопросы для защиты лабораторной работы
- •Литература
- •Void main(void)
- •While(1); // If calibration constants erased // do not load, trap cpu!!
- •I вариант
- •II вариант
2 Структура и содержание отчета
В соответствии с заданием после выполнения лабораторной работы необходимо оформить и представить к защите отчет, содержащий следующие элементы и разделы:
титульный лист;
содержание;
введение;
задание на лабораторную работу;
разработка схемы алгоритма решения задачи в соответствии с ГОСТ 19.701-90;
разработка программы в соответствии с ГОСТ 19.401-78;
результаты вычислительного эксперимента;
выводы;
список литературы (в соответствии с ГОСТ 7.0.5-2008).
3 Контрольные вопросы для защиты лабораторной работы
Для успешной защиты лабораторной работы необходимо ответить на следующие контрольные вопросы преподавателя по теме выполненной работы:
Таймер A микроконтроллера MSP430.
Режимы работы таймера А.
Режим захвата.
Режим сравнения.
Режим вывода.
Прерывания таймера А.
Регистры таймера А.
Литература
Analog, Embedded Processing, Semiconductor Company, Texas Instruments. URL: http://www.ti.com (дата обращения: 21.04.2011)
MSP430x2xx Family User’s Guide (SLAU144F) – руководство пользователя на англ.яз., 2010. URL: http://ti.com (дата обращения – декабрь 2010г.)
MSP430x20x1, MSP430x20x2, MSP430x20x3 MIXED SIGNAL MICROCONTROLLER (SLAS491F) – техническое описание микроконтроллеров на англ. яз., исправл. 2011. URL: http://focus.ti.com/lit/ds/slas491f/slas491f.pdf (дата обращения – март 2011 г.)
Семейство микроконтроллеров MSP430x1xx. Руководство пользователя: Пер. с англ. – М.:Серия «Библиотека Компэла». ЗАО «Компэл», 2004. – 368 с. ISBN 5-98730-001-0.
Семейство микроконтроллеров MSP430x2xx. Архитектура, программирование, разработка приложений / пер. с англ. Евстифеева А.В. – М.: Додэка-XXI, 2010. – 544 с. ISBN 978-5-94120-221-9
Приложение А
(Обязательное)
Демонстрационная управляющая программа
Демонстрационная программа вывода ШИМ-сигнала в порт P1.2. Программа написана на ассемблере в интегрированной среде обработки IAR Kickstart.
;*******************************************************************************
; MSP430F20xx Demo - Timer_A, PWM TA1, Up Mode, DCO SMCLK
;
; Description: This program generates one PWM output on P1.2 using
; Timer_A configured for up mode. The value in CCR0, 512-1, defines the PWM
; period and the value in CCR1 the PWM duty cycles.
; A 75% duty cycle is on P1.2.
; ACLK = n/a, SMCLK = MCLK = TACLK = DCO =1MHz;
; MSP430F20xx
; -----------------
; /|\| XIN|-
; | | |
; --|RST XOUT|-
; | |
; | P1.2/TA1|--> CCR1 - 75% PWM
;
; M. Buccini / L. Westlund
; Texas Instruments Inc.
; October 2005
; Built with IAR Embedded Workbench Version: 3.40A
;*******************************************************************************
#include "msp430x20x3.h"
;-------------------------------------------------------------------------------
ORG 0F800h ; Program Reset
;-------------------------------------------------------------------------------
RESET mov.w #0280h,SP ; Initialize stackpointer
StopWDT mov.w #WDTPW+WDTHOLD,&WDTCTL ; Stop WDT
CheckCal cmp.b #0FFh,&CALBC1_1MHZ ; Calibration constants erased?
jeq Trap
cmp.b #0FFh,&CALDCO_1MHZ
jne Load
Trap jmp $ ; Trap CPU!!
Load mov.b &CALBC1_1MHZ,&BCSCTL1 ; Set DCO to 1MHz
mov.b &CALDCO_1MHZ,&DCOCTL
SetupP1 bis.b #00Ch,&P1DIR ; P1.2 and P1.3 output
bis.b #00Ch,&P1SEL ; P1.2 and P1.3 TA1/2 options
SetupC0 mov.w #512-1,&CCR0 ; PWM Period
SetupC1 mov.w #OUTMOD_7,&CCTL1 ; CCR1 reset/set
mov.w #384,&CCR1 ; CCR1 PWM Duty Cycle
SetupTA mov.w #TASSEL_2+MC_1,&TACTL ; SMCLK, upmode
;
Mainloop bis.w #CPUOFF,SR ; CPU off
nop ; Required only for debugger
;
;-------------------------------------------------------------------------------
; Interrupt Vectors
;-------------------------------------------------------------------------------
ORG 0FFFEh ; MSP430 RESET Vector
DW RESET ;
END
//******************************************************************************
// Timer_A, Toggle P1.0-2, Cont. Mode ISR, DCO SMCLK
//
// ACLK = n/a, MCLK = SMCLK = TACLK =calibrated DCO =1MHz
// As coded and assuming =1MHz DCO, toggle rates are:
// P1.1 = CCR0 = 1MHz/(2*200) =2500Hz
// P1.2 = CCR1 = 1MHz/(2*1000) =500Hz
// P1.0 = overflow = 1MHz/(2*65536) =8Hz
//
// MSP430F20xx
// -----------------
// /|\| XIN|-
// | | |
// --|RST XOUT|-
// | |
// | P1.1/TA0|--> CCR0
// | P1.2/TA1|--> CCR1
// | P1.0|--> Overflow/software
//
//******************************************************************************
#include <msp430x20x3.h>