Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Программирование ATMEL в BASCOM. » Разное » Экран от телефона DECT M40(GDSC1602M-01).


Экран от телефона DECT M40(GDSC1602M-01).

Сообщений 1 страница 2 из 2

1

Завалялись на работе телефоны DECT M40.
Надпись на стекле GDSC1602M-01
Надпись с обратной стороны GDSC-GR-1602AM-01
Интерфейс I2c.
Чип PCF2119RU2/F2

http://s3.uploads.ru/t/r18dQ.jpg

Один базу не видит, другой не включается, третий утопили итп. Схема в инете ненашел, видимо их и не ромонтируют. Решил попробывать прикрутить экран к AVR-ке. В конце концов набрел на изотовителя этих экранов. http://www.xmocular.com/ На сайте даташита неоказалось. Запросил даташит по почте и что удивительно прислали.
Как выложить pdf не знаю.
Две строки текста по 12 символов + спецсимволы, но самое главное это шина I2C и всего 6 проводов для подключения.
http://s3.uploads.ru/t/Dg0TF.jpg
http://s3.uploads.ru/t/TwuhS.jpg
Проводочки мелкие. Припаял на кусочек текстолита.
http://s3.uploads.ru/t/fcN20.jpg
Провода слева направо
http://s3.uploads.ru/t/3HTBr.jpg
1 - питание экрана
2 - 0v
3 - питание чипа
4 - SDA
5 - reset
6 - SCL

Пример

$regfile = "m128def.dat"
$crystal = 16000000
$baud = 9600
$baud1 = 9600
$framesize = 16
$hwstack = 24
$swstack = 16

Config Sda = Portd.1
Config Scl = Portd.0

Gdsc2119w_reset Alias Porte.5
Config Gdsc2119w_reset = Output
Const Gdsc2119w = &H76

Dim X As Byte
Dim Y As Byte
Dim Char_1 As Byte
Dim K As Byte
Dim B As Byte
Dim I As Byte
Dim S As String * 12
Dim S1 As String * 1
Dim Control_byte As Byte

Declare Sub Lcd_init
Declare Sub Lcd_write_char
Declare Sub Lcd_write_str

Open "COM2:" For Binary As #1

  Set Gdsc2119w_reset
   Waitms 10
   Reset Gdsc2119w_reset
   Waitms 5

Char_1 = 0
Call Lcd_init

X = 1
Y = 1
S = "ABCD1234abcd"
Call Lcd_write_str
X = 1
Y = 2
S = "State = 6"
Call Lcd_write_str

Do
Loop

Sub Lcd_init

I2cstart
  I2cwbyte Gdsc2119w
  I2cwbyte 0
  I2cwbyte &B00100101                                       '&h25
  I2cwbyte &B110                                            '
  I2cwbyte &B11                                             '
I2cstop

I2cstart
  I2cwbyte Gdsc2119w
  I2cwbyte 0                                                'control byte sets RS for following data bytes
  I2cwbyte &H24                                             'äâå ñòðîêè,MUX 1/18
  I2cwbyte &B1110                                           'âêëþ÷èòü ýêðàí
I2cstop

End Sub

Sub Lcd_write_char

   If Y = 1 Then B = 1 + X
   If Y = 2 Then
      B = &H41 + X
   End If
   B.7 = 1

   I2cstart                                                 'set ddram adr
     I2cwbyte Gdsc2119w
     I2cwbyte 0
     I2cwbyte B
   I2cstop

   I2cstart
     I2cwbyte Gdsc2119w
     I2cwbyte &B1000000                                     'co rs
     I2cwbyte Char_1
   I2cstop

End Sub

Sub Lcd_write_str
   If Y = 1 Then B = 1 + X
   If Y = 2 Then
      B = &H41 + X
   End If
   B.7 = 1

   I2cstart                                                 'set ddram adr
     I2cwbyte Gdsc2119w
     I2cwbyte 0
     I2cwbyte B
   I2cstop

   I2cstart
     I2cwbyte Gdsc2119w
     I2cwbyte &B1000000                                     'co rs
     K = Len(s)
     For I = 1 To K
        S1 = Mid(s , I , 1)
        Char_1 = Asc(s1)
        Char_1 = Char_1 + 128
        I2cwbyte Char_1
     Next
   I2cstop

End Sub

Пока смог зажечь только текстовые поля. Символы загорелись сами собой. и не выключаются

Отредактировано lan_tosno (2013-05-15 12:03:56)

+2

2

Доброго времени суток!
БольшАя просьба:
Перекинте в личку даташит этого экранчика.
Спасибо!!!

0


Вы здесь » Программирование ATMEL в BASCOM. » Разное » Экран от телефона DECT M40(GDSC1602M-01).