Страница 158 из 628

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вс фев 20, 2011 20:31:03
ploop
Он же вам русским языком говорит - "не могу открыть файл code.asm"
Файл-то где лежит? Пропишите полный путь к нему...

Re: Мелкие практические вопросы

Добавлено: Вс фев 20, 2011 20:36:23
IvanM
Народ! Помогите с таймером1 в AT90S2313. Нужно его настроить на срабатывание по совпадению. Уже 3 книги перешерстил. А он никак не хочет срабатывать более одного раза. Обрабатываю прерывание TIM_COMP1. Работаю в АВР Студио 4.
Даю на суд код. Повыкидал все лишнее - оставил только суть. Задержку на срабатывание поставил чуть больше 5000 мкс. Ловлю срабатывание по регистру r19 названном - fp. Inc получается только один раз.

Простынь из кода в файле :)) (отредактировал 21.02.11 в 8:49)

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вс фев 20, 2011 22:10:37
Gudd-Head
IvanM, не надо выкладывать такие простыни кода. С уважением :)

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вс фев 20, 2011 22:38:31
ploop
А то ща придёт злой дядя ploop и будет ругаться! :kill:

Вот пример настройки на срабатывание по совпадению:
ldi tr0,(1<<OCIE0A) ; прерывания по совпадению A
sts TIMSK0,tr0

ldi tr0,(1<<WGM01) ; режим срабатывания по совпадению
out TCCR0A,tr0

ldi tr0,ext_counter_cnt ; заряжаем число отсчетов A
out OCR0A,tr0

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 01:59:33
124bit
Есть выбор между
ATxMEGA-FastProg 300 грн ака авр ISP mk2
http://www.kosmodrom.com.ua/el.php?name=XMEGA-FP
и
AVR ISP v3.2 360грн
http://kosmodrom.com.ua/razrabotka/avr_isp_3_2.php

что посоветуете?
если учесть, что мне иксмеги прогить не надо и хочется чтоб все сразу поелетло на вин 7 без проблем с дровами


вообще, AVR ISP v3.2 - это что за зверь? он как avr ISP mk2 определяется или как avr ISP просто или как?

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 09:59:44
IvanM
ploop писал(а):Вот пример настройки на срабатывание по совпадению:
ну так это таймер0 помоему. Помогите по моему примеру пожалуйста. Все делал как в книгах написано.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 10:29:58
ploop
У вас первый таймер? Ну так делайте по аналогии. Проверьте значения битовых масок в регистрах настройки - возможно там ошибка. И советую задавать значения при настройке используя ИМЕНА битов, а не их числовое представление. Шанс ошибиться меньше.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 10:59:17
Shurf
Можно ли определить ID датчика ds18b20 по маркировке на корпусе? Например мой датчик имеет надпись на корпусе:
0843С3
+161AN

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 11:13:51
DJ_Kiridza
Привета.
Если кто читал предыдущих два моих поста с описанием траблы - то проблема была в оптроне, выбросил оптрон, минус Midi порта кинул на минус схемы, ногу атмеги Tx подал через резак на Midi-In порта и всё заплясало....

непокоит следующее:
;Инициализация порта С
ldi temp, 0x00
out DDRC, temp ;Порт С на вывод
...
ldi KeyPinOut1,0xFE ;11111110
...
out PORTC,KeyPinOut1
Main:
....
rjmp Main:
(вынес запись в порт за пределы (ДО!) главного цикла программы - так чтб значение установилось 1 раз и не менялось)
Почему на ножках не появляется соотв. напряжение?
В смысле, вот я пишу в порт 0:
LDI temp,0x00
OUT PORTC,temp
но всех ногах порта С должно появиться около -5В (при напряжении питания атмеги 5В), правильно? у меня на всех ногах около 2,5В.... или я что-то упустил?

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 11:27:59
ploop
ldi temp, 0x00
out DDRC, temp ;Порт С на вывод
Это вы включили порт C на ВХОД :)

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 11:46:21
DJ_Kiridza
Тфуттыблин!!!.... от я торможу... 10 раз читал про это в даташите, но как-грицоо - смотрю в книгу, а вижу не так уж и много... пасиб что носом ткнули :))

Re: Мелкие практические вопросы

Добавлено: Пн фев 21, 2011 15:24:23
IvanM
IvanM писал(а):Народ! Помогите с таймером1 в AT90S2313. Нужно его настроить на срабатывание по совпадению. Уже 3 книги перешерстил. А он никак не хочет срабатывать более одного раза. Обрабатываю прерывание TIM_COMP1. Работаю в АВР Студио 4.
Даю на суд код. Повыкидал все лишнее - оставил только суть. Задержку на срабатывание поставил чуть больше 5000 мкс. Ловлю срабатывание по регистру r19 названном - fp. Inc получается только один раз.
Простынь из кода в файле :)) (отредактировал 21.02.11 в 8:49)
Отвечу сам на свой вопрос. При выходе из обработчика прерывания надо писать RETI !!! (а не ret). Оказывается - разные савсем комманды. :shock:

Re: Мелкие практические вопросы

Добавлено: Пн фев 21, 2011 16:08:17
Gudd-Head
IvanM писал(а):Отвечу сам на свой вопрос. При выходе из обработчика прерывания надо писать RETI !!! (а не ret). Оказывается - разные савсем комманды. :shock:
Не совсем. Можно вручную разрешать прерывания и выходить через ret.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 20:03:39
124bit
Ребята, зачем на этой схеме с тини
на AVCC , VCC и VCC к sd MMC по одному кондеру на 100 нанофарад?.. Если они ж вроде как параллельны стоят получается да еще и параллельны питанию с 100 микрофарадами?,

ЗАЧЕМ? можно я их вообще не поставлю, или все взорвется?

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 20:12:22
Gudd-Head
124bit писал(а):ЗАЧЕМ? можно я их вообще не поставлю, или все взорвется?
Для лучшей фильтрации напряжения. Можете не ставить, ничего не взорвётся.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 20:16:32
ploop
Можете не ставить, ничего не взорвётся.
Да? А если на флешке коды запуска межконтинентальных ракет, а МК - командный пункт?

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 20:42:46
musicman
помогите прошить мк с помощью CVAvr
у меня есть мк atmega8535-16pu, распаял его на 5 контактов к lpt порту.
есть код написанный на С, для atmega16.
вопросы
что нужно переиначить в коде, чтобы записать его на мой мк? (они вроде совместимы),
программатор нужно выбрать: settings => Programmer => Kanda sistems stk200+/300, lpt1:378h ? (верно?)
почему при загрузке файла с расширением *.с мне недоступны вкладки в project ???
как это исправить. помогите, это первый мк, дальше вопросов будит меньше

код простой, для миди контроллера на 2-е крутилки. я так понимаю что нужно просто заменить

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

Chip type           : ATmega16
Program type        : Application
Clock frequency     : 1,000000 MHz
Memory model        : Small
External SRAM size  : 0
Data Stack size     : 256
*****************************************************/

#include <mega16.h>
на

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

Chip type           : ATmega8535
Program type        : Application
Clock frequency     : 1,000000 MHz
Memory model        : Small
External SRAM size  : 0
Data Stack size     : 256
*****************************************************/

#include <mega8535.h>

// Standard Input/Output functions
#include <stdio.h>

#include <delay.h>

#define ADC_VREF_TYPE 0x20

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн фев 21, 2011 21:52:42
Gudd-Head
ploop писал(а):Да? А если на флешке коды запуска межконтинентальных ракет, а МК - командный пункт?
Ну, там же написано: всего лишь Voice PCM Sound Generator.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вт фев 22, 2011 06:41:01
Chettuser
Оффтопик
ploop писал(а):Да? А если на флешке коды запуска межконтинентальных ракет, а МК - командный пункт?

Хана командному пункту!

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вт фев 22, 2011 13:46:46
Грендайзер
Здрасте всем, кого не видел :) Есть желание поуправлять амплифаером по шине SPI при помощи ПЛИС, но вот программист из меня, как хомяк из кошки :) посему не могу дописать программу. Придумал только часть, но вот в момент передачи данных по последовательной шине нужно послать (по отдельному проводу) стробирующий импульс (точнее подать 0) и завершить его (ьтобиш выставить 1) в момент окончания передачи битов данных. Может кто поможет дописать программку :( Буду очень признателен.

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

---- Uncomment the following library declaration if instantiating
---- any Xilinx primitives in this code.
--library UNISIM;
--use UNISIM.VComponents.all;

entity Amplifier is
Port ( clk : in STD_LOGIC;
reset : in STD_LOGIC);



end Amplifier;


architecture Behavioral of Amplifier is
signal i2 : integer range 0 to 7 :=0;
signal tx : std_logic := '0';
signal clk2 : std_logic := '0';
signal d : std_logic_vector (7 downto 0);
shared
variable n : integer range 0 to 8 :=0;

begin

with i2 select --для деления исходного тактового
clk2 <= '1' when 4, --сигнала (50МГц) в m раз
'0' when 0,
clk2 when others;

shared
variable n : integer range 0 to 8 :=0;


begin

d <= "01010111";

count_10MHz:process (clk)
begin

if clk'event and clk = '1' then --делю исходный тактовый сигнал
if i2 = 7 then --(50МГц) в m раз
i2 <= 0; --
else --
i2 <= i2 + 1; --
end if; --
end if; --
end process count_10MHz; --


process(reset, clk2) --преобразую параллельную шину
begin --d <= "01010111" в
if reset = '0' then --последовательную
i <= 0;
tx <= '0';
n := 0;
elsif clk2'event and clk2 = '1' then
if n = 0 then
n := 7;
else

n := n - 1;

end if;
end process transmission;

tx <= d(n); --присвыивая отдельные биты числа
--d сигналу tx
end Behavioral;

т.е. в момент когда n=7 (т.е. на последовательную шину выводится старший бит данных) необходимо вывести отдельным сигналом стробирующий импульс (а лучше с опережением на 30 нс).А в момент, когда n=0 (на шине младший бит данных) необходимо перевести импульс в лог. 1, и что б эта линия из единицы уже не выходила, т.е. ввсести её в какой нить цыкл. Никак не могу в голове мысли в кучку собрать :( Заранее спасибо :)
ИЛИ может кто подскажет, как реализовать протокол SPI на VHDL