Дисплей от Nokia 3310

Проблемы и решения работы разнообразных дисплеев и индикаторов в программе Flowcode PIC

Re: Дисплей от Nokia 3310

Сообщение drel500 (Андрей) » 12 янв 2018, 18:40

Есть вот такой код. Куда его вставить?
Код: выделить все
/**** Macro Substitutions ****
%a = User Define 1
%b = User Define 2
%c = User Define 3
%d = User Define 4
%e = User Define 5
%f = User Define 6
%g = User Define 7
%h = User Define 8
%i = User Define 9
%j = User Define 10
******************************/
#include <string.h>
rom char* table1  = {0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,       // 32 = <space>
                    0x00 , 0x06 , 0x5F , 0x06 , 0x00 ,       // 33 = !
                    0x07 , 0x03 , 0x00 , 0x07 , 0x03 ,       // 34 = "
                    0x24 , 0x7E , 0x24 , 0x7E , 0x24 ,       // 35 = #
                    0x24 , 0x2B , 0x6A , 0x12 , 0x00 ,       // 36 = $
                    0x63 , 0x13 , 0x08 , 0x64 , 0x63 ,       // 37 = %
                    0x36 , 0x49 , 0x56 , 0x20 , 0x50 ,       // 38 = &
                    0x00 , 0x07 , 0x03 , 0x00 , 0x00 ,       // 39 = '
                    0x00 , 0x3E , 0x41 , 0x00 , 0x00 ,       // 40 = (
                    0x00 , 0x41 , 0x3E , 0x00 , 0x00 ,       // 41 = )
                    0x08 , 0x3E , 0x1C , 0x3E , 0x08 ,       // 42 = *
                    0x08 , 0x08 , 0x3E , 0x08 , 0x08};       // 43 = +
rom char* table2 = {0x00 , 0xE0 , 0x60 , 0x00 , 0x00 ,       // 44 = ,
                    0x08 , 0x08 , 0x08 , 0x08 , 0x08 ,       // 45 = -
                    0x00 , 0x60 , 0x60 , 0x00 , 0x00 ,       // 46 = .
                    0x20 , 0x10 , 0x08 , 0x04 , 0x02 ,       // 47 = /
                    0x3E , 0x51 , 0x49 , 0x45 , 0x3E ,       // 48 = 0
                    0x00 , 0x42 , 0x7F , 0x40 , 0x00 ,       // 49 = 1
                    0x62 , 0x51 , 0x49 , 0x49 , 0x46 ,       // 50 = 2
                    0x22 , 0x49 , 0x49 , 0x49 , 0x36 ,       // 51 = 3
                    0x18 , 0x14 , 0x12 , 0x7F , 0x10 ,       // 52 = 4
                    0x2F , 0x49 , 0x49 , 0x49 , 0x31 ,       // 53 = 5
                    0x3C , 0x4A , 0x49 , 0x49 , 0x30 ,       // 54 = 6
                    0x01 , 0x71 , 0x09 , 0x05 , 0x03};       // 55 = 7
rom char* table3 = {0x36 , 0x49 , 0x49 , 0x49 , 0x36 ,       // 56 = 8
                    0x06 , 0x49 , 0x49 , 0x29 , 0x1E ,       // 57 = 9
                    0x00 , 0x6C , 0x6C , 0x00 , 0x00 ,       // 58 = :
                    0x00 , 0xEC , 0x6C , 0x00 , 0x00 ,       // 59 = ;
                    0x08 , 0x14 , 0x22 , 0x41 , 0x00 ,       // 60 = <
                    0x24 , 0x24 , 0x24 , 0x24 , 0x24 ,       // 61 = =
                    0x00 , 0x41 , 0x22 , 0x14 , 0x08 ,       // 62 = >
                    0x02 , 0x01 , 0x59 , 0x09 , 0x06 ,       // 63 = ?
                    0x3E , 0x41 , 0x5D , 0x55 , 0x1E ,       // 64 = @
                    0x7E , 0x09 , 0x09 , 0x09 , 0x7E ,       // 65 = A
                    0x7F , 0x49 , 0x49 , 0x49 , 0x36 ,       // 66 = B
                    0x3E , 0x41 , 0x41 , 0x41 , 0x22};       // 67 = C
rom char* table4 = {0x7F , 0x41 , 0x41 , 0x41 , 0x3E ,       // 68 = D
                    0x7F , 0x49 , 0x49 , 0x49 , 0x41 ,       // 69 = E
                    0x7F , 0x09 , 0x09 , 0x09 , 0x01 ,       // 70 = F
                    0x3E , 0x41 , 0x49 , 0x49 , 0x7A ,       // 71 = G
                    0x7F , 0x08 , 0x08 , 0x08 , 0x7F ,       // 72 = H
                    0x00 , 0x41 , 0x7F , 0x41 , 0x00 ,       // 73 = I
                    0x30 , 0x40 , 0x40 , 0x40 , 0x3F ,       // 74 = J
                    0x7F , 0x08 , 0x14 , 0x22 , 0x41 ,       // 75 = K
                    0x7F , 0x40 , 0x40 , 0x40 , 0x40 ,       // 76 = L
                    0x7F , 0x02 , 0x04 , 0x02 , 0x7F ,       // 77 = M
                    0x7F , 0x02 , 0x04 , 0x08 , 0x7F ,       // 78 = N
                    0x3E , 0x41 , 0x41 , 0x41 , 0x3E};       // 79 = O
rom char* table5 = {0x7F , 0x09 , 0x09 , 0x09 , 0x06 ,       // 80 = P
                    0x3E , 0x41 , 0x51 , 0x21 , 0x5E ,       // 81 = Q
                    0x7F , 0x09 , 0x09 , 0x19 , 0x66 ,       // 82 = R
                    0x26 , 0x49 , 0x49 , 0x49 , 0x32 ,       // 83 = S
                    0x01 , 0x01 , 0x7F , 0x01 , 0x01 ,       // 84 = T
                    0x3F , 0x40 , 0x40 , 0x40 , 0x3F ,       // 85 = U
                    0x1F , 0x20 , 0x40 , 0x20 , 0x1F ,       // 86 = V
                    0x3F , 0x40 , 0x3C , 0x40 , 0x3F ,       // 87 = W
                    0x63 , 0x14 , 0x08 , 0x14 , 0x63 ,       // 88 = X
                    0x07 , 0x08 , 0x70 , 0x08 , 0x07 ,       // 89 = Y
                    0x71 , 0x49 , 0x45 , 0x43 , 0x00 ,       // 90 = Z
                    0x00 , 0x7F , 0x41 , 0x41 , 0x00};       // 91 = [
rom char* table6 = {0x02 , 0x04 , 0x08 , 0x10 , 0x20 ,       // 92 = <backslash>
                    0x00 , 0x41 , 0x41 , 0x7F , 0x00 ,       // 93 = ]
                    0x04 , 0x02 , 0x01 , 0x02 , 0x04 ,       // 94 = ^
                    0x80 , 0x80 , 0x80 , 0x80 , 0x80 ,       // 95 = _
                    0x00 , 0x03 , 0x07 , 0x00 , 0x00 ,       // 96 = `
                    0x20 , 0x54 , 0x54 , 0x54 , 0x78 ,       // 97 = a
                    0x7F , 0x44 , 0x44 , 0x44 , 0x38 ,       // 98 = b
                    0x38 , 0x44 , 0x44 , 0x44 , 0x28 ,       // 99 = c
                    0x38 , 0x44 , 0x44 , 0x44 , 0x7F ,       // 100 = d
                    0x38 , 0x54 , 0x54 , 0x54 , 0x18 ,       // 101 = e
                    0x08 , 0x7E , 0x09 , 0x09 , 0x00 ,       // 102 = f
                    0x18 , 0xA4 , 0xA4 , 0xA4 , 0x7C};       // 103 = g
rom char* table7 = {0x7F , 0x04 , 0x04 , 0x78 , 0x00 ,       // 104 = h
                    0x00 , 0x00 , 0x7D , 0x00 , 0x00 ,       // 105 = i
                    0x40 , 0x80 , 0x84 , 0x7D , 0x00 ,       // 106 = j
                    0x7F , 0x10 , 0x28 , 0x44 , 0x00 ,       // 107 = k
                    0x00 , 0x00 , 0x7F , 0x40 , 0x00 ,       // 108 = l
                    0x7C , 0x04 , 0x18 , 0x04 , 0x78 ,       // 109 = m
                    0x7C , 0x04 , 0x04 , 0x78 , 0x00 ,       // 110 = n
                    0x38 , 0x44 , 0x44 , 0x44 , 0x38 ,       // 111 = o 0x6F
                    0xFC , 0x44 , 0x44 , 0x44 , 0x38 ,       // 112 = p 0x70
                    0x38 , 0x44 , 0x44 , 0x44 , 0xFC ,       // 113 = q
                    0x44 , 0x78 , 0x44 , 0x04 , 0x08 ,       // 114 = r
                    0x08 , 0x54 , 0x54 , 0x54 , 0x20};       // 115 = s
rom char* table8 = {0x04 , 0x3E , 0x44 , 0x24 , 0x00 ,       // 116 = t
                    0x3C , 0x40 , 0x20 , 0x7C , 0x00 ,       // 117 = u
                    0x1C , 0x20 , 0x40 , 0x20 , 0x1C ,       // 118 = v
                    0x3C , 0x60 , 0x30 , 0x60 , 0x3C ,       // 119 = w
                    0x6C , 0x10 , 0x10 , 0x6C , 0x00 ,       // 120 = x
                    0x9C , 0xA0 , 0x60 , 0x3C , 0x00 ,       // 121 = y
                    0x64 , 0x54 , 0x54 , 0x4C , 0x00 ,       // 122 = z
                    0x08 , 0x3E , 0x41 , 0x41 , 0x00 ,       // 123 = {
                    0x00 , 0x00 , 0x7F , 0x00 , 0x00 ,       // 124 = |
                    0x00 , 0x41 , 0x41 , 0x3E , 0x08 ,       // 125 = }
                    0x02 , 0x01 , 0x02 , 0x01 , 0x00 ,       // 126 = ~
                    0x00 , 0x10 , 0x38 , 0x6C , 0xC6};       // 127 [ ] 0x7F

//common defines
#define MX_Portb       portb         //        %a
#define MX_Trisb       trisb        //         %b
#define MX_SCK         portb.7        //        %d
#define MX_SDI         portb.6        //        %e
#define MX_RES         portb.3        //        %f
#define MX_SCE         portb.4        //        %g
#define MX_DC          portb.5        //        %c
#define MX_CUSTOM_7  %g
#define MX_CUSTOM_8  %h
#define MX_CUSTOM_9  %i
#define MX_CUSTOM_10 %j


//Internal CUSTOM Functions
void clockdata(char bits_in);
void writecom(char command_in);
void writedata(char data_in);


Аватар пользователя
Ник: drel500
Имя: Андрей
(Екатеринбург)
Заинтересованный
Заинтересованный
Информация о пользователе

Re: Дисплей от Nokia 3310

Сообщение drel500 (Андрей) » 12 янв 2018, 18:48

Что не так с этим примером?
http://flowcode.info/examples-menu/24-e ... 10-display
При компиляции он выдает такие вот ошибки. Я понимаю что это пример для flowcode 4 но в чем принципиальное отличие и почему в пятом не работает?
Код: выделить все
http://www.matrixmultimedia.com
Ошибки при генерации Cи кода:
LCD.c : 374 : error : Неизвестный или отсутствующий компонент: Custom0.initlcd
LCD.c : 378 : error : Неизвестный или отсутствующий компонент: Custom0.clearram
LCD.c : 382 : error : Неизвестный или отсутствующий компонент: Custom0.cursorxy
LCD.c : 386 : error : Неизвестный или отсутствующий компонент: Custom0.putchar
LCD.c : 390 : error : Неизвестный или отсутствующий компонент: Custom0.cursorxy
LCD.c : 394 : error : Неизвестный или отсутствующий компонент: Custom0.putchar

Ф И Н И Ш

Подскажите кто нибудь рабочий пример для пика
Аватар пользователя
Ник: drel500
Имя: Андрей
(Екатеринбург)
Заинтересованный
Заинтересованный
Информация о пользователе

Re: Дисплей от Nokia 3310

Сообщение Etheodor (emil theodor) » 12 янв 2018, 21:15

Because you have not taken this step:В архиве есть файл PIC_Custom.c, его нужно забросить с заменой в папку - Путь_К_Программе\Matrix Multimedia\Flowcode V5\Components\
Файл программы.[/b]The file PIC_Custom.c from your link should be renamed as "FC5_PIC_Custom.c" after thes step copy and paste in folder Components from your install folder
Ник: Etheodor
Имя: emil theodor
Заинтересованный
Заинтересованный
Информация о пользователе
Вернуться наверх

Пред.

Вернуться в Flowcode и дисплеи, индикация

Кто сейчас на форуме

Пользователь просматривает форум: нет зарегистрированных пользователей

cron