Пятница, 19.04.2024, 19:31
Микроконтроллерная техника AVR
Главная Регистрация Вход
Приветствую Вас, Гость · RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Микроконтроллеры » Вопросы по МК » Интерфейс SPI (Помощь)
Интерфейс SPI
}{0TT@БЬ)ЧДата: Суббота, 02.07.2011, 18:43 | Сообщение # 1
Рядовой
Группа: Пользователи
Сообщений: 13
Репутация: 0
Статус: Offline
помогите пожалуйста я уже не знаю где искать весь интернет перерыл хочу подружится с SPI а не получается везде читал всё так займно написано и без примеров вот например в CodeVision есть библиотека как с ней работать не пойму!помогите обьясните и главное с примерами на C пожалуйста

Добавлено (02.07.2011, 18:43)
---------------------------------------------
всё я нашёл книжечку по CodeVision там рассказали как пользоваться SPI и библиотекой но вот проблема написал пример как в книге в CodeVision а он мне ошибки выписывает при компиляции не пойму вроде всё как в книге а чо тогда!!
Надо подключить внешний ADC (AD7896) по интерфейсу SPI к МК AT90S8515

Code

#include <90s8515.h>
#include <spi.h>
                  //указываем опорное наприжение в Мв
#define VREF 5000L
#define _busy PINB.0 //поключаем ногу BUSY
#define n_convst PORTB.1 //подключаем ногу NCOVST
                      //создайм функцию чтения преобразования
unsigned int ADC_read(void)
{
unsigned int voltage;//создадим переменую для хранения преобразования
n_convst = 0; //пускаем на ногу 0
n_convst = 1; //пускаем на ногу 1 етим мы вкл преобразование  
while(_busy); //пока нога BUSY не равна 0
voltage = spi(0); //читаем стырший байт(MSB)
voltage =voltage<<8; //результат сдигаем на 8 бит
voltage |= spi(0); //чиатем младший байт(LSB)
voltage = (unsigned) (((unsigned long) voltage*VREF)/4096L);//измеряем наприжение в Мв
return voltage; //возращаем все измереное нашей функции  
}

void main(void)
{
//создаём переменую для хранения результата от функции чтения Преобразователя
unsigned int result_ADC;
//инциализация порта
DDRB = 0x92;
//настройка конфигураций SPI
//SPCR = 0x50;
//начальное состояние Порта В
PORTB = 2;
//присваеваем к переменой result_ADC к функции тем мы узнаем результат преобразования в Мв
result_ADC = ADC_read();
}
 
HiSERДата: Суббота, 02.07.2011, 23:33 | Сообщение # 2
Продвинутый автор!
Группа: Проверенные
Сообщений: 254
Репутация: 11
Статус: Offline
напиши хоть какие ошибки выдал.
 
}{0TT@БЬ)ЧДата: Воскресенье, 03.07.2011, 13:55 | Сообщение # 3
Рядовой
Группа: Пользователи
Сообщений: 13
Репутация: 0
Статус: Offline
та всё забей ! я ришил эту проблем
 
Форум » Микроконтроллеры » Вопросы по МК » Интерфейс SPI (Помощь)
  • Страница 1 из 1
  • 1
Поиск:

Хостинг от uCoz