реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> PIC18F2550 слово конфигурации
balk
сообщение Dec 4 2017, 12:42
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 24
Регистрация: 22-11-09
Пользователь №: 53 792



вызывает затруднение запись в asm файле битов конфигурации
например , пишу CONFIG PLLDIV=6 , транслятор пропускает
а вот CONFIG CPUDIV=3 ( и любое другое значение ) пишет value not valid

по сему предполагаю, что возможно , пишется для CPUDIV два числа,
а как это делается ?
и почему два бита в CPUDIV не могут быть записаны простым числом от 0 до 3
Go to the top of the page
 
+Quote Post
balk
сообщение Dec 4 2017, 14:29
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 24
Регистрация: 22-11-09
Пользователь №: 53 792



вообще странно
в значение битого поля ,например, PLLDIV в такой форме записи
CONFIG PLLDIV=6 записывается не b'110', а значение , соответствующее строке divide by 6.
в такой же логике при записи
CONFIG CPUDIV=3 в поле CPUDIV должно вписаться значение , соответствующее строке divide by 3,
однако тарнслятор почему-ио ругается.
Go to the top of the page
 
+Quote Post
balk
сообщение Dec 5 2017, 07:22
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 24
Регистрация: 22-11-09
Пользователь №: 53 792



Прикрепленный файл  config_18f2550.pdf ( 258.93 килобайт ) Кол-во скачиваний: 69
в общем, как всегда, вопрос решился, но теория до конца не пройдена.
как-то у Микрочипа разъяснения по поводу правил записи конфигурации отсутствуют.
надыбал такой файлик с мнемоникой битов конфигурации и этим пока уталил жажду знаний
Go to the top of the page
 
+Quote Post
Driver_GV
сообщение Dec 5 2017, 08:00
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 58
Регистрация: 11-05-06
Из: Lugansk
Пользователь №: 17 011



Посмотрите файл в папке Microchip\MPASM Suite\p18f2550.inc
В нем содержатся описания каждого бита и как они указываются в ASM файле (ближе к концу)

Код
;==========================================================================
;
;   IMPORTANT: For the PIC18 devices, the __CONFIG directive has been
;              superseded by the CONFIG directive.  The following settings
;              are available for this device.
;
;   PLL Prescaler Selection bits:
;     PLLDIV = 1           No prescale (4 MHz oscillator input drives PLL directly)
;     PLLDIV = 2           Divide by 2 (8 MHz oscillator input)
;     PLLDIV = 3           Divide by 3 (12 MHz oscillator input)
;     PLLDIV = 4           Divide by 4 (16 MHz oscillator input)
;     PLLDIV = 5           Divide by 5 (20 MHz oscillator input)
;     PLLDIV = 6           Divide by 6 (24 MHz oscillator input)
;     PLLDIV = 10          Divide by 10 (40 MHz oscillator input)
;     PLLDIV = 12          Divide by 12 (48 MHz oscillator input)
;
;   System Clock Postscaler Selection bits:
;     CPUDIV = OSC1_PLL2   [Primary Oscillator Src: /1][96 MHz PLL Src: /2]
;     CPUDIV = OSC2_PLL3   [Primary Oscillator Src: /2][96 MHz PLL Src: /3]
;     CPUDIV = OSC3_PLL4   [Primary Oscillator Src: /3][96 MHz PLL Src: /4]
;     CPUDIV = OSC4_PLL6   [Primary Oscillator Src: /4][96 MHz PLL Src: /6]
;
;   USB Clock Selection bit (used in Full-Speed USB mode only; UCFG:FSEN = 1):
;     USBDIV = 1           USB clock source comes directly from the primary oscillator block with no postscale
;     USBDIV = 2           USB clock source comes from the 96 MHz PLL divided by 2

......



PS
Аналогично для других камней в соответствующих файлах


Сообщение отредактировал Driver_GV - Dec 5 2017, 08:01


--------------------
-------------------
picping.lg.ua
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 16th April 2024 - 05:57
Рейтинг@Mail.ru


Страница сгенерированна за 0.02647 секунд с 7
ELECTRONIX ©2004-2016