Модераторы: PILOT, ManiaK, Mazzi

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Присоеденить железо к компу, Изучение основ. С чего начинать? 
V
    Опции темы
new_web
Дата 6.2.2008, 23:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 1.2.2008

Репутация: нет
Всего: нет



Цитата(xvr @  6.2.2008,  23:04 Найти цитируемый пост)
Это уже другая ошибка. Позови implib с ключем -a: implib -a inpout32.lib inpout32.dll

Спасибо. пробую...
Попробовал всё тоже
[Linker Error] Unresolved external 'Out32' referenced from E:\CPLUSPLUS\CONTROLS\UNIT1.OBJ



Это сообщение отредактировал(а) new_web - 6.2.2008, 23:25
PM MAIL   Вверх
new_web
Дата 7.2.2008, 23:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 1.2.2008

Репутация: нет
Всего: нет



Помню, когда-то, я с помощью нескольких транзисторов, резонатора мог получить  любой сигнал, а цифровой - так и подавно! 
Я не понимал тогда, почему так трудно из компьютера, в котором миллиарды транзисторов, извлечь один простой сигнал, чтобы светодиод 
засветился! smile  - Потух smile  - Засветился smile  - Потух smile 
не понимаю и сейчас...
Есть простое решение - удалить старые фильмы - скопировать диск С на D by Acronis,  format C fat32...
windows 98 install
Builder6 install
Осуществить мечту, а если нет, то значит. проблема в железе!

Но! это проще на другом компике попробовать, могу на трёх, где билдер стоит! Но не сейчас, ибо 
застрял далеко дома - насморк и работа несовместимы!
Но, может, проблема в железе? В настройках BIOS?

Кому-то удалось засветить светодиод на LTP с помощью Builder6 в ХР?

 smile  smile  smile 

PM MAIL   Вверх
xvr
Дата 8.2.2008, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 8
Всего: 223



Цитата(new_web @ 7.2.2008,  23:34)
Но! это проще на другом компике попробовать, могу на трёх, где билдер стоит! Но не сейчас, ибо 
застрял далеко дома - насморк и работа несовместимы!
Но, может, проблема в железе? В настройках BIOS?

Кому-то удалось засветить светодиод на LTP с помощью Builder6 в ХР?

 smile  smile  smile 

Кому то удалось  smile Авторам inpout32 В архиве пример (в том числе и для Bulder'а)


Присоединённый файл ( Кол-во скачиваний: 40 )
Присоединённый файл  inpout32_source_and_bins.zip 65,38 Kb
PM MAIL   Вверх
Gordon
Дата 8.2.2008, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 9.7.2006

Репутация: 1
Всего: 6



new_web, посмотри тут, правда не inpout32, но светодиод зажигает... smile



Присоединённый файл ( Кол-во скачиваний: 64 )
Присоединённый файл  _____.rar 19,82 Kb


--------------------

  
     
PM MAIL WWW   Вверх
new_web
Дата 9.2.2008, 02:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 1.2.2008

Репутация: нет
Всего: нет



 smile  smile  smile 

Цитата(Gordon @  8.2.2008,  18:58 Найти цитируемый пост)
new_web, посмотри тут, правда не inpout32, но светодиод зажигает...  

Присоединённый файл ( Кол-во скачиваний: 2 )


 _____.rar 19,82 Kb



Работает! Огромное спасибо!


Для тех. кому интересно выложу код,(и он работает) участника 
Gordon,  - который мне помог!
Код

//---------------------------------------------------------------------------
#include <windows.h>
#include <iostream>
#include <stdio.h>
#include "winio.h"
#include <vcl.h>
#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused
int main(int argc, char* argv[])
{
system("PAUSE");
        int key = 1;
        bool bResult;
    
    bResult = InitializeWinIo(); cout << bResult << endl;
    if(bResult)
    {
          while(key != -1)
              {
                cin >> key;
                switch(key)
                {
                case 0:
                 SetPortVal(0x378, 0, 4);//потух
                        break;
                case 1:
                        SetPortVal(0x378, 1, 4);//включился
                        break;
                }
              }
    }
         else cout<< "false" << endl;

         ShutdownWinIo();
         system("PAUSE");
       return 0;
}



Теперь, только фантазия может ограничить меня, как я могу это использовать! Если кому интересно. для чего мне это - пишите в личку!
Спасибо всем, я многое узнал, многому научился, также узнал. что мне ещё учиться и  учиться!
Очень интересный и нужный форум, и его подраздел Программирование контроллеров.
Так-или иначе у меня будет много вопросов на эту тему, а пока - пока - ибо
ВОПРОС РЕШЁН

PM MAIL   Вверх
new_web
Дата 19.2.2008, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 1.2.2008

Репутация: нет
Всего: нет



Сделал ДЕМО програмку. которая устанавливает по-клику напряжение на любом выводе порта Data, Control, а также читает состояние всех портов. ведёт лог изменений состояний портов, с возможностью сохранения и печати.
Вот скрин:
user posted image
а вот и сама ссылка на программу, вместе с исходниками
http://new-web.ucoz.ua/ltp_demo.rar
Обновлён 20.02.08

При её разработке пользовался знаниями, которые подчерпнул здесь, в этой теме, а также в других  темах этого форума.

Вопрос! А как записать значение в порт Data извне?
Пробовал подавать "+" на выводы, пробовал "землю" ничего не меняется! Даже, если Control замкнуть на "землю ", то значение на нём поменяется.

А ещё странный "каприз" - если переключать старший регистр Data, то на выводах Control напряжение инвертируется.
На самом деле, состояние Control при изменении любого регистра  Data обнуляется(отредактировано мной позже)

 А если замкнуть Status на землю (там всегда 1 на выводах) то вообще все порты бесятся, мигают. - это драйвер виндовс думает, что ему всунули что-то, потом успокаивается. 
Но,  надо спросить. а где действие этого  драйвера заканчивается, на что он влияет.,и как его можно деактивировать?

Буду рад видеть ваши отклики!

Теперь осталось только железо подсоеденить, да и програмно описать мудрую мысль... smile 

Склонен считать своё первоё знакомство с контроллерами удачным! smile 

Это сообщение отредактировал(а) new_web - 20.2.2008, 06:39
PM MAIL   Вверх
xvr
Дата 19.2.2008, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 8
Всего: 223



Цитата(new_web @ 19.2.2008,  10:41)
Вопрос! А как записать значение в порт Data извне?
Пробовал подавать "+" на выводы, пробовал "землю" ничего не меняется! Даже, если Control замкнуть на "землю ", то значение на нём поменяется.

Стандартный LPT не поддерживает ввод данных через Data  smile Не совсем стандартный (а сейчас все такие) позволяет переключить шину Data на ввод, записав 1 в бит 5 Control регистра (номер бита точно не помню, надо смотреть доку). Что касается замыкания Control'ов на землю, то они на это совершенно точно не расчитанны  smile Кстати, почти все порты допускают работу в EPP и ECP режимах, EPP выглядит очень привлекательно  smile 

Цитата

А ещё странный "каприз" - если переключать старший регистр Data, то на выводах Control напряжение инвертируется.

Действительно странный - такого быть не должно

Цитата

 А если замкнуть Status на землю (там всегда 1 на выводах) то вообще все порты бесятся, мигают. - это драйвер виндовс думает, что ему всунули что-то, потом успокаивается. 
Но,  надо спросить. а где действие этого  драйвера заканчивается, на что он влияет.,и как его можно деактивировать?
Деинсталировать принтер и драйвер LPT порта, но это черевато  smile В принципе в Windows драйвер LPT позволяет захватить притерный порт в монопольное использование, увы позволяет он это только другому драйверу, можно ли это сделать из пользовательской программы не знаю (наверное можно)


PM MAIL   Вверх
new_web
Дата 19.2.2008, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 1.2.2008

Репутация: нет
Всего: нет



Цитата(xvr @  19.2.2008,  11:41 Найти цитируемый пост)
позволяет переключить шину Data на ввод, записав 1 в бит 5 Control регистра

в 5 бит? тоесть надо писать значение в тот бит, который недоступен на выводе? их там 4 всего, но ещё 4 без выводов, старшие...

И как оно тогда должно записаться в Data? если на выводах ноль, и подам плюс, то на том выводе будет один, по-идее. а если там 1, то надо ноль подать, чтобы изменить?

Где можно почитать  доку, разный хелп по этой теме?


Цитата(xvr @  19.2.2008,  11:41 Найти цитируемый пост)
Кстати, почти все порты допускают работу в EPP и ECP режимах, EPP выглядит очень привлекательно   

Помедленней. пожалуйста. я записываю  smile 

Если серьёзно. то как это понимать? Что это значит?






Это сообщение отредактировал(а) new_web - 19.2.2008, 12:53
PM MAIL   Вверх
xvr
Дата 19.2.2008, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 8
Всего: 223



Цитата(new_web @ 19.2.2008,  12:51)
Цитата(xvr @  19.2.2008,  11:41 Найти цитируемый пост)
позволяет переключить шину Data на ввод, записав 1 в бит 5 Control регистра

в 5 бит? тоесть надо писать значение в тот бит, который недоступен на выводе? их там 4 всего, но ещё 4 без выводов, старшие...

Да, именно так

Цитата

И как оно тогда должно записаться в Data? если на выводах ноль, и подам плюс, то на том выводе будет один, по-идее. а если там 1, то надо ноль подать, чтобы изменить?
Оно никак, но сам порт Data переключится на ввод - т.е. в него можно будет подавать сигнал извне и читать из порта.

Цитата

Где можно почитать  доку, разный хелп по этой теме?
 В google вестимо  smile Вот первая попавшаяся ссылка
http://www.thaiio.com/parallelportinfo.html

Цитата

Цитата(xvr @  19.2.2008,  11:41 Найти цитируемый пост)
Кстати, почти все порты допускают работу в EPP и ECP режимах, EPP выглядит очень привлекательно   

Помедленней. пожалуйста. я записываю  smile 

Если серьёзно. то как это понимать? Что это значит?
Это режимы работы LPT порта. Описанны в стадарте IEEE 1284
Ищи в google IEEE 1284 - получишь МОРЕ ссылок

PM MAIL   Вверх
new_web
Дата 20.2.2008, 00:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 1.2.2008

Репутация: нет
Всего: нет



ДА, действительно, ссылок море, правда, подавляющее большинство всё на английском, его я читаю куда медленней...

Есть где-нибуть толковая спецификация на русском?

И пока я не нашёл примера, как оно будет записываться в Data порт, нужно мне ещё много прочитать ,чтобы понять, разобраться...


Я пробовал Control 5 бит. и 4 бит, перепробовал вс комбинацию... ни разу подача напряжения на Data не срабатывала, чтобы там сигнал изменился... а ещё получается. что в Control  можно записать не больше 63, тоесть 2 старших бита недоступны


А ещё я ошибся выше 
Цитата

А ещё странный "каприз" - если переключать старший регистр Data, то на выводах Control напряжение инвертируется.

 состояние Control при изменении любого регистра  Data обнуляется - я немного обновил програмку. теперь она корректней работает, но я чувствую. что там ещё есть баги. посмотрел бы кто???)))




Было бы проще на каком нибуть конкретном примере увидеть работу, пощупать светодиодом...
 smile 


Это сообщение отредактировал(а) new_web - 20.2.2008, 05:04
PM MAIL   Вверх
xvr
Дата 20.2.2008, 08:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 8
Всего: 223



Цитата(new_web @ 20.2.2008,  00:15)
Я пробовал Control 5 бит. и 4 бит, перепробовал вс комбинацию... ни разу подача напряжения на Data не срабатывала, чтобы там сигнал изменился... а ещё получается. что в Control  можно записать не больше 63, тоесть 2 старших бита недоступны



У тебя в программе запись в control ограничена 5ю битами 

Цитата

А ещё я ошибся выше 
Цитата

А ещё странный "каприз" - если переключать старший регистр Data, то на выводах Control напряжение инвертируется.

 состояние Control при изменении любого регистра  Data обнуляется - я немного обновил програмку. теперь она корректней работает, но я чувствую. что там ещё есть баги. посмотрел бы кто???)))


Посмотрел, в методах ResetDataValueLtp и ResetControlValueLtp написан полный бред  smile Что они должны были делать?

PM MAIL   Вверх
new_web
Дата 20.2.2008, 13:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 1.2.2008

Репутация: нет
Всего: нет



Цитата(xvr @  20.2.2008,  08:42 Найти цитируемый пост)
Посмотрел, в методах ResetDataValueLtp и ResetControlValueLtp написан полный бред   Что они должны были делать?


Ну, я согласен, что идею, реализованную в вышеприведённых методах можно было оформить лучшим образом.

Теперь. собственно, что он делает:
Он, метод, принимает клик от соответствующего Shape, изменяет состояние соответствующего вывода порта. Если  Shape светит, и на нём кликнуть, то он потухнет, и наоборот, в зависимости. от значения порта 
Код


int __fastcall TImageLtpControll::ResetDataValueLtp(
int nData,//принимаем текущее состояние порта Data
int Tag//это есть номер регистра. номер бита
)
{
  int nGetData=nData;
 int i,b;
 if(Tag>=0&&Tag<=7)//на всякий случай проверяем диапазон - всего регистров 8
 {
  for(i=0,b=1;i!=Tag;i++,b*=2);//призвание этого пустотелого цикла в поиске соответствующего          регистра, тоесть, если, к примеру, кликнуть на D2, то слагаемое "b" будет 8 - третий бит.

  if((nGetData&b)==0)//используем побитовое умножение - сравниваем текущее состояние  бита (D2)Data с ноль
nGetData=nGetData+b;//если в регистре ноль изменяем регистр, добавляя к значению порта значение b - этот бит становится  -  true
  else nGetData=nGetData-b; //изменяем регистр, отнимая от значения порта значение b этот бит становится  - false
 }
 return  nGetData;
}
}



Смею уверить. это не бред ,пусть вся прога бредовая, но, именно эта часть кода
Код

  for(i=0,b=1;i!=Tag;i++,b*=2);
  if((nGetData&b)==0)nGetData=nGetData+b;
  else nGetData=nGetData-b;


 есть моя маленькая гордость, жаль, что Вы не увидели красоты в ней, жаль, что я, не могу доступными словами донести её действие. 
А делает  она всего лишь то, что изменяет значения порта так, чтобы изменилось состояние конкретного бита, в нашем случае,  это Tag, не изменяя состояния других битов

Вы можете покликать на кружочках Shape, чтобы всё понять...

Весьма поверхостные знания битовых операторов я подчерпнул из книги Р.Дэвиса "С++ для чайников", ст 52  Глава 4 "Зачем придуманы эти глупые операторы".

Поскольку программа притерпела изменения, благодаря знаниям из 
http://forum.vingrad.ru/forum/topic-196064...y1417670/0.html

то методы ResetDataValueLtp и ResetControlValueLtp стало возможным объеденить в один, но это уже из серии "Для НУБОВ - Теория постороения классов" - поскольку у меня своих классов, созданных, за душой несколько голодных сирот, то я имею радость от надежды, что мои классы, со временем, станут похожи на классы. smile 


Цитата(xvr @  20.2.2008,  08:42 Найти цитируемый пост)

У тебя в программе запись в control ограничена 5ю битами 

Верю, но никак не могу найти где... smile 
Не подскажете? smile 


Это сообщение отредактировал(а) new_web - 20.2.2008, 13:21
PM MAIL   Вверх
xvr
Дата 20.2.2008, 20:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 8
Всего: 223



Цитата(new_web @ 20.2.2008,  13:05)
Цитата(xvr @  20.2.2008,  08:42 Найти цитируемый пост)
Посмотрел, в методах ResetDataValueLtp и ResetControlValueLtp написан полный бред   Что они должны были делать?


Ну, я согласен, что идею, реализованную в вышеприведённых методах можно было оформить лучшим образом.

Теперь. собственно, что он делает:
Он, метод, принимает клик от соответствующего Shape, изменяет состояние соответствующего вывода порта. Если  Shape светит, и на нём кликнуть, то он потухнет, и наоборот, в зависимости. от значения порта 
Код


int __fastcall TImageLtpControll::ResetDataValueLtp(
int nData,//принимаем текущее состояние порта Data
int Tag//это есть номер регистра. номер бита
)
{
  int nGetData=nData;
 int i,b;
 if(Tag>=0&&Tag<=7)//на всякий случай проверяем диапазон - всего регистров 8
 {
  for(i=0,b=1;i!=Tag;i++,b*=2);//призвание этого пустотелого цикла в поиске соответствующего          регистра, тоесть, если, к примеру, кликнуть на D2, то слагаемое "b" будет 8 - третий бит.

  if((nGetData&b)==0)//используем побитовое умножение - сравниваем текущее состояние  бита (D2)Data с ноль
nGetData=nGetData+b;//если в регистре ноль изменяем регистр, добавляя к значению порта значение b - этот бит становится  -  true
  else nGetData=nGetData-b; //изменяем регистр, отнимая от значения порта значение b этот бит становится  - false
 }
 return  nGetData;
}
}



Смею уверить. это не бред ,пусть вся прога бредовая, но, именно эта часть кода
Код

  for(i=0,b=1;i!=Tag;i++,b*=2);
  if((nGetData&b)==0)nGetData=nGetData+b;
  else nGetData=nGetData-b;


 есть моя маленькая гордость, жаль, что Вы не увидели красоты в ней, жаль, что я, не могу доступными словами донести её действие. 
А делает  она всего лишь то, что изменяет значения порта так, чтобы изменилось состояние конкретного бита, в нашем случае,  это Tag, не изменяя состояния других битов


Пардон, не заметил, что цикл пустой. Конечно, этим кодом можно гордится, но я бы не стал  smile Код полностью эквивалентен следующему
Код

int __fastcall TImageLtpControll::ResetDataValueLtp(
int nData,//принимаем текущее состояние порта Data
int Tag//это есть номер регистра. номер бита
)
{
 return  nData ^ (1<<Tag);
}

И вообще рекомендую ГЛУБОКО ознакомится с битовыми операциями, мир стане проще  smile 

Цитата

Цитата(xvr @  20.2.2008,  08:42 Найти цитируемый пост)

У тебя в программе запись в control ограничена 5ю битами 

Верю, но никак не могу найти где... smile 
Не подскажете? smile

Я немного не прав - не запись, а инициализация массива (это ошибка, но на работу с control регистром влиять не должна)

UnitImageLPT.cpp
55: for(int i=0;i<[B]4
;i++)bControlIndicator[i]=false;[/B]

Кстати, ЧИТАТЬ control регистр дело совершенно бесполезное - он не обязан возвращать то, что в него было записано  smile Может по этому установить 5й бит и не получается.
PM MAIL   Вверх
new_web
Дата 21.2.2008, 01:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 1.2.2008

Репутация: нет
Всего: нет



Цитата(xvr @  20.2.2008,  20:37 Найти цитируемый пост)
Код

return  nData ^ (1<<Tag);


 smile  smile 
Действительно, очень красиво! Очевидно, мне стоило быть более сдержанным в оценке своих достижений, но как говорится,- "что написано топором..."

Цитата(xvr @  20.2.2008,  20:37 Найти цитируемый пост)
55: for(int i=0;i<4;i++)bControlIndicator[i]=false;

да, но это всего лишь конструктор, в котором они обнуляются при загрузке програмы.
 А дальше они(индикаторы) должны реагировать, по логике работы програмы, если значение Control будет > 63?

Цитата(xvr @  20.2.2008,  20:37 Найти цитируемый пост)
Кстати, ЧИТАТЬ control регистр дело совершенно бесполезное - он не обязан возвращать то, что в него было записано   Может по этому установить 5й бит и не получается.
...

Тоесть, надо самому помнить значение? Но, ведь до 63 читает исправно!

И самая главная проблема, как записать в Data извне?

Результат - надо читать инфу


PM MAIL   Вверх
xvr
Дата 21.2.2008, 09:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 8
Всего: 223



Цитата(new_web @ 21.2.2008,  01:06)
Цитата(xvr @  20.2.2008,  20:37 Найти цитируемый пост)
Код

return  nData ^ (1<<Tag);


 smile  smile 
Действительно, очень красиво! Очевидно, мне стоило быть более сдержанным в оценке своих достижений, но как говорится,- "что написано топором..."

Цитата(xvr @  20.2.2008,  20:37 Найти цитируемый пост)
55: for(int i=0;i<4;i++)bControlIndicator[i]=false;

да, но это всего лишь конструктор, в котором они обнуляются при загрузке програмы.
 А дальше они(индикаторы) должны реагировать, по логике работы програмы, если значение Control будет > 63?


Должны, но лучше инициализировать  smile 

Цитата

Цитата(xvr @  20.2.2008,  20:37 Найти цитируемый пост)
Кстати, ЧИТАТЬ control регистр дело совершенно бесполезное - он не обязан возвращать то, что в него было записано   Может по этому установить 5й бит и не получается.
...

Тоесть, надо самому помнить значение? Но, ведь до 63 читает исправно!
Да, надо помнить самому. И то, что до 63 он читает - чистая случайность - не обязан

Цитата

И самая главная проблема, как записать в Data извне?
Поставить 5 бит control в 1. После этого запись в Data будет игнорироваться, а читаться будет то, что приходит в LPT порт снаружи (порт будет переведен на ввод)

PM MAIL   Вверх
Страницы: (4) Все 1 2 [3] 4 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)"
PILOT ManiaK
UniBomb Mazzi

На данный раздел помимо Правил форума распространяются текже следующие правила:


  • Прежде чем создать тему воспользуйтесь поиском или посмотрите в faq. Возможно на форуме уже есть ответ на ваш или близкий к вашему вопрос.
  • В заголовке темы в квадратных скобках обозначьте используемое семейство микроконтроллера: [avr],[pic],[arm].
  • При создании темы с вопросом указывайте участок кода с ошибкой, версию компилятора, схемы подключения, fuse биты и прочие данные, которые помогут найти правильный ответ. Для форматирования текста программ используйте кнопку код.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Для флуда, просьб выполнить задание, поиска партнёров или исполнителей существуют свои разделы.
  • Если вы заметили несовместимое с правилами сообщение, то можете уведомить об этом модератора раздела нажав кнопку Репорт у соответствующего сообщения.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема »


 




[ Время генерации скрипта: 0.0970 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.