Информация о Turbo51 - Поиск

Информация о Turbo51 - Поиск


Результат поиска для Turbo51
Вы можете получить подробную информацию обо всем, что вы ищете

Вы можете воспользоваться различными полезными ссылками, связанными со словом Turbo51


Найти и скачать песни, соответствующие слову Turbo51


Для слова Turbo51 см. полезные ссылки


Просмотреть и загрузить изображения, соответствующие слову Turbo51


Ищите и читайте статьи, которые соответствуют слову Turbo51


Читать статью о слове Turbo51 в Википедии


Turbo51 Ищите и читайте новости


Смотреть и скачать фильмы, которые соответствуют слову Turbo51


Смотрите и скачивайте дорамы, соответствующие слову Turbo51



Мы стараемся помочь вам найти все, что соответствует слову Turbo51. Если вы не можете найти здесь то, что ищете, перейдите на главную страницу. Наш сайт обновляется каждый день, каждый день появляются новые песни, видео, картинки, фильмы, сериалы, интересные новости и т.д. добавлен. Самое главное, вы можете скачать самую безопасную программу Whatsapp Plus с нашего сайта. Если мы не нашли ничего, соответствующего вашему запросу Turbo51, мы скоро опубликуем это для вас.
Спасибо, что выбрали нас!

Кроме того, вы можете воспользоваться полезными ссылками, которыми поделились

Turbo51 — компилятор для языка программирования Pascal, для семейства микроконтроллеров Intel MCS-51 (8051).

Turbo51
Скриншот программы Turbo51
Turbo51 command line output
Тип Compiler
Разработчик Igor Funa
Операционная система Win32
Последняя версия 0.1.3.16 (14 октября 2012; 11 лет назад (2012-10-14))
Лицензия Freeware
Сайт turbo51.com

Он имеет синтаксис Borland Turbo Pascal 7, в том числе, поддерживает объектно-ориентированное программирование. Компилятор написан на языке Object Pascal и разработан на Delphi.

В 1980 году Intel представила 8051 как первый член семейства процессоров MCS-51. Сегодня десятки предприятий производят сотни разновидностей указанного семейства микроконтроллеров со множеством изменений и добавлений, расширяющих возможности семейства. Поэтому архитектура микроконтроллеров по-прежнему вызывает интерес у профессионалов и любителей. Для микроконтроллеров MCS-51 существует множество С-компиляторов, но совсем немного компиляторов Pascal.

Turbo51 создавался как бесплатный компилятор, который работает так же быстро, как Turbo Pascal, использует тот же синтаксис и генерирует высококачественный оптимизированный код.

Автор компилятора — Игорь Фуна, Словения.

Диалект языка править

Turbo51 использует диалект языка Borland Turbo Pascal 7. Синтаксис был расширен некоторыми конструкциями для поддержки особенностей микроконтроллеров MCS-51.

Var   RS485_TX: Boolean absolute P3.2;
      I2C.SDA:   Boolean absolute P3.7;
      I2C.SCL:   Boolean absolute P3.4;

      EEPROM_Data:    TEEPROM_Data XDATA absolute 0;

      ModuleAddress:  Byte;
      RX_LedTimer:    Byte;
      TX_LedTimer:    Byte;

      SavedOutput:    TOutputData IDATA;
      OutputsAuxData: Array [1..8] of Byte IDATA;

Особенности править

  • Консольное приложение Win32
  • Быстрый однопроходный оптимизирующий компилятор
  • Синтаксис Borland Turbo Pascal 7
  • Полная поддержка плавающей точки
  • Смешанное программирование на Pascal и ассемблере
  • Полное использование банков регистров
  • Расширенный многопроходный оптимизатор
  • «Умный» компоновщик
  • Генерирует компактный высококачественный код
  • Форматы выходных файлов: Binary, Intel HEX, OMF51

Пример программы «Hello World» править

Исходный текст программы:

Program HelloWorld;

Const
 Osc      = 22118400;
 BaudRate = 19200;

 BaudRateTimerValue = Byte (- Osc div 12 div 32 div BaudRate);

Var SerialPort: Text;

Procedure WriteToSerialPort; Assembler;
Asm
  CLR   TI
  MOV   SBUF, A
@WaitLoop:
  JNB   TI, @WaitLoop
end;

Procedure Init;
begin
  TL1  := BaudRateTimerValue;
  TH1  := BaudRateTimerValue;
  TMOD := %00100001;    { Timer1: no GATE, 8 bit timer, autoreload }
  SCON := %01010000;    { Serial Mode 1, Enable Reception }
  TI   := True;         { Indicate TX ready }
  TR1  := True;         { Enable timer 1 }

  Assign (SerialPort, WriteToSerialPort);
end;

begin
  Init;
  Writeln (SerialPort, 'Hello world!');
end.

Текст откомпилированной программы на ассемблере:

; Turbo51 version 0.1.3.10, Copyright 2000 - 2011 Igor Funa

$REGISTERBANK (0)

_CODE         SEGMENT  CODE
_CONST        SEGMENT  CODE
_DATA         SEGMENT  DATA

              EXTRN    DATA  (CurrentIO)
              EXTRN    IDATA (StackStart)

              EXTRN    CODE  (sysWriteStr_CODE)
              EXTRN    CODE  (sysWriteLine)

; Program HelloWorld;
; 
; Const

RSEG _CONST

;  Osc      = 22118400;
;  BaudRate = 19200;
; 
;  BaudRateTimerValue = Byte (- Osc div 12 div 32 div BaudRate);
; 
; Var SerialPort: Text;

RSEG _DATA

SerialPort:                     DS       4

; 
; Procedure WriteToSerialPort; Assembler;

RSEG _CODE

USING 0

WriteToSerialPort:
; Asm
;   CLR   TI
              CLR       SCON.1

;   MOV   SBUF, A
              MOV       SBUF, A

; @WaitLoop:
L_001D:
;   JNB   TI, @WaitLoop
              JNB       SCON.1, L_001D

; end;
              RET

; 
; Procedure Init;

Init:
; begin
;   TL1  := BaudRateTimerValue;
              MOV       TL1, #$FD

;   TH1  := BaudRateTimerValue;
              MOV       TH1, #$FD

;   TMOD := %00100001;    { Timer1: no GATE, 8 bit timer, autoreload }
              MOV       TMOD, #$21

;   SCON := %01010000;    { Serial Mode 1, Enable Reception }
              MOV       SCON, #$50

;   TI   := True;         { Indicate TX ready }
              SETB      SCON.1

;   TR1  := True;         { Enable timer 1 }
              SETB      TCON.6

; 
;   Assign (SerialPort, WriteToSerialPort);
              MOV       SerialPort, #LOW  (WriteToSerialPort)
              MOV       SerialPort+1, #HIGH (WriteToSerialPort)

; end;
              RET

RSEG _CONST

C_0071:                         DB        12, 'Hello world!'

CSEG AT $0000

HelloWorld:
; 
; begin
              MOV       SP, #StackStart-1

;   Init;
              LCALL     Init

;   Writeln (SerialPort, 'Hello world!');
              MOV       CurrentIO, SerialPort
              MOV       CurrentIO+1, SerialPort+1
              MOV       DPTR, #C_0071
              MOV       R6, #0
              LCALL     sysWriteStr_CODE
              LCALL     sysWriteLine

; end.
L_0017:
              SJMP      L_0017

              END

Интегрированная среда разработки править

MC-51 править

Интегрированная среда разработки для микроконтроллеров 8051.

MC-51 содержит:

  • Текстовый редактор с подсветкой синтаксиса для создания исходных текстов программ на ассемблере и Паскале;
  • Интерфейс к Turbo51 для компилирования с Паскаля;
  • Интерфейс к ASEMW для ассемблирования;
  • Комплексный симулятор и отладчик для всех основных функций, включая таймеры и последовательный интерфейс;
  • Терминальное окно для общения с монитором программы в микроконтроллере и загрузки программ в память микроконтроллера в формате Intel Hex;
  • Модуль флэш-программирования микроконтроллеров Atmel AT89S8252/53 через последовательный интерфейс.

Для компиляции исходных файлов MC-51 использует вызов командной строки программы (ASEMW или Turbo51) с адекватными параметрами. При нажатии на сообщение об ошибке редактор позволяет непосредственно перейти к строке, содержащей ошибку. Встроенный текстовый редактор использует компоненты с открытым исходным кодом SynEdit. Кроме того, многие расширенные функции редактора SynEdit поддерживают подсветку синтаксиса конкретного исходного кода. Многие из этих возможностей могут быть настроены индивидуально пользователем.

МС-51 включает в себя также симулятор/отладчик. С его помощью можно отслеживать выполнение программы без каких-либо аппаратных средств.

См. также править

Ссылки править


На сайте 84 человек
Top.Mail.Ru
©Tatli.Biz 2010-2024