| Пример работы с 0.96" OLED индикатором по I2C | 
|  | 
| 
 
 
 
 | AndrF | Дата: Вт, 06.01.2015, 17:32  |                                                                                                                Сообщение # 1 |  
 | ![AndrF]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Продвинутый
 
  
 Сообщений: 
 
 
 145
 
 
 Замечания: ± На сайте с 03.02.2012
 
 
 Статус: 
 Offline
 
 | Это недорогие OLED-индикаторы (на Ebay сейчас стоят ~280 руб за штучку, например). 
 Проект с примером приложен (использовал PIC18F26K20 c аппаратным I2C - такие продаются около 100 руб за штучку).
 
 Работает достаточно шустро - I2C работает на скорости в 1 MHz.
 
 В примере производится очистка экрана (с фоном и без), ну и вывод нескольких строчек с разным размером шрифта (видео вышло не ахти какое, но что есть):
 
 
 
 Код вызова при этом выглядит примерно так:
 
 
 Код Device = 18F26K20 Clock = 16
 
 Include "Utils.bas"
 Include "SSD1306.bas"
 
 Dim i As Byte
 
 DelayMs(200)
 SetAllDigital
 
 TRISA = $00
 
 SSD1306.Initialize()
 
 While True
 PORTA.0 = Not PORTA.0
 
 Cls(i)
 
 Print( 2, 6, "Test2", 2, 2)
 Print( " Test1", 1, 1)
 Print( 255, 2, "12:37", 3, 3)
 
 i = i + 1
 if i > 3 Then i = 0 EndIf
 
 DelayMS(500)
 Wend
 Сообщение отредактировал 
 
 AndrF - Ср, 07.01.2015, 12:03
 
  |  
 |  |  |  | 
| 
 
 
 
 | AndrF | Дата: Ср, 07.01.2015, 20:09  |                                                                                                                Сообщение # 2 |  
 | ![AndrF]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Продвинутый
 
  
 Сообщений: 
 
 
 145
 
 
 Замечания: ± На сайте с 03.02.2012
 
 
 Статус: 
 Offline
 
 | Сегодня задействовал установленный на плате DS3231... 
 Кстати, разыскивается шрифт. Назначение - отображение времени, температуры... В приведенном выше примере использовался отмасштабированный 5x7, но при увеличении его большом увеличении, понятное дело, становятся видны ступеньки:
 
 
   
 Так что нужен шрифт подходящего размера, чтобы заменить им то что на экранчике выше отображается синим цветом...
 
 Сообщение отредактировал 
 
 AndrF - Ср, 07.01.2015, 20:11
 
  |  
 |  |  |  | 
| 
 
 
 
 | Ethno | Дата: Пн, 19.01.2015, 17:42  |                                                                                                                Сообщение # 3 |  
 |   
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Понимаю
 
  
 Сообщений: 
 
 
 91
 
 
 Замечания: ± На сайте с 11.12.2012
 
 
 Статус: 
 Offline
 
 | У меня не компилируется...А можно hex на тест....?Цитата AndrF (  ) Проект с примером приложен (использовал PIC18F26K20 c аппаратным I2C - такие продаются около 100 руб за штучку).Работает достаточно шустро - I2C работает на скорости в 1 MHz. 
 В примере производится очистка экрана (с фоном и без), ну и вывод нескольких строчек с разным размером шрифта (видео вышло не ахти какое, но что есть):
 |  
 |  |  |  | 
| 
 
 
 
 | AndrF | Дата: Пн, 19.01.2015, 18:02  |                                                                                                                Сообщение # 4 |  
 | ![AndrF]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Продвинутый
 
  
 Сообщений: 
 
 
 145
 
 
 Замечания: ± На сайте с 03.02.2012
 
 
 Статус: 
 Offline
 
 | Цитата Ethno (  ) У меня не компилируется...На что хоть ругается?
 
 
 Цитата Ethno (  ) А можно hex на тест....?У меня сейчас нет ничего под рукой - разве только в выходные буду там где проект...
 Добавлено (19.01.2015, 18:01)---------------------------------------------
 Ethno,
 
 Единственное что смог - проверил компиляцию проекта - компилируется нормальное. Единственное что ругается что переменная i не инициализирована. Ну это просто вставь i = 0 перед циклом.
 Добавлено (19.01.2015, 18:02)---------------------------------------------
 Ethno,
 
 Кстати, Main.hex в проекте есть!
 
 Сообщение отредактировал 
 
 AndrF - Пн, 19.01.2015, 17:55
 
  |  
 |  |  |  | 
| 
 
 
 
 | Ethno | Дата: Пн, 19.01.2015, 18:05  |                                                                                                                Сообщение # 5 |  
 |   
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Понимаю
 
  
 Сообщений: 
 
 
 91
 
 
 Замечания: ± На сайте с 11.12.2012
 
 
 Статус: 
 Offline
 
 | Unable to open system fileЦитата AndrF (  ) На что хоть ругается? |  
 |  |  |  | 
| 
 
 
 
 | AndrF | Дата: Пн, 19.01.2015, 18:12  |                                                                                                                Сообщение # 6 |  
 | ![AndrF]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Продвинутый
 
  
 Сообщений: 
 
 
 145
 
 
 Замечания: ± На сайте с 03.02.2012
 
 
 Статус: 
 Offline
 
 | Цитата Ethno (  ) Unable to open system fileА хоть какой-то проект вообще компилируется?
 Добавлено (19.01.2015, 18:11)---------------------------------------------
 У меня компиляция того проекта проходит вот так:
 
 
 Цитата Clean: Deleting intermediary and output files. Clean Warning: File "C:\Work\MyBoard\Swordfish\Main.COF" doesn't exist.
 Clean: Deleted file "F:\A\Swordfish\MyBoardPrj.mcs".
 Clean: Done.
 Executing: "C:\Program Files\Mecanique\Swordfish\Swordfish.exe" Main.bas -p18F26K20
 Swordfish BASIC Compiler 2.2.2.5 (ICC 1.1.6.4)
 Copyright © 2011-2014 Mecanique
 All Rights Reserved.
 Warning[] F:\A\Swordfish\Main.bas 21 : Variable 'i' might not have been initialized
 Warning[] F:\A\Swordfish\Main.bas 28 : Variable 'i' might not have been initialized
 ROM used : 3121 Bytes (4.76%)
 RAM used : 102 Bytes (2.59%)
 Loaded F:\A\Swordfish\Main.COF.
 BUILD SUCCEEDED: Mon Jan 19 17:57:48 2015
Добавлено (19.01.2015, 18:12)---------------------------------------------
 Да, компиляцию запускаю из MPLAB...
 |  
 |  |  |  | 
| 
 
 
 
 | Ethno | Дата: Пн, 19.01.2015, 18:17  |                                                                                                                Сообщение # 7 |  
 |   
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Понимаю
 
  
 Сообщений: 
 
 
 91
 
 
 Замечания: ± На сайте с 11.12.2012
 
 
 Статус: 
 Offline
 
 | как в левой колонке изменить процессор а то Include 18F4552 Может из за этого. Потому что проекты из примеров нормально компилируются ... Понял у него нет на этот процессор установок, тогда вопрос где можно их взять. Это в папке LoaderHEX 
 Сообщение отредактировал 
 
 Ethno - Пн, 19.01.2015, 18:24
 
  |  
 |  |  |  | 
| 
 
 
 
 | AndrF | Дата: Пн, 19.01.2015, 18:33  |                                                                                                                Сообщение # 8 |  
 | ![AndrF]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Продвинутый
 
  
 Сообщений: 
 
 
 145
 
 
 Замечания: ± На сайте с 03.02.2012
 
 
 Статус: 
 Offline
 
 | Ethno, 
 Посмотри здесь: http://www.sfcompiler.co.uk/wiki....Devices
 
 Там в конце ссылка на описание как что надо сделать если процессора нет в списке.
 |  
 |  |  |  | 
| 
 
 
 
 | Ethno | Дата: Пн, 19.01.2015, 18:56  |                                                                                                                Сообщение # 9 |  
 |   
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Понимаю
 
  
 Сообщений: 
 
 
 91
 
 
 Замечания: ± На сайте с 11.12.2012
 
 
 Статус: 
 Offline
 
 | Теперь ругается на Include "SSD1306.BAS" Unable to open Include file : SSD1306.bas
 Добавлено (19.01.2015, 18:56)---------------------------------------------
 
 перенес файлы из папки Library но теперь не находит файл setdigitalio.basЦитата Ethno (  ) Теперь ругается на Include "SSD1306.BAS"Unable to open Include file : SSD1306.bas Сообщение отредактировал Ethno - Пн, 19.01.2015, 18:49
