Всех с наступившим Новым Годом! написал прогу к вышесказанному
#include <avr/io.h>//mega128
char U,L;
void SPI_read(void) { SPCR=0x50; SPDR=0xaa; while(SPSR==0x00) { } U=SPDR;
SPDR=0xaa; while(SPSR==0x00) { } L=SPDR; SPCR=0x00; }
void main(void) { PORTB&=0xDF;//spi fpga SPI_read(); PORTB|=0x20;
//...сравнение значений температур с пороговым
PORTB&=0xEF;//spi rf SPI_read(); PORTB|=0x10; }
здесь сначала читается первый байт, потом второй байт из цифровых термометров если я пишу это в переменную типа int, то все равно могу записать только 1 байт: т.к. регистр spi расчитан на байт информации, то требуется новый запуск модуля spi для чтения информации с датчиков при последующем чтении из регистра и записи информации в переменную предидущии данные естественно удаляются как дописать данные в туже переменную? или может подскажите идею или другую программную реализацию жду ответов -------------------------------------------------- щас читаю 3 книги: 2 по авр и по с....
Сообщение отредактировал pimen - Jan 2 2008, 23:52
|