Читаем Микроконтроллеры AVR: от простого к сложному полностью

#include <90s2313.h>

#include "HG.h"

// Timer 0 overflow interrupt service routine interrupt [TIM0_OVF] void timer0_ovf_isr(void)

{

// Reinitialize Timer's 0 value

TCNT0=0xFF;

// Place your code here

HG12();

}

// Timer 1 overflow interrupt service routine

interrupt [TIM1_0VF] void timer1_ovf_isr(void)

{

// Reinitialize Timer's 1 value

TCNT1H=0xf0;

TCNT1L=0xbe;

// Place your code here

N++;

if (N==20) N=0;

// Declare your global variables here

void main(void)

{

unsigned int temp,temp1,temp2;

// Input/Output Ports initialization

// Port В

P0RTB=0x00;

DDRB=0xFF;

// Port D

P0RTD=0x00;

DDRD=0x00;

// Timer/Counter 0 initialization

// Clock source: System Clock

// Clock value: 3906 kHz

// Mode: Output Compare

// OCD output: Disconnected

TCCR0=0x05;

TCNT0=0xFF;

// Timer/Counter 1 initialization

// Clock source: System Clock

// Clock value: 3,906 kHz

// Mode: Output Compare

// OC1 output: Discon.

// Noise Canceler: Off

// Input Capture on Falling Edge

TCCR1A=0x00;

TCCR1B=0x05:

TCNT1H=0xf0;

TCNT1L=0xbe;

0CR1H=0x00;

0CR1L=0x11;

// External Interrupt(s) initialization

// INT0: Off

// INT1: Off

GIMSK=0x00;

MCUCR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization

TIMSK=0x82;

// Analog Comparator initialization

// Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off

ACSR=0x80:

// Global enable interrupts

#asm("sei")

init_HG();

while (1)

    {

    };

}

Звуковой генератор на частоту 1000 Гц

К нулевой линии порта В подсоединен транзисторный ключ, управляющий динамической головкой.

Микроконтроллер: AT90S2313.

Кварцевый резонатор: 4 МГц.

#include <90s2313.h>

// Процедура обработки прерывания Timer 1 по переполнению

interrupt [TIM1_0VF] void timer1_ovf_isr(void)

{

// Перезагрузить значение Timer 1

TCNT1H=0xff;

TCNT1L=0xfd;

if (PINB. 0–0) PORTB. 0=1; else P0RTB.0=0;

}

void main(void)

{

// Инициализация портов ввода/вывода

// Port В

DDRB=0xFF;

P0RTB=0x00;

// Port D

PORTD=0x00:

DDRD=0x00;

// Инициализация Timer 1

// Clock source: System Clock

// Clock value: 3906 kHz

// Mode: Output Compare

// OC1 output: Discon.

// Noise Canceler: Off

// Input Capture on Falling Edge

TCCR1A=0x00;

TCCR1B=0x05;

TCNT1H=0xff;

TCNT1L=0xfd;

0CR1H=0x00;

0CR1L=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization

TIMSK=0x80;

P0RTB=0x00;

while (1);

}

Модель светофора

К линиям 0, 1 и 2 порта В подсоединены соответственно красный, желтый и зеленый светодиоды.

Микроконтроллер: AT90S2313.

Кварцевый резонатор: 4 МГц.

Текст программы:

Перейти на страницу:

Все книги серии Библиотека инженера

Похожие книги

Электроника для начинающих (2-е издание)
Электроника для начинающих (2-е издание)

В ходе практических экспериментов рассмотрены основы электроники и показано, как проектировать, отлаживать и изготавливать электронные устройства в домашних условиях. Материал излагается последовательно от простого к сложному, начиная с простых опытов с электрическим током и заканчивая созданием сложных устройств с использованием транзисторов и микроконтроллеров. Описаны основные законы электроники, а также принципы функционирования различных электронных компонентов. Показано, как изготовить охранную сигнализацию, елочные огни, электронные украшения, устройство преобразования звука, кодовый замок и др. Приведены пошаговые инструкции и более 500 наглядных рисунков и фотографий. Во втором издании существенно переработан текст книги, в экспериментах используются более доступные электронные компоненты, добавлены новые проекты, в том числе с контроллером Arduino.

Чарльз Платт

Радиоэлектроника / Технические науки
Электроника для начинающих
Электроника для начинающих

В ходе практических экспериментов рассмотрены основы электроники и показано, как проектировать, отлаживать и изготавливать электронные устройства в домашних условиях. Материал излагается последовательно от простого к сложному, начиная с простых опытов с электрическим током и заканчивая созданием сложных устройств с использованием транзисторов и микроконтроллеров. Описаны основные законы электроники, а также принципы функционирования различных электронных компонентов. Показано, как изготовить охранную сигнализацию для защиты от проникновения в дом, елочные огни, электронные украшения для одежды, устройство преобразования звука, кодовый замок, автономную роботизированную тележку и др. Приведены пошаговые инструкции и более 500 наглядных рисунков и фотографий.Для начинающих радиолюбителей

Паоло Аливерти , Чарльз Платт

Радиоэлектроника / Технические науки
Искусство схемотехники. Том 3 (Изд.4-е)
Искусство схемотехники. Том 3 (Изд.4-е)

Широко известная читателю по предыдущим изданиям монография известных американских специалистов посвящена быстро развивающимся областям электроники. В ней приведены наиболее интересные технические решения, а также анализируются ошибки разработчиков аппаратуры: внимание читателя сосредотачивается на тонких аспектах проектирования и применения электронных схем. На русском языке издается в трех томах. Том 3 содержит сведения о микропроцессорах, радиотехнических схемах, методах измерения и обработки сигналов, принципах конструирования аппаратуры и проектирования маломощных устройств, а также обширные приложения. Для специалистов в области электроники, автоматики, вычислительной техники, а также студентов соответствующих специальностей вузов и техникумов.

Пауль Хоровиц , Уинфилд Хилл

Техника / Радиоэлектроника