Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 06.02.2010, 16:52  
yellow87
Вид на жительство
 
Аватар для yellow87
 
Регистрация: 29.04.2007
Адрес: Иркутск
Сообщений: 311
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
yellow87 на пути к лучшему
По умолчанию SPI в контроллере без интерфейса

Всем привет!
Есть микросхема с интерфейсом SPI.
Хочу получать от неё данные и обрабатывать их.
Контроллер РИС16Ф84А
Но ведь в нём этот интерфейс(да и вообще никакой) не реализованы.
Поэтому его нужно или самому писать или велосипед не изобретать, а обратиться сюда.
Может у кого уже есть готовые функции:
spi_setup
spi_data_is_in
spi_read
spi_write
Или как быть, не меняя МК ?
Реклама:
yellow87 вне форума  
Непрочитано 06.02.2010, 16:59  
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию Re: SPI в контроллере без интерфейса

Сообщение от yellow87 Посмотреть сообщение
Всем привет! Есть микросхема с интерфейсом SPI. Хочу получать от неё данные и обрабатывать их.
Контроллер РИС16Ф84А
Даже если в МК есть модуль SPI, всё равно придётся писать програмную его поддержку.. сам по себе он не заработает.
И он проще чем I2C. Писать не так уж и много...
picavr вне форума  
Непрочитано 06.02.2010, 17:02  
RY723
Заблокирован
 
Регистрация: 08.08.2007
Сообщений: 2,843
Сказал спасибо: 378
Сказали Спасибо 1,368 раз(а) в 746 сообщении(ях)
RY723 на пути к лучшему
По умолчанию Re: SPI в контроллере без интерфейса

Сообщение от yellow87 Посмотреть сообщение
Всем привет!
Есть микросхема с интерфейсом SPI.
Хочу получать от неё данные и обрабатывать их.
Контроллер РИС16Ф84А
Но ведь в нём этот интерфейс(да и вообще никакой) не реализованы.
Поэтому его нужно или самому писать или велосипед не изобретать, а обратиться сюда.
Может у кого уже есть готовые функции:
spi_setup
spi_data_is_in
spi_read
spi_write
Или как быть, не меняя МК ?
Реализовать програмно. Прочитать даташит на SPI. Сходить по ссылке:
http://www.gaw.ru/html.cgi/txt/interface/spi/index.htm
Если нет готового, делать самому или отказаться от этой затеи. SPI штука синхронная, поэтому можно делать на произвольной скорости.
RY723 вне форума  
Непрочитано 06.02.2010, 17:17  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: SPI в контроллере без интерфейса

Сообщение от yellow87 Посмотреть сообщение
Есть микросхема с интерфейсом SPI.
Какая? Какие режимы SPI поддерживает?

Цитата:
Хочу получать от неё данные и обрабатывать их.
Контроллер РИС16Ф84А
Всё зависит от задачи обработки, если обработки много, то лучше взять с DMA, типа PIC18F46J11, PIC18F46J50 и т.д.
st_1 вне форума  
Непрочитано 06.02.2010, 18:39  
yellow87
Вид на жительство
 
Аватар для yellow87
 
Регистрация: 29.04.2007
Адрес: Иркутск
Сообщений: 311
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
yellow87 на пути к лучшему
По умолчанию Re: SPI в контроллере без интерфейса

1. Я уже давно читал ту страницу. (ссылка на описание)
2. Обработки - минимум.
3. Микросхема без разницы какая: поддерживает все режимы SPI
4. Я и так насроился писать сам, а не менять МК.
5. А вот чтоб не писать самому, я и прошу готовый код инициализации, чтения и записи.
---------------------------------
Если у кого есть готовый модуль функций, пожалуйста поделитесь
: - )
yellow87 вне форума  
Непрочитано 06.02.2010, 18:44  
urry
Почётный гражданин KAZUS.RU
 
Аватар для urry
 
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 106 раз(а) в 66 сообщении(ях)
urry на пути к лучшему
По умолчанию Re: SPI в контроллере без интерфейса

Код:
// описываем выходы 

#define cs 0
#define clk 1
#define data 2
//описываем входы
#define doo RA3
#define mmc_dis() BITSET(porta,cs); PORTA=porta;
#define mmc_en() BITCLR(porta,cs); PORTA=porta;
#define d_1() BITSET(PORTA,data); 
#define d_0() BITCLR(PORTA,data); 
#define clk_1() BITSET(PORTA,clk);
#define clk_0() BITCLR(PORTA,clk); 

void mmc_write_byte (unsigned char Byte1)
{
unsigned char mask=0x80;	
do {
		if ((Byte1&mask))
				{
				d_1(); //Set Output High
				}
			else
				{
				d_0(); //Set Output Low
				}	
		clk_0();	
		mask ›› =1;
		clk_1(); 
	}while (mask != 0);
	d_1();	
}
//-------------------------------------------
unsigned char mmc_read_byte (void)
{
unsigned char Byte = 0;
unsigned char mask=0x80;
do {
				clk_0();
				if (doo)
				{
			 	Byte+=mask;
				}
				clk_1(); 
				mask››=1;		
} while (mask!=0);
return (Byte);
}
__________________
warez

Последний раз редактировалось urry; 06.02.2010 в 18:54.
urry вне форума  
Непрочитано 06.02.2010, 18:49  
innovator_king
Прописка
 
Аватар для innovator_king
 
Регистрация: 12.05.2009
Сообщений: 232
Сказал спасибо: 56
Сказали Спасибо 43 раз(а) в 35 сообщении(ях)
innovator_king на пути к лучшему
По умолчанию Re: SPI в контроллере без интерфейса

Обычно микросхемы с SPI не в режиме master. Т.е. ты задаёшь (читай контроллер) тактовую частоту (импульсы). Тактовую частоту лучше генератором не делать (это вообще может быть не частота,а произвольный момент времени перехода уровня сигнала (если микросхема-slave позволяет)), просто поднимаешь или опускаешь сигнал на выводе контроллера. А в промежутках тактовых импульсов читаешь бит-сигнал от slave-микросхемы. Это я объяснил 2 сигнала SPI. А третьим ещё проще))) Тупо на время обращения к slave микросхеме опускаешь уровень в ноль и всё. А когда закончил читать данные и микросхема-slave уже не нужна, поднимаешь уровень в верх. Вот тебе и алгоритм работы с трёх выводным SPI (такой SPI самый применяемый).
innovator_king вне форума  
Непрочитано 06.02.2010, 18:54  
yellow87
Вид на жительство
 
Аватар для yellow87
 
Регистрация: 29.04.2007
Адрес: Иркутск
Сообщений: 311
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
yellow87 на пути к лучшему
По умолчанию Re: SPI в контроллере без интерфейса

Спасибо, urry.
А как же прерывание на поступление новых данных организовать?
Неужели mmc_read_byte в while(1) затолкать?

P.S.
А что это за абревиатуры такие:doo, mmc ?
yellow87 вне форума  
Непрочитано 06.02.2010, 19:00  
urry
Почётный гражданин KAZUS.RU
 
Аватар для urry
 
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 106 раз(а) в 66 сообщении(ях)
urry на пути к лучшему
По умолчанию Re: SPI в контроллере без интерфейса

в режиме мастера сам выбираешь, когда читать данные, прерывание не используется. А аббревиатура - ммс - это я с карточки этим читал
__________________
warez
urry вне форума  
Непрочитано 06.02.2010, 19:11  
yellow87
Вид на жительство
 
Аватар для yellow87
 
Регистрация: 29.04.2007
Адрес: Иркутск
Сообщений: 311
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
yellow87 на пути к лучшему
По умолчанию Re: SPI в контроллере без интерфейса

А, ну да, точно!
(Хочу каждую секунду буду читать, хочу каждую минуту)
Я ещё не до конца понял эту систему. Точнее только начал знакомиться.
Поэтому не понял "алгоритм работы с трёх выводным SPI"
Ну вроде для начала хватит. Буду пробовать
yellow87 вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Однокристальные трансиверы TRC101 от RFM... Panchiks Автоматика и аппаратура связи 340 15.05.2017 21:10
Простейший программатор SPI EEPROM dimmich Микроконтроллеры, АЦП, память и т.д 6 09.08.2010 23:08
Помогите с ЦАП AD7708/AD7718 или их аналогами ST_Senya Микроконтроллеры, АЦП, память и т.д 9 30.11.2009 19:03


Часовой пояс GMT +4, время: 18:23.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot