Люби Друзи, подскажите, плиз, на C#, в Вижуал Студио, организация обмена данными через порты, может быть организована аппаратно-программными ссредствами собственных библиотек, или же мне каждый раз от-это работать с массивом на прерывании + таймер? Флаг приема байта у них Эсть?
Не-не, не подумайте, все работает, просто хочу расширить познания!
Не знаю как на шарпе, а на плюсах проще всего работать с портом как с обычным потоком читай файлом.
Евент и делегата объявить - религия запрещает? Шарпы это не асмНе-не, именно дот нет..
public Form1()
{
InitializeComponent();
serialPort1.Open();
serialPort1.DataReceived += new SerialDataReceivedEventHandler(serialPort1_DataReceived);
....
...}
...
private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
s1 = serialPort1.ReadExisting();
if (exFlag == 1) { timer1.Start(); ....
....
....
Я о упрощении этого момента.
}
Привет, Рес!Евент и делегата объявить - религия запрещает? Шарпы это не асмв них нет флагов. Есть event и delegate. Евент -само собой понятно... считай его прерыванием, делегат - процедура в каком-либо модуле, которая выполняется если происходит евент.
собсно это наиболее приближенная к прерываниям хня в дот нете... Ещё ближе - лезь в вин API
P.S. Только делегаты будет описать посложнее, чем твои 7 строкЗато расово верно и признано
ЩИТО? Ждать пока отправится сидя в таймере?
У AVR всегда были флаги око2нчания приема и передачи, и прерывание от них.
Будь он в режиме UART, SPI или хер там в каком.
Или я не понял вопрос? %)
Привет, Рес!
Тяжко эту стену долбить без "подпитки извне"..
Пишешь, работает, но ведь знаешь, что можно еще короче и лучше сделать!хочется!
Собственно, если ты пишешь, соблюдая ООП - только этот путь правильный. Возможно есть дебри, чтобы отлавливать прерывание с самого модуля USART периферии материнки, но, думаю - это лишнее и из под C# туда добраться будет ещё тяжелее, чем из под WIN API от XP, где это уже гемор (она в отличие от 98й, не позволяет работать с периферией напрямую, только через API).События это особый тип многоадресных делегатов, которые можно вызвать только из класса или структуры, в которой они объявлены (класс издателя). Если на событие подписаны другие классы или структуры, их методы обработчиков событий будут вызваны когда класс издателя инициирует событие.
Рес, да пусть "таяться"!)) Знаешь, я считаю, что все что "работает", и на что не ругается компилятор - правильно! А все остальное дело удобства и скорости достижения цели...
Ты какую БД хочешь? Локальную или сетевую? Просто таблицу, или реляционную базу данных?Я тоже буду вопросы кидать, параллельно (хотя почему-то уверен, что ответа не дождусь)
В общем нужно мне замастрячить компьютерный интерфейс для уже изготовленной "многоканально-приемо-передающей" железяки, и наладить прием данных через USB ПК в БД под C#.
С первым, вторым и третьим все просто, все уже решил, с красивой "рожей" и даже с двойной проверкой принятых-переданных данных. А вот с БД на C#, чтобы потом по принятым и записанным данным графики в excel построить, не осилю пока.. не знаком..(вернее все-равно "пробью стену, как обычно, но убъю время)..Может кто-что подскажет по последнему пункту?
Думаю RainBoy могет подсказать, но ему наверняка некогда, занят работой в омериге..
Ты какую БД хочешь? Локальную или сетевую? Просто таблицу, или реляционную базу данных?Я на них, собсно, остановился в изучении C#. Позырь в книжках по C# - там же есть работа с таблицами, а тем более есть компанента таблицы экселя, которая ещё и сохраняет в екселевском формате.
P.S. и я искренне не пойму тяги строить графики в екселе, если уже взялся писать оболочку на C#В ней и строй!
Датчик тока в самой ИМС.Но вернемся к нашимеблабаранам
ЛОкальную, Рес.
Дай автора твоей книги, попробую поискать.. Бля, трудно с нуля, самому, такие вещи пробивать.. На очевидное указать некому.
Только еба...ое упорство помогает не бросить и не "забить"..
Я пользовался XML Spreadsheet... менее тяжелое решение, чем загрузка Excel, при это можно писать формулы и другие вкусности Excel...
XML Spreadsheet Reference лежит по адресу
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
ВотНа самом деле есть несколько способов экспорта(отображения) данных в Excel:
1. Самый долгий и трудоёмкий - использование объекта эксел. Весит он давольно прилично и висит в памяти как кирпич(извините заранее те кто использует данный способ)
2. Использование Cristal Reports - но он не даёт всю красоту екселя(рамки, шрифты и т.д), но зато позволяет сохранять файл хоть в ексел, хоть в HTML, хоть в pdf
3. Использование XSLT - здесь сложность написания самого шаблонного файла - а так способ очень изящный
4. Самый простой и быстрый способ - сохраняем сделанный примерно шаблон своими руками в екселе с формате XML таблицы 2003 офиса и открываем его любым текстовым редактором. ОЧЕНЬ много строк обусловлено настройками самого листа(стили, заголоки) но интересующие данные лежат в виде типа строка - ячейка - дата - bla-bla (закр.теги)
Разобравшись со структурой файла можно начинать писать его самостоятельно. Можно используя XMLWriter, можно StringBuilder, а можно тупо в файл - как не странно - самый быстрый способ. 100000 строк записываются примерно за 0.04сек , через StringBuilder в 4-6 раза дольше. XMLWriter удобно использовать , так как он автоматом закрывает теги, но запись(код) получается более грамоздкой, за счёт того что необходимо прописывать все елементы в елементе ROW со всеми атребутами. А Елемент CELL имеет кучу атрибутов к тому же содержит еще и DATA. ТАк что думаю следует капать примерно в этом направлении.
Какой именно и на какой из схем? на верхней его нет вообще. На нижней Делитель ОС по напряжению? Ну нравится им так... Может они не с током а с напругой работают, не такой уже лазер и нелинейный элемент... Можно работать напругой, если делать нефигКажется начинаю понимать(с)
А внешний резистор зачем тогда? Для пущей гибкости применения?
Та незашо, всегда рад помочь хорошему человеку изнасиловать его собственный москПасиб, Рес.
Резистор имею ввиду классический, в минусе нагрузки. Когда нагрузка и резистор являются делителем и с него ОС берется.
C# засасывает, сука!
А что за данные хочешь хранить в БД? если строки/цифры, то можно замутить массив/класс, и сохранять/читать его через сериализацию.
sql тоже просто лепится.
если что у мя примеры есть и того и другого.
Блин, не успел в тему о передвижке сиськи запостить
Ладно.
Подскажите лучше, какой программер под AVR посоветовать чайниу в отсутствие LPT?
Что б глюков поменьше и чипов поддерживал побольше. Короче, что б человек изучал AVR, а не программатор.
А, и что б не пришлось продавать последние штаны.