Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?
28-04-2024, 17:48:48
684131 Сообщений в 14296 Тем от 22252 Пользователей
Последний пользователь: Стас Каменское
Google Искать через Google на этом сайте animedk.net
Украинский Кадетт Клуб  |  Главная  |  Бортовой журнал  |  Opel Vectra A, С18NZ 0 Пользователей и 2 Гостей смотрят эту тему. « предыдущая тема следующая тема »
Страниц: ««« 1 ... 257 258 259 260 261 262 263 264 265 [266] 267 268 269 270 271 272 273 274 275 ... 295 »»»
Автор Тема: Opel Vectra A, С18NZ  (Прочитано 1093653 раз)
OLLEG


Карма: +61/-0
Сообщений: 1307


Номер авто:

¯\_(ツ)_/¯

Пол: Мужской
Возраст: 51
Из: Ukraine , Баштанка

Регистрация: 29.09.2014


Активность за 30 дней
3%
Offline Offline

« Ответ #3975 : 07-05-2016, 12:45:42 »

Блок питания настроен и собран  понты

Окончательная схема и прошивка



* w.hex (3.77 Кб - загружено 116 раз.)

* IMG-1462284036391-V.jpg (868.78 Кб, 3600x2160 - просмотрено 269 раз.)

* IMG-1462611875129-V.jpg (1029.47 Кб, 3600x2160 - просмотрено 273 раз.)

* схема.JPG (258.69 Кб, 1299x768 - просмотрено 291 раз.)
« Последнее редактирование: 07-05-2016, 14:29:40 от OLLEG » Записан
OLLEG


Карма: +61/-0
Сообщений: 1307


Номер авто:

¯\_(ツ)_/¯

Пол: Мужской
Возраст: 51
Из: Ukraine , Баштанка

Регистрация: 29.09.2014


Активность за 30 дней
3%
Offline Offline

« Ответ #3976 : 07-05-2016, 12:59:47 »

Исходник    рука-лицо



#include "iostm8s003f3.h"
#include "_eeprom_.h"

int pwm_val_a=0,pwm_val_b=0,time_out=0,ex1,ex2,exx1,exx2;   
unsigned char set_mode=1,EncState=0;


void delay(int a)//Функция задержки
{int cnt;
 for (cnt=a; cnt>0; cnt--);
}


  unsigned char incod(void)
  {
   unsigned char cod0=0;
   unsigned char k,cod1;

   for(k=0;k<20;k++)
      {
       cod1=PC_IDR&0xC0;   
 
        if (cod0!=cod1)
         {
           k=0;
           cod0=cod1;
         }
       }
       return cod1;
   };
   
 
void EncoderScan(void) // Функция опроса энкодера
{
unsigned char New=0;
 
New = incod();    // Берем текущее значение
            // И сравниваем со старым
 
// Смотря в какую сторону оно поменялось -- увеличиваем
// Или уменьшаем соответствующий параметр

if (set_mode==1)
   {   
switch(EncState)
    {
    case 128:
        {
        if(New == 193) pwm_val_a++;
        if(New == 0) pwm_val_a--;
        break;
        }
 
    case 0:
        {
        if(New == 128) pwm_val_a++;
        if(New == 64) pwm_val_a--;
        break;
        }
    case 64:
        {
        if(New == 0) pwm_val_a++;
        if(New == 193) pwm_val_a--;
        break;
        }
    case 193:
        {
        if(New == 64) pwm_val_a++;
        if(New == 128) pwm_val_a--;
        break;
        }
    };
   

if (pwm_val_a>=1023)
       {pwm_val_a=1023;}
else 
{
    if (pwm_val_a<=0)
    {pwm_val_a=0;};
 };
    if (New!=EncState)
    {   
     TIM2_CCR1H = ( pwm_val_a ) >> 8;   
     TIM2_CCR1L = ( pwm_val_a ) & 0xFF;
   
     time_out=0;
       };
   PC_ODR_bit.ODR3 = 1;
   PC_ODR_bit.ODR4 = 0;
   }



if (set_mode==2)
   {   
switch(EncState)
    {
    case 128:
        {
        if(New == 193) pwm_val_b++;
        if(New == 0) pwm_val_b--;
        break;
        }
 
    case 0:
        {
        if(New == 128) pwm_val_b++;
        if(New == 64) pwm_val_b--;
        break;
        }
    case 64:
        {
        if(New == 0) pwm_val_b++;
        if(New == 193) pwm_val_b--;
        break;
        }
    case 193:
        {
        if(New == 64) pwm_val_b++;
        if(New == 128) pwm_val_b--;
        break;
        }
    };
   

if (pwm_val_b>=1023)
       {pwm_val_b=1023;}
else 
{
    if (pwm_val_b<=0)
    {pwm_val_b=0;};
 };
    if (New!=EncState)
    {   
     
     TIM2_CCR2H = ( pwm_val_b ) >> 8; 
     TIM2_CCR2L = ( pwm_val_b ) & 0xFF;
     
   
     time_out=0;
       };
   PC_ODR_bit.ODR4 = 1;
   PC_ODR_bit.ODR3 = 0;
   }
 

 
EncState = New;        // Записываем новое значение
                // Предыдущего состояния

 };




int main( void )
{
 
//Настраиваем кнопку
  PC_CR1_bit.C15 = 1;
  PC_CR1_bit.C16 = 1;
  PC_CR1_bit.C17 = 1;
//Светикi
  PC_DDR_bit.DDR3 = 1; // U
  PC_CR1_bit.C13  = 1;  // Выход типа Push-pull
  PC_DDR_bit.DDR4 = 1; // I
  PC_CR1_bit.C14  = 1;  // Выход типа Push-pull
 
 
  /////////////////////////////////////////////////////////////////// 
 
        CLK_ICKR = 0;                                      //  Reset the Internal Clock Register.
        CLK_ICKR_HSIEN = 1;                              // Включаем внутреннйи кварц
        CLK_ECKR = 0;                                      //  Отключаем внешний крвац
        while (CLK_ICKR_HSIRDY == 0);      // ждём стабилизации внутреннего кварца
        CLK_CKDIVR = 0;                                  //  запускаем его на полную скорость - 16мГц
        CLK_PCKENR1 = 0xff;                              //  Включаем переферию
        CLK_PCKENR2 = 0xff;                             
        CLK_CCOR = 0;                                     
        CLK_HSITRIMR = 0;                                 
        CLK_SWIMCCR = 0;                                   
        CLK_SWR = 0xe1;                           
        CLK_SWCR = 0;                                     
        CLK_SWCR_SWEN = 1;                             
        while (CLK_SWCR_SWBSY != 0);       
 
 
 
  //Настройка вывода PB0.
  TIM2_CCMR1_bit.OC1M = 0x06; //Устанавливаю PWM на PB0, активная 1.
  TIM2_CCMR1_bit.OC1PE = 1; //Включаю прелоад, для правильной работы PWM.
  TIM2_CCER1_bit.CC1E = 1; //Включаю вывод PB0.
 
  TIM2_CCMR2_bit.OC2M = 0x06; //Устанавливаю PWM на PB0, активная 1.
  TIM2_CCMR2_bit.OC2PE = 1; //Включаю прелоад, для правильной работы PWM.
  TIM2_CCER1_bit.CC2E = 1; //Включаю вывод PB0.


 
 
  TIM2_EGR_bit.UG = 1;  //Вызываю UpdateEvent, чтобы таймер TIM2 принял установки.
 // TIM2_IER_bit.UIE = 1; //Разрешаю прерывания по переполнению для TIM2.
  TIM2_CR1_bit.CEN = 1; //Запускаю TIM2.
 
  TIM2_PSCR = 0x01;          // Делитель  = 8.
  TIM2_ARRH = (1023) >> 8;       //Устанавливаю верхнее значение для TIM2.
  TIM2_ARRL = (1023) & 0xFF;

       
  asm("RIM"); //разрешаем прерывания
ex1 = EEPROM_Read_Byte(0x4000);
ex2 = EEPROM_Read_Byte(0x4001);
pwm_val_a = 256 * ex1 + ex2;    // сложение

exx1 = EEPROM_Read_Byte(0x4003);
exx2 = EEPROM_Read_Byte(0x4004);
pwm_val_b = 256 * exx1 + exx2;    // сложение   
 

PC_ODR_bit.ODR3 = 0; // ложим светик U в ноль
PC_ODR_bit.ODR4 = 0; //ложим светик I в ноль
 
 
set_mode=0;
 
while (1)
      {
       
       
 
       
       

// == Кнопарь переключения режимов ==       
if(PC_IDR_bit.IDR5 == 0)
{
set_mode+=1;
if (set_mode>2)
{set_mode=0;}
while (PC_IDR_bit.IDR5 == 0)delay(30);
  };
// ==================================





// ==== Регулятор напряжения   ======       
 if (set_mode==1)
 {
  EncoderScan();

 
  if(PC_IDR_bit.IDR5 == 0)
 {
  ex1 = TIM2_CCR1H;
  ex2 = TIM2_CCR1L;
   
  EEPROM_Unlock();
  EEPROM_Program_Byte(0x4000,ex1);
  EEPROM_Program_Byte(0x4001,ex2);
   
  EEPROM_Lock();
 }
 
 };
 if (set_mode==2)
 {
  EncoderScan();
 
  if(PC_IDR_bit.IDR5 == 0)
 {
 
  exx1 = TIM2_CCR2H;
  exx2 = TIM2_CCR2L;
 
  EEPROM_Unlock();

  EEPROM_Program_Byte(0x4003,exx1);
  EEPROM_Program_Byte(0x4004,exx2);
 
  EEPROM_Lock();
 }
 
 };
 
 
 // ==== Работа    ===================   
 if (set_mode==0)
 {
  TIM2_CCR1H = ( pwm_val_a ) >> 8;   
  TIM2_CCR1L = ( pwm_val_a ) & 0xFF;
 
  TIM2_CCR2H = ( pwm_val_b ) >> 8;   
  TIM2_CCR2L = ( pwm_val_b ) & 0xFF;
  PC_ODR_bit.ODR4 = 0;
  PC_ODR_bit.ODR3 = 0;
 } 
 // ==================================
 
     
      }
}

Записан
ArtUA
Никалаич


Карма: +72/-0
Сообщений: 2938


Номер авто:

Давно я тут..

Пол: Мужской
Возраст: 44
Из: Ukraine , Кривбасс,17-й квартал

Регистрация: 20.12.2009


Активность за 30 дней
0%
Offline Offline

« Ответ #3977 : 07-05-2016, 13:25:53 »

Не,ну а чё,всё понятно  Сумасшедший Сумасшедший Сумасшедший Смеяться
Записан

KADETT 1.6D хетч,1986 г.р.,КПП-F13 5-ст.
  0680181605
Хочешь что-то сделать,сделай это сам..

Мой Бортовик
Technolog Автор темы
Сергей


Карма: +267/-6
Сообщений: 16204


ОKE 1.7 D > OVA 1.8 > OVC 2.2

Пол: Мужской
Из: Ukraine , Запоріжжя

Регистрация: 25.04.2009


Активность за 30 дней
0%
Offline Offline

« Ответ #3978 : 07-05-2016, 22:48:13 »

Ну да, а шо ж не ясно!  Смеяться
Олег, а фузов у них не бывает?  Веселый И что показывают светодиоды?

Заменили передний ступичный подшипник, правый. Теперь не люфтит, не гудит.
Сальник коленвала не осилили...

Сделали легкую диагностику по ходовке. Все уставшее)))
Записан

Плохой день на рыбалке лучше, чем хороший день на работе!
OLLEG


Карма: +61/-0
Сообщений: 1307


Номер авто:

¯\_(ツ)_/¯

Пол: Мужской
Возраст: 51
Из: Ukraine , Баштанка

Регистрация: 29.09.2014


Активность за 30 дней
3%
Offline Offline

« Ответ #3979 : 08-05-2016, 06:02:45 »

Ну да, а шо ж не ясно!  Смеяться
Олег, а фузов у них не бывает?  Веселый И что показывают светодиоды?


Нажал на энкодер зарорелся зелёный светодиод выставил напряжение от 0 до 20,
Нажал ещё раз, загорелся красный, выставил ток заряда от 0 до 10 ампер , нажал третий раз светики погасли, БП перешел  в рабочий режим


Бп  со стабилизацией по току и напряжению
Записан
Technolog Автор темы
Сергей


Карма: +267/-6
Сообщений: 16204


ОKE 1.7 D > OVA 1.8 > OVC 2.2

Пол: Мужской
Из: Ukraine , Запоріжжя

Регистрация: 25.04.2009


Активность за 30 дней
0%
Offline Offline

« Ответ #3980 : 08-05-2016, 06:58:31 »

Нажал на энкодер зарорелся зелёный светодиод выставил напряжение от 0 до 20,
Нажал ещё раз, загорелся красный, выставил ток заряда от 0 до 10 ампер , нажал третий раз светики погасли, БП перешел  в рабочий режим


Бп  со стабилизацией по току и напряжению
Круто.
Записан

Плохой день на рыбалке лучше, чем хороший день на работе!
G®EµliN™
Александр


Карма: +43/-2
Сообщений: 4845


Пол: Мужской
Возраст: 36
Из: Ukraine , Кривой Рог

Регистрация: 09.11.2011


Активность за 30 дней
0%
Offline Offline

208031268
Re:
« Ответ #3981 : 08-05-2016, 07:09:32 »

А какой мощности должен быть БП? Или пох?
И цена ? )))
Записан
OLLEG


Карма: +61/-0
Сообщений: 1307


Номер авто:

¯\_(ツ)_/¯

Пол: Мужской
Возраст: 51
Из: Ukraine , Баштанка

Регистрация: 29.09.2014


Активность за 30 дней
3%
Offline Offline

Re:
« Ответ #3982 : 08-05-2016, 07:19:37 »

А какой мощности должен быть БП? Или пох?
И цена ? )))
Пофиг мощность должен быть собран на микросхеме Tl 494
Цена? Хз, тупо для себя делал
Записан
G®EµliN™
Александр


Карма: +43/-2
Сообщений: 4845


Пол: Мужской
Возраст: 36
Из: Ukraine , Кривой Рог

Регистрация: 09.11.2011


Активность за 30 дней
0%
Offline Offline

208031268
« Ответ #3983 : 08-05-2016, 07:39:02 »

Пофиг мощность должен быть собран на микросхеме Tl 494
Цена? Хз, тупо для себя делал
Они не все сделаны на этой микрухе? Есть штук 5-6 полудохлых там скорее всего кондеры нужно поменять, если микрухе та с них слепить можно?
Записан
гтыуты


Карма: +13/-1
Сообщений: 1581


kadett sedan c16nz→OVA liftback c20ne + bmw 316 05

Пол: Мужской
Возраст: 45
Из: Ukraine , Суми

Регистрация: 23.05.2007


Активность за 30 дней
0%
Offline Offline

« Ответ #3984 : 08-05-2016, 11:17:26 »

Пане Олеже, и я такое хачу
даже может два
начал читать, думаю щас паяльником  пару деталюшек выпаял, пару впаял перемычку дето вместо диода Сумасшедший и будэ в мэнэ агонь
а тут темный лес и высшая математика
куда мне дремучему-то

а БП найдем, ты главное с ценой определись

Серега сори шо тему засоряю
Записан

Геть усе одно
Technolog Автор темы
Сергей


Карма: +267/-6
Сообщений: 16204


ОKE 1.7 D > OVA 1.8 > OVC 2.2

Пол: Мужской
Из: Ukraine , Запоріжжя

Регистрация: 25.04.2009


Активность за 30 дней
0%
Offline Offline

« Ответ #3985 : 08-05-2016, 14:09:14 »

Пане Олеже, и я такое хачу
даже может два
начал читать, думаю щас паяльником  пару деталюшек выпаял, пару впаял перемычку дето вместо диода Сумасшедший и будэ в мэнэ агонь
а тут темный лес и высшая математика
куда мне дремучему-то

а БП найдем, ты главное с ценой определись

Серега сори шо тему засоряю
Ниче-ниче, как раз резину твою просматриваю)))
Записан

Плохой день на рыбалке лучше, чем хороший день на работе!
гтыуты


Карма: +13/-1
Сообщений: 1581


kadett sedan c16nz→OVA liftback c20ne + bmw 316 05

Пол: Мужской
Возраст: 45
Из: Ukraine , Суми

Регистрация: 23.05.2007


Активность за 30 дней
0%
Offline Offline

« Ответ #3986 : 08-05-2016, 14:14:22 »

налетай, не скупись Балалайка
Записан

Геть усе одно
OLLEG


Карма: +61/-0
Сообщений: 1307


Номер авто:

¯\_(ツ)_/¯

Пол: Мужской
Возраст: 51
Из: Ukraine , Баштанка

Регистрация: 29.09.2014


Активность за 30 дней
3%
Offline Offline

« Ответ #3987 : 10-05-2016, 07:45:43 »

Пане Олеже, и я такое хачу
даже может два
начал читать, думаю щас паяльником  пару деталюшек выпаял, пару впаял перемычку дето вместо диода Сумасшедший и будэ в мэнэ агонь
а тут темный лес и высшая математика
куда мне дремучему-то

а БП найдем, ты главное с ценой определись

Серега сори шо тему засоряю

Та нее, я для себя делал, у меня терпения нехватит на другое такое  Смеяться
Записан
гтыуты


Карма: +13/-1
Сообщений: 1581


kadett sedan c16nz→OVA liftback c20ne + bmw 316 05

Пол: Мужской
Возраст: 45
Из: Ukraine , Суми

Регистрация: 23.05.2007


Активность за 30 дней
0%
Offline Offline

« Ответ #3988 : 10-05-2016, 10:38:21 »

 Плачет
ну и ладно, буду старым зарядный пользоваться Язык
Записан

Геть усе одно
bserhiy


Карма: +5/-0
Сообщений: 68


Kadett 89' sedan c16nz F13 5st

Пол: Мужской
Возраст: 37
Из: Ukraine , Львівська обл.

Регистрация: 31.08.2011


Активность за 30 дней
0%
Offline Offline

« Ответ #3989 : 10-05-2016, 11:07:42 »

Та нее, я для себя делал, у меня терпения нехватит на другое такое  Смеяться

 понты/ Вибачаюсь, що теж смічу. Олег, к.з. тримає? Мені б якраз для мобільничків такий б.ж. Можливо договоритись про виготовлення? Блок найду.
Записан

Страниц: ««« 1 ... 257 258 259 260 261 262 263 264 265 [266] 267 268 269 270 271 272 273 274 275 ... 295 »»»
Украинский Кадетт Клуб  |  Главная  |  Бортовой журнал  |  Opel Vectra A, С18NZ « предыдущая тема следующая тема »
    Перейти в: