ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
28 марта
473594 Топик полностью
Точка опоры (15.12.2013 20:52, просмотров: 151) ответил BaRaGoZ на Есть МК Atmega64 к нему подсоединены 2 внешних АЦП AD7858.
Ответ: 
и затем ф-ия считывания: unsigned char AD7858_0_Read(){ unsigned char data=66; PORTE CLR_B (7); //sync data = spi(0x00); PORTE SET_B (7); strob_CNV0(); while (ADC_BUSY0 == 1); return data; }
Сдаётся мне, что всё неверно в корне и тема не для раздела АВР, а для схемотеники скорее. Например, что на входе CLKIN? Я-бы, с пьяных глаз, так сделал если "в лоб" (запустить преобразование по Figure 2 и считать данные. кстати, ф-ция spi возвращает-ли данные?): unsigned int AD7858_0_Read(){ unsigned char data_tmp; PORTE CLR_B(6); while (ADC_BUSY0 == 1); PORTE SET_B(6); while (ADC_BUSY0 == 0); PORTE CLR_B (7); data_tmp = spi(0x00); // Думаю, тут и в следующей строке надо не 00, а что-то подходящее по смыслу, вроде выбора следующего канала data = (data_tmp << 8) + spi(0x00); PORTE SET_B (7); return data; }
Заказать импортные ЭК - https://shop.fulcrum.ru/buy