Страница 114 из 421

Re: CodeVision AVR в вопросах и ответах

Добавлено: Пт фев 18, 2011 19:02:52
*Trigger*
Там, куда установили компилятор. Например: D:/Program files/(папка с компилятором)/inc

Re: CodeVision AVR в вопросах и ответах

Добавлено: Пт фев 18, 2011 19:04:29
*Trigger*
Кстати ,попробуйте поменять местами строки

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

#include <io8535.h>
#include <stdlib.h>
#include <dataflash.h>

Re: CodeVision AVR в вопросах и ответах

Добавлено: Пт фев 18, 2011 19:05:26
ChipKiller
mrkea писал(а):У меня не получилось найти папку "inc".Объясните где она должна находиться
... шутник :)))

Re: CodeVision AVR в вопросах и ответах

Добавлено: Пт фев 18, 2011 19:07:11
*Trigger*
Только что посмотрел, там нет ни одного из этих файлов. Значит, CVAVR не подходит. Сделайте в другом компиляторе.

Re: CodeVision AVR в вопросах и ответах

Добавлено: Сб фев 19, 2011 21:03:45
ARTEMSOF888
ПОМОГИТЕ НУБУ ПОЖАЛУЙСТА!!! :roll:
у меня не получается определить ни atmega8 ни сам программатор... :evil:
собрал AVR910. (прошил 5 проводками мк на ней), вот он http://radio-new.ru/projects/5.html ; винда её определила ; я установил дрова... радостно иду прошивать мк, а там облом... :evil: :evil: :evil: помогите пж, очень надо...

Re: CodeVision AVR в вопросах и ответах

Добавлено: Сб фев 19, 2011 21:35:10
java
Я месяц назад купил в магазине такой програматор,мучился дня три, а аказалось, что нет контакта на нескольких проводках на разъёме
Может поможет :))

Re: CodeVision AVR в вопросах и ответах

Добавлено: Вс фев 20, 2011 08:53:14
MiklSh
ARTEMSOF888 писал(а):ПОМОГИТЕ НУБУ ПОЖАЛУЙСТА!!! :roll:
у меня не получается определить ни atmega8 ни сам программатор... :evil:
собрал AVR910. (прошил 5 проводками мк на ней), вот он http://radio-new.ru/projects/5.html ; винда её определила ; я установил дрова... радостно иду прошивать мк, а там облом... :evil: :evil: :evil: помогите пж, очень надо...
Cхема/прошивка 100% рабочие. Проверяй плату / подключение. Винда определила - значит проблема либо программная (порт не тот прописан в CVAVR), либо уже после меги, попробовать выставить задержки побольше при прошивании, попробовать прошить при нажатой кнопке "LowSCK"/
В CVAVR, даже без прошиваемой м/с, при нажатии на "reset chip" схема должна моргнуть обоими светодиодами.
з.ы.: у меня дополнительно еще "reset" PB2 резистором 5,6к на +3в (AVCC) подтягивается.

Re: CodeVision AVR в вопросах и ответах

Добавлено: Вс фев 20, 2011 14:11:28
ARTEMSOF888
я пробовал посмотреть порты... COM3 выставил, скорости все перепробовал и сейчас в растерянности..., не знаю чё делать... может быть какой нибудь другой прогой попробовать... какая прога хорошо совместима с AVR910?

Re: CodeVision AVR в вопросах и ответах

Добавлено: Вс фев 20, 2011 19:05:48
Apparatchik
ARTEMSOF888 писал(а):я пробовал посмотреть порты... COM3 выставил, скорости все перепробовал и сейчас в растерянности..., не знаю чё делать... может быть какой нибудь другой прогой попробовать... какая прога хорошо совместима с AVR910?
Нужно глянуть в диспетчере устройств на какой порт он сел и такой выставлять в прошивальщике.

Re: CodeVision AVR в вопросах и ответах

Добавлено: Чт фев 24, 2011 09:31:39
igor-x
добрый день

подскажите пож. как в CV реализовать вывод байта в порт МК, при этом разряды этого байта должны записываться в разные разряды портов? например нулевой разряд переменной должен быть записан в PORTC.0, первый разряд в PORTD.3 ..
и тд.. ясно, что можно выполнить 8 битовых операций записи, а как это сделать в С одной командой
присваивания ( RAZNI_PINS=MY_VAR;)?

Re: CodeVision AVR в вопросах и ответах

Добавлено: Чт фев 24, 2011 09:46:10
MiklSh
Если действительно биты перетасованы - то максимум что придумать можно это отдельная процедура/функция в которой прописать те же самые 8 битовых операций. Соответственно вызов ее - одна команда.

Re: CodeVision AVR в вопросах и ответах

Добавлено: Чт фев 24, 2011 09:52:00
ChipKiller
igor-x писал(а):а как это сделать в С одной командой присваивания
... если разные порты - никак. Если нужно вывести байт, может проще использовать внешний регистр сдвига? ... например 74HC164

Re: CodeVision AVR в вопросах и ответах

Добавлено: Чт фев 24, 2011 11:49:56
FredyInKR
Доброго времени суток. Вобщем проблема такова: Мне нужно сделать функцию которая бы разделяла четырехзначное число на 4 разных отдельных числа. Допустим есть int = 1234 или 2568 мне нужно чтобы в 4 переменных записать 1,2,3,4 или 2,5,6,8... Что то похожее кто нибудь встречал? Программирование просто не помню :oops:

Re: CodeVision AVR в вопросах и ответах

Добавлено: Чт фев 24, 2011 12:07:26
Apparatchik
FredyInKR писал(а):Доброго времени суток. Вобщем проблема такова: Мне нужно сделать функцию которая бы разделяла четырехзначное число на 4 разных отдельных числа. Допустим есть int = 1234 или 2568 мне нужно чтобы в 4 переменных записать 1,2,3,4 или 2,5,6,8... Что то похожее кто нибудь встречал? Программирование просто не помню :oops:

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

x1=y%10;
y=y/10;
x2=y%10;
y=y/10;
// и т.д. только нужно либо знать сколько цифр либо отслеживать конец
Как то так вроде.

Re: CodeVision AVR в вопросах и ответах

Добавлено: Чт фев 24, 2011 13:07:31
FredyInKR
Да. Вроде так. Ладно с этим разберусь - спасибо. Теперь еще одна проблема:
Столкнулся с управлением 7 сегментного индикатора....
Порты на вход выход настроил в протеусе проверил все ОК.
Далее не могу понять такой простой истины, по сути цикл while это вечное повторение того что ниже. Должно быть так: Включаем 3й порт, выводим число "1" на семисегментный индикатор, выключаем, включаем "2"й выводим число 2. Если это ускорить должно получится число 21. У меня получается так: либо порты D отключены в данном примере. Или же если убрать отключения порта то прерывания не работаю... Проблема только в том, что нет прерываний на портах D хотя на В все нормально бегает. Может я пошел не той дорогой?

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


#asm("sei")
while (1)
      {
      PORTD |=1<<3;
      PORTB = digits[1];
      PORTD &=~(1<<3);
      PORTD |=1<<2;
      PORTB = digits[2];
      PORTD &=~(1<<2);     
      delay_ms(1); 
      };

Re: CodeVision AVR в вопросах и ответах

Добавлено: Чт фев 24, 2011 13:15:20
Apparatchik
FredyInKR писал(а):Может я пошел не той дорогой?
Наверно не той. Вот почитайте, расписано до мелочей.

Re: CodeVision AVR в вопросах и ответах

Добавлено: Чт фев 24, 2011 13:47:29
Александр 2677
Всем добрый день. Как думаете в чём проблема в моей программке ? Чтобы увидеть что происходит в 16 битном таймере я решил вывести его значение на ЖК, и с удивлением обнаружил что он выводит значения только от -32768 до 32767. Хотя пробовал подставлять все типы переменных в том числе и unsigned int . Это какой то глюк CodeVision ?

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

#include <mega8.h>
#include<stdio.h>
#include<delay.h>
#include <m8_128.h>

unsigned int  T1;
unsigned int lcd_buffer[63];

#asm
  .equ __lcd_port=0x12 ;PORTD
#endasm
#include <lcd.h>

void main(void)
{
TCCR0=0x00;
TCNT0=0x00;
lcd_init(20);

while (1)
     {
     T1=65000; // Переменная 16 бит выводится только -32768 ... 32767

     sprintf(lcd_buffer,"T1=%i",T1);// Âûâîä ïåðåìåííîé íà ÆÊÈ
          
           lcd_clear();
           lcd_puts(lcd_buffer);
           ADCSRA|=0x40;
           delay_ms(50);   
     };
}

Re: CodeVision AVR в вопросах и ответах

Добавлено: Чт фев 24, 2011 13:52:14
ChipKiller

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

sprintf(lcd_buffer,"T1=%i",T1);//
а почему тогда нет формата? :)

Re: CodeVision AVR в вопросах и ответах

Добавлено: Чт фев 24, 2011 13:57:28
Александр 2677
а почему тогда нет формата
А что это значит? Поправьте пожалуйста как нужно написать.

Re: CodeVision AVR в вопросах и ответах

Добавлено: Чт фев 24, 2011 14:06:03
ChipKiller
вывод идет не из-за типа переменной, а из-за формата, который Вы не указали sprintf(buffer, format-string[, argument...]);