Include "setdigitalio.bas"
 
 Сообщение отредактировал 
 
 Ethno - Пн, 19.01.2015, 18:49
 
  |  
 |  |  |  | 
| 
 
 
 
 | AndrF | Дата: Вт, 20.01.2015, 08:12  |                                                                                                                Сообщение # 10 |  
 | ![AndrF]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Продвинутый
 
  
 Сообщений: 
 
 
 145
 
 
 Замечания: ± На сайте с 03.02.2012
 
 
 Статус: 
 Offline
 
 | Ну тут все понятно - это из-за использования старой версии Swordfish - она не понимает папки в подкаталоге программы. Ну и файлы библиотек у вас старые. 
 setdigitalio.bas можно забрать здесь:
 
 http://www.sfcompiler.co.uk/wiki....gitalIO
 
 Ну и еще что - если потребуется...
 
 Добавлено (20.01.2015, 08:12)
 ---------------------------------------------
 Кстати, если использовать контроллеры из списка Firewing, то можно было бы бесплатно использовать его.
 
 Сообщение отредактировал 
 
 AndrF - Вт, 20.01.2015, 08:16
 
  |  
 |  |  |  | 
| 
 
 
 
 | Ethno | Дата: Вт, 20.01.2015, 14:25  |                                                                                                                Сообщение # 11 |  
 |   
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Понимаю
 
  
 Сообщений: 
 
 
 91
 
 
 Замечания: ± На сайте с 11.12.2012
 
 
 Статус: 
 Offline
 
 | файл скачал но опять теже проблемы теперь ругается при компиляции наЦитата AndrF (  ) Ну и еще что - если потребуется.Public Dim SetAllDigital As SetDigitalIO.SetAllDigital в файле Util
 
   
 Сообщение отредактировал 
 
 Ethno - Вт, 20.01.2015, 14:27
 
  |  
 |  |  |  | 
| 
 
 
 
 | AndrF | Дата: Вт, 20.01.2015, 14:45  |                                                                                                                Сообщение # 12 |  
 | ![AndrF]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Продвинутый
 
  
 Сообщений: 
 
 
 145
 
 
 Замечания: ± На сайте с 03.02.2012
 
 
 Статус: 
 Offline
 
 | Тогда просто убери остальные библиотеки из папки программы, оставь только SSD1306.bas. Тогда будут использоваться старые библиотеки SWordfish из его папок. 
 Собственно ругается из-за вызова  процедуры SetAllDigital (из модуля Utils.bas), которая устанавливает все порты контроллера цифровыми. Так что тебе надо разобраться как ее вызвать в старой версии. Ну или установить порты обычным методом.
 |  
 |  |  |  | 
| 
 
 
 
 | Ethno | Дата: Вт, 20.01.2015, 15:05  |                                                                                                                Сообщение # 13 |  
 |   
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Понимаю
 
  
 Сообщений: 
 
 
 91
 
 
 Замечания: ± На сайте с 11.12.2012
 
 
 Статус: 
 Offline
 
 | Спасибо сейчас попробую Добавлено (20.01.2015, 15:05)---------------------------------------------
 нет, наверное старая версия рыбы, где можно скачать новую?
 |  
 |  |  |  | 
| 
 
 
 
 | AndrF | Дата: Вт, 20.01.2015, 15:06  |                                                                                                                Сообщение # 14 |  
 | ![AndrF]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Продвинутый
 
  
 Сообщений: 
 
 
 145
 
 
 Замечания: ± На сайте с 03.02.2012
 
 
 Статус: 
 Offline
 
 | Я купил. Но поделиться не могу - ставится лишь на три машины с проверкой через интернет... |  
 |  |  |  | 
| 
 
 
 
 | Ethno | Дата: Вт, 20.01.2015, 15:13  |                                                                                                                Сообщение # 15 |  
 |   
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Понимаю
 
  
 Сообщений: 
 
 
 91
 
 
 Замечания: ± На сайте с 11.12.2012
 
 
 Статус: 
 Offline
 
 | Скачал СЕ 2.2.18 компилирует но ругается. Извините что мучаю, но очень хочется включить индикатор 
   
 Сообщение отредактировал 
 
 Ethno - Вт, 20.01.2015, 15:15
 
  |  
 |  |  |  |