Перейти к содержанию

Калибровка Осциллятора


bolt_2.0

Рекомендуемые сообщения

Error[113] Symbol not previously defined (TRIS)

Вообще в датащите на 12F509 написанно, что TRIS загружает регистр в зашёлки, но про то, что бы по отдельности можно было бы изменять защёлки порта ни слова (как это делается в PIC16 командой

bcf   PORTA, RA4

или

bsf   TRISB, RB5

например...).

Изменено пользователем bolt_2.0
Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Если применен 12-ый, то имя порта GPIO, а имя регистра третьего состояния TRISIO

Т.е. нулевой бит порта именуется как GPIO, GP0 , а бит управления третьим состоянием того же пина как TRISIO, GP0

Впредь, чтобы не задавать таких вопросов, открываете .inc-файл контроллера присоединенный к проекту (он должен быть включен в ветку хедеров окна проекта), путем щелканья мышкой по имени в окне проекта.

В этом текстовом файле и объявлены все биты и регистры специального назначения. Плюс имена бит конфигурационного регистра.

Синтаксис этих объявлений обязан быть сохранен и в основной программе.

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Любопытно, что при попытке очистить регистр TRISIO, т.е. что бы установить все пины ны выход, вылазит ошибка 113:

clrf	TRISIO

в 12F509 в первый банк переходить ведь не надо, там же его по моему нет...? Почему тогда ошибка? Так же ошибка появляется на месте попытки записи значения в оптион:

movlw	B'01001000'
movwf   OPTION

Изменено пользователем bolt_2.0
Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Ничего тут нет любопытного.

Читайте хотя бы иногда даташит на контроллер.

В базовом семействе контроллеров (некоторые 12-ые и все 10-е) обращение к TRIS и OPTION осуществляется специальной командой. А перед этой командой в аккумулятор должно быть занесено содержимое этих регистров.

В этих контроллерах память маленькая и банков нет.

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

В базовом семействе контроллеров (некоторые 12-ые и все 10-е) обращение к TRIS и OPTION осуществляется специальной командой. А перед этой командой в аккумулятор должно быть занесено содержимое этих регистров.

Так во втором случае я так и делал:

movlw   B'01001000'
movwf   OPTION

Занёс в аккумулятор значение и пытался его впихнуть оптиуну...

Ссылка на комментарий
Поделиться на другие сайты

Да ужжжж....

Почему Вы так не внимательны?

Я же просил: ПРОЧИТАЙТЕ ДАТАШИТ на контроллер.

В базовом семействе есть ДВЕ СПЕЦИАЛЬНЫЕ КОМАНДЫ:

TRIS и OPTION

Это КОМАНДЫ, а не имена регистров.

Эти команды заносят содержимое аккумулятора в соответствующий регистр (по имени команды)

Команда TRIS имеет параметр: TRIS 6

Прямого доступа в эти регистры нет.

Изменено пользователем my504

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

С OPTION разобрался :rolleyes: Теперь ещё хотелось бы прояснить про TRIS. Получается, что выражение:

movlw   b'00111110'
TRIS

установит вывод GP0 на выход, а остальные на вход.

Так же Вы писали, что:

нулевой бит порта именуется как GPIO, GP0 , а бит управления третьим состоянием того же пина как TRISIO, GP0

Пишу так:

bcf   TRISIO, GP0

т.е. хочу установить один лишь вывод GP0 на выход, не трогая остальных, и опять неудача... :( опять что то компиллятору не нравится...

Изменено пользователем bolt_2.0
Ссылка на комментарий
Поделиться на другие сайты

Еще раз.

Часть 12-х и все 10-ые относятся к БАЗОВОМУ семейству МК Микрочипа. У них разрядность команд - 12.

У этих контроллеров НЕТ прямого доступа к этим двум регистрам и доступ только через эти две специфические команды.

Кстати, Вы забыли указать аргумент у TRIS: TRIS 6

А остальные МК 12-ой и все 16-ые относятся к СРЕДНЕМУ семейству МК.

Разрядность команд - 14.

У них обращение имеет синтаксис о котором я говорил ранее.

Но я НЕ ПОМНЮ какие 12-ые куда относятся (точнее помню только те, которые я сам применял). Отсюда и создалась некоторая неразбериха - сначала одно, а потом другое.

Извините.

Изменено пользователем my504

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

Кстати, Вы забыли указать аргумент у TRIS: TRIS 6

То есть нужно писать так:

movlw   b'00111110'
TRIS 6

???

У этих контроллеров НЕТ прямого доступа к этим двум регистрам и доступ только через эти две специфические команды.

Тык это тогда получается, что для того, что бы записать новое значение в защёлки нужно сперва прочитать их состояние, сохранить его в отдельном байте, изменить в этом байте необходимое значение и опять записать его в регистр порта... неудобство то какое... :ph34r:

Ссылка на комментарий
Поделиться на другие сайты

Кто Вас заставляет применять базовое семейство?

Возьмите не 509-ый, а 629-ый или 675-ый или 683-ий...

Не будет никаких проблем.

Стоят они чуть дороже: 30...40 руб.

Думаю, что это не принципиально...

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

Вся проблема в том, что мой программатор не пишет эти МК... и как оказалось позже PIC12F509 он то же не пишет :ph34r: Только PIC16F84A и всё... :( . Сейчас буду собирать вот такой программатор, надеюсь с ним проблем не будет... :rolleyes:

Изменено пользователем bolt_2.0
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...