Потому и вопрос встал о разделении 16-битного значения.
Спасибо. Признателен за помощь.
Эта переменная на самом деле таковой не является. Ее нельзя использовать в своих расчетах и прочих корыстных целях. Она может быть использована только для копирования в / из EEPROM. Передали ей значение - записали в EEPROM, скопировали из нее значение - прочитали EEPROM. Всё. При правильном использовании Bascom на типы не ругается.vanyap1 писал(а):или делать с ней что то кроме приравнивания к другим сходным по типу
Код: Выделить всё
Dim A As Word , B As Eram Word
A = &HF1F8 ' это обычная переменная
B = A ' копируем содержимое A в EEPROM
A = 0 ' обнуляем обычную переменную (теперь А = 0)
A = B . забираем из EEPROM наше число (теперь А = &HF1F8)
http://radiokot.ru/articles/29/amv2000 писал(а):Подскажите может у кого есть Nokia 3310 с двумя дугами китаец, как инициализацию записывали?
А то при выводе картинок каша, если просто текст то вверху мусор....
Сейчас инициализирую так:
Sub D3310init
D3310ce = 0 'Display data input enable
D3310dc = 0 'Command mode
D3310commandout &H21 'Extended command mode, horizontal addressing
'D3310commandout &HC8 'Middle contrast
D3310commandout &HE9
D3310commandout &H06 'Temperature setting
D3310commandout &H13 'Bias 1:48
D3310commandout &H7F ' Для китайского
D3310commandout &H20 'Normal command mode, horizontal addressing
D3310commandout &H0C 'Uninverted Screen
D3310ce = 1 'Display data input disable
End Sub
Код: Выделить всё
D3310byte = D3310y + &H40 'Send vertical address
D3310byte = D3310byte + 1 'для клона смещение на строку ниже
Spiout D3310byte , 1 ' отправляем 1 байт по шине SPIКод: Выделить всё
Call D3310position(0 , 2)
Call D3310print( "Шрифт" , 3 , 0)Т.е как я понимаю можно, или даже скорее нужно кодОднако мои эксперименты показали их пригодность почему-то только для режима отображения текста, при попытке вывести картинку изображение рассыпалось (рискну предположить, что это происходит потому, что при выводе текста каждая строка адресуется перед выводом (т.е. сказали куда вывести — вывели строку, переставили указатель на начало следующей строки — вывели вторую и т.д.), а при выводе картинки данные пишутся в память сплошным потоком, что приводит к рассыпанию из-за большей программной ширины дисплея).
Отсюда получаем два способа вывода нормальной картинки на неоригинальный дисплей: отображать экранный буфер на часть памяти контроллера, программно отслеживая смещение, либо выводить картинку с адресацией каждой строки.
Код: Выделить всё
'For D3310pixelloop = 0 To 816
'Read D3310column
'Call D3310dataout(d3310column)
'Next D3310pixelloop
'D3310ce = 1 Вывод с помощью стандартной библиотеки, с которой "Мегатермо" делал:amv2000 писал(а):У кого нибудь остались дисплеи Nokia 3310(клон с двумя дугами), или я единственный обладатель?
Как Вы графику выводите у меня картинка рассыпается...уже и не знаю чего делать.
Спасибо большое,глубокий поклон до землиGordon Shumway писал(а):Вывод с помощью стандартной библиотеки, с которой "Мегатермо" делал:
Ну я даже не знаю, пробовал и со стандартной в частности, что Вы выложили картинка в мозаике хоть тресни. Может такой экземпляр попался не знаю, что и думать...Gordon Shumway писал(а):А с вашей библиотекой картинка сдвинута.
Видимо китайцы умудрились выпустить несколько разновидностей двоякоулыбчивых дисплеев от Nokia 3310...amv2000 писал(а):Ну я даже не знаю, пробовал и со стандартной в частности, что Вы выложили картинка в мозаике хоть тресни. Может такой экземпляр попался не знаю, что и думать...Gordon Shumway писал(а):А с вашей библиотекой картинка сдвинута.
Ничего сказать не могу ибо сам не знаю, сегодня пошел в ремонт сотовых взял у них дисплей (отдали телефон целиком за 200 руб) попробую с ним, если все работает тогда видать китайцы делают апдейтGordon Shumway писал(а):Видимо китайцы умудрились выпустить несколько разновидностей двоякоулыбчивых дисплеев от Nokia 3310...