MPLAB в вопросах и ответах
-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: У кого живой mplab помогите!
Мда... Никто так и не захотел помочь. Придется переустановить винду и самому все сделать 
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: У кого живой mplab помогите!
это микроси . Не МСС18, не хайтек. Этим компилятором мало кто пользуется.
-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: У кого живой mplab помогите!
Тема закрыта. Переустановил винду, поставил мп-лаб и компилятор и все сделал сам.
- БАТАРЕЙКУС
- Потрогал лапой паяльник
- Сообщения: 346
- Зарегистрирован: Сб фев 07, 2009 19:21:25
Re: PIC12f629 + MPLAB + ISIS - проблема с выводом
вобщем вот проект разбирайтесь.
- Вложения
-
- 12f629.rar
- (13.5 КБ) 245 скачиваний
Мечтатель - не тот, кто сидит на диване и думает о несбыточном, а тот, кто всеми силами стремится воплотить несбыточное в реальность.
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: PIC12f629 + MPLAB + ISIS - проблема с выводом
Не вводите людей в заблуждение. Прежде чем такие вещи писать, почитайте ДШ повнимательнее.Ser60 писал(а):не хватает строчки ANSEL = 0;
- БАТАРЕЙКУС
- Потрогал лапой паяльник
- Сообщения: 346
- Зарегистрирован: Сб фев 07, 2009 19:21:25
Re: PIC12f629 + MPLAB + ISIS - проблема с выводом
Аlex писал(а):Не вводите людей в заблуждение. Прежде чем такие вещи писать, почитайте ДШ повнимательнее.Ser60 писал(а):не хватает строчки ANSEL = 0;
вот эта строчка в 60-ой строчке.
Код: Выделить всё
clrf ANSEL ; Настройка вывода как цифровой канал порта ввода/выводаединственное что я накасячил это в самой верхней строчке прописал
Код: Выделить всё
LIST p=16F876A ; PIC16F876A.в товремя как надо
Код: Выделить всё
LIST p=12F629 ; PIC12F629.но на суть это не влияет так как проект создан под 12F629, желательно конечно прописывать правельно.
Мечтатель - не тот, кто сидит на диване и думает о несбыточном, а тот, кто всеми силами стремится воплотить несбыточное в реальность.
Re: PIC12f629 + MPLAB + ISIS - проблема с выводом
Аlex писал(а):Не вводите людей в заблуждение. Прежде чем такие вещи писать, почитайте ДШ повнимательнее.Ser60 писал(а):не хватает строчки ANSEL = 0;
Согласен и извиняюсь за дезу. У 629-го нет ADC и ANSEL для него не имеет смысла. ANSEL имеет смысл для старшего брата 629-го - 12F675.
-
Transistor
- Прорезались зубы
- Сообщения: 209
- Зарегистрирован: Пт авг 27, 2010 18:05:09
Как слепить в эдиное целое MPLAB+CCS+PROTEUS
суть вопроса в том что немогу в ПРОТЕУСЕ следить за даними(переменими и регистрами) в програме невозможна както соединит ети пакети в нете эсть но для болие старой версии а мне нужно для етих:
MPLAB 8.73
CCS 4.12
PROTEUS 7.6
Что порадите.
MPLAB 8.73
CCS 4.12
PROTEUS 7.6
Что порадите.
MPLAB v8.36 C++ 16F887
Добрый всем день или вечер.
Начал изучать программирование сабж контроллера.
Светодиодики мигают все прикольно, дисплей работает.
Вот докопался до сом порта и никак ничего не входит, может кто разбирался??
Как например в гипертерминал передать с контроллера какие то слова хотя бы..
Я без эмулятора сом подключился к ком1 напрямую к компу. Там есть проги примеры, ну никак не пашет.
Начал изучать программирование сабж контроллера.
Светодиодики мигают все прикольно, дисплей работает.
Вот докопался до сом порта и никак ничего не входит, может кто разбирался??
Как например в гипертерминал передать с контроллера какие то слова хотя бы..
Я без эмулятора сом подключился к ком1 напрямую к компу. Там есть проги примеры, ну никак не пашет.
Re: MPLAB v8.36 C++ 16F887
Надо было хотя-бы драйвер между ними поставить.
- Pavel_1978
- Опытный кот
- Сообщения: 830
- Зарегистрирован: Пт ноя 16, 2007 11:21:37
Re: MPLAB v8.36 C++ 16F887
На чем пишешь Си или асм? О каких примерах идет речь.
И как именно ты на прямую к СОМ1 подключаешь? Преобразователь уровней стоит?
И как именно ты на прямую к СОМ1 подключаешь? Преобразователь уровней стоит?
Re: MPLAB v8.36 C++ 16F887
Да я чего то все так быстренько ляпнул не рассказав толком.
В общем купил я отладочную плату, думал задушусь от жабы, денег падла стоит жуть.
Ну так один раз и на долго, и все на ней удобно.

Вот такой комплект.
На диске давали кучу примеров, я все примеры сперва попробовал, некоторые вообще не понимаю что делают.
Начал свое делать. В общем начало получатся. Пока синтаксис и функции я не запомнил я по примерам как конструктором пользуюсь.
Комилятор Hi-tech Pro C. Херен его знает что это, похож на C++. Примеры все под этот компилятор.
Вот например прога которая какую ту хрень передает на гитерперминал.
Нихрена не пашет.
Max232 стоит. Подключна к 16f887, к выводам RC6, RC7.
Порт в компе без эмулятора, напрямую СОМ1.
Но странная штука, замыкаю контакты 2 и 3 на компе, обратка не идет.. Хрень. Как сом на компе проверить. Да и на эмуляторе USB - COM коротил, таже хрень.
В общем купил я отладочную плату, думал задушусь от жабы, денег падла стоит жуть.
Ну так один раз и на долго, и все на ней удобно.

Вот такой комплект.
На диске давали кучу примеров, я все примеры сперва попробовал, некоторые вообще не понимаю что делают.
Начал свое делать. В общем начало получатся. Пока синтаксис и функции я не запомнил я по примерам как конструктором пользуюсь.
Комилятор Hi-tech Pro C. Херен его знает что это, похож на C++. Примеры все под этот компилятор.
Вот например прога которая какую ту хрень передает на гитерперминал.
Код: Выделить всё
#include <pic.h> // Include header file for MCU
#define _XTAL_FREQ 20000000 // Define Frequency 20.0 MHz for function __delay_ms
__CONFIG(HS & WDTDIS & LVPDIS); // Config. High speed clock,Disable watchdog and Disable LVP
void Delay_ms(unsigned int tick)
{
while(tick--) // Loop couter delay time
{
__delay_ms(1); // Delay 1 ms
}
}
void usart_init()
{`
// Set buadrate 9600 bps
SYNC = 0;
BRGH = 0;
BRG16 = 1;
SPBRG = 0x08;
SPBRGH = 0x02;
TXEN = 1; // Enable transmition
CREN = 1; // Enable reciption
SPEN = 1; // Enable USART transmition/reciption
}
void usart_putc(unsigned char c)
{
while(!TRMT); // Wait transmition ready
TXREG = c; // Send byte
}
void usart_puts(unsigned char *s)
{
while(*s) // Loop for send string
{
usart_putc(*s++); // Send byte from string
}
}
unsigned char usart_getc()
{
while(!RCIF); // Wait data reciption
return(RCREG); // Return data
}
void main()
{
unsigned char key; // Keep data reciption from keyboard
usart_init(); // Initial USART baudrate 9600 bps
usart_puts("Press keyboard for test Echo!\r\n"); // Display first message
while(1) // Infinite loop
{
key = usart_getc(); // Wait until data reciption
// Echo message
usart_puts("You press key:");
usart_putc(key);
usart_puts("\r\n");
}
}
Нихрена не пашет.
Max232 стоит. Подключна к 16f887, к выводам RC6, RC7.
Порт в компе без эмулятора, напрямую СОМ1.
Но странная штука, замыкаю контакты 2 и 3 на компе, обратка не идет.. Хрень. Как сом на компе проверить. Да и на эмуляторе USB - COM коротил, таже хрень.
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: MPLAB v8.36 C++ 16F887
Код: Выделить всё
#include <pic.h> // Include header file for MCU
#define _XTAL_FREQ 20000000 // Define Frequency 20.0 MHz for function __delay_ms
__CONFIG(HS & WDTDIS & LVPDIS); // Config. High speed clock,Disable watchdog and Disable LVP
#define serial_error() OERR
#define nostop() FERR
#define serial_fix() {CREN = 0; CREN = 1;}
#define vbod 9600
#define SPBRG_ ((_XTAL_FREQ /vbod) -16)/16
//
void usart_init(void);
void usart_putc(unsigned char c);
void usart_puts(unsigned char *s);
//
volatile unsigned char RC_REG;
static bit read_;
//
interrupt void intr(void)
{
if (RCIF && RCIE)
{
if(serial_error()) serial_fix(); // переполнение буфера
if (nostop()) {RCREG;} // пропуск стопового
else
{
RC_REG =RC;
read_=1;
}
}
//----------
void usart_init()
{
PIR1 = 0;
PEIE = 1; /* разрешаем прерывания периферии */
SPEN=1;//разрешение работы последовательного порта
SYNC =0;//включение асинхронного режима работы
TX9=0; // выбираем 8 - битовую передачу
RX9=0; // выбираем 8 - битовый прием
BRGH =1;//включаем высокоскоростной режим
SPBRG=SPBRG_;// устанавливаем скорость обмена
TXEN=1;// не люблю я ножек в 3 состоянии....
TXIE=0;//запрещаем прерывания от передатчика
CREN =1;
// разрешаем прерывания от приемника
RCIE=1;
GIE = 1;// разрешаем прерывания
}
//----------
void usart_putc(unsigned char c)
{
while(!TRMT); // Wait transmition ready
TXREG = c; // Send byte
}
//----------
void usart_puts(unsigned char *s)
{
while(*s) // Loop for send string
{
usart_putc(*s++); // Send byte from string
}
}
//----------
void main()
{
usart_init(); // Initial USART baudrate 9600 bps
usart_puts("Press keyboard for test Echo!\r\n"); // Display first message
while(1) // Infinite loop
{
if(read_)
{
read_=0;
usart_putc(RC_REG);
}
}
}
//----------
Re: MPLAB v8.36 C++ 16F887
Ком эхо дает..
Пытался скомпильнуть ругается сабако!
Build D:\PICProgramming\mplab\project\COM\testcom for device 16F887
Using driver C:\Program Files\HI-TECH Software\PICC\PRO\9.65\bin\picc.exe
Make: The target "D:\PICProgramming\mplab\project\COM\testcom.p1" is up to date.
Executing: "C:\Program Files\HI-TECH Software\PICC\PRO\9.65\bin\picc.exe" -otestcom.cof -mtestcom.map --summary=default --output=default testcom.p1 --chip=16F887 -P --runtime=default --opt=default -D__DEBUG=1 -g --asmlist "--errformat=Error [%n] %f; %l.%c %s" "--msgformat=Advisory[%n] %s" "--warnformat=Warning [%n] %f; %l.%c %s"
HI-TECH C PRO for the PIC10/12/16 MCU family (Lite) V9.65PL1
Copyright (C) 1984-2009 HI-TECH SOFTWARE
(1273) Omniscient Code Generation not available in Lite mode (warning)
Error [499] ; 0. undefined symbol:
_usart_init(testcom.obj)
********** Build failed! *****
И вообще что эта программа то делать должна???
Где тут в коде отправка и передача?
Я конечно примерно понял, но пока прога не работает могу ошибаться.
Пытался скомпильнуть ругается сабако!
Build D:\PICProgramming\mplab\project\COM\testcom for device 16F887
Using driver C:\Program Files\HI-TECH Software\PICC\PRO\9.65\bin\picc.exe
Make: The target "D:\PICProgramming\mplab\project\COM\testcom.p1" is up to date.
Executing: "C:\Program Files\HI-TECH Software\PICC\PRO\9.65\bin\picc.exe" -otestcom.cof -mtestcom.map --summary=default --output=default testcom.p1 --chip=16F887 -P --runtime=default --opt=default -D__DEBUG=1 -g --asmlist "--errformat=Error [%n] %f; %l.%c %s" "--msgformat=Advisory[%n] %s" "--warnformat=Warning [%n] %f; %l.%c %s"
HI-TECH C PRO for the PIC10/12/16 MCU family (Lite) V9.65PL1
Copyright (C) 1984-2009 HI-TECH SOFTWARE
(1273) Omniscient Code Generation not available in Lite mode (warning)
Error [499] ; 0. undefined symbol:
_usart_init(testcom.obj)
********** Build failed! *****
И вообще что эта программа то делать должна???
Где тут в коде отправка и передача?
Я конечно примерно понял, но пока прога не работает могу ошибаться.
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: MPLAB v8.36 C++ 16F887
да, я в прерывании с скобками просчитался.
Прилагаю исправленный проект.
Прилагаю исправленный проект.
- Вложения
-
- 887.zip
- (54.65 КБ) 236 скачиваний
Re: MPLAB v8.36 C++ 16F887
Не работает усе равно.
Че я могу не так делать? Ком рабочий точно..
Используется только TX, RX, GND через max232.
Максимка подключена правильно. Нифига не понимаю.
Че я могу не так делать? Ком рабочий точно..
Используется только TX, RX, GND через max232.
Максимка подключена правильно. Нифига не понимаю.
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: MPLAB v8.36 C++ 16F887
гипертерминал настроен правильно ?
9600, 8, нет, 1 - аппаратное управление потоком - выключено.
импульсы на выходе макса видите ? в момент включения идет выдача строки.
9600, 8, нет, 1 - аппаратное управление потоком - выключено.
импульсы на выходе макса видите ? в момент включения идет выдача строки.
Re: MPLAB v8.36 C++ 16F887
Может светодиоды к Tx, Rx подключить через ключик для контроля? Хоть видно что где проскакивает??
Re: MPLAB v8.36 C++ 16F887
C pic ничего не идет, все молчит и tx и rx.
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: MPLAB v8.36 C++ 16F887
достаточно тестера - в момент сброса мк - должен выход макса дернуться.