Разработка микроконтроллерных
систем управления
«Сердце»

«Мозг»
Исполнительные
механизмы

Датчики
010101010000100101
101010101000010010
010101010000100101
101010101000010010
0xAF 0x10 0x21 0x18
0xBA 0x10 0x21
0x18
Arduino
C:
#include <avr/io.h>
#include <compat/ina90.h>
void waitd()
{
register unsigned short int t = 0;
while(++t) _NOP();
}
in...
#ifndef mt10t7_h
#define mt10t7_h
#include "WProgram.h"
class mt10t7
{
public: mt10t7();
void Strob_WR1(); //Стробирование...
#ifndef mt10t7_cpp
#define mt10t7_cpp
#define A0 8 //8 нога
#define WR1 9 //9 нога
#define DB0 10 // 10 нога
#define DataB...
//
//Конструктор - вызывается всегда при создании экземпляра
класса ье10е7
//
mt10t7::mt10t7()
{
DDRB=B00111111; // Порт к...
void mt10t7::WriteNumber(int Pos,int Num)
{
Data=Pos;
PORTB=Data<<DataBus; //Записываем номер знакоместа
Strob_ADR();
//Ст...
Microcontroller
Microcontroller
Microcontroller
Microcontroller
Microcontroller
Microcontroller
Microcontroller
Microcontroller
Microcontroller
Microcontroller
Microcontroller
Microcontroller
Upcoming SlideShare
Loading in …5
×

Microcontroller

736
-1

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
736
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Microcontroller

  1. 1. Разработка микроконтроллерных систем управления
  2. 2. «Сердце» «Мозг»
  3. 3. Исполнительные механизмы Датчики
  4. 4. 010101010000100101 101010101000010010 010101010000100101 101010101000010010 0xAF 0x10 0x21 0x18 0xBA 0x10 0x21 0x18
  5. 5. Arduino
  6. 6. C: #include <avr/io.h> #include <compat/ina90.h> void waitd() { register unsigned short int t = 0; while(++t) _NOP(); } int main() int led = 13; { void setup() { DDRC |= 0x20; pinMode(led, OUTPUT); while(1) } { PORTC |= 0x20; void loop() { waitd(); digitalWrite(led, HIGH); PORTC &= 0x5F; delay(1000); waitd(); digitalWrite(led, LOW); } delay(1000); return 1; } }
  7. 7. #ifndef mt10t7_h #define mt10t7_h #include "WProgram.h" class mt10t7 { public: mt10t7(); void Strob_WR1(); //Стробирование линии WR1 void WriteNumber(int Pos,int Num); //Запись одной цыфры void WriteSymbol(int Pos,int Num); //Запись одного символа void WriteNumberComma(int Pos,int Num); //Запись одной цифры с точкой void WriteNumbers(double Num); //Запись числа void ClearDisplay(); //Очистка дисплея void InitDisplay(); //Разблокировка экрана void Strob_ADR(); //Стробирование адреса }; #endif // #ifndef mt10t7_h
  8. 8. #ifndef mt10t7_cpp #define mt10t7_cpp #define A0 8 //8 нога #define WR1 9 //9 нога #define DB0 10 // 10 нога #define DataBus 2 //смещение в порту для вывода данных static int array[]={0xEE,0x06,0xF2,0xD6,0x1E,0xDC,0xFC,0x86,0xFE,0xD E,0x01}; //Создаем массив с цифрами от 0 до 9 и . static int array1[]={0xBE,0x7C,0xE8,0x76,0xF8,0xB8,0xEC,0x3E,0x06,0x4 6,0x68,0xEE,0xBA,0x9E,0x30,0xDC,0x6E}; //Создаем массив с символами A,b,C,d,E,F,G,H,I,J,L,O,P,q,r,S,U int Data; // int DataMask; // #include "mt10t7.h"
  9. 9. // //Конструктор - вызывается всегда при создании экземпляра класса ье10е7 // mt10t7::mt10t7() { DDRB=B00111111; // Порт к которому подключен монитор - его настройка //-кроме 7 и 8 все ноги порта ставим на выход //см Cheatcheet PB0-7 pinMode(A0, OUTPUT); //настраиваем ноги на вывод pinMode(WR1, OUTPUT); //настраиваем ноги на вывод InitDisplay(); //Разблокироваем экран ClearDisplay(); //Очищаем дисплей }
  10. 10. void mt10t7::WriteNumber(int Pos,int Num) { Data=Pos; PORTB=Data<<DataBus; //Записываем номер знакоместа Strob_ADR(); //Стробируем адрес Data=array[Num]>>4; // PORTB=Data<<DataBus; //Записываем данные в нижний тетрайду Strob_WR1(); //Стробируем линию WR1 Data=array[Num]&0x0F; // PORTB=Data<<DataBus; //Записываем данные в верхний тетрайду Strob_WR1(); //Стробируем линию WR1 } void mt10t7::WriteSymbol(int Pos,int Num) { Data=Pos; PORTB=Data<<DataBus; //Записываем номер знакоместа Strob_ADR(); //Стробируем адрес Data=array1[Num]>>4; // PORTB=Data<<DataBus; //Записываем данные в нижний тетрайду Strob_WR1(); //Стробируем линию WR1 Data=array1[Num]&0x0F; // PORTB=Data<<DataBus; //Записываем данные в верхний тетрайду Strob_WR1(); //Стробируем линию WR1 }
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×