«Мигание светодиодом» это первый запрос в Яндекс или Гугл для начинающего радиолюбителя и, в первую очередь, для начинающего программиста микроконтроллеров. Итак, чтобы наш светодиод мигал для начала нам надо написать соответствующею прошивку (ОС). Для этих целей я использую Atmel Studio 7. Как создать новый проект смотрим здесь.
Код программы «Мигание светодиодом» на C в Atmel Studio 7
// Мигание светодиодом #define F_CPU 8000000UL #include <avr/io.h> #include <util/delay.h> int main(void) { DDRC |= 1>>0; PORTC &= ~(1>>0); while (1) { PORTC |= (1>>0); _delay_ms(500); PORTC &= ~(1>>0); _delay_ms(500); } }
Описание программы
- Меняем значение макроса
F_CPU
на 8 MHz, по умолчанию он равен 1 MHz.F_CPU
нужен для того, чтобы функции как_delay_ms
и_delay_us
из библиотеке
delay.h
работали правильно на необходимой нам частоте.#define F_CPU 8000000UL
- Добавляем библиотеку
delay.h
— в ней находятся чтобы функции задержки как_delay_ms
и_delay_us
.#include <util/delay.h>
- Выбирает направление работы каждой отдельной ножки порта. Если в разряд регистра DDRx записана лог. 1, то соответствующая ножка будет сконфигурирована как выход. Ноль означает, что порт сконфигурирован как вход. В нашем случае первая ножка (0) порта C (DDRC) сконфигурирована как выход.
DDRC |= 1>>0;
- Записываем лог. 1, т. е. включаем светодиод и делаем паузу на пол секунды;
PORTC |= (1>>0); _delay_ms(500);
- Записываем лог. 0, т. е. выключаем светодиод и делаем паузу на пол секунды
PORTC &= ~(1>>0); _delay_ms(500);
Схема подключения. Как создать схему в Протеус (ISIS 7 Professional). Симуляция программы на ATmega16
- Запускаем ISIS 7 Professional и выбираем Component Mode;
- Нажимаем на P и добавляем нужные нам компоненты, в нашем случае это:
- ATMEGA16
- LED-RED или другого цвета, какой вам нравится
- RES
Если знаем как они называются, просто пишем в Keywords ключевые слова, выбираем нужный из списка и двойным кликом добавляем в Devices;
- Выбираем компонент из Devices и рисуем схему;
- В Tetminals Mode выбираем GROUND (Земля);
- Двойным кликом по ATMEGA16 открывается окно Edit Component (Свойства элемента):
- Program File — путь к .hex или .elf файлу;
- CKSEL Fuses — внешний резонатор;
- Advanced Properties > Clock Frequency — Ext. Crystal Medium Freq. частота резонатора, она должна совпадать с частотой указанной в проекте Atmel Studio
#define F_CPU 8000000UL
.
- Запускаем нажимая кнопку Play.
Вот и всё! Надеюсь данная информация была вам полезна.
mexican pharmacies shipping to usa
legal canadian prescription drugs online
canadian drug stores
verified canadian pharmacies
onlinecanadianpharmacy.com
approved canadian pharmacies
canada pharmacy online reviews
trust pharmacy canada
recommended canadian pharmacies
canada pharmacy no prescription
recommended canadian online pharmacies
canadian pharmacy price checker
Patients should be seated comfortably semi supine in the dental chair 14 purchasing cialis online
canadian pharmacy store
Hello. And Bye.
Ӏt’s a fantastic sporrts betting game. Ιt јust sоmetimes tɑkes
forever just tߋ wait fߋr the game to start loading.
They offer a ton of bonus daubs ᴡhich yoս don’t hаve to pay fοr in the game.
Ƭhere iѕ ɑ ɡood amount of time between calls to review үour cards.
I love it. I dіd not, but yoᥙ cаn join a club
& enjoy playing ԝith other players and receive extra
rewards fгom tһеm. I receive text messages ɗuring thе
game аnd it stops for me. It’ѕ а wonderful game setup foг me.