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

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

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

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


Вы здесь » Программирование ATMEL в BASCOM. » Исходники » Дисплей Nokia 3510i и не только


Дисплей Nokia 3510i и не только

Сообщений 91 страница 120 из 263

91

Уважаемые знатоки !

Поделитесь еще раз ссылкой на библиотеки с увеличением шрифтов для 1100 и 3310, а то ссылки, приведенные ранее, умерли.

Спасибо заранее !

0

92

Доброго вечера всем, есть небольшой вопрос, есть дисплей от моторолы но я не знаю модель, не подскажете? Заранее Спасибо!
http://s3.uploads.ru/t/QaYGr.jpg
http://s3.uploads.ru/t/jYcGg.jpg

И еще, я так понял моторола подключаются по I2C а по ссылке ниже описывается по SPI, или у них встречаются оба протокола передачи?
И подходит ли мой дисплей под эту распиновку?
http://chipenable.ru/index.php/how-conn … -c350.html

Отредактировано thorus (2013-01-10 20:31:46)

0

93

thorus написал(а):

Доброго вечера всем, есть небольшой вопрос, есть дисплей от моторолы но я не знаю модель, не подскажете? Заранее Спасибо!

И еще, я так понял моторола подключаются по I2C а по ссылке ниже описывается по SPI, или у них встречаются оба протокола передачи?
И подходит ли мой дисплей под эту распиновку?
http://chipenable.ru/index.php/how-conn … -c350.html
Отредактировано thorus (Сегодня 20:31:46)

С350

0

94

Александр.К
Спасибо за ответ!

Никто с моторолой С350 не сталкивался? как инициализировать его?

Отредактировано thorus (2013-01-10 23:54:51)

0

95

Mrshilov
я то видел на с, но я дело в том что с этим языком пока что враждую)

0

96

Mrshilov
Спасибо за ссылочку

0

97

Большое спасибо, а как понимать 0х3? Это 0х03 ? Или это просто отсылка 4х битов?

И еще с вот этим непонятка:

    SendData(0);     
    SendData(16);
    SendData(0);

что значит 0 и 16 это я так понимаю к HEX не относится?

Отредактировано thorus (2013-01-11 19:32:47)

0

98

уже разобрался это дисятичное)) спс
я вас замучаю))
A=&hFF
spiout =A , 1

а можно вместо этого писать типа вот так:

spiout &hFF , 1
но бас ком не понимает этого, нигде не могу найти как на прямую без переменных это делать

0

99

я голову сломаю в этом си скоро, есть люди разбирающиеся в си?

0

100

Уже мозг выкипает, может я чего то не дописал, может туплю в чем то, короче не рисует он линию и все, может что то с си не так передрал я в си полный 0

С350 motorola

$regfile = "m8def.dat"
$crystal = 8000000
Dim A(48) As Byte

Config Portd.4 = Output                                     ' command(0)/data(1)
Config Portd.5 = Output                                     'на контакт RESET
Config Portd.7 = Output                                     ' на этой ноге сидит просто светодиод
                                                             'для визуальных отметок выполнения отдельных комманд

Config Spi = Soft , Din = Pind.0 , Dout = Portd.1 , Ss = Portd.2 , Clock = Portd.3
Spiinit

A(1) = &HD1                                                 'internal oscillator
A(2) = &H94                                                 'exit slep mode

A(3) = &H20                                                 'power control
A(4) = &H0B                                                 'data
A(5) = &HCA                                                 'set display control
A(6) = 0                                                    'data
A(7) = 16                                                   'data
A(8) = 0                                                    'data
A(9) = &HF7                                                 'select PWM/FR
A(10) = &H28                                                'data
A(11) = &H2C                                                'data 4 bits PWM
A(12) = &H5                                                 'data
A(13) = &HFB                                                'st biasing ratio
A(14) = 3                                                   'data xxxx0011
A(15) = &HBB                                                ' set COM output
A(16) = 1                                                   'data xxxx0001

A(17) = &HCE                                                'set color look up

A(18) = &H0                                                 'data
A(19) = &H2                                                 'data
A(20) = &H4                                                 'data
A(21) = &H6                                                 'data
A(22) = &H8                                                 'data
A(23) = &HA                                                 'data
A(24) = &HC                                                 'data
A(25) = &HE                                                 'data
A(26) = &H0                                                 'data
A(27) = &H2                                                 'data
A(28) = &H4                                                 'data
A(29) = &H6                                                 'data
A(30) = &H8                                                 'data
A(31) = &HA                                                 'data
A(32) = &HC                                                 'data
A(33) = &HE                                                 'data

A(34) = &H3                                                 'data
A(35) = &H7                                                 'data
A(36) = &HB                                                 'data
A(37) = &HF                                                 'data
A(38) = &HAF                                                'turn ON LCD panel
A(39) = &H81                                                'set Contrast
A(40) = 07                                                  'xx000111
A(41) = 3                                                   'xxxxx011

A(42) = &B10000011                                          'Draw Line
A(43) = 10                                                  'data x1
A(44) = 10                                                  'data y1
A(45) = 10                                                  'data x2
A(46) = 70                                                  'data y2
A(47) = &B11110000                                          'data
A(48) = 1                                                   'data xxxx0001

' Моргаем светодиодом
Wait 2
Portd.7 = 1
Waitms 200
Portd.7 = 0

'RESET
Portd.5 = 1
Waitus 20
Portd.5 = 0
Wait 2

' Моргаем светодиодом
Portd.7 = 1
Waitms 200
Portd.7 = 0

'internal oscillator
Portd.4 = 0
Spiout A(1) , 1
Portd.4 = 1

'exit slep mode
Portd.4 = 0
Spiout A(2) , 1
Portd.4 = 1
Wait 2

' Моргаем светодиодом
Portd.7 = 1
Waitms 200
Portd.7 = 0

Portd.4 = 0                                                 'command
Spiout A(3) , 1                                             'SendCom(ComSetPowerControlReg )
Portd.4 = 1                                                 'data
         Spiout A(4) , 1                                    'SendData(0x0b)

'Wait 2

Portd.4 = 0                                                 'command
Spiout A(5) , 1                                             'SendCom(ComSetDisplayControl)
Portd.4 = 1                                                 'data
         Spiout A(6) , 1                                    'SendData(0);
         Spiout A(7) , 1                                    'SendData(16);
         Spiout A(8) , 1                                    'Senddata(0);

'Wait 2

Portd.4 = 0                                                 'command
Spiout A(9) , 1                                             'SendCom(ComSelectPwmFrc)
Portd.4 = 1                                                 'data
         Spiout A(10) , 1                                   'SendData(0x28);
         Spiout A(11) , 1                                   'SendData(0x2c);
         Spiout A(12) , 1                                   'SendData(0x05);

'Wait 2

Portd.4 = 0                                                 'command
Spiout A(13) , 1                                            'SendCom(ComSetBiasingRatio)
Portd.4 = 1                                                 'data
    Spiout A(14) , 1                                        'SendData(0x3);

'Wait 2

Portd.4 = 0                                                 'command
Spiout A(15) , 1                                            'SendCom(ComSetComOutputScanDir)
Portd.4 = 1                                                 'data
         Spiout A(16) , 1                                   'SendData(0x1);

'set color look up
Portd.4 = 0
Spiout A(17) , 1
Portd.4 = 1
         Spiout A(18) , 1
         Spiout A(19) , 1
         Spiout A(20) , 1
         Spiout A(21) , 1
         Spiout A(22) , 1
         Spiout A(23) , 1
         Spiout A(24) , 1
         Spiout A(25) , 1

         Spiout A(26) , 1
         Spiout A(27) , 1
         Spiout A(28) , 1
         Spiout A(29) , 1
         Spiout A(30) , 1
         Spiout A(31) , 1
         Spiout A(32) , 1
         Spiout A(33) , 1

         Spiout A(34) , 1
         Spiout A(35) , 1
         Spiout A(36) , 1
         Spiout A(37) , 1

'turn ON LCD panel
Portd.4 = 0
Spiout A(38) , 1
Portd.4 = 1

'set Contrast
Portd.4 = 0
Spiout A(39) , 1
Portd.4 = 1
         Spiout A(40) , 1
         Spiout A(41) , 1
Wait 1

'рисуем линию
Portd.4 = 0
Spiout A(42) , 1
Portd.4 = 1
         Spiout A(43) , 1                                   'x1
         Spiout A(44) , 1                                   'y1
         Spiout A(45) , 1                                   'x2
         Spiout A(46) , 1                                   'y2
'Color
         Spiout A(47) , 1
         Spiout A(48) , 1

Portd.4 = 0

'Светодиод
Portd.7 = 1
Wait 1

End

0

101

кто нибудь запускал дисплей от моторолы с350, если да скиньте хотя бы небольшой исходник для проверки работает ли дисплей, а то я уже подозреваю может что с дисплеем, чтоб знать с кодом напортачил или дисплей такой, заранее спасибо

Отредактировано thorus (2013-01-12 23:47:16)

0

102

Привожу свою белиберду бредовую, я с spi впервые имею дело

Код:
$regfile = "m8def.dat"
$crystal = 1000000

Config Portd.4 = Output                                     ' command(0)/data(1)
Config Portd.5 = Output                                     'на контакт RESET
Config Portd.7 = Output                                     ' на этой ноге сидит просто светодиод


Dim Setcolumnaddress As Byte
Dim Setpageaddress As Byte
Dim Setcomoutput As Byte
Dim Setdataoutput As Byte
Dim Setcolorlookup As Byte
Dim Setdisplaycontrol As Byte
Dim Setareascroll As Byte
Dim Setsrollstart As Byte
Dim Setpowercontrol As Byte
Dim Setcontrastlevel As Byte
Dim Setcontrastincrement As Byte
Dim Setcontrastdecrement As Byte
Dim Setdisplaynormal As Byte
Dim Setdisplayinverse As Byte
Dim Enterpartialdisplay As Byte
Dim Exitpartialdisplay As Byte
Dim Setdisplayoff As Byte
Dim Setdisplayon As Byte
Dim Sleepmodeexit As Byte
Dim Sleepmodeenter As Byte
Dim Internaloscillatoron As Byte
Dim Internaloscillatoroff As Byte
Dim Settemperature As Byte
Dim Nop As Byte
Dim Writedisplaydata As Byte
Dim Readdisplaydata As Byte
Dim Drawline As Byte
Dim Dimwindow As Byte
Dim D(45) As Byte


Config Spi = Soft , Din = Pind.0 , Dout = Portd.1 , Ss = Portd.2 , Clock = Portd.3
Spiinit

'Commands
Setcolumnaddress = &H15
Setpageaddress = &H75

Setcomoutput = &HBB
Setdataoutput = &HBC

Setcolorlookup = &HCE
Setdisplaycontrol = &HCA

Setareascroll = &HAA
Setsrollstart = &HAB

Setpowercontrol = &H20
Setcontrastlevel = &H81
Setcontrastincrement = &HD6
Setcontrastdecrement = &HD7
Setdisplaynormal = &HA6
Setdisplayinverse = &HA7
Enterpartialdisplay = &HA8
Exitpartialdisplay = &HA9
Setdisplayoff = &HAE
Setdisplayon = &HAF
Sleepmodeexit = &H94
Sleepmodeenter = &H95
Internaloscillatoron = &HD1
Internaloscillatoroff = &HD2
Settemperature = &H82
Nop = &H25
Writedisplaydata = &H5C
Readdisplaydata = &H5D



'data comand

D(1) = 0                                                    'column ddress x
D(2) = 0                                                    'column address y

D(3) = 1                                                    'set com output

D(4) = 7                                                    'set data output x x x x x p12 p11 p10
D(5) = 7                                                    'set data output x x x x x p22 p21 p20
D(6) = 3                                                    'set data output x x x x x p32 p31 p30

'set color look up table ****xxxx
D(7) = 0
D(8) = 2
D(9) = 4
D(10) = 6
D(11) = 8
D(12) = 10
D(13) = 12
D(14) = 14
D(15) = 0
D(16) = 2
D(17) = 4
D(18) = 6
D(19) = 8
D(20) = 10
D(21) = 12
D(22) = 14
D(23) = 3
D(24) = 7
D(25) = 11
D(26) = 15

'set display control

D(27) = 0
D(28) = 16
D(29) = 0

'set area scrool

'D(30) =
'D(31) =
'D(32) =
'D(33) =

'set scroll start
D(34) = 0

'set power control register
D(35) = &H0B

'set contrast level
D(36) = 30
D(37) = 7

'enter partial display
D(38) = 0
D(39) = 0

'Set Temperature compensation coefficient
D(40) = 2

'Write display data  ???
D(41) = 0

'Read display data ????
D(42) = 0
D(43) = 0

'set page address ???
D(44) = 0
D(45) = 0

''''''''''''''''''''''''''START INIT ''''''''''''''''''''''''''''''''
Waitms 15
Portd.5 = 1
Waitms 20
Portd.5 = 0


Portd.4 = 0
Waitms 15
Spiout Setcolumnaddress , 1
Portd.4 = 1
Waitms 15
Spiout D(1) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(2) , 1



Portd.4 = 0
Waitms 15
Spiout Setpageaddress , 1
Portd.4 = 1
Waitms 15
Spiout D(44) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(45) , 1


Portd.4 = 0
Waitms 15
Spiout Setcomoutput , 1
Portd.4 = 1
Waitms 15
Spiout D(3) , 1


Portd.4 = 0
Waitms 15
Spiout Setdataoutput , 1
Portd.4 = 1
Waitms 15
Spiout D(4) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(5) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(6) , 1


Portd.4 = 0
Waitms 15
Spiout Setcolorlookup , 1
Portd.4 = 1
Waitms 15
Spiout D(7) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(8) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(9) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(10) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(11) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(12) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(13) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(14) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(15) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(16) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(17) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(18) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(19) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(20) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(21) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(22) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(23) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(24) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(25) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(26) , 1



Portd.4 = 0
Waitms 15
Spiout Setdisplaycontrol , 1
Portd.4 = 1
Waitms 15
Spiout D(27) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(28) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(29) , 1

'Spiout Setareascroll , 1

'Spiout D(30) , 1
'Spiout D(31) , 1
'Spiout D(32) , 1
'Spiout D(33) , 1

Portd.4 = 0
Waitms 15
Spiout Setsrollstart , 1
Portd.4 = 1
Waitms 15
Spiout D(34) , 1

Portd.4 = 0
Waitms 15
Spiout Setpowercontrol , 1
Portd.4 = 1
Waitms 15
Spiout D(35) , 1

Portd.4 = 0
Waitms 15
Spiout Setcontrastlevel , 1
Portd.4 = 1
Waitms 15
Spiout D(36) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(37) , 1

Portd.4 = 0
Waitms 15
Spiout Setcontrastincrement , 1
Portd.4 = 1
Portd.4 = 0
Waitms 15
Spiout Setcontrastdecrement , 1
Portd.4 = 1

Portd.4 = 0
Waitms 15
Spiout Setdisplaynormal , 1
Portd.4 = 1
'Spiout Setdisplayinverse , 1
Portd.4 = 0
Waitms 15
Spiout Enterpartialdisplay , 1
Portd.4 = 1
Waitms 15
Spiout D(38) , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout D(39) , 1

'Spiout Exitpartialdisplay , 1
'Spiout Setdisplayoff , 1
Portd.4 = 0
Waitms 15
Spiout Setdisplayon , 1
Portd.4 = 1
Portd.4 = 0
Waitms 15
Spiout Sleepmodeexit , 1
Portd.4 = 1
'Spiout Sleepmodeenter , 1
Waitms 15
Spiout Internaloscillatoron , 1
'Spiout Internaloscillatoroff , 1


Portd.4 = 0
Waitms 15
Spiout Settemperature , 1
Portd.4 = 1
Waitms 15
Spiout D(40) , 1

Portd.4 = 0
Waitms 15
Spiout Nop , 1
Portd.4 = 1

'Portd.4 = 0
'Spiout Writedisplaydata , 1
'Portd.4 = 1

'Spiout D(41) , 1

'Portd.4 = 0
'Spiout Readdisplaydata , 1
'Portd.4 = 1

'Spiout D(42) , 1
'Portd.4 = 0
'Portd.4 = 1
'Spiout D(43) , 1

'Draw Line
Dim X1 As Byte , X2 As Byte , Y1 As Byte , Y2 As Byte , C1 As Byte , C2 As Byte
X1 = 20
Y1 = 20
X2 = 20
Y2 = 79
C1 = 255
C2 = 255
Dimwindow = &B10001100

Portd.4 = 0
Waitms 15
Spiout Drawline , 1
Portd.4 = 1
Waitms 15
Spiout X1 , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout Y1 , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout X2 , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout Y2 , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout C1 , 1
Portd.4 = 0
Portd.4 = 1
Waitms 15
Spiout C2 , 1
Portd.4 = 0

0

103

thorus написал(а):

скиньте хотя бы небольшой исходник для проверки работает ли дисплей

По Вашей ссылке есть исходник в IAR, поменяйте на нужный МК и выставите нужные порта, после перекомпилируйте и попробуйте.

0

104

amv2000 написал(а):

По Вашей ссылке есть исходник в IAR, поменяйте на нужный МК и выставите нужные порта, после перекомпилируйте и попробуйте.


ок спс, но там как то не так файлы раскиданы в исходнике, некоторые подгружаются а некоторые нет, я не уверен что можно доверять ему

Отредактировано thorus (2013-01-13 16:47:52)

0

105

кстати, на команды entrsleepmode и exitsleepmode экран вроде реагирует, а вот линию не рисует

0

106

и я не могу найти где там меняется МК, и еще какой программой си компилировать?
CodeVisionAVR подойдет?

Отредактировано thorus (2013-01-13 17:05:50)

0

107

Нет исходник под IAR, схему набросайте какая у Вас распиновка, попробую перекомпилирую.
А МК меняется Project -- Options -- General Options -- Target и там Processor configuration меняете на свой
Здесь можно почитать немного http://www.chipenable.ru/index.php/iar- … oekta.html

Отредактировано amv2000 (2013-01-13 19:03:54)

0

108

amv2000 написал(а):

Нет исходник под IAR, схему набросайте какая у Вас распиновка, попробую перекомпилирую.


Atmega8
portd

1 - dout
2 - ss
3 - Clock
4 - cmd/data
5 - reset

и укажите пожалуйста какая частота кристала там будет
Спасибо

Отредактировано thorus (2013-01-13 19:04:22)

0

109

Atmega8 корпус TQFP
выводы микроконтроллера (берется аппаратный SPI)
#define ChipEnable 2  - это вывод В2 (CS)
#define DataCmd    0  - это вывод В0 (DataCmd)
#define Reset         4  - это вывод В4 (Reset)
#define Clk            5 - это вывод В5 (CLK) 
#define Mosi          3  - это вывод В3 (Data)
#define LedDriver  1 - не знаю у Вас он есть по схеме LedDriver
Частота кристалла 8000000
файлы здесь http://files.mail.ru/7C48D2047CD74233BD251DB6242767B0
файл hex находится c350\Debug\Exe

Отредактировано amv2000 (2013-01-13 19:52:24)

0

110

я открыл файл rpt с проэкта и увидел там одну графу

Код:
LCD DB7      : PORTB.7
LCD DB6      : PORTB.6
LCD DB5      : PORTB.5
LCD DB4      : PORTB.4
LCD E        : PORTB.3
LCD RS       : PORTB.2
LCD mode     :  4  bit

mode 4 bit
случайно не настроено на 4х битную передачу у меня по spi это может и причина, как ее заменить?
amv2000 и кстати приношу извинения за недоразумение

0

111

amv2000 написал(а):

Atmega8 корпус TQFP
выводы микроконтроллера (берется аппаратный SPI)
#define ChipEnable 2  - это вывод В2 (CS)
#define DataCmd    0  - это вывод В0 (DataCmd)
#define Reset         4  - это вывод В4 (Reset)
#define Clk            5 - это вывод В5 (CLK)
#define Mosi          3  - это вывод В3 (Data)
#define LedDriver  1 - не знаю у Вас он есть по схеме LedDriver
Частота кристалла 8000000


#define LedDriver я его не использую, я запитую отдельно подсветку, и у меня не через аппаратный а через soft говорят что аппаратный вроде туповатый, не всегда правильно работает, лучше не использовать

0

112

Нет Вы же читали, что пишет автор

Выводы 1, 2 подключаются к выводам апаратного SPI интерфейса микроконтроллера AVR – MOSI, SCK соответственно. Выводы 3, 4, 5 – к любым другим.
  Напряжение питания контроллера экранчика 2,7 - 3,3 вольта.Для подсветки 3,3 вольта мало. Поэтому пришлось собрать простенький удвоитель напряжения на конденсаторах и диодах. Если будете повторять – используйте диоды Шоттки, на них маленькое падение напряжения -  порядка 0,3 В.Дисплей может работать в двух цветовых режимах – 8 бит и 16 бит.

Вы же хотели проверить, вот как заработает будете дальше подключать как угодно....я так думаю

Отредактировано amv2000 (2013-01-13 20:01:25)

+1

113

сейчас попробую перепаять, прошивку уже загнал, проверю отпишусь
Спасибо большое

0

114

блин заработал спасибо

0

115

тогда попробую свой код на аппаратный вывести может что то изменится

0

116

amv2000 Благодарю за помощ, разобрался полностью, там с ресетом были бока и пару функций
Привожу исходник под экран с350 который рисует линию

подключение экрана
Atmega8

DATA          - PORTD.1 - 3 нога
SS              - PORTD.2 - 4 нога
SCK           - PORTD.3 - 5 нога
CMD/DATA  - PORTD.4 - 6 нога
RESET         - PORTD.5 - 11 нога

Код:
$regfile = "m8def.dat"
$crystal = 1000000

Config Portd.4 = Output                                     ' command(0)/data(1)
Config Portd.5 = Output                                     'на контакт RESET



Dim Setcolumnaddress As Byte
Dim Setpageaddress As Byte
Dim Writedisplaydata As Byte
Dim Setlookuptable As Byte
Dim Setnormaldisplay As Byte
Dim Setinversedisplay As Byte
Dim Ondisplay As Byte
Dim Offdisplay As Byte
Dim Entersleepmode As Byte
Dim Exitsleepmode As Byte
Dim Enableintosc As Byte
Dim Disableintosc As Byte
Dim Inccontrast As Byte
Dim Deccontrast As Byte
Dim Setcontrastintreg As Byte
Dim Drawline As Byte
Dim Fillenabledisable As Byte
Dim Drawrectangle As Byte
Dim Copy As Byte
Dim Clearwindow As Byte
Dim Setdataoutputscandir As Byte
Dim Setpowercontrolreg As Byte
Dim Setdisplaycontrol As Byte
Dim Selectpwmfrc As Byte
Dim Setbiasingratio As Byte
Dim Setcomoutputscandir As Byte
Dim Dimwindow As Byte

Dim D(58) As Byte

'Commands
Setcolumnaddress = &H15
Setpageaddress = &H75
Writedisplaydata = &H5C
Setlookuptable = &HCE
Setnormaldisplay = &HA6
Setinversedisplay = &HA7
Ondisplay = &HAF
Offdisplay = &HAE
Entersleepmode = &H95
Exitsleepmode = &H94
Enableintosc = &HD1
Disableintosc = &HD2
Inccontrast = &HD6
Deccontrast = &HD7
Setcontrastintreg = &H81
Drawline = &H83
Fillenabledisable = &H92
Drawrectangle = &H84
Copy = &H8A
Clearwindow = &H8E
Setdataoutputscandir = &HBC
Setpowercontrolreg = &H20
Setdisplaycontrol = &HCA
Selectpwmfrc = &HF7
Setbiasingratio = &HFB
Setcomoutputscandir = &HBB
Dimwindow = &H8C


'data comand

'SetPowerControlReg
D(1) = &H0B

'set display control
D(2) = &H00
D(3) = &H10
D(4) = &H00

'SelectPwmFrc
D(5) = &H28
D(6) = &H2C
D(7) = &H05

'SetBiasingRatio
D(8) = &H03

'SetComOutputScanDir
D(9) = &H01

'SetLookUpTable
D(10) = &H00
D(11) = &H02
D(12) = &H04
D(13) = &H06
D(14) = &H08
D(15) = &H0A
D(16) = &H0C
D(17) = &H0E
D(18) = &H00
D(19) = &H02
D(20) = &H04
D(21) = &H06
D(22) = &H08
D(23) = &H0A
D(24) = &H0C
D(25) = &H0E
D(26) = &H03
D(27) = &H07
D(28) = &H0B
D(29) = &H0F

'SetDataOutputScanDir
D(30) = &H04
D(31) = &H00
D(32) = &H01

'SetContrastIntReg
D(33) = &H1E
D(34) = &H05

'ClearWindow
D(35) = &H00
D(36) = &H00
D(37) = &H67
D(38) = &H4F

'DrawLine
D(39) = &H14
D(40) = &H29
D(41) = &H50
D(42) = &H29
D(43) = &HF0
D(44) = &H0F

'DrawRectangle
D(45) = &H04
D(46) = &H01
D(47) = &H63
D(48) = &H41
D(49) = &H0F
D(50) = &H0F
D(51) = &H00
D(52) = &H00

'FillEnableDisable
D(53) = &H01

'setcolumnaddress
D(54) = &H0A
D(55) = &H11

'setpageaddress
D(56) = &H1E
D(57) = &H25

'writedisplaydata
D(58) = &H00


Config Spi = Soft , Din = Pind.0 , Dout = Portd.1 , Ss = Portd.2 , Clock = Portd.3
Spiinit




''''''''''''''''''''''''''START INIT ''''''''''''''''''''''''''''''''
Waitms 15
Portd.5 = 0
Waitms 20
Portd.5 = 1

      Portd.4 = 0
Spiout Enableintosc , 1
Spiout Exitsleepmode , 1
Spiout Setpowercontrolreg , 1
      Portd.4 = 1
      Spiout D(1) , 1

      Portd.4 = 0
Spiout Setdisplaycontrol , 1
      Portd.4 = 1
      Spiout D(2) , 1
      Spiout D(3) , 1
      Spiout D(4) , 1

      Portd.4 = 0
Spiout Selectpwmfrc , 1
      Portd.4 = 1
      Spiout D(5) , 1
      Spiout D(6) , 1
      Spiout D(7) , 1

      Portd.4 = 0
Spiout Setbiasingratio , 1
      Portd.4 = 1
      Spiout D(8) , 1

      Portd.4 = 0
Spiout Setcomoutputscandir , 1
      Portd.4 = 1
      Spiout D(9) , 1

      Portd.4 = 0
Spiout Setlookuptable , 1
      Portd.4 = 1
      Spiout D(10) , 1
      Spiout D(11) , 1
      Spiout D(12) , 1
      Spiout D(13) , 1
      Spiout D(14) , 1
      Spiout D(15) , 1
      Spiout D(16) , 1
      Spiout D(17) , 1
      Spiout D(18) , 1
      Spiout D(19) , 1
      Spiout D(20) , 1
      Spiout D(21) , 1
      Spiout D(22) , 1
      Spiout D(23) , 1
      Spiout D(24) , 1
      Spiout D(25) , 1
      Spiout D(26) , 1
      Spiout D(27) , 1
      Spiout D(28) , 1
      Spiout D(29) , 1

      Portd.4 = 0
Spiout Setdataoutputscandir , 1
      Portd.4 = 1
      Spiout D(30) , 1
      Spiout D(31) , 1
      Spiout D(32) , 1

      Portd.4 = 0
Spiout Setcontrastintreg , 1
      Portd.4 = 1
      Spiout D(33) , 1
      Spiout D(34) , 1

      Portd.4 = 0
Spiout Ondisplay , 1
Spiout Clearwindow , 1
      Portd.4 = 1
      Spiout D(35) , 1
      Spiout D(36) , 1
      Spiout D(37) , 1
      Spiout D(38) , 1

      Portd.4 = 0
Spiout Drawline , 1
      Portd.4 = 1
      Spiout D(39) , 1
      Spiout D(40) , 1
      Spiout D(41) , 1
      Spiout D(42) , 1
      Spiout D(43) , 1
      Spiout D(44) , 1


      Wait 3
      Portd.4 = 0
Spiout Drawrectangle , 1
      Portd.4 = 1
      Spiout D(45) , 1
      Spiout D(46) , 1
      Spiout D(47) , 1
      Spiout D(48) , 1
      Spiout D(49) , 1
      Spiout D(50) , 1
      Spiout D(51) , 1
      Spiout D(52) , 1

      Wait 3
      Portd.4 = 0
Spiout Fillenabledisable , 1
      Portd.4 = 1
      Spiout D(53) , 1
      Portd.4 = 0
Spiout Setcolumnaddress , 1
      Portd.4 = 1
      Spiout D(54) , 1
      Spiout D(55) , 1

      Portd.4 = 0
Spiout Setpageaddress , 1
      Portd.4 = 1
      Spiout D(56) , 1
      Spiout D(57) , 1

      Portd.4 = 0
Spiout Writedisplaydata , 1
      Portd.4 = 1
      Spiout D(58) , 1



End

Отредактировано thorus (2013-01-14 00:06:15)

0

117

thorus написал(а):

Благодарю за помощ

Не за что, Вам спасибо за проделанную работу.

0

118

amv2000 написал(а):

Не за что, Вам спасибо за проделанную работу.


Теперь осталось разобраться как выводить символы, и наверное потренеруюсь с библиотеками нужно учиться как их писать

0

119

Будте добры, ререзалейле библиотеки увеличения шрифтов для lcd nokia 1100, или скинте на мыло.
Заранее благодарен.

0

120

Порадуйте пожалуйста ссылкой где можно подробно прочитать о создании библиотек в баскоме

0


Вы здесь » Программирование ATMEL в BASCOM. » Исходники » Дисплей Nokia 3510i и не только