Вопрос по PIC16F676
|
|
mikhail09p |
Дата: Чт, 25.11.2010, 14:50 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
481
Замечания:
±
На сайте с 04.05.2010
Статус:
Offline
|
Помогите подключить LSD к пику 16F676 Файлы прилагаются.
|
|
|
|
terrarus |
Дата: Чт, 25.11.2010, 16:05 | Сообщение # 2 |
Группа:
Пользователи
Ранг:
Помогаю всем
Сообщений:
451
Замечания:
±
На сайте с 21.08.2008
Статус:
Offline
|
Во первых нельзя цепи D3...D7 LCD подключать к произвольным портам микроконтроллера. При использовании 4-витного подключения нужно D3...D7 подключить соответственно к RC4...RC7 либо к RC0...RC3. А так как в 16F676 не полный порт С имеющий только RC0...RC5, то остается только вариант RC0...RC3. А RS и Е LCD можно подключить к RC4 и RC5. Declare LCD_Type ALPHA ' Тип ЖКИ - буквенно -цифровой Declare LCD_DTPin PORTC.0 ' Порт данных ЖКИ Declare LCD_ENPin PORTC.5 ' Управление линией E Declare LCD_RSPin PORTC.4 ' Управление линией RS Declare LCD_Interface 4 ' Разрядность шины данных Declare LCD_Lines 2 ' Количество строк ЖКИ И еще внимательно посмотрите ваши настройки 'INTCON = %10100000 и OPTION_REG = %00000111 В таких комбинациях LCD не работает. Я пока полностью заремировал 'INTCON = %10100000 вот тогда LCD и заработал. В приложении рабочие модель и прога.
Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
|
|
|
|
mikhail09p |
Дата: Чт, 25.11.2010, 21:31 | Сообщение # 3 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
481
Замечания:
±
На сайте с 04.05.2010
Статус:
Offline
|
Quote (terrarus) И еще внимательно посмотрите ваши настройки 'INTCON = %10100000 и OPTION_REG = %00000111 В таких комбинациях LCD не работает. А почему? Не понимаю. И мне прерывания ТМ0 нужны.
Сообщение отредактировал
mikhail09p - Чт, 25.11.2010, 21:52
|
|
|
|
terrarus |
Дата: Пт, 26.11.2010, 09:26 | Сообщение # 4 |
Группа:
Пользователи
Ранг:
Помогаю всем
Сообщений:
451
Замечания:
±
На сайте с 21.08.2008
Статус:
Offline
|
Quote (mikhail09p) А почему? Не понимаю. И мне прерывания ТМ0 нужны. Потому что, вами выбраны: INTCON = %10100000 ' Разрешить все немаскированные прерывания и разрешить прерывания по переполнению таймера TMR0 OPTION_REG = %00000111 ' Бит 5 равен 0 ,а это значит, что содержимое таймера TMR0 инкрементируется от импусьсов с внутренней тактовой частотой. Бит 6 не рассматриваю так как у 16F676 нет PORTB. ' Бит 4 равен 0, а это значит, что содержимое TMR0 долно инкрементироваться по фронту сигнала когда он тактируется внешним сигналом на входе RA4/TOCKI. НО!!! Обычно у большинства микроконтроллеров TOCKI это PORTA.4 , а у 16F676 PORTA.4 это RA4/TIG/OSC2/AN3/ Так что не получится, то, что Вы задумали. нужно применять другой микроконтроллер, например 16f873A
Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
Сообщение отредактировал
terrarus - Пт, 26.11.2010, 09:28
|
|
|
|
mikhail09p |
Дата: Пт, 26.11.2010, 12:29 | Сообщение # 5 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
481
Замечания:
±
На сайте с 04.05.2010
Статус:
Offline
|
Quote (terrarus) ' Бит 4 равен 0, а это значит, что содержимое TMR0 долно инкрементироваться по фронту сигнала когда он тактируется внешним сигналом на входе RA4/TOCKI. НО!!! Обычно у большинства микроконтроллеров TOCKI это PORTA.4 , а у 16F676 PORTA.4 это RA4/TIG/OSC2/AN3/ Так получается, невозможно тактировать ТМ0 от внутреннего генератора? Quote (terrarus) OPTION_REG = %00000111 ' Бит 5 равен 0 ,а это значит, что содержимое таймера TMR0 инкрементируется от импусьсов с внутренней тактовой частотой. Или можно? Как изменить OPTION_REG и INTCON чтобы использовать ТМR0 ?
Сообщение отредактировал
mikhail09p - Пт, 26.11.2010, 18:02
|
|
|
|
mikhail09p |
Дата: Чт, 02.12.2010, 20:17 | Сообщение # 6 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
481
Замечания:
±
На сайте с 04.05.2010
Статус:
Offline
|
terrarus , извините, понял. Вот результат на 628А. Это часы из 4-мя будильниками. 1-й включает нагрузку, 2-й выключает, 3-й опять включает и 4-й выключает. Прибор используется в курятнике, включает и выключает освещение.
|
|
|
|
MagicX |
Дата: Вт, 21.06.2011, 19:34 | Сообщение # 7 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
6
Замечания:
±
На сайте с 09.04.2011
Статус:
Offline
|
mikhail09p ,а можно этот таймер подогнать под дисплей Toshiba T6963Graphic LCD 240X64.Портов вроде хватает. Добавлено (21.06.2011, 19.34.32) --------------------------------------------- На кварц и светодиоды не обращайте внимания,они от прежней задумки.Кнопка сброса тоже.
|
|
|
|
MagicX |
Дата: Вт, 21.06.2011, 19:49 | Сообщение # 8 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
6
Замечания:
±
На сайте с 09.04.2011
Статус:
Offline
|
вот lcd
|
|
|
|
MagicX |
Дата: Вт, 21.06.2011, 19:52 | Сообщение # 9 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
6
Замечания:
±
На сайте с 09.04.2011
Статус:
Offline
|
А вот еще устройство на pic16f676 применяемое в охранно пожарной сигнализации фирмы НИТА
|
|
|
|
mikhail09p |
Дата: Ср, 22.06.2011, 18:07 | Сообщение # 10 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
481
Замечания:
±
На сайте с 04.05.2010
Статус:
Offline
|
Quote (MagicX) а можно этот таймер подогнать под дисплей Toshiba T6963Graphic LCD 240X64. Я не настолько силён в программировании... Да и, как мне кажется, памяти 676 не хватит. Дисплей то не символьный а графический.
|
|
|
|
MagicX |
Дата: Ср, 22.06.2011, 20:39 | Сообщение # 11 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
6
Замечания:
±
На сайте с 09.04.2011
Статус:
Offline
|
А может вариант:два pica один для таймера,второй для рэле.Только вот какой pic запустит этот дисплей?И хотелось бы плату с реле связать по 485 порту с центральной.А вобщем то наверно придется это делать на контроллере типа 18F4550,но хотелось бы модульную конструкцию.
|
|
|
|