Уважаемые знатоки !
Поделитесь еще раз ссылкой на библиотеки с увеличением шрифтов для 1100 и 3310, а то ссылки, приведенные ранее, умерли.
Спасибо заранее !
Программирование ATMEL в BASCOM. |
Привет, Гость! Войдите или зарегистрируйтесь.
Вы здесь » Программирование ATMEL в BASCOM. » Дисплеи и индикация » Дисплей Nokia 3510i и не только
Уважаемые знатоки !
Поделитесь еще раз ссылкой на библиотеки с увеличением шрифтов для 1100 и 3310, а то ссылки, приведенные ранее, умерли.
Спасибо заранее !
Доброго вечера всем, есть небольшой вопрос, есть дисплей от моторолы но я не знаю модель, не подскажете? Заранее Спасибо!

И еще, я так понял моторола подключаются по I2C а по ссылке ниже описывается по SPI, или у них встречаются оба протокола передачи?
И подходит ли мой дисплей под эту распиновку?
http://chipenable.ru/index.php/how-conn … -c350.html
Отредактировано thorus (2013-01-10 20:31:46)
Доброго вечера всем, есть небольшой вопрос, есть дисплей от моторолы но я не знаю модель, не подскажете? Заранее Спасибо!
И еще, я так понял моторола подключаются по I2C а по ссылке ниже описывается по SPI, или у них встречаются оба протокола передачи?
И подходит ли мой дисплей под эту распиновку?
http://chipenable.ru/index.php/how-conn … -c350.html
Отредактировано thorus (Сегодня 20:31:46)
С350
Александр.К
Спасибо за ответ!
Никто с моторолой С350 не сталкивался? как инициализировать его?
Отредактировано thorus (2013-01-10 23:54:51)
Mrshilov
я то видел на с, но я дело в том что с этим языком пока что враждую)
Mrshilov
Спасибо за ссылочку
Большое спасибо, а как понимать 0х3? Это 0х03 ? Или это просто отсылка 4х битов?
И еще с вот этим непонятка:
SendData(0);
SendData(16);
SendData(0);
что значит 0 и 16 это я так понимаю к HEX не относится?
Отредактировано thorus (2013-01-11 19:32:47)
уже разобрался это дисятичное)) спс
я вас замучаю))
A=&hFF
spiout =A , 1
а можно вместо этого писать типа вот так:
spiout &hFF , 1
но бас ком не понимает этого, нигде не могу найти как на прямую без переменных это делать
я голову сломаю в этом си скоро, есть люди разбирающиеся в си?
Уже мозг выкипает, может я чего то не дописал, может туплю в чем то, короче не рисует он линию и все, может что то с си не так передрал я в си полный 0
$regfile = "m8def.dat"
$crystal = 8000000
Dim A(48) As ByteConfig 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
SpiinitA(1) = &HD1 'internal oscillator
A(2) = &H94 'exit slep modeA(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 xxxx0001A(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 'dataA(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 'xxxxx011A(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 = 0Portd.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) , 1Spiout 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) , 1Spiout 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) , 1Portd.4 = 0
'Светодиод
Portd.7 = 1
Wait 1End
кто нибудь запускал дисплей от моторолы с350, если да скиньте хотя бы небольшой исходник для проверки работает ли дисплей, а то я уже подозреваю может что с дисплеем, чтоб знать с кодом напортачил или дисплей такой, заранее спасибо
Отредактировано thorus (2013-01-12 23:47:16)
Привожу свою белиберду бредовую, я с 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
скиньте хотя бы небольшой исходник для проверки работает ли дисплей
По Вашей ссылке есть исходник в IAR, поменяйте на нужный МК и выставите нужные порта, после перекомпилируйте и попробуйте.
По Вашей ссылке есть исходник в IAR, поменяйте на нужный МК и выставите нужные порта, после перекомпилируйте и попробуйте.
ок спс, но там как то не так файлы раскиданы в исходнике, некоторые подгружаются а некоторые нет, я не уверен что можно доверять ему
Отредактировано thorus (2013-01-13 16:47:52)
кстати, на команды entrsleepmode и exitsleepmode экран вроде реагирует, а вот линию не рисует
и я не могу найти где там меняется МК, и еще какой программой си компилировать?
CodeVisionAVR подойдет?
Отредактировано thorus (2013-01-13 17:05:50)
Нет исходник под IAR, схему набросайте какая у Вас распиновка, попробую перекомпилирую.
А МК меняется Project -- Options -- General Options -- Target и там Processor configuration меняете на свой
Здесь можно почитать немного http://www.chipenable.ru/index.php/iar- … oekta.html
Отредактировано amv2000 (2013-01-13 19:03:54)
Нет исходник под IAR, схему набросайте какая у Вас распиновка, попробую перекомпилирую.
Atmega8
portd
1 - dout
2 - ss
3 - Clock
4 - cmd/data
5 - reset
и укажите пожалуйста какая частота кристала там будет
Спасибо
Отредактировано thorus (2013-01-13 19:04:22)
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)
я открыл файл 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 и кстати приношу извинения за недоразумение
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 говорят что аппаратный вроде туповатый, не всегда правильно работает, лучше не использовать
Нет Вы же читали, что пишет автор
Выводы 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)
сейчас попробую перепаять, прошивку уже загнал, проверю отпишусь
Спасибо большое
блин заработал спасибо
тогда попробую свой код на аппаратный вывести может что то изменится
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)
Благодарю за помощ
Не за что, Вам спасибо за проделанную работу.
Не за что, Вам спасибо за проделанную работу.
Теперь осталось разобраться как выводить символы, и наверное потренеруюсь с библиотеками нужно учиться как их писать
Будте добры, ререзалейле библиотеки увеличения шрифтов для lcd nokia 1100, или скинте на мыло.
Заранее благодарен.
Порадуйте пожалуйста ссылкой где можно подробно прочитать о создании библиотек в баскоме
Вы здесь » Программирование ATMEL в BASCOM. » Дисплеи и индикация » Дисплей Nokia 3510i и не только