MPLAB в вопросах и ответах
Re: MPLAB v8.36 C++ 16F887
Выход в какую сторону?? В сторону пик или сом??
Какая ножка?
Какая ножка?
Re: MPLAB v8.36 C++ 16F887
14я ножка дергается макса и ТХ с пика
Re: MPLAB v8.36 C++ 16F887
Блин без осциллографа тут сложновато, я бы хоть посмотрел это пакет какой то прыгает или просто 1 или 0.
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: MPLAB v8.36 C++ 16F887
для полного контроля - промоделируйте в мплаб сим.
debugger - select tool - mplab sim
debugger -setting -UART IO enable uart io
вкладка output File - наберите 123.txt или подобное.
После запуска появится файл с этим именем , в котором будет эта тестовая строка.
Press keyboard for test Echo!
И еще - в инициализацию добавьте строчки
TRISC=0xC0;
PORTC=0;
ABDEN=0;
BRG16=0;
Эту инициализацию я взял со своего старого проекта на 887, в котором уарт работал, так что если это не поможет - дело не в пике.
Еще раз проверьте, к тем ли ногам разъема ком порта оно идет.
debugger - select tool - mplab sim
debugger -setting -UART IO enable uart io
вкладка output File - наберите 123.txt или подобное.
После запуска появится файл с этим именем , в котором будет эта тестовая строка.
Press keyboard for test Echo!
И еще - в инициализацию добавьте строчки
TRISC=0xC0;
PORTC=0;
ABDEN=0;
BRG16=0;
Эту инициализацию я взял со своего старого проекта на 887, в котором уарт работал, так что если это не поможет - дело не в пике.
Еще раз проверьте, к тем ли ногам разъема ком порта оно идет.
Re: MPLAB v8.36 C++ 16F887
Сделал все, нет в 1234 записей.
Сперва ошибку программа выдала что гнет файла, ну я запустил, файл не создался.
Создал вручную всеравно не прописалось туда ничего.
Где же сабака порылась.. Все работает кроме ком блин.
Сперва ошибку программа выдала что гнет файла, ну я запустил, файл не создался.
Создал вручную всеравно не прописалось туда ничего.
Где же сабака порылась.. Все работает кроме ком блин.
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: MPLAB v8.36 C++ 16F887
присоедините проект.
Re: MPLAB v8.36 C++ 16F887
на счет ног
RC7 на 12 ногу, RC6 На 11 ногу макса, 14 нога макса на 2 ногу сом разъема 13 нога на 3 ногу разъема ком.
RC7 на 12 ногу, RC6 На 11 ногу макса, 14 нога макса на 2 ногу сом разъема 13 нога на 3 ногу разъема ком.
Re: MPLAB v8.36 C++ 16F887
Решил вывести на дисплей прием и передачу.
Вытаскиваешь контакт RX ПИКА в воздух, на дисплее начинается билибурда, то есть прием есть. С компа нет..
В передаче тут же прописывается число 10 и не меняется никогда.
Перемыкаю TX и RX. ничего не возвращается.
Код: Выделить всё
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
{
usart_puts("Press keyboard for test Echo!\r\n"); // Display first message
if(read_)
{
inttolcd(141,RCREG); // Show counter value
inttolcd(203,TXREG);
read_=0;
usart_putc(RCREG);
}
}
}
//----------Вытаскиваешь контакт RX ПИКА в воздух, на дисплее начинается билибурда, то есть прием есть. С компа нет..
В передаче тут же прописывается число 10 и не меняется никогда.
Перемыкаю TX и RX. ничего не возвращается.
Re: MPLAB v8.36 C++ 16F887
Сделал так.
Перемычку перемыкаешь на дисплее возвращается все что передаешь. Перемычку до макса и после, все работает, на компе порт коротишь в гипертерминале возвращается. Комп с устройством не коннектятся блин, матных слов уже не хватает.
еще перемыкаешь 13 и 14 макса то возвращается в дисплей и скачут символы повторяющиеся в гипертерминале..
И непонятно почему обмена нет.
Перепаивал TX и RX местами на компе. Шнурок сам паял может думал перепутал, не помогает, паял по схеме.
Откопал я осциллограф свой древний, пора новый покупать..
В общем пакеты шлются с пика с амплитудой 3.3 вольт. А после макса на комп уже 10 вольт. Как то странно.
Код: Выделить всё
void main()
{
usart_init(); // Initial USART baudrate 9600 bps
// usart_puts("Press keyboard"); // Display first message
while(1) // Infinite loop
{
i++;
// usart_puts(i); // Display first message
TXREG = i;
delay(250);
// if(read_)
//{
inttolcd(141,RCREG); // Принятые данные
inttolcd(203,TXREG+" "+i); // То что передается
if (i > 3)i = 0;
//read_=0;
usart_putc(RCREG);
//}
}
}
//----------
Перемычку перемыкаешь на дисплее возвращается все что передаешь. Перемычку до макса и после, все работает, на компе порт коротишь в гипертерминале возвращается. Комп с устройством не коннектятся блин, матных слов уже не хватает.
еще перемыкаешь 13 и 14 макса то возвращается в дисплей и скачут символы повторяющиеся в гипертерминале..
И непонятно почему обмена нет.
Перепаивал TX и RX местами на компе. Шнурок сам паял может думал перепутал, не помогает, паял по схеме.
Откопал я осциллограф свой древний, пора новый покупать..
В общем пакеты шлются с пика с амплитудой 3.3 вольт. А после макса на комп уже 10 вольт. Как то странно.
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: MPLAB v8.36 C++ 16F887
Действительно странно, если учесть, что 5 вольтовое питание - откуда 3.3 ?
Внутри макса источник напряжения - из+5 -> +12 в и -12 в, и преобразователи уровня ТТЛ - в эти +=12. Проверьте напряжение на конденсаторах - может быть +-10 Вольт, это нормально.
После этого проверьте сам макс, отключите мк и закоротите у макса ноги 11 и 12.
Должно идти эхоотражение (уже через макс).
Внутри макса источник напряжения - из+5 -> +12 в и -12 в, и преобразователи уровня ТТЛ - в эти +=12. Проверьте напряжение на конденсаторах - может быть +-10 Вольт, это нормально.
После этого проверьте сам макс, отключите мк и закоротите у макса ноги 11 и 12.
Должно идти эхоотражение (уже через макс).
Re: MPLAB v8.36 C++ 16F887
Да блин в задницу эту макс уже. Соберу на 2-х транзисторах. Там просто ключик в одну сторону и другую??
Если коротить со стороны пика отсоеденив пик то эхо нет, после макса есть.
А максов у меня 2 штуки. И получается обе не пашут. И по ножкам проверял, все правильно подключено.
Бред какой то.
Если коротить со стороны пика отсоеденив пик то эхо нет, после макса есть.
А максов у меня 2 штуки. И получается обе не пашут. И по ножкам проверял, все правильно подключено.
Бред какой то.
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: MPLAB v8.36 C++ 16F887
я ничего не понял
наверное, до макса - есть, после макса - нет ?
Код: Выделить всё
Если коротить со стороны пика отсоеденив пик то эхо нет, после макса естьнаверное, до макса - есть, после макса - нет ?
Re: MPLAB v8.36 C++ 16F887
Там в максе 2 канала.
У меня задействованы ножки 7.8.9.10
вот если коротить 9 и 10 отсоединив пик то эхо нет.
А если коротить 7 и 8 приччем надо только вынуть макс то эхо есть, со вставленным максом нет.. В общем непонятно чего то. Щас на 2-х вс547 соберу.
У меня задействованы ножки 7.8.9.10
вот если коротить 9 и 10 отсоединив пик то эхо нет.
А если коротить 7 и 8 приччем надо только вынуть макс то эхо есть, со вставленным максом нет.. В общем непонятно чего то. Щас на 2-х вс547 соберу.
Re: MPLAB v8.36 C++ 16F887
Ёшкинкот! собрал преобразователь все заработало.
В общем похоже перепутана распайка сом порта в компе и еще паленые обе макса.
В общем спасибо за помощь. Щас буду разбираться, главное железо работает и программа.
Все емкости правильно подключены, все контакты правильно подключены.
В общем ничего не понял так.
На максе не пашет на 2-х транзюках пашет. Как вообще макс проверить еще можно простым способом?
В общем похоже перепутана распайка сом порта в компе и еще паленые обе макса.
В общем спасибо за помощь. Щас буду разбираться, главное железо работает и программа.
Все емкости правильно подключены, все контакты правильно подключены.
В общем ничего не понял так.
На максе не пашет на 2-х транзюках пашет. Как вообще макс проверить еще можно простым способом?
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: MPLAB v8.36 C++ 16F887
У меня с максами никогда проблем не было и я ничего не понимаю.
Как проверить - вход коротить через резистор то на плюс, то на землю и смотреть изменения на выходе.
Как проверить - вход коротить через резистор то на плюс, то на землю и смотреть изменения на выходе.
Re: MPLAB v8.36 C++ 16F887
А подскажите как на дисплей вывести значек температуры? То есть круглый бублик после C. Знак цельсии.
Re: MPLAB v8.36 C++ 16F887
Как можно осуществить регулировку оборотов коллекторного микродвигателя да так что бы момент на валу оставался тем же и не падал.
Скорость падает а мощность остается та же. Реально как то программно это осуществить на 16f887 и рассыпухе?
Мне надо регулятор вращения в зависимости от температуры. Термометр уже готов и работает.
Скорость падает а мощность остается та же. Реально как то программно это осуществить на 16f887 и рассыпухе?
Мне надо регулятор вращения в зависимости от температуры. Термометр уже готов и работает.
Re: MPLAB v8.36 C++ 16F887
А энкодер что за штука такая вообще??
Мне надо вентилятором (кулер от компа) управлять 80х80х25мм с третьим выводом или с 4-мя. С третьим выводом я понял как устроен а с четырьмя пока не искал но может вот как раз с 4мя и есть регулировка с моментом?
Тока вентилятор не в компе стоит а в устройстве где насос насос во время работы греется но не сразу, вот хочу плавно регулировать обороты, считывать обороты и если обороты становятся критичные выключать устройство и на дисплей выводить ошибку вентилятора. Ну рано или поздно подшипники заклинит.
Разобрал кулер и вспомнил что он не коллекторный а там регулятор с датчиком холла.
AH276
Это совсем другое управление.
Мне надо вентилятором (кулер от компа) управлять 80х80х25мм с третьим выводом или с 4-мя. С третьим выводом я понял как устроен а с четырьмя пока не искал но может вот как раз с 4мя и есть регулировка с моментом?
Тока вентилятор не в компе стоит а в устройстве где насос насос во время работы греется но не сразу, вот хочу плавно регулировать обороты, считывать обороты и если обороты становятся критичные выключать устройство и на дисплей выводить ошибку вентилятора. Ну рано или поздно подшипники заклинит.
Разобрал кулер и вспомнил что он не коллекторный а там регулятор с датчиком холла.
AH276
Это совсем другое управление.
MPLAB и русский беда.
В общем компилятор Hi-tech C Pro ругается на русский шрифт когда его выводишь на дисплей.
Например
Error [228] D:\PICProgramming\mplab\Vacuum-tonus\tonus.c; 331.22 illegal character (0xD3)
Error [228] D:\PICProgramming\mplab\Vacuum-tonus\tonus.c; 331.22 illegal character (0xE4)
Error [228] D:\PICProgramming\mplab\Vacuum-tonus\tonus.c; 393.22 illegal character (0xC3)
Error [228] D:\PICProgramming\mplab\Vacuum-tonus\tonus.c; 394.22 illegal character (0xCF)
Пробовал по статье http://radiokot.ru/articles/31/
Получается если не все билибурда то частично непонятно что. Ощущение что не совпадают адреса.
Но если эти непонятные символы вывести по одному то все выводится как положено. Только в общем массиве почему то не получается.
Не понимаю что за бред.
Например const unsigned char logo1 [18] = {0x3E, 0x3E, 0xA4, 0xE3, 0x70, 0x61, 0xB3, 0x63, 0xBF, 0xB3, 0x79, 0xB9, 0xBF, 0x65, 0x3C, 0x3C}; // >>Здравствуйте<<
На дисплее будет читайте внимательно по буквам >>Згравствуйте<<
А если сделать так
const unsigned char logo1 [1] = {0xE3};
На дисплее будет "д". Что за фигня?
Например
Error [228] D:\PICProgramming\mplab\Vacuum-tonus\tonus.c; 331.22 illegal character (0xD3)
Error [228] D:\PICProgramming\mplab\Vacuum-tonus\tonus.c; 331.22 illegal character (0xE4)
Error [228] D:\PICProgramming\mplab\Vacuum-tonus\tonus.c; 393.22 illegal character (0xC3)
Error [228] D:\PICProgramming\mplab\Vacuum-tonus\tonus.c; 394.22 illegal character (0xCF)
Код: Выделить всё
lcd_puts (128, "Привет");Пробовал по статье http://radiokot.ru/articles/31/
Получается если не все билибурда то частично непонятно что. Ощущение что не совпадают адреса.
Но если эти непонятные символы вывести по одному то все выводится как положено. Только в общем массиве почему то не получается.
Не понимаю что за бред.
Например const unsigned char logo1 [18] = {0x3E, 0x3E, 0xA4, 0xE3, 0x70, 0x61, 0xB3, 0x63, 0xBF, 0xB3, 0x79, 0xB9, 0xBF, 0x65, 0x3C, 0x3C}; // >>Здравствуйте<<
На дисплее будет читайте внимательно по буквам >>Згравствуйте<<
А если сделать так
const unsigned char logo1 [1] = {0xE3};
На дисплее будет "д". Что за фигня?