Ничего не найдено :(
    В гостях у Самоделкина! » Электроника » 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
    Последний Инженер, а что в приведённой фразе из статьи неверно?
    Последний Инженер
    "В своё время определённое распространение имели карманные калькуляторы, в которых сразу запускался интерпретатор Бейсика ... не занимая телевизор. К середине девяностых популярность этих калькуляторов упала в связи с набором популярности более универсальных КПК..."
    ЧТО??? Автор, если ты НИЧЕГО не знаешь про то, что, когда и почему имело популярность, ты об этом совсем не пиши, а?

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


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

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

    Войти

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

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

    Онлайн чат

    Опрос
    А Вы уже рассказали на сайте о своей самоделке?

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

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