Сделайте прошивку из проекта

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
BoRtO
Друг Кота
Сообщения: 3424
Зарегистрирован: Вт ноя 30, 2010 11:46:16
Откуда: Україна

Сделайте прошивку из проекта

Сообщение BoRtO »

Сделайте прошивку из CVAVR! :oops:
Я просто сам не понимяаю нефига! :oops:
мне нужно в проекте в файле С В 17 строку прописать 4
#define byBladeCnt 4
И сделать хекс файл!
пожалуйста
Вложения
taho_led.rar
(4.94 КБ) 154 скачивания
Пора что то поменять в своей жизни - поменял windows.
КПІ РТФ!
Реклама
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: Сделайте прошивку из проекта

Сообщение SubDia »

BoRtO писал(а):мне нужно в проекте в файле С В 17 строку прописать 4
#define byBladeCnt 4
Это там уже написано.
Держите.
Вложения
tach2.rar
(1.56 КБ) 141 скачивание
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Реклама
BoRtO
Друг Кота
Сообщения: 3424
Зарегистрирован: Вт ноя 30, 2010 11:46:16
Откуда: Україна

Re: Сделайте прошивку из проекта

Сообщение BoRtO »

SubDia писал(а):
BoRtO писал(а):мне нужно в проекте в файле С В 17 строку прописать 4
#define byBladeCnt 4
Это там уже написано.
Держите.
Спасибо!!!!!!!!!!!!
:))) :))) :))) :))) :))) :))) :music: :music:
Пора что то поменять в своей жизни - поменял windows.
КПІ РТФ!
Аватара пользователя
Влад.
Нашел транзистор. Понюхал.
Сообщения: 156
Зарегистрирован: Вт апр 19, 2011 17:32:09
Откуда: Ульяновск

Re: Сделайте прошивку из проекта

Сообщение Влад. »

Здравствуйте, господа форумчане!
Я тоже хочу попросить помощи по написанию, а точнее редактированию прошивки. :oops:
В прошивках ничего не понимаю. Разобраться пытался, то что-то мой мозг не усваевает полученую информацию.
Хочу сделать регулятор громкости на PGA2311. Нашел хорошую схему. http://altor.sytes.net/Articles/Vol_Con ... rol_1.html
Там прошивка сделана под переменный резистор, а я хочу на энкодере/валкодере чтоб было. Так как для энкодера нужно хотя бы 2 порта, то хочу убрать функцию "MUTE".
Предпологается, что на морде, кроме регулятора громкости, ничего не будет. Поэтому можно освободить еще один порт микроконтролера. Тот, на котором навешан переменник, регулирующий баланс.
Кто ни будь возьмется за этот гемор?
Вложения
pga2310_Full_12F675.rar
Прошивка.
(1.45 КБ) 179 скачиваний
Последний раз редактировалось Влад. Ср май 25, 2011 10:47:02, всего редактировалось 1 раз.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Влад.
Нашел транзистор. Понюхал.
Сообщения: 156
Зарегистрирован: Вт апр 19, 2011 17:32:09
Откуда: Ульяновск

Re: Сделайте прошивку из проекта

Сообщение Влад. »

Хочется получить примерно вот это:

хотел добавить, что Мк будет применятся PIC12F675.
Вложения
pga2310_pot.GIF
схема
(11.67 КБ) 276 скачиваний
Реклама
Аватара пользователя
Влад.
Нашел транзистор. Понюхал.
Сообщения: 156
Зарегистрирован: Вт апр 19, 2011 17:32:09
Откуда: Ульяновск

Re: Сделайте прошивку из проекта

Сообщение Влад. »

Ну хоть что ни буть ответьте.
Реклама
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Re: Сделайте прошивку из проекта

Сообщение urry »

интересно, а что Вы хотите услышать ?
----------------------------------------------------------------
Я не разбираюсь в программировании, поэтому сделайте за меня .
----------------------------------------------------------------
Это - при отсутствии исходников, да собственно как и с ними - минимум день работы с отладкой.
Платите за работу или сделайте сами.
Возможно, кто-то захочет размять пальцы и бесплатно, как бы его решение :)
Аватара пользователя
Влад.
Нашел транзистор. Понюхал.
Сообщения: 156
Зарегистрирован: Вт апр 19, 2011 17:32:09
Откуда: Ульяновск

Re: Сделайте прошивку из проекта

Сообщение Влад. »

Хм... Уже не плохо. Я уж думал, что все вымерли :)
Заплатить? Только если в разумных пределах.
Кстати, а хек фаил в исходник нельзя конвертировать?
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: Сделайте прошивку из проекта

Сообщение Engineer_Keen »

Влад. писал(а):Кстати, а хек фаил в исходник нельзя конвертировать?
Исходник, это когда метки и переменные имеют удобоваримые и осмысленные названия, а сам код снабжается комментариями. При этом исходник может быть на языке высокого уровня. HEX можно переконвертировать только в ассемблерный листинг, естественно без комментариев и вместо меток и имен переменных будут цифры. Судя по схеме код не должен быть сложным, тем более если убирается одна из регулировок. Но это PIC, так что пусть другие помогают :P
Аватара пользователя
Влад.
Нашел транзистор. Понюхал.
Сообщения: 156
Зарегистрирован: Вт апр 19, 2011 17:32:09
Откуда: Ульяновск

Re: Сделайте прошивку из проекта

Сообщение Влад. »

Кое что уже встало на свои места. Наверное через месяцок сам переделаю программу...
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Сделайте прошивку из проекта

Сообщение pyzhman »

Обратитесь к автору. Там и почта есть, и ася, и скайп. Едва ли конечно переделает, но вдруг? Или хотя бы исходники вам даст.
Docendo discimus
BoRtO
Друг Кота
Сообщения: 3424
Зарегистрирован: Вт ноя 30, 2010 11:46:16
Откуда: Україна

Re: Сделайте прошивку из проекта

Сообщение BoRtO »

помогите еще раз сделать прошивку :oops:

Код: Выделить всё

/*****************************************************
This program was produced by the
CodeWizardAVR V1.25.7 beta 5 Professional
Automatic Program Generator
© Copyright 1998-2007 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com

Project : Simple AVR Clock
Version : 
Date    : 01.05.2008
Author  : Spiritus Sancti                     
Company : licrym.org                
Comments: 


Chip type           : ATtiny2313
Clock frequency     : 16,000000 MHz
Memory model        : Tiny
External SRAM size  : 0
Data Stack size     : 32
*****************************************************/

#include <tiny2313.h>
#include <delay.h>  
#define digit_display_time 1

unsigned char milliseconds, seconds, ten_seconds, minutes, ten_minutes, hours, ten_hours;
bit button_pressed1, button_pressed2;


// Timer 1 output compare A interrupt service routine
interrupt [TIM1_COMPA] void timer1_compa_isr(void)    //Прерывание происходит 100 раз в сек, 
сохраняем в глобальные переменные текущее время
{ milliseconds++;
  TCNT1H=0x00;
  TCNT1L=0x00;

  if (milliseconds >= 100 )
  {
  milliseconds = 0;
  seconds++;
  };
   
  if (seconds >= 10)
  {
  seconds = 0;
  ten_seconds++;
  }; 
  
  if (ten_seconds >= 6)
  {
  ten_seconds = 0;
  minutes++;
  };
   
  if (minutes >= 10)
  {
  minutes = 0;
  ten_minutes++;
  };  
  
  if (ten_minutes >= 6)
  {
  ten_minutes = 0;
  hours++;
  };

  if (hours >= 10)
  {
  hours = 0;
  ten_hours++;
  };

  if (ten_hours >= 2 && hours == 4)
  {
  ten_hours = 0;
  hours=0;
  };   
  

}



void main(void)
{
unsigned char digits[10] = {18, 159, 56, 28, 149, 84, 80, 31, 16, 20};     //массив для генерации 
цифр. Какой элемент массива будет отправлен в порт, такая цифра и загорится.


// Crystal Oscillator division factor: 1

CLKPR=0x80;
CLKPR=0x00;


// Input/Output Ports initialization
// Port A initialization
// Func2=In Func1=In Func0=In 
// State2=T State1=T State0=T 
PORTA=0x00;
DDRA=0x00;

// Port B initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out 
// State7=1 State6=1 State5=1 State4=1 State3=1 State2=1 State1=1 State0=1 
PORTB=0xFF;
DDRB=0xFF;

// Port D initialization
// Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=In Func0=In 
// State6=0 State5=0 State4=0 State3=0 State2=0 State1=P State0=P 
PORTD=0x03;
DDRD=0x7C;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh
// OC0A output: Disconnected
// OC0B output: Disconnected
TCCR0A=0x00;
TCCR0B=0x00;
TCNT0=0x00;
OCR0A=0x00;
OCR0B=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 62,500 kHz
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: On
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x04;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x02;
OCR1AL=0x70;
OCR1BH=0x00;
OCR1BL=0x00;

// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// Interrupt on any change on pins PCINT0-7: Off
GIMSK=0x00;
MCUCR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x40;

// Universal Serial Interface initialization
// Mode: Disabled
// Clock source: Register & Counter=no clk.
// USI Counter Overflow Interrupt: Off
USICR=0x00;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;

// Global enable interrupts
#asm("sei")

while (1)
      {
      PORTD |=1<<5;                              //включаем первый индикатор 
      PORTB = digits[ten_hours];                 //выводим на него десятки часов
      delay_ms(digit_display_time);              //ждем, время индикации одного разряда задается в заголовке программы
      PORTD &=~(1<<5);                           //выключаем первый индикатор и переходим дальше и так в цикле для каждого из 4 разрядов
      PORTD |=1<<4;
      PORTB = digits[hours]; 
      if (milliseconds >= 50) PORTB &=~(1<<4); else PORTB|=1<<4;  //моргание точки
      delay_ms(digit_display_time);
      PORTD &=~(1<<4); 
      PORTD |=1<<3;
      PORTB = digits[ten_minutes];
      delay_ms(digit_display_time);
      PORTD &=~(1<<3); 
      PORTD |=1<<6;
      PORTB = digits[minutes];
      delay_ms(digit_display_time);
      PORTD &=~(1<<6);         
      
      //а вот теперь проверим кнопочки в стиле часов Электроника 13
      
      if ((PIND & 1<<0) == 0 && button_pressed1 == 0)                     //Если нажата кнопка 1
      { 
      delay_ms(1);
      hours++; 
      button_pressed1 = 1;
      };   
      
      if ((PIND & 1<<0) == 1) button_pressed1=0;                          //Если отпущена то
 сбрасываем флаг
      

      
      if ((PIND & 1<<1) == 0 && button_pressed2 == 0)                     //Если нажата  кнопка 2
      { 
      delay_ms(1);
      minutes++; 
      button_pressed2 = 1;
      };   
      
      if (PIND & 1<<1) button_pressed2=0;
     
           
                    

      };
}

http://licrym.org/index.php/Простые_часы
а какие там фьюзы ставить? :oops:
а то контроллер запороть неохота :facepalm:
Пора что то поменять в своей жизни - поменял windows.
КПІ РТФ!
BoRtO
Друг Кота
Сообщения: 3424
Зарегистрирован: Вт ноя 30, 2010 11:46:16
Откуда: Україна

Re: Сделайте прошивку из проекта

Сообщение BoRtO »

ну скажите хоть что нужно нажать в CVAVR чтобы скомпилировать прошивку :facepalm: :facepalm:
Пора что то поменять в своей жизни - поменял windows.
КПІ РТФ!
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Сделайте прошивку из проекта

Сообщение pyzhman »

В приложении. Фьюзы для внешнего кварца, искать в даташите.
Вложения
rrr.rar
(683 байт) 122 скачивания
Docendo discimus
BoRtO
Друг Кота
Сообщения: 3424
Зарегистрирован: Вт ноя 30, 2010 11:46:16
Откуда: Україна

Re: Сделайте прошивку из проекта

Сообщение BoRtO »

pyzh_man писал(а):В приложении. Фьюзы для внешнего кварца, искать в даташите.
спасибо, большое :)
Пора что то поменять в своей жизни - поменял windows.
КПІ РТФ!
vAv
Прорезались зубы
Сообщения: 221
Зарегистрирован: Пн июн 13, 2011 20:04:59
Откуда: Новочебоксарск
Контактная информация:

Re: Сделайте прошивку из проекта

Сообщение vAv »

Чтобы в cvavr сделать прошивку - создай мастером для своего проца новый проект и главное вбей туда значение кварца 16 мгц. Остальное можешь не трогать. Потом там же в мастере "сохранить и выйти", указываешь папку, название и т.д. Полученный мастером текст удаляешь, копипастишь свой исходник. Ну и Build All тыкаешь... Получаешь в подпапке проекта EXE свой хекс.

Это так, на будущее. :)
BoRtO
Друг Кота
Сообщения: 3424
Зарегистрирован: Вт ноя 30, 2010 11:46:16
Откуда: Україна

Re: Сделайте прошивку из проекта

Сообщение BoRtO »

все сделал как сказали прошивки нет :oops:

Код: Выделить всё

Chip: ATtiny2313
Clock frequency: 16,000000 MHz
Memory model: Tiny
Optimize for: Size
(s)printf features: int, width
(s)scanf features: int, width
Promote 'char' to 'int': Yes
'char' is unsigned: Yes
global 'const' stored in FLASH: No
8 bit enums: Yes
Enhanced core instructions: Yes
Automatic register allocation: Yes
Smart register allocation: Yes

Build: 2
119 line(s) compiled
28 error(s)
No warnings

Bit variables size: 0 byte(s)

Data Stack area: 60h to 7Fh
Data Stack size: 32 byte(s)
Estimated Data Stack usage: 0 byte(s)

RAM Global variables size: 0 byte(s)

Hardware Stack area: 80h to DFh
Hardware Stack size: 96 byte(s)

Heap size: 0 byte(s)

EEPROM usage: 0 byte(s), 0,0% of EEPROM
Пора что то поменять в своей жизни - поменял windows.
КПІ РТФ!
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Сделайте прошивку из проекта

Сообщение pyzhman »

Один из вариантов:
1. Создать новый проект File-New.
2. В открывшемся окне выбрать Project.
3. Отказаться от визарда.
4. В окне Creatе... выбрать папку и дать имя своему проекту.
5. В появившемся окне Configure... выбрать C_Compiler и в нем выбрать чип и его частоту.
6. Создать новый файл File-New.
7. Выбрать Source.
8. копипастить нужный текст или написать программу :) .
9. Сохранить.
10. Project - Configure. В окне выбрать (оно уже выбрано) Input files.
11. Нажмякать Add и указать ваш файл. Он будет головным.
12. ОК
13. Ctrl+F9
14. Радуемся жизни.
Docendo discimus
vAv
Прорезались зубы
Сообщения: 221
Зарегистрирован: Пн июн 13, 2011 20:04:59
Откуда: Новочебоксарск
Контактная информация:

Re: Сделайте прошивку из проекта

Сообщение vAv »

Код: Выделить всё

Chip: ATtiny2313
Clock frequency: 16,000000 MHz
Memory model: Tiny
Optimize for: Size
(s)printf features: int, width
(s)scanf features: int, width
Promote 'char' to 'int': Yes
'char' is unsigned: Yes
global 'const' stored in FLASH: No
8 bit enums: Yes
Enhanced core instructions: Yes
Automatic register allocation: Yes
Smart register allocation: Yes

Build: 1
815 line(s) compiled
No errors
No warnings

Bit variables area: 0x2 to 0x2
Bit variables size: 1 byte(s)

Data Stack area: 0x60 to 0x7F
Data Stack size: 32 byte(s)
Estimated Data Stack usage: 12 byte(s)

RAM Global variables size: 0 byte(s)

Hardware Stack area: 0x80 to 0xDF
Hardware Stack size: 96 byte(s)

Heap size: 0 byte(s)

EEPROM usage: 0 byte(s), 0,0% of EEPROM
Program size: 241 words (482 bytes), 23,5% of FLASH
Посмотри строки с ошибками. У меня после первой компиляции ругнулось на строки с комментами - они перенеслись ниже. Пришлось добавить признак коммента //

Текст программы копировал из твоего же поста выше.
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»