Проблемы и решения работы разнообразных дисплеев и индикаторов в программе Flowcode PIC
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
Имя:
Андрей
(Екатеринбург)
- Заинтересованный

- Информация о пользователе
- Сообщений: 10
- Зарегистрирован: 07 мар 2016, 19:11
- Благодарил (а): 1 раз.
- Поблагодарили: 10 раз.
- Пункты репутации: 0

-
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
Имя:
Андрей
(Екатеринбург)
- Заинтересованный

- Информация о пользователе
- Сообщений: 10
- Зарегистрирован: 07 мар 2016, 19:11
- Благодарил (а): 1 раз.
- Поблагодарили: 10 раз.
- Пункты репутации: 0

-
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
- Заинтересованный

- Информация о пользователе
- Сообщений: 23
- Зарегистрирован: 02 ноя 2016, 00:13
- Благодарил (а): 12 раз.
- Поблагодарили: 25 раз.
- Пункты репутации: 0

Вернуться в Flowcode и дисплеи, индикация
Кто сейчас на форуме
Пользователь просматривает форум: нет зарегистрированных пользователей