>>> ПРИМЕРЫ программирования микроконтроллеров AVR и PIC

MCU6. Управление длительностью и направлением вращения электромотора с помощью микроконтроллера PIC

Необходимо написать в MPLAB X IDE программу для управления длительностью и направлением вращения вала электромотора небольшой мощности, которую, например, можно применить для робота, встречающего посетителей приветственным взмахом руки. Управление электромотором осуществляется с помощью микроконтроллера PIC. Пусть вал электромотора вращается по следующему алгоритму: 3 с вращается по часовой стрелке (рука робота поднимается), затем останавливается на 500 […]

MCU6. Управление длительностью и направлением вращения электромотора с помощью микроконтроллера PIC Читать дальше »

MCU5. Подключение к микроконтроллеру PIC температурного датчика

Написать программу по подключению к микроконтроллеру PIC температурного датчика и отображению показаний датчика на жидкокристаллическом дисплее. Задействовать в проекте температурный датчик LM35, микроконтроллер PIC18F46K22, двухстрочный ЖК дисплей модели LM016L. Код программы создать с помощью конфигуратора кода МСС.Листинг программы: #include “mcc_generated_files/mcc.h”#include “lcd.h”#include<stdio.h>#include<stdlib.h>uint16_t convertedValue;float tmp;char Buffer[16];void main(void) {SYSTEM_Initialize();ADC_Initialize();LCD_Initialize();while (1) {convertedValue=0;ADC_SelectChannel(channel_AN0);ADC_StartConversion(); while(!ADC_IsConversionDone());convertedValue=ADC_GetConversionResult();tmp=convertedValue*5000./(1023*10); LCDPutStr(“T=”);sprintf(Buffer, “%.2f”, tmp);LCDPutStr(Buffer);LCDPutChar(223);LCDPutChar(‘C’);LCDGoto(0,0);__delay_ms(1000);LCDPutCmd(LCD_CLEAR);}} Моделирование программы в

MCU5. Подключение к микроконтроллеру PIC температурного датчика Читать дальше »

MCU4. Отображение цифр на двух семисегментных индикаторах с помощью микроконтроллера PIC.

Написать программу для последовательного отображения чисел от 0 до 19 (с шагом 1) на двух рядом расположенных одноразрядных семисегментных индикаторах. Отображение цифр начинается с левого индикатора, затем (на втором десятке) подключается правый индикатор. Задействовать в проекте микроконтроллер Atmega8. Подключение семисегментного индикатора к микроконтроллеру подробно изложено в учебном пособии “Программирование микроконтроллеров”.Листинг программы: #define F_CPU 1000000UL#include <avr/io.h>#include

MCU4. Отображение цифр на двух семисегментных индикаторах с помощью микроконтроллера PIC. Читать дальше »

MCU3. Подключение к микроконтроллеру PIC силовой нагрузки

Написать программу, в которой микроконтроллер по нажатию левой кнопки запускает вращение электромотора и по нажатию правой кнопки запускает попеременное мигание двух электрических ламп. Задействовать в проекте микроконтроллер PIC18F2220.Листинг программы (без конфигурационных битов) имеет вид: #include <xc.h> #define _XTAL_FREQ 8000000#include <stdio.h>#include <stdlib.h>void main (void){TRISC |=(1 << 0);TRISC |=(1 << 1);TRISB &=~(1<<7);TRISB &=~(1<<6);TRISC &=~(1<<7);OSCCON = 0b01110110;while (1){//

MCU3. Подключение к микроконтроллеру PIC силовой нагрузки Читать дальше »

MCU2. Случайное мигание светодиодов под управлением микроконтроллера PIC

Написать программу, в которой реализуется алгоритм случайного мигания светодиодов в слове MIUZ.В программе используются генератор случайных чисел rand() и операция «остаток от деления на 4». В результате этой операции получаем число m, которое принимает значения 0, 1, 2, 3. Именно такие значения может принимать остаток от деления произвольного числа на 4. Далее в программе используется

MCU2. Случайное мигание светодиодов под управлением микроконтроллера PIC Читать дальше »

MCU1. Засвечивание букв P, I, C на матрице светодиодов. Программирование с помощью микроконтроллера PIC

Написать программу, в которой на матрице светодиодов 5х4 (высота х ширина) последовательно отображаются буквы P, I, C. Задействовать в проекте микроконтроллер PIC16F877A.Листинг программы (без конфигурационных битов) имеет вид: #include <xc.h>#define _XTAL_FREQ 8000000#include<stdio.h>#include<stdlib.h>void main(void) {TRISB=0;TRISC=0;TRISD=0;int i;while(1){// Отображение буквы PPORTB=0b11100000;PORTC=0b11101001; PORTD=0b10001000;__delay_ms(500);PORTB=0;PORTC=0;PORTD=0;__delay_ms(500); // Отображение буквы IPORTB=0b11100000;PORTC=0b01000100; PORTD=0b11100100;__delay_ms(500);PORTB=0;PORTC=0;PORTD=0;__delay_ms(500); // Отображение буквы CPORTB=0b01110000;PORTC=0b10001000; PORTD=0b01111000;__delay_ms(500);PORTB=0;PORTC=0;PORTD=0;__delay_ms(500);}return;} Моделирование Проводим отладку программы и добиваемся

MCU1. Засвечивание букв P, I, C на матрице светодиодов. Программирование с помощью микроконтроллера PIC Читать дальше »