Форум РадиоКот https://radiokot.ru/forum/ |
|
MPLAB в вопросах и ответах https://radiokot.ru/forum/viewtopic.php?f=58&t=7209 |
Страница 1 из 25 |
Автор: | PicNov76 [ Сб дек 01, 2007 12:29:12 ] |
Заголовок сообщения: | MPLAB в вопросах и ответах |
У меня вопрос почему при компиляции возникает ошибка: Register in operand not in bank 0. Ensure that bank bits are correct. Хотя код выполняется корректно bcf STATUS,6 bsf STATUS,5 movlw b'11110000' movwf TRISB Pic16f84a |
Автор: | dalay-lama [ Сб дек 01, 2007 14:41:18 ] |
Заголовок сообщения: | |
Вышеприведенный код справедлив для PIC16F628A. В нём переход в 1-й банк делается именно так. Для PIC16F84A переход в 1-й банк делается так: bsf STATUS, RP0 ; 1-й банк movlw b'11110000' ; RB4-RB7 на вход, movwf TRISB ; остальные на выход bcf STATUS, RP0 ; 0-й банк |
Автор: | PicNov76 [ Сб дек 01, 2007 15:00:47 ] |
Заголовок сообщения: | |
Первоначально было именно так bsf STATUS, RP0 , но ошибка таже. |
Автор: | dalay-lama [ Сб дек 01, 2007 15:06:11 ] |
Заголовок сообщения: | |
Странно... А в шапке прописано: list p=16F84A ; #include <p16F84a> ; Если да, попробуйте добавить: errorlevel -302 ; |
Автор: | Pahan [ Сб дек 01, 2007 15:38:34 ] |
Заголовок сообщения: | |
Просто забей. Это не ошибка, а предупреждение. Если парит, добавь как советовал dalay-lama errorlevel -302, -307. Кстати банки можно переключать так BANKSEL 0x00 ; bank 0 При генерации кода нужные команды добавятся сами. |
Автор: | PicNov76 [ Сб дек 01, 2007 16:08:47 ] |
Заголовок сообщения: | |
Насчёт errorlevel -302 согласен. HEX-ликвидный.Прошивка работает, но меня интересует причина возникновения предупреждения. |
Автор: | dalay-lama [ Сб дек 01, 2007 17:31:46 ] |
Заголовок сообщения: | |
Какая версия MPLAB IDE? Дайте код программы по инициализацию портов включительно. Посмотрим... |
Автор: | PicNov76 [ Сб дек 01, 2007 17:53:26 ] |
Заголовок сообщения: | |
LIST P=16F84A include "P16F84a.inc" ; 4.000 MHz __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON& _XT_OSC ORG 0x0000 clrf Flags clrf PORTB clrf PORTA ;bsf STATUS, RP0 bcf STATUS,6 bsf STATUS,5 movlw b'11110000' movwf TRISB movlw b'00000010' movwf TRISA movlw b'00100111' movwf OPTION_REG bcf STATUS, RP0 MPLAB IDE v7.20 |
Автор: | dalay-lama [ Сб дек 01, 2007 19:20:37 ] |
Заголовок сообщения: | |
PicNov76 писал(а): LIST P=16F84A
include "P16F84a.inc" ; 4.000 MHz __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON& _XT_OSC ORG 0x0000 clrf Flags clrf PORTB clrf PORTA ;bsf STATUS, RP0 bcf STATUS,6 bsf STATUS,5 movlw b'11110000' movwf TRISB movlw b'00000010' movwf TRISA movlw b'00100111' movwf OPTION_REG bcf STATUS, RP0 MPLAB IDE v7.20 Ок... Всё ясно. PIC16F84A имеет только 2 банка: 0-й и 1-й. Отдельно при инициализации сбрасывать 6-й бит регистра STATUS нет смысла (лишняя команда). Пропишите регистр OPTION_REG как в моём примере и пребудет с Вами счастье! Должно быть так: list p=16F84A #include <p16F84a> __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON& _XT_OSC OptionR EQU 01H ORG 0x0000 clrf Flags clrf PORTB clrf PORTA bsf STATUS, RP0 movlw b'11110000' movwf TRISB movlw b'00000010' movwf TRISA movlw b'00100111' movwf OptionR bcf STATUS, RP0 Хочу добавить, что MPLAB ругается из-за регистра OPTION_REG. Его необходимо прописывать в начале программы. Проверьте! |
Автор: | lluganet [ Ср сен 23, 2009 16:49:42 ] |
Заголовок сообщения: | Компиляция в MPLAB IDE |
VPLAB IDE 6.22 c HI-TEC_PICC_v8.01_PL3 Помогите пожалуйста разобраться. В английском не силен да и в програмировании полный ноль, только научится пытаюсь. Не пойму как в нем скомпилировать С в НЕХ. Получаются всякие форматы но только не то что нужно. Или ткните пожалуйста носом где можно прочитать про него. |
Автор: | lluganet [ Чт сен 24, 2009 17:49:43 ] |
Заголовок сообщения: | |
Блин..... или вопрос сильно тупой или в нем нельзя ?!? хоть бы кто ченить сказал ![]() |
Автор: | Alexey1969 [ Чт сен 24, 2009 18:21:07 ] |
Заголовок сообщения: | |
Compile, кнопка F10 Если я правильно понимаю.... |
Автор: | Alexey1969 [ Чт сен 24, 2009 18:25:10 ] |
Заголовок сообщения: | |
А что выдает после компиляции ? какой отчет ? |
Автор: | lluganet [ Чт сен 24, 2009 18:44:41 ] | ||
Заголовок сообщения: | |||
выдает вот это:
|
Автор: | Alexey1969 [ Чт сен 24, 2009 18:48:58 ] |
Заголовок сообщения: | |
Скорее всего компилятор не подключен MPASMWIN. Языки высокого уровня сначало транслируются в ASM, а потом в HEX. Посмотри, файл ASM в дириктории проекта появляется ? |
Автор: | testerplus [ Чт сен 24, 2009 18:50:49 ] |
Заголовок сообщения: | |
lluganet писал(а): выдает вот это:
Программа-то не под HTPICC написана. Это тебе нужен компилятор CCS, хайтек такое не соберет. Ну, или программу переписать, хотя с CCS'а переводить на хайтек - можно запариться. |
Автор: | lluganet [ Чт сен 24, 2009 18:54:09 ] |
Заголовок сообщения: | |
ну переписать у меня ума не хватит ![]() ![]() ![]() а нет случаем компилятора который подойдет чтоб попроще , или ссылочку на него |
Автор: | testerplus [ Чт сен 24, 2009 19:05:18 ] |
Заголовок сообщения: | |
lluganet писал(а): ну переписать у меня ума не хватит
![]() ![]() ![]() а нет случаем компилятора который подойдет чтоб попроще , или ссылочку на него Для чего подойдет? Для этой программы, или для ознакомления с Си? |
Автор: | lluganet [ Чт сен 24, 2009 19:10:48 ] |
Заголовок сообщения: | |
ну вобще для ознакомления с Си. И CCS вроде тоже прикручивается к MPLAB. Хотя мне сама среда проектирования как такова и не нужна пока. Я хотел взять готовый исходник, попробовать кое что поменять и посмотреть результат в протеусе. Сама прошивка робочая, НЕХ в протеусе моделируется. |
Автор: | testerplus [ Чт сен 24, 2009 19:22:39 ] |
Заголовок сообщения: | |
lluganet писал(а): ну вобще для ознакомления с Си.
И CCS вроде тоже прикручивается к MPLAB. Хотя мне сама среда проектирования как такова и не нужна пока. Я хотел взять готовый исходник, попробовать кое что поменять и посмотреть результат в протеусе. Сама прошивка робочая, НЕХ в протеусе моделируется. Для ознакомления - бери mikroC PRO. Это новая версия, но их ломают быстро. Для чего посерьезнее - HT-PICC STD (PRO не бери). Последняя нормальная версия - std 9.60pl3. CCS я бы не советовал. |
Страница 1 из 25 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |