Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: помогите с кодом на С плииз
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры
deviel
привет всем!
я совсем пока еще ламер. требуется Ваша помощь...
желательно с кусочком исходника.

нужно какое-нить 16-ричное чило из области памати
(переменную или константу - допустим, что пока это маловажно)
выдать в 2-ичном виде последовательности импульсов
(начиная с младшего разряда)
например число 0x4D (bx1001101) в импульсном представлении
будет выглядеть так:

Data _|_ _|_|_ _ _|_
Clock _|_|_|_|_|_|_|_

не знаю как побитно выдать последовательно число в двоичном коде.
просветите пожалуйста....
спасибо
rezident
Цитата(deviel @ Jun 14 2007, 20:51) *
не знаю как побитно выдать последовательно число в двоичном коде.
просветите пожалуйста....

Предположим что в переменной data лежит ваше исходное число.
Макросы управления выводами контроллера определите сами. Я пишу их условно

Код
#define PIN_CLK        0x01
#define PIN_DATA       0x02
#define SET_DATA       P1OUT|=PIN_DATA
#define CLR_DATA       P1OUT&=~PIN_DATA
#define SET_CLK        P1OUT|=PIN_CLK
#define RESET_CLK      P1OUT&=~PIN_CLK

unsigned int data_mask=1;
for (unsigned int i=0; i<8; i++)
{ if ((data&data_mask)==0) CLR_DATA;
    else SET_DATA;
    SET_CLK;
/*здесь при необходимости можно вставить задержку*/
    RESET_CLK;
    data_mask<<=1;
/*здесь при необходимости можно вставить задержку*/
}
deviel
пасиба. этого думаю уже достаточно. :)
mdmitry
Если есть аппаратная возможность, то это можно сделать по SPI интерфейсу контроллера. Есть три пина: CLK (такт), MOSI (данные от контроллера), MISO (данные к контроллеру) и SS(разное назначение).
defunct
bb-offtopic.gif

Цитата
я совсем пока еще ламер.

Вообще-то ламер - это неизлечимо... Был тут один с курсом, вот тот как раз ламер..

2 deviel
Судя по вашему вопросу и ответу вы далеко не ламер, а просто начинающий.
Быть начинающим лучше чем ламером, т.к. начинающий может научиться и стать хорошим специалистом, а ламер - уже нет. Ламер навсегда остается ламером во всем..
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.