Добрый вечер. Я в этой теме обосновался . . . Не могу разобраться с графическим дисплеем Nokia3310. Скачал с сайта "Паяльник " Урок 18, с графическим дисплеем https://cxem.net/mc/mc201.php. Скачал файлы, добавил в Протеус модель. В конце-концов в Протеусе 7 и 8 пример из Паяльника заработал. А в BASCOM 2086 при компиляции файла из примера появляется ошибка. Нашел аналогичные проекты- тоже самое, ошибка. Может файлы из проекта *init, *end надо еще куда-то копировать? В общем, с директивой $includ у меня большие проблемы. Пособий я не нахожу в нашем сегменте. А Help Bascom понимаю. Когда будучи школьником берешь учебник по высшей математике, то удивляешься,- почему каждая формула в отдельности понятна, а в целом глухо. И вообще непонятно, почему Hex в Протеусе работает, а в Баскоме ошибка. Помогите, пожалуйста, мне это необходимо.
Доброе утро. Отправляю архив исходника. По просьбе Баскома добавляю туда файл *err. После компиляции появляется сообщение об ошибке. Error:369 Line 344 . . . var R1 in file 3310.end bas Там и правда есть строка 344 и переменная R1. Но она не повторяется. Пробовал ее тупо убирать, ничего хорошего. Думаю, чего-то я не знаю, может настройки Баскома . . . Архив исодника не отправляется. Разберусь и снова обращусь, извините.
Так и есть! Версия 2.05 ошибок не дает! Я и не собираюсь углубляться в основы основ. На сегодняшний день надо всего-то переписать порты под свою отладочную плату. Большое Вам спасибо.
Там в одном из файлов, масса операторов Data. Можно попробовать заменить метку r1, на что то другое, например на rr1. Компилятор путает метку с именем регистра.
Проверил. Действительно компилируется с ошибками. Баском 2.0.8.3. Исправил в двух местах r1 на rr1, а также убрал в конфиге SPI Din = none. Компилируется без ошибок, но проверить нечем, нет таких индикаторов. Проект лохматый какой-то.
В хелпе написано же, не используйте зарезервированные слова как переменные! Reserved words include all BASCOM commands, statements, function names, internal registers and operator names.
Здравствуйте. Вот еще хочу спросить- как в BASCOMе делить и умножать не целые числа. Например, 4,75х2.39. У меня это получается только с обьявлением переменных как dword. Хотя word должно бы хватить. Еще, простите, нет ли в BASCOM процедуры вычисления дисперсии из выборки? Я написал, работает, но как-то коряво получается. Буду благодарен за совет.
Доброго времени всем! Может ест у кого рабочая библиотека, для двухстрочного ЖКИ 16*2 с контролером от хитачи. по линии I2C. У меня есть аж две такие, но почему то они не хотят работать, т. е работают медленно, а если написать какую то программку от DO до LOOP, то в начале вроде пошло на индикаторе ( в протеусе) а потом все чисто на индикаторе. Судя по тому что идет перемигивание кубиков на всех ножках, программа продолжает работать, а на ЖКИ пустое свечение. Ни чего не понятно почему. Текст из двух сточек повторяется, хотя и не быстро, даже с малой задержкой, а если текста больше то нет вообще дальнейших показаний.
На форумах не принято весь текст выделять капсом или жирным текстом. Во-вторых, несмотря на жирное выделение всего текста, из него ничего не понятно кроме того, что программа делает не то, что ожидалось. Как программа написана, так она и выполняется. Перед выводом текста установите курсор дисплея на позицию 0,0.
Про шрифт понял. извиняюсь. Может быт и криво написано библиотека. У автора есть только две строчки с выводом текста, в первой линии и второй линии. Все вроде выводится, постоянно с обновлением но как то не шустро . Если я вставляю на вывод свой код, значительно больше чем у автора, то то же выводятся, но только один раз и все чисто на экране я не могу понять в чем причина. Я мог бы прикрепить этот файл,(если это здесь возможно) может кто то бы под сказал ошибку.
Последний раз редактировалось tobikru Сб апр 04, 2026 16:31:31, всего редактировалось 3 раз(а).
Есть такой эффект, что Протеус "захлёбывается". Например вы вставили виртуальный осциллограф - перестало выводиться на дисплей, хотя огоньки на пинах дисплея перемигиваются. Или код сложный и Протеус его не прожёвывает. Например увидеть динамическую индикацию на 7-сегментной матрице - почти безнадёжная задача. Так что извращайтесь, отключайте виртуальный осциллограф, периферию. Я здесь в форуме подобные вопросы задавал пока не допёр в чем засада. Это Раз. Если вы используете в Протеусе I2C контроллер PCF8574 или PCF8574A - помните, что у них адреса фиксированные и разные, и пинами виртуальной модели - не устанавливаются. Это два. В Ардуиновском коде категорически не используйте команды digitalWrite(pin, x) каждая команда жрет 100 байт памяти. Используйте -
PORTB &= ~( 1 << Pin); // LOW для порта B PORTB |= ( 1 << Pin ); // HIGH для порта B
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения