Pic Basic pro для начинающих - Страница 47 - Форум Picbasic.ru
Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 47 из 56«1245464748495556»
Модератор форума: ivan_fd 
Форум Picbasic.ru » Программирование МК » PicBasicPro » Pic Basic pro для начинающих (помощь в осваивании языка Pic Basic pro)
Pic Basic pro для начинающих
MasterPic Дата: Чт, 29.09.2011, 19:07  |                                                                                                                Сообщение # 691
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 196
Репутация: 2   ±
Замечания:   ±
На сайте с 22.11.2008

Статус: Offline

Quote (доцент2)
что значит считать в переменную? считать из памяти датчика? а потом как я ее посмотрю. к сожалению PICBasic это не VisualBasic где можно в процессе отладки посмотреть содержание любой переменной. я пока не знаю может в протеусе можно переменные посмотреть? не получается прикрепить файл протеуса, пишет "не допустимый формат изображения"


Да, считать из памяти датчика и вывести на индикатор. Это же не трудно. Так можно понять - или некорректно записывается в датчик, или сам датчик не реагирует на изменение конфигурационного регистра(точнее, модель датчика в протеусе).
Если писать в протоне, то в протеусе можно смотреть значения переменных при отладке
ЯНДЕКС Дата: 29.09.2011
доцент2 Дата: Чт, 29.09.2011, 19:41  |                                                                                                                Сообщение # 692
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 311
Репутация: 1   ±
Замечания:   ±
На сайте с 13.09.2011

Статус: Offline

считал конфигурацию. соответствует задаваемой. значит с моделькой
измерителя что-то не так. соберу программатор - попробую в железе.

'Если писать в протоне, то в протеусе можно смотреть значения переменных при отладке'
а что в протоне есть какой-то хитрый файл для этого с данными или формат файла не .HEX или .BAS?

Сообщение отредактировал доцент2 - Чт, 29.09.2011, 21:19
ivan_fd Дата: Чт, 29.09.2011, 21:53  |                                                                                                                Сообщение # 693
Группа: Модераторы
Ранг:  Специалист
Сообщений: 882
Репутация: 47   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

У Вас какой Протеус? У меня 7.8 sp2, и на 7.7 sp4 все работает нормально.

Quote (доцент2)
а что в протоне есть какой-то хитрый файл для этого с данными или формат файла не .HEX или .BAS?


Можно подключать BAS файл, а также протон генерирует COF файлы.


Меня все время преследуют умные мысли...но я быстрее!!!
доцент2 Дата: Пт, 30.09.2011, 08:28  |                                                                                                                Сообщение # 694
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 311
Репутация: 1   ±
Замечания:   ±
На сайте с 13.09.2011

Статус: Offline

у меня протеус 7.6sp4 может поэтомуи глючит.
помогите рабочей!!! ссылочкой скачать протеус по новей и
руссифицированный. Большая просьба указать ссылочку на рабочий протеус,
а то пытался уже скачивать несколько раз, то не ставиться, то
не руссифицируется, то работатет с косяками. заранее спасибо.

Сообщение отредактировал доцент2 - Пт, 30.09.2011, 17:48
iggi1711 Дата: Вт, 18.10.2011, 13:35  |                                                                                                                Сообщение # 695
Группа: Проверенные
Ранг:  Новенький
Сообщений: 2
Репутация: 0   ±
Замечания:   ±
На сайте с 10.10.2011

Статус: Offline

Потихоньку осваиваю Пики, вот и появился вопросец. Слепил сначала проект на 16Ф628А, термометры с выводом на ЖКИ, всё отображается корректно. Но так как для дальнейшего развития проекта потребовался АЦП, а в 16Ф628А его нет, то камень был заменён на 16Ф690. И тут уже отображение не полное. Вывод информации выполняется с помощью символов прописаных в lcdchar. Помоготе разобраться что не так. Леплю проект бортовика с измерением температуры, напряжения аккомулятора, и хотелось бы мерять расход топлива (средний\пиковый). Русский шрифт тоже не выводится.
Прикрепления: T628.rar(40Kb) · T690.rar(41Kb)

Сообщение отредактировал iggi1711 - Вт, 18.10.2011, 15:50
Uncle_Dizel Дата: Вт, 18.10.2011, 21:19  |                                                                                                                Сообщение # 696
Группа: Пользователи
Ранг:  Пытаюсь разобраться
Сообщений: 40
Репутация: 2   ±
Замечания:   ±
На сайте с 09.06.2011

Статус: Offline

нужен совет по команде
Data $7E,$11,$11,$11,$7E,$00 ' 65 A 41
изучил эту команду, я не совсем понимаю как происходит запись этих переменных?
то есть $7E, - 0 ячейка памети
$11- 1 ячейка памети?
sa137 Дата: Ср, 19.10.2011, 22:45  |                                                                                                                Сообщение # 697
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 33
Репутация: 0   ±
Замечания:   ±
На сайте с 04.07.2011

Статус: Offline

5.11. DATA
{Label} DATA {@Location,}Constant{,Constant...}
Store constants in on-chip non-volatile EEPROM when the device is first
programmed. If the optional Location value is omitted, the first DATA
statement starts storing at address 0 and subsequent statements store at
the following locations. If the Location value is specified, it denotes the
starting location where these values are stored.


итого - имеем:
если не пишите локейшн - то пишет последовательно начиная с нулевой ячейки.

в общем как вы думаете, так и происходит
доцент2 Дата: Ср, 19.10.2011, 23:21  |                                                                                                                Сообщение # 698
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 311
Репутация: 1   ±
Замечания:   ±
На сайте с 13.09.2011

Статус: Offline

И тут уже отображение не полное. Вывод информации выполняется с помощью символов прописаных в lcdchar.
iggi1711

вот с такой строкой все работает нормально:
LCDOUT $FE, $80, 5, Sign, DEC2 TempC, ".", DEC1 TempC1,$00,$43,$DF
$43 - "С", $DF - значок похожий на ноль в верхнем регистре.

Сообщение отредактировал доцент2 - Ср, 19.10.2011, 23:24
Uncle_Dizel Дата: Чт, 20.10.2011, 10:19  |                                                                                                                Сообщение # 699
Группа: Пользователи
Ранг:  Пытаюсь разобраться
Сообщений: 40
Репутация: 2   ±
Замечания:   ±
На сайте с 09.06.2011

Статус: Offline

sa157 вот например таблица для LCD 3310
'-------------------------------------------------
' Font DATA table
'-------------------------------------------------
' DEC Chr HEX
Data $7E,$11,$11,$11,$7E,$00 ' 65 A 41
Data $7F,$49,$49,$49,$36,$00 ' 66 B 42
Data $3E,$41,$41,$41,$22,$00 ' 67 C 43
Data $7F,$41,$41,$22,$1C,$00 ' 68 D 44
Data $7F,$49,$49,$49,$41,$00 ' 69 E 45
Data $7F,$09,$09,$09,$01,$00 ' 70 F 46
Data $3E,$41,$49,$49,$7A,$00 ' 71 G 47
Data $7F,$08,$08,$08,$7F,$00 ' 72 H 48
Data $00,$41,$7F,$41,$00,$00 ' 73 I 49
Data $20,$40,$41,$3F,$01,$00 ' 74 J 4A
Data $7F,$08,$14,$22,$41,$00 ' 75 K 4B
Data $7F,$40,$40,$40,$40,$00 ' 76 L 4C
Data $7F,$02,$0C,$02,$7F,$00 ' 77 M 4D
Data $7F,$04,$08,$10,$7F,$00 ' 78 N 4E
Data $3E,$41,$41,$41,$3E,$00 ' 79 O 4F
Data $7F,$09,$09,$09,$06,$00 ' 80 P 50
Data $3E,$41,$51,$21,$5E,$00 ' 81 Q 51
Data $7F,$09,$19,$29,$46,$00 ' 82 R 52
Data $46,$49,$49,$49,$31,$00 ' 83 S 53
Data $01,$01,$7F,$01,$01,$00 ' 84 T 54
Data $3F,$40,$40,$40,$3F,$00 ' 85 U 55
Data $1F,$20,$40,$20,$1F,$00 ' 86 V 56
Data $3F,$40,$38,$40,$3F,$00 ' 87 W 57
Data $63,$14,$08,$14,$63,$00 ' 88 X 58
Data $07,$08,$70,$08,$07,$00 ' 89 Y 59
Data $61,$51,$49,$45,$43,$00 ' 90 Z 5A
Data $3E,$51,$49,$45,$3E,$00 ' 48 0 30
Data $00,$42,$7F,$40,$00,$00 ' 49 1 31
Data $42,$61,$51,$49,$46,$00 ' 50 2 32
Data $21,$41,$45,$4B,$31,$00 ' 51 3 33
Data $18,$14,$12,$7F,$10,$00 ' 52 4 34
Data $27,$45,$45,$45,$39,$00 ' 53 5 35
Data $3C,$4A,$49,$49,$30,$00 ' 54 6 36
Data $01,$71,$09,$05,$03,$00 ' 55 7 37
Data $36,$49,$49,$49,$36,$00 ' 56 8 38
Data $06,$49,$49,$49,$3E,$00 ' 57 9 39
Data $00,$00,$00,$00,$00,$00 ' 32 20
Data $08,$08,$3E,$08,$08,$00 ' 43 + 2B

я так понел что запись идет в паметь программы тоесть 2048/14 ,
так вот Data $7E,$11,$11,$11,$7E,$00 ' 65 A 41 почему для символа А записывается так много ячейк памяти?
ivan_fd Дата: Чт, 20.10.2011, 15:57  |                                                                                                                Сообщение # 700
Группа: Модераторы
Ранг:  Специалист
Сообщений: 882
Репутация: 47   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Это не только для символа А. Все символы занимают по 6 байт.
Это своего рода точечный рисунок, ведь екран дисплея есть точечная матрица.



Меня все время преследуют умные мысли...но я быстрее!!!
Сообщение отредактировал ivan_fd - Чт, 20.10.2011, 16:14
iggi1711 Дата: Чт, 20.10.2011, 17:01  |                                                                                                                Сообщение # 701
Группа: Проверенные
Ранг:  Новенький
Сообщений: 2
Репутация: 0   ±
Замечания:   ±
На сайте с 10.10.2011

Статус: Offline

доцент2
это как обходной вариант, а интересно почему на одном камне работае,т а на другом нет.
Uncle_Dizel Дата: Чт, 20.10.2011, 17:48  |                                                                                                                Сообщение # 702
Группа: Пользователи
Ранг:  Пытаюсь разобраться
Сообщений: 40
Репутация: 2   ±
Замечания:   ±
На сайте с 09.06.2011

Статус: Offline

спасибо ivan_fd ты многое прояснил, своим примером)
LCD_Init:

LOW RST :pause 20 : HIGH RST : LOW DC ' RESET LCD

LcdData= $21: GOSUB LCD_ByteOut ' LCD EXTENDED COMMANDS
LcdData= $c8: GOSUB LCD_ByteOut ' SET LCD Vop (CONTRAST)
LcdData= $06: GOSUB LCD_ByteOut ' SET TEMP COEFFICENT
LcdData= $13: GOSUB LCD_ByteOut ' LCD BIAS MODE
LcdData= $20: GOSUB LCD_ByteOut ' LCD STANDARD COMMANDS
LcdData= $0c: GOSUB LCD_ByteOut ' LCD IN NORMAL MODE
RETURN

LCD_ByteOut:
SHIFTOUT DTA,CLK,1,[LcdData]
RETURN

я так понел эти команды не выводят какие либо символы, они подготавливают устройство к работе?
ivan_fd Дата: Чт, 20.10.2011, 17:58  |                                                                                                                Сообщение # 703
Группа: Модераторы
Ранг:  Специалист
Сообщений: 882
Репутация: 47   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Да, это инициализация дисплея.

Меня все время преследуют умные мысли...но я быстрее!!!
Uncle_Dizel Дата: Чт, 20.10.2011, 18:38  |                                                                                                                Сообщение # 704
Группа: Пользователи
Ранг:  Пытаюсь разобраться
Сообщений: 40
Репутация: 2   ±
Замечания:   ±
На сайте с 09.06.2011

Статус: Offline

LcdData=%01000000 | PosY :GOSUB LCD_ByteOut
LcdData=%10000000 | PosX :GOSUB LCD_ByteOut
что за команда | PosX ???
ivan_fd Дата: Чт, 20.10.2011, 19:25  |                                                                                                                Сообщение # 705
Группа: Модераторы
Ранг:  Специалист
Сообщений: 882
Репутация: 47   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Символ "|" означает поразрядное ИЛИ (OR). А PosX - это байтовая переменная, позиция по оси Х.

Меня все время преследуют умные мысли...но я быстрее!!!
Форум Picbasic.ru » Программирование МК » PicBasicPro » Pic Basic pro для начинающих (помощь в осваивании языка Pic Basic pro)
Страница 47 из 56«1245464748495556»
Поиск: