Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 09.09.2010, 13:33  
Slava-martyn
Вид на жительство
 
Аватар для Slava-martyn
 
Регистрация: 07.09.2007
Адрес: Дерёвня Ишимбай
Сообщений: 419
Сказал спасибо: 65
Сказали Спасибо 136 раз(а) в 87 сообщении(ях)
Slava-martyn на пути к лучшему
Вопрос Помогите начинающему (PIC16F84A).

Доброго времени суток!

Хочу научиться писать программы для микроконтроллеров. Начать решил с PIC16F84A. Какие книжки можете посоветовать?
Во вложениях пример моей первой программы, которая не получилась (точнее начала программы) и схема в протеусе (7.2 SP2). Необходимо сделать так чтобы при подаче сигнала на RA3 цифра на дисплее увеличивалась, а при подаче на RA4 – уменьшалась. На данный момент остановился на том, что удалось вызывать определённую цифру при изменении строки «MOVLW 0h» - сразу после «START». Но попытка изменить L1 «MOVLW 1h», «MOVWF L1» ни к чему не приводит.
А может можно более короткий код придумать?
PS. Что означает «Регистр в операнде не в банке 0. Проверьте, что банковские биты - правильно.» Помогите начинающему.
Вложения:
Тип файла: rar ПРИМЕР 6.rar (17.8 Кб, 68 просмотров)
Реклама:
Slava-martyn вне форума  
Сказали "Спасибо" Slava-martyn
warel (27.06.2019)
Непрочитано 09.09.2010, 14:28  
AJScorp
Почётный гражданин KAZUS.RU
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,548
Сказал спасибо: 384
Сказали Спасибо 737 раз(а) в 417 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: Помогите начинающему (PIC16F84A).

Сообщение от Slava-martyn Посмотреть сообщение
Но попытка изменить L1 «MOVLW 1h», «MOVWF L1» ни к чему не приводит.
Потому что цикл замкнут на START, где есть присвоение L1 = 0.

Здесь цифры увеличиваются в цикле
Код:
START
        MOVLW    0h
        MOVWF    L1
CYC:    
        CALL     LEDN
        MOVLW    0FFh
        MOVWF    DATAPORT
;       MOVLW    1h
;       MOVWF    L1
        INCF     L1, F
        MOVLW    .10
        XORWF    L1, W
        BTFSC    STATUS, Z
        MOVWF    L1
        CALL     PAUSE
        GOTO     CYC         ;Перейти на начало
AJScorp вне форума  
Сказали "Спасибо" AJScorp
warel (27.06.2019)
Непрочитано 09.09.2010, 14:39  
AJScorp
Почётный гражданин KAZUS.RU
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,548
Сказал спасибо: 384
Сказали Спасибо 737 раз(а) в 417 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: Помогите начинающему (PIC16F84A).

Да, и уберите "BCF STATUS,Z" в LEDN. Оно там не надо. )
AJScorp вне форума  
Эти 2 пользователя(ей) сказали Спасибо AJScorp за это сообщение:
Slava-martyn (09.09.2010), warel (27.06.2019)
Непрочитано 09.09.2010, 14:59  
Slava-martyn
Вид на жительство
 
Аватар для Slava-martyn
 
Регистрация: 07.09.2007
Адрес: Дерёвня Ишимбай
Сообщений: 419
Сказал спасибо: 65
Сказали Спасибо 136 раз(а) в 87 сообщении(ях)
Slava-martyn на пути к лучшему
По умолчанию Re: Помогите начинающему (PIC16F84A).

2 день сижу, надо сделать перерыв
А что значат строчки
INCF L1, F ; зачем F
MOVLW .10 ; зачем .

Последний раз редактировалось Slava-martyn; 09.09.2010 в 15:10.
Slava-martyn вне форума  
Сказали "Спасибо" Slava-martyn
warel (27.06.2019)
Непрочитано 09.09.2010, 15:26  
zser64
Частый гость
 
Регистрация: 11.09.2007
Сообщений: 16
Сказал спасибо: 1
Сказали Спасибо 7 раз(а) в 4 сообщении(ях)
zser64 на пути к лучшему
По умолчанию Re: Помогите начинающему (PIC16F84A).

Цитата:
Начать решил с PIC16F84A. Какие книжки можете посоветовать?
может поможет http://ikarab.narod.ru/index.html
zser64 вне форума  
Сказали "Спасибо" zser64
warel (27.06.2019)
Непрочитано 09.09.2010, 15:27  
Popeye
Почётный гражданин KAZUS.RU
 
Аватар для Popeye
 
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
Popeye на пути к лучшему
По умолчанию Re: Помогите начинающему (PIC16F84A).

Сообщение от Slava-martyn Посмотреть сообщение
INCF L1, F ; зачем F
L1 увеличивается на единицу, результат записывается в L1. Если стоит W результат записывается в W(рабочий регистр)
Точка кажется прямое указание на число в десятичном формате. Иначе воспринимается формат заданый в RADIX.
__________________
Мыслю, следовательно существую
Popeye вне форума  
Сказали "Спасибо" Popeye
warel (27.06.2019)
Непрочитано 09.09.2010, 18:07  
Slava-martyn
Вид на жительство
 
Аватар для Slava-martyn
 
Регистрация: 07.09.2007
Адрес: Дерёвня Ишимбай
Сообщений: 419
Сказал спасибо: 65
Сказали Спасибо 136 раз(а) в 87 сообщении(ях)
Slava-martyn на пути к лучшему
По умолчанию Re: Помогите начинающему (PIC16F84A).

Чем можно моделировать работу контроллера кроме Proteus и Multisim?
Ещё вопрос: Откуда взялся цикл?
Код:
START
       CALL     LEDN
;       MOVLW    0FFh
;       MOVWF    DATAPORT
       INCF     L1,1
       CALL     PAUSE        ;Если убрать зацикливает цифры по кругу 0-9-0-9...
       GOTO     START        ;Перейти на начало
Вложения:
Тип файла: rar Пример 7-8.rar (18.9 Кб, 64 просмотров)

Последний раз редактировалось Slava-martyn; 09.09.2010 в 18:29.
Slava-martyn вне форума  
Сказали "Спасибо" Slava-martyn
warel (27.06.2019)
Непрочитано 09.09.2010, 20:43  
AJScorp
Почётный гражданин KAZUS.RU
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,548
Сказал спасибо: 384
Сказали Спасибо 737 раз(а) в 417 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: Помогите начинающему (PIC16F84A).

Сообщение от Slava-martyn Посмотреть сообщение
MOVLW .10 ; зачем .
Код:
        MOVLW    .10
        XORWF    L1, W         ;Проверка L1 = 10
        BTFSC    STATUS, Z
        MOVWF    L1            ;Если L1 = 10 присваиваем L1 = 0
Просто сделал, чтобы цифры увеличивались от 0 до 9 циклически.

Сообщение от Popeye Посмотреть сообщение
Точка кажется прямое указание на число в десятичном формате
Именно так.

Последний раз редактировалось AJScorp; 09.09.2010 в 20:45.
AJScorp вне форума  
Сказали "Спасибо" AJScorp
warel (27.06.2019)
Непрочитано 09.09.2010, 20:59  
Slava-martyn
Вид на жительство
 
Аватар для Slava-martyn
 
Регистрация: 07.09.2007
Адрес: Дерёвня Ишимбай
Сообщений: 419
Сказал спасибо: 65
Сказали Спасибо 136 раз(а) в 87 сообщении(ях)
Slava-martyn на пути к лучшему
По умолчанию Re: Помогите начинающему (PIC16F84A).

В вашей программе я уже разобрался, а вот в моей когда CALL PAUSE убираю (код чуть выше) цифры начинают по кругу крутиться, как у вас, но что то я там цикла не вижу.
Если CALL PAUSE не убирать - считает до 9 и дальше пустота - вот это логично и понятно (после 9 то цифр нет).
Slava-martyn вне форума  
Сказали "Спасибо" Slava-martyn
warel (27.06.2019)
Непрочитано 09.09.2010, 21:14  
AJScorp
Почётный гражданин KAZUS.RU
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,548
Сказал спасибо: 384
Сказали Спасибо 737 раз(а) в 417 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: Помогите начинающему (PIC16F84A).

Сообщение от Slava-martyn Посмотреть сообщение
но что то я там цикла не вижу.
Цикл тот же самый, и он один - назван по другому. Я только вынес за его пределы обнуление L1 по старту.
AJScorp вне форума  
Сказали "Спасибо" AJScorp
warel (27.06.2019)
 

Закладки

Метки
pic16, pic16f84, pic16f84a
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите прошить STC 89C58RD suse Микроконтроллеры, АЦП, память и т.д 0 05.08.2010 12:44
Помогите разобраться с pIC16F84A BorisVV Микроконтроллеры, АЦП, память и т.д 4 30.07.2010 12:47
помогите начинающему по WinAVR umkamaks Микроконтроллеры, АЦП, память и т.д 4 05.05.2010 21:01
Помогите начинающему! kolira Микроконтроллеры, АЦП, память и т.д 6 30.01.2010 15:22
помогите розобратся с pic16f84a viteklu Микроконтроллеры, АЦП, память и т.д 2 17.11.2009 20:37


Часовой пояс GMT +4, время: 08:57.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot