реклама на сайте
подробности

 
 
> Вопрос про последовательный сдвиговый регистр, что делаю не так?
#Eugene
сообщение Jun 14 2010, 20:16
Сообщение #1





Группа: Участник
Сообщений: 10
Регистрация: 14-06-10
Пользователь №: 57 921



Здравствуйте!
Потребовалось загрузить в последовательный сдвиговый регистр PLL синтезатора MC145158 некоторые данные, загружать решил при помощи микроконтроллера attiny2313, написал для этого в CodeVision AVR следующую программу:
Код
#include<tiny2313.h>
#include<delay.h>  
#define CLK PORTB.0
#define DATA PORTB.1  
#define ENB PORTB.2
#define led PORTD.5
#define wait delay_us(500);

void send(unsigned int data,unsigned int length)
{  
int i,j;
for(i=length;i!=0;i--)
   {  
   if((data & (1<<i))!=0)
   {
   DATA=1;  
   }      
   else
   {
   DATA=0;
   }    
   CLK=1;
   wait
   CLK=0;    
   wait
  } }
void main(void)
{
  DDRB=0b00000111;
  DDRD.5=1;
  send(0b10001110110110,14);
  send(0b0001000000,10);  
  send(0b00100000,8);
  wait
  ENB=1; //включаем защелку, передаем данные в счетчики
  delay_ms(10);
  ENB=0;
  led=1;
  while(1);
}

Вроде бы все правильно, код работает, но загружает в регистр что-то не то, на ножке fR PLL синтезатора должен появиться сигнал с частотой 1.5625 кГц, но его нет laughing.gif
В чем может быть проблема?

Сообщение отредактировал #Eugene - Jun 14 2010, 20:57
Прикрепленные файлы
Прикрепленный файл  MC145158_2.pdf ( 718.65 килобайт ) Кол-во скачиваний: 26
 
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 10th July 2025 - 05:57
Рейтинг@Mail.ru


Страница сгенерированна за 0.01344 секунд с 7
ELECTRONIX ©2004-2016