
| Если это ваш первый визит, рекомендуем почитать справку по форуму. Для размещения своих сообщений необходимо зарегистрироваться. Для просмотра сообщений выберите раздел. |
![]() |
||
PIC контроллеры. Программаторы и первый проект на PIC
|
||
| Программирование микроконтролеров,ремонт аудио/видео/бытовой техники,полезные устройства для дома,телефония, обсуждение статей журнала Радио |
![]() |
|
|
Опции темы |
|
|
#1022 |
|
Форумец
Сообщений: 88
Регистрация: 04.02.2011
Возраст: 46
|
petrd, здравствуйте!
Скажите, я правильно понимаю сообщения компилятора MikroC Pro: Used RAM (bytes): 1425 (70%) Free RAM (bytes): 602 (30%) - это место в памяти под переменные, используемые в программе. Used ROM (bytes): 7088 (22%) Free ROM (bytes): 25680 (78%) - это память, отведенное для программы? Спасибо. |
|
|
|
|
#1023 | |
|
Форумец
|
Цитата:
|
|
|
|
|
|
#1025 | |
|
Форумец
|
Цитата:
Тогда, наверное, как здесь http://www.pspost.ru/KXO-100.htm |
|
|
|
|
|
#1026 |
|
Форумец
Сообщений: 88
Регистрация: 04.02.2011
Возраст: 46
|
petrd, еще вопрос, я тут думал как реализовать технически пропадания напряжения в электрической сети (можно собрать ключ, который будет замкнут пока имеется напряжение в сети)...
Подскажите пожалуйста, каким способом лучше реализовать распознование с помощью PIC пропадание напряжения в однофазной сети? |
|
|
|
|
#1027 | |
|
Форумец
|
Цитата:
|
|
|
|
|
|
#1028 |
|
Форумец
Сообщений: 88
Регистрация: 04.02.2011
Возраст: 46
|
задача маленькая, но для меня важная, когда в однофазной сети пропадает электричество, совсем, то мне должно приходить уведомление посредством СМС, при появлении напряжения в сети - снова СМС. PIC я могу запитать ч/з UPS, что будет являться для него датчиком пропадания электричества, пока неясно.
|
|
|
|
|
#1029 |
|
Форумец
Сообщений: 88
Регистрация: 04.02.2011
Возраст: 46
|
просто я себе делаю автоматику для теплицы, которая по температуре включает/отключает обогреватель во время заморозков, а также открывает/закрывает дверь теплицы. При пропадании электричества дверь то я закрою, т.к. напряжение и ток потребляемый электродвигателем с редуктором 12В, 150мА, а вот обогреватель 2кВт 220В - UPS не потянет
|
|
|
|
|
#1030 |
|
Ща скалОтим
|
Teeen,
конденсатор, резистор, оптопара с обратным защитным диодом. транзистор на выходе будет замыкаться и размыкаться про наличии сети. пропали импульсы=пропала сеть. если так не нравится, то конденсатор , резистор, стабилитрон и диод, электролитический конденсатор, резистор и оптопара, замкнуто=сеть есть, разомкнуто=пропала. |
|
|
|
|
#1031 |
|
Форумец
Сообщений: 88
Регистрация: 04.02.2011
Возраст: 46
|
|
|
|
|
|
#1032 | |
|
Форумец
|
Цитата:
P.S. Вот потому и молчу, что только для Вас ясно как все у Вас питается. |
|
|
|
|
|
#1033 | |
|
Форумец
Сообщений: 88
Регистрация: 04.02.2011
Возраст: 46
|
Цитата:
Заказал вот такой преобразователь на 5В и 3,3В: http://www.ebay.com/itm/170647222037...84.m1497.l2649 Осталось подключить +12В ч/з любой БП и схема будет работать. По резервному питанию думал воткнуть маленький UPS на 250Вт и все... Общий ток потребления составит примерно до 1А(~910мА) (это без заряда аккуммулятора). Но натолкнулся на схему (ссылка выше) с зарядкой аккумулятора и мне понравилась идея. Может предложите свое готовое и проверенное решение? |
|
|
|
|
|
#1034 |
|
Snake Oil
Сообщений: 431
Регистрация: 10.05.2006
|
Приветствую.
Есть вопрос не касательно самих PIC, но смежный, так что думаю, отдельную тему создавать не имеет смысла. Не получается никак прошить EEPROM 24LC32a. Шью Pic Kit 2 через одноименную тулзу версии 2.61. Прошивка программатора соответствует последней версии. Файло программульки тоже последней версии стянул. В сущности, косяк любопытный. Иногда процедуру записи проводит до конца, иногда бросает на середине, но в конечном итоге запарывается на верификации. Каким то макаром удалось записать прошивку один единственный раз, но при интеграции в конечное устройство возникло ощущение, что микруха всё же пустая. Подключаю точ-в-точ как тут: http://img132.imageshack.us/img132/8...apickitkf1.gif то есть в согласии с даташитом. Может кто сталкивался с такой напастью? А то весь гугл перерыл и ни черта полезного. Последний раз редактировалось JayWalker; 18.05.2012 в 00:57. |
|
|
|
|
#1035 | |
|
Форумец
|
Цитата:
Код:
Connections for 24LC devices
---------------------------------------
PICkit 2 Pin 24LC Device Pin (DIP)
(2) Vdd ! 8 Vcc
(3) GND 4 Vss
(5) PGC 6 SCL (driven as push-pull)
(6) AUX 5 SDA (requires pullup)
7 WP - disabled (GND)
1, 2, 3 Ax pins
Connect to Vdd or GND per
datasheet and to set address
! 24LC devices may not program properly below 3.6V VDD.
This is a limitation of the PICkit 2 AUX IO pin.
|
|
|
|
|
|
#1037 |
|
Форумец
|
Некоторые альтернативы для библиотечных функций MikroC.
1. Программный I2C: файл Soft_I2C.c Код:
#include "Soft_I2C.h"
void Soft_I2C_Init(void){
Soft_I2C_Scl_Direction = 1;
Soft_I2C_Sda_Direction = 1;
Soft_I2C_Scl = 0;
Soft_I2C_Sda = 0;
}
void i2c_dly(void)
{
}
void Soft_I2C_Start(void)
{
Soft_I2C_Sda_Direction = 1; // i2c start bit sequence
i2c_dly();
Soft_I2C_Scl_Direction = 1;
i2c_dly();
Soft_I2C_Sda = 0;
Soft_I2C_Sda_Direction = 0;
i2c_dly();
Soft_I2C_Scl = 0;
Soft_I2C_Scl_Direction = 0;
i2c_dly();
}
void Soft_I2C_Stop(void)
{
Soft_I2C_Sda_Direction = 0; // i2c stop bit sequence
i2c_dly();
Soft_I2C_Scl_Direction = 1;
i2c_dly();
Soft_I2C_Sda_Direction = 1;
i2c_dly();
}
unsigned short Soft_I2C_Read(unsigned int ack)
{
unsigned short x, d = 0;
Soft_I2C_Sda_Direction = 1;
for(x = 0; x<8; x++) {
d <<= 1;
do {
Soft_I2C_Scl_Direction = 1;
}
while(Soft_I2C_Scl == 0); // wait for any SCL clock stretching
i2c_dly();
if(Soft_I2C_Sda) d |= 1;
Soft_I2C_Scl_Direction = 0;
}
if(ack) Soft_I2C_Sda_Direction = 0;
else Soft_I2C_Sda_Direction = 1;
Soft_I2C_Scl_Direction = 1;
i2c_dly(); // send (N)ACK bit
Soft_I2C_Scl_Direction = 0;
Soft_I2C_Sda_Direction = 1;
return d;
}
unsigned short Soft_I2C_Write (unsigned short d)
{
static unsigned short b;
unsigned short x;
for(x = 8; x; x--) {
if(d & 0x80) Soft_I2C_Sda_Direction = 1;
else Soft_I2C_Sda_Direction = 0;
Soft_I2C_Scl_Direction = 1;
d <<= 1;
Soft_I2C_Scl_Direction = 0;
}
Soft_I2C_Sda_Direction = 1;
Soft_I2C_Scl_Direction = 1;
i2c_dly();
b = Soft_I2C_Sda; // possible ACK bit
Soft_I2C_Scl_Direction = 0;
return b;
}
Код:
#ifndef _SOFT_I2C_H #define _SOFT_I2C_H // Software I2C connections sbit Soft_I2C_Scl at RC6_bit; sbit Soft_I2C_Sda at RC7_bit; sbit Soft_I2C_Scl_Direction at TRISC6_bit; sbit Soft_I2C_Sda_Direction at TRISC7_bit; // End Software I2C connections void Soft_I2C_Init(void); void i2c_dly(void); void Soft_I2C_Start(void); void Soft_I2C_Stop(void); unsigned short Soft_I2C_Read(unsigned int); unsigned short Soft_I2C_Write(unsigned short); #endif Код:
//---------- Подпрограмма инициализации аппаратного SPI ------------------------
void Init_SPI() { // аналог библиотечной функции SPI1_Init() MikroC PRO
TRISC3_bit = 0;
TRISC4_bit = 1;
TRISC5_bit = 0;
SSPCON = 0x00;
SSPSTAT = 0x40;
SSPEN_bit = 1;
}
//---------- Подпрограмма приема-передачи байта аппаратным SPI -----------------
unsigned short SPI(unsigned short Data) { // замена библиотечным MikroC PRO
SSPBUF = Data;
while (!BF_bit) continue;
return SSPBUF;
}
|
|
|
|
|
#1040 |
|
Форумец
Сообщений: 9
Регистрация: 22.01.2012
|
контроллер pic16f819. засунуть в мплаб и просто запрограммировать чип. хехсом и кофом можно, но неинтересно. Можно создать проект и не тыкать кнопки при выборе кристалла и программатора в последующем. Это я прекрасно понимаю. Все-таки, как получит именно *.cod-файл?
|
|
|
|
|
#1041 |
|
Форумец
|
Не знаю зачем это надо? Но сделать можно. Для этого служит утилита mp2cod.exe.
Project->Build Options -> Project -> закладка Custom Build -> поставить галку Post-Build Step и в строку вписать (для примера) "C:\Program Files\Microchip\MPASM Suite\mp2cod.exe" /p 10F206 "triac.cof" |
|
|
|
|
#1043 |
|
Форумец
Сообщений: 88
Регистрация: 04.02.2011
Возраст: 46
|
petrd здравствуйте! Подскажите пожалуйста, как правильно подключить датчик постоянного тока к PIC?
Смысл задумки такой, я с помощью PIC запускаю двигатель постоянного тока, причем и реверсирую его. При этом факт остановки двигателя предусмотрел по кнопке (датчик), хотелось бы убрать кнопку и останавливать двигатель при превышении нагрузки? |
|
|
|
|
#1044 | |
|
Форумец
|
Цитата:
|
|
|
|
|
|
#1045 |
|
Форумец
Сообщений: 88
Регистрация: 04.02.2011
Возраст: 46
|
собственно датчика нет (я и спрашиваю как, какой), реверс работает подачей обратной полярности на схему собранную на L298N, схема тут:
http://www.ebay.com/itm/Dual-H-Bridg...item3a75930dfa |
|
|
|
|
#1046 | |
|
Форумец
|
Цитата:
|
|
|
|
|
|
#1048 |
|
Форумец
Сообщений: 88
Регистрация: 04.02.2011
Возраст: 46
|
|
|
|
|
|
#1050 |
|
Форумец
Сообщений: 5
Регистрация: 09.09.2012
Возраст: 85
|
Добрый Вам день, уважаемые форумчане.
Прошу Вашей помощи. post 46-пример, как можно работать с ЖКИ индикатором. mikro C-компилирует нормально, а mikro C PRO, ни как. Не пойму в чем причина. Последний раз редактировалось dzer; 10.09.2012 в 07:07. |
|
|