Ничего не найдено :(
    В гостях у Самоделкина! » Электроника » Arduino » Калькулятор с Бейсиком

    Калькулятор с Бейсиком




    В своё время определённое распространение имели карманные калькуляторы, в которых сразу запускался интерпретатор Бейсика. Как в домашних компьютерах, популярных примерно тогда же, но с выводом информации на встроенный дисплей небольшого разрешения. Это позволяло непрофессиональным программистам писать программы для довольно сложных расчётов, не занимая телевизор. К середине девяностых популярность этих калькуляторов упала в связи с набором популярности более универсальных КПК, где Бейсик был лишь одним из возможных приложений, наряду с другими. В современных смартфонах так же: нужен Бейсик - качаешь из магазина приложений. Теперь же, когда многие применяют в самоделках микроконтроллеры, не редкостью стали калькуляторы с Бейсиком, изготовленные своими руками. Для тех, кто застал оригиналы, это - ностальгия, для мастеров помоложе - возможность пощупать, какими они были. Перед вами - одна из множества таких конструкций в исполнении автора Instructables под ником SANUKI UDON.

    Компании Casio и Sharp применяли в таких калькуляторах 4-битные микропроцессоры, Kyocera - 8-битные, Ангстрем и Интеграл - 16-битные. Мастер решил выбрать золотую середину и применил в своём варианте современный 8-битный микроконтроллер ATmega328P, поскольку для него уже существует интерпретатор ArduinoBASIC. Только здесь он адаптирован к дисплею меньшего разрешения и клавиатуре CardKB, в составе которой уже есть необходимый микроконтроллер.

    Для сборки калькулятора, помимо собстверно CardKB, потребуются: батарейный отсек 2хАА или 2хААА, PMOLED-дисплей на микросхеме SSD1306, а также при желании сохранять и считывать файлы - микросхема флеш-памяти, например, 24LC256. Макетная плата типа breadboard и перемычки "дюпон" необязательны, лучше соединить всё пайкой. ArduinoBASIC изначально рассчитан на PMOLED-дисплей с интерфейсом SPI, но мастер переделал прошивку так, чтобы она работала с дисплеем с интерфейсом I2C. На КДПВ показан второй вариант калькулятора, гдп дисплей еще меньше, а элемент питания -типа CR2025 или CR2032.

    Сбоку на плате CardKB расположен разъём, куда выведена шина I2C, туда же подаётся и питание. Если есть микросхема памяти, на переходной плате или нет, она подключается параллельно дисплею согласно цоколёвке из даташита. Мастер не уточняет, прилагается ли к CardKB кабель с ответной частью разъёма. Если не прилагается, а у вас нет такого кабеля, можно припаять проводники к плате с обратной стороны.





    Соединив всё электрически, мастер приступает к переделке ArduinoBASIC под применённое им железо. Результат выкладывает сюда. Также необходимо погасить имеющийся на плате RGB-светодиод, который по умолчанию светит всеми тремя кристаллами на полную мощность. И не только увеличивает потребляемый ток, но и светит прямо в глаза пользователю. Поэтому необходимо также скачать стандартную библиотеку NeoPixel отсюда, а при компиляции выбрать ATmega328p (3.3V, 8Mhz). После компиляции выбрать Export compiled Binary и получить двоичный файл.


    Калькулятор с Бейсиком



    Чтобы залить файл в CardKB, нужен программатор USB-ISP и самодельный переходник. В качестве ПО для управления программатором подойдёт avrdude или avrdude-GUI (это то же самое, но с GUI). Фьюзы перезаписывать нельзя. Да, чуть сложнее, чем с Arduino, где достаточно USB-кабеля и встроенных средств Arduino IDE.





    Приложение: как перед компиляцией корректировать файл SSD1306ASCII_I2C.h в зависимости от разрешения PMOLED-дисплея.

    Для дисплея с разрешением 128 × 32:

    #define OLED_WIDTH  128
    #define OLED_HEIGHT 32
    #define OLED_COLMAX 21
    #define OLED_ROWMAX 4


    Для дисплея с разрешением 128×64:

    #define OLED_WIDTH  128
    #define OLED_HEIGHT 64
    #define OLED_COLMAX 21
    #define OLED_ROWMAX 8




    Реализованный здесь Бейсик по синтаксису наиболее похож на применённый в домашнем компьютере ZX81, поэтому при написании программ для калькулятора можно руководствоваться документацией к этому компьютеру.

    Источник (Source)
    Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.

    Таймер для чистки зубов

    Джойстик, удобный для пользования одной рукой

    7.9
    Идея
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    5.1
    Описание
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    6.6
    Исполнение
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    Итоговая оценка: 6.52 из 10 (голосов: 7 / История оценок)

    Добавить комментарий

    3 комментария
    Гость Денис
    Автору хорошо бы посмотреть на систему команд ПМК Б3-34, МК-54, МК-56. И раз про историю решил писать то упомянул бы первый программируемый калькулятор 1967 года Casio AL-1000 . В 90-х калькуляторов с полноценным интерпретатором BASIC не было, больше на урезанный FORTRAN похож. Да были программируемые калькуляторы и даже энтузиасты писали игры на них, а вся прелесть графики была на цифровых дисплеях в палочками и точечками.
    alexero
    Последний Инженер, а что в приведённой фразе из статьи неверно?
    Последний Инженер
    "В своё время определённое распространение имели карманные калькуляторы, в которых сразу запускался интерпретатор Бейсика ... не занимая телевизор. К середине девяностых популярность этих калькуляторов упала в связи с набором популярности более универсальных КПК..."
    ЧТО??? Автор, если ты НИЧЕГО не знаешь про то, что, когда и почему имело популярность, ты об этом совсем не пиши, а?

    Привет, Гость!


    Зарегистрируйтесь

    Или войдите на сайт, если уже зарегистрированы...

    Войти

    Добавьте самоделку

    Добавьте тему

    Онлайн чат

    Последние комментарии

    Все комментарии