Pic Basic pro для начинающих
|
|
pic_anton |
Дата: Пн, 22.02.2010, 20:06 | Сообщение # 151 |
Группа:
Проверенные
Ранг:
Пытаюсь разобраться
Сообщений:
58
Замечания:
±
На сайте с 18.02.2010
Статус:
Offline
|
@ device HS_osc, wdt_off, wrt_off, lvp_off, pwrt_off, protect_off define OSC 20 ;-----------Настройки подключения ЖКИ-------------------------- DEFINE LCD_DPORT PORTB ;Порт данных ЖКИ DEFINE LCD_DBIT 8 ; Бит данных ЖКИ DEFINE LCD_EPORT PORTC ; Управление линией E DEFINE LCD_EBIT 1 ; Управление линией E DEFINE LCD_RSPORT PORTC ; Управление линией RS DEFINE LCD_RSBIT 0 ; Управление линией RS DEFINE LCD_BITS 0 ;Разрядность шины данных DEFINE LCD_COMMANDUS 2000 ; Задержка перед посылкой команды DEFINE LCD_DATAUS 50 ; Задержка перед посылкой данных DEFINE LCD_LINES 2 ; Количество строк ЖКИ ;----------------- Регистры специального назначения----------------- ;-------------------------------- Начало ---------------------------- trisc=%00000000 trisb=%00000000 ;------------------------ Главная программа ----------------------- pause 2000 MainProgram: Lcdout $fe, 1 ' Clear LCD screen Lcdout "World" Pause 500 ' Wait .5 second portd.0=1 pause 1000 portd.0=0 pause 1000 Goto MainProgram ; Возврат на начало основной программы
Добавлено (22.02.2010, 20.06.48) --------------------------------------------- Схема собрана на 8 битной шине все перепроверено неоднократно программирую при помощи PICKIT2 может он что то не так пишет или я не правильно кон фигурирую камень в общем посмотрите межет что то не так хотя писам програмку для проверки все портов работают нормально
Век живи, Век учись, и всего не постичь!!!
|
|
|
|
ivan_fd |
Дата: Пн, 22.02.2010, 20:19 | Сообщение # 152 |
Группа:
Модераторы
Ранг:
Специалист
Сообщений:
894
Замечания:
±
На сайте с 12.01.2009
Статус:
Offline
|
Вы далее за свое, вас же на предыдущих страницах исправляли: Code @ device pic16f877a, HS_osc, wdt_off, wrt_off, lvp_off, pwrt_off, protect_off
define OSC 20
;-----------Настройки подключения ЖКИ--------------------------
DEFINE LCD_DREG PORTB ;Порт данных ЖКИ DEFINE LCD_DBIT 0 ; Бит данных ЖКИ DEFINE LCD_EREG PORTC ; Управление линией E DEFINE LCD_EBIT 1 ; Управление линией E DEFINE LCD_RSREG PORTC ; Управление линией RS DEFINE LCD_RSBIT 0 ; Управление линией RS DEFINE LCD_BITS 8 ;Разрядность шины данных DEFINE LCD_COMMANDUS 2000 ; Задержка перед посылкой команды DEFINE LCD_DATAUS 50 ; Задержка перед посылкой данных DEFINE LCD_LINES 2 ; Количество строк ЖКИ ;----------------- Регистры специального назначения-----------------
;-------------------------------- Начало ---------------------------- trisc = %00000000 trisb = %00000000 trisd = %00000000 ;------------------------ Главная программа -----------------------
pause 2000
MainProgram:
Lcdout $fe, 1 ' Clear LCD screen Lcdout "World" Pause 500 ' Wait .5 second
portd.0=1 pause 1000 portd.0=0 pause 1000
Goto MainProgram ; Возврат на начало основной программы Пробуйте вот это.
Сообщение отредактировал
ivan_fd - Пн, 22.02.2010, 20:22
|
|
|
|
pic_anton |
Дата: Пн, 22.02.2010, 20:27 | Сообщение # 153 |
Группа:
Проверенные
Ранг:
Пытаюсь разобраться
Сообщений:
58
Замечания:
±
На сайте с 18.02.2010
Статус:
Offline
|
СПАСИБО Я теперь понил в чем беда была приклоняю перед вами колено сен сей с меня литр чего хочишь только напиши куда выслать
Век живи, Век учись, и всего не постичь!!!
|
|
|
|
Python |
Дата: Пн, 22.02.2010, 20:55 | Сообщение # 154 |
Группа:
Пользователи
Ранг:
Пытаюсь разобраться
Сообщений:
45
Замечания:
±
На сайте с 11.02.2010
Статус:
Offline
|
terrarus, простите великодушно, но что то я поиском попробовал, ничего не находит... В каком разделе форума искать? Кстати говоря с юсартом получилось! Спасибо.
|
|
|
|
ivan_fd |
Дата: Пн, 22.02.2010, 21:04 | Сообщение # 155 |
Группа:
Модераторы
Ранг:
Специалист
Сообщений:
894
Замечания:
±
На сайте с 12.01.2009
Статус:
Offline
|
Вот здесь посмотрите.
http://www.picbasic.ru/load/10-1-0-83 http://www.picbasic.ru/load....1-0-217
|
|
|
|
terrarus |
Дата: Пн, 22.02.2010, 21:34 | Сообщение # 156 |
Группа:
Пользователи
Ранг:
Помогаю всем
Сообщений:
451
Замечания:
±
На сайте с 21.08.2008
Статус:
Offline
|
Quote (Python) В каком разделе форума искать? Я вам две книги выслал на е-майл, только книгу Чака Хелибайка не нашел у себя. Качайте её с сервера по сылке http://www.picbasic.ru/load/10-1-0-83 Успехов!
Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
|
|
|
|
Python |
Дата: Пн, 22.02.2010, 21:35 | Сообщение # 157 |
Группа:
Пользователи
Ранг:
Пытаюсь разобраться
Сообщений:
45
Замечания:
±
На сайте с 11.02.2010
Статус:
Offline
|
Спасибо, куча интересной информации...
|
|
|
|
pic_anton |
Дата: Вт, 23.02.2010, 14:17 | Сообщение # 158 |
Группа:
Проверенные
Ранг:
Пытаюсь разобраться
Сообщений:
58
Замечания:
±
На сайте с 18.02.2010
Статус:
Offline
|
спасибо этому форуму за спасение молодых
Век живи, Век учись, и всего не постичь!!!
|
|
|
|
Python |
Дата: Вт, 23.02.2010, 18:41 | Сообщение # 159 |
Группа:
Пользователи
Ранг:
Пытаюсь разобраться
Сообщений:
45
Замечания:
±
На сайте с 11.02.2010
Статус:
Offline
|
Форум путёвый, но главное Люди! Можно конечно еще долго дефирамбить, но мне кажется все всё и так понимают. Так в чем проблема была pic_anton ? Случайно никто не встречал простейший проект Протеуса с использованием Pic16f628 и ЖКИ 16х2? Немогу разобраться с подключением и прошивкой, в стандартном примере (lcd4bit) прошивка не HEX а D39. Я пытаюсь хикс-файл воткнуть в пик628, при запуске подсветка ЖКИ(16х2) включается, но ничего невидно,а в примере все работает, вот только там однострочный ЖКИ хотя какая разница ведь все дело только в адресации. Помоему я не с того сразу начал, надо было начинать с Протеуса, а я начал с макетной платы, вот теперь и дергаю кристалл из программатора в макетку и обратно... Но, как говорится "Жил бы в Сочи, знал бы прикуп."
Сообщение отредактировал
Python - Вт, 23.02.2010, 21:36
|
|
|
|
Dmitry |
Дата: Вт, 23.02.2010, 22:39 | Сообщение # 160 |
Группа:
Пользователи
Ранг:
Могу и подсказать
Сообщений:
157
Замечания:
±
На сайте с 12.05.2009
Статус:
Offline
|
Quote (Python) Помоему я не с того сразу начал, надо было начинать с Протеуса, а я начал с макетной платы, вот теперь и дергаю кристалл из программатора в макетку и обратно... Правильно начал, с протеусом можно еще и протеусных глюков поиметь, а с макеткой уже без вариантов - если на ней не работает, значит, точно не работает. А чтоб не дергать чип из панельки в панельку, припаяй к макетке разъемчик на 5 штырьков и заливай прошивку внутрисхемно.
|
|
|
|
Python |
Дата: Вт, 23.02.2010, 22:59 | Сообщение # 161 |
Группа:
Пользователи
Ранг:
Пытаюсь разобраться
Сообщений:
45
Замечания:
±
На сайте с 11.02.2010
Статус:
Offline
|
Dmitry, совет толковый, вот только как быть с подтягивающими резисторами, светодиодами, ЖКИ, энкодером, все ведь висит на выводах портов, я например не знаю как отреагирует на это энкодер, вдруг он сгорит, все таки 92 бакса это деньги. А возможен вариант с кнопочкой которая отключает эти 5 контактов от периферии, или это ненадёжно и громоздко, может есть испытанные альтернативы?
|
|
|
|
Dmitry |
Дата: Вт, 23.02.2010, 23:41 | Сообщение # 162 |
Группа:
Пользователи
Ранг:
Могу и подсказать
Сообщений:
157
Замечания:
±
На сайте с 12.05.2009
Статус:
Offline
|
Лично я стараюсь эти контакты в последнюю очередь задействовать и вешать на них кнопки, например. Питаю макетку прямо от программатора, т.е. земля и +5 подключены всегда, MCLR тоже последний порт, который использую, т.е. Vpp чаще всего тоже никому не мешает, а вот PGD и PGC - эти мона или через тумблер, или заглушку на разъем программирования, отключающую PGD и PGC от схемы, или, как наиболее правильно, на эти выводы вешать что-либо не силовое, а информационное, тот же выход оптрона, например, или базу транзистора, который реле дергает, и подключать их к этим ногам (PGD и PGC) через резистор 10 кОм - тогда и отключать ничего не надо, и на логику работы этот резистор не влияет. Вариант проверенного решения на картинке - 10-ножковый разъем от ком-портов на материнках, верхние 5 контактов к процу, например, нижние - к схеме. В этот разъем вставляется шнурок от программатора, в котором распаяны верхние 5 проводов. Залил прошивку, выдернул шнур, вставил заглушку, в которой верхний и нижний контакт соединены между собой. Просто, надежно, никогда ничего не забудешь отключить. Из неудобств - постоянно перетыкать программатор/заглушку и занимает место на плате (последнее для макетки неважно).
Сообщение отредактировал
Dmitry - Вт, 23.02.2010, 23:52
|
|
|
|
pic_anton |
Дата: Ср, 24.02.2010, 12:50 | Сообщение # 163 |
Группа:
Проверенные
Ранг:
Пытаюсь разобраться
Сообщений:
58
Замечания:
±
На сайте с 18.02.2010
Статус:
Offline
|
Проблема была в первую очередь с головой писал не так и указывал не то. теперь у меня аж 3 запосных ЛСД
Век живи, Век учись, и всего не постичь!!!
|
|
|
|
terrarus |
Дата: Ср, 24.02.2010, 12:51 | Сообщение # 164 |
Группа:
Пользователи
Ранг:
Помогаю всем
Сообщений:
451
Замечания:
±
На сайте с 21.08.2008
Статус:
Offline
|
Quote (Python) Случайно никто не встречал простейший проект Протеуса с использованием Pic16f628 и ЖКИ 16х2? Я встречал. На ресурсе http://terrarus.ucoz.ru/proton_plus_ide/index.html в описании команды READ есть такой пример. Device = 16F628 XTAL = 4 '-------------------------------Настройки подключения ЖКИ-------------------------------- Declare LCD_TYPE ALPHA ' Тип ЖКИ алфавитно - цифровой Declare LCD_DTPIN PORTB.4 ' Порт данных ЖКИ Declare LCD_ENPIN PORTB.2 ' Цепь управления E Declare LCD_RSPIN PORTB.1 ' Цепь управления RS Declare LCD_INTERFACE 4 ' Разрядность шины данных Declare LCD_COMMANDUS 2000 ' Задержка перед посылкой команды Declare LCD_DATAUS 50 ' Задержка перед посылкой данных Declare LCD_LINES 2 ' Количество строк ЖКИ .................. и так далее. Там же можно скачать модель для Протеуса и исходные BAS, ASM и HEX файлы.
Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
|
|
|
|
pic_anton |
Дата: Ср, 24.02.2010, 19:56 | Сообщение # 165 |
Группа:
Проверенные
Ранг:
Пытаюсь разобраться
Сообщений:
58
Замечания:
±
На сайте с 18.02.2010
Статус:
Offline
|
@ device pic16f877a, HS_osc, wdt_off, wrt_off, lvp_off, pwrt_off, protect_off INCLUDE "modedefs.bas" define OSC 20 trisd=0 main serout portd.2,T2400,["ok",10,13] pause 1000 goto main подключил а терминал на компе нуль может кто нибудь работал подскажите Добавлено (24.02.2010, 19.56.48) --------------------------------------------- Все я разобрался неправильно подключил. а вот как принять символ в контролер преобразовать и опять вывести на экран
Век живи, Век учись, и всего не постичь!!!
|
|
|
|