Форум Микро-Чип

Форум Микро-Чип (http://www.microchip.su/index.php)
-   Своими руками (http://www.microchip.su/forumdisplay.php?f=21)
-   -   USB осциллограф на PIC18F4550 (http://www.microchip.su/showthread.php?t=10440)

МимоПроходил 23.03.2011 21:33

Re: USB осциллограф на PIC18F4550
 
Вложений: 1
К осциллу имеет мало отношения, но как пример того,что можно натворить за три дня изучения OpenGL - потянет. ИМХО, если делать осцилл - применение OpenGL - самое - то.

Stanson 24.03.2011 07:49

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от МимоПроходил (Сообщение 130231)
К осциллу имеет мало отношения, но как пример того,что можно натворить за три дня изучения OpenGL - потянет. ИМХО, если делать осцилл - применение OpenGL - самое - то.

Ну да, конечно же, а как же, морда для осциллографа без OpenGL, без распоследней nvidia и Intel iCore7 или как он там - ну никак не сделать.

Ребяты, вы с дуба рухнули, что-ли?

Вообще-то тупейшего double buffer и bitblt в окно хватит за глаза и за уши. Рисуем всё в память, потом почти аппаратно копируем картинку в окошко.
Ещё лет 10 назад под убогой виндой хватало примерно такой бредятины:

Код:

  switch(message)
  {
...
    case WM_PAINT:
    {
      GetClientRect(hWnd,&rc);
      hDC=BeginPaint(hWnd,&ps);
      hDCMem=CreateCompatibleDC(hDC);
      ZeroMemory(&bmi, sizeof(bmi));
      bmi.bmiHeader.biSize          = sizeof(BITMAPINFOHEADER);.
      bmi.bmiHeader.biWidth          = iWidth = rc.right-rc.left;.
      bmi.bmiHeader.biHeight        = iHeight = rc.bottom-rc.top;
      bmi.bmiHeader.biPlanes        = 1;.
      bmi.bmiHeader.biBitCount      = 32;
      bmi.bmiHeader.biCompression    = BI_RGB;
      hbm = CreateDIBSection(hDC,&bmi,DIB_RGB_COLORS,(void*)&pbits,NULL,0);
      hbmOld = SelectObject(hDCMem,hbm);

....
тут фигачим картинку напрямую в память на которую указывает pbits
типа:

почистить на всякий случай:

ZeroMemory(pbits,iWidth * iHeight * sizeof(int));

рисовать точку:

*(pbits + x + iWidth * y) = 0x00BBRRGG;

Можно в эту память и как в dc порисовать:

TextOut(hDCMem,x,y,"Test",1);

....

      BitBlt(hDC,rc.left,rc.top,rc.right-rc.left,rc.bottom-rc.top,hDCMem,0,0,SRCCOPY);
      // всё удаляем обязательно, а то память кончится и BSOD случится
      SelectObject(hDCMem,hbmOld);
      DeleteObject(hbm);
      DeleteDC(hDCMem);
      EndPaint(hWnd,&ps);
    }
    return 0;
...
  }

На пне 233 MMX и тупой S3Trio - летало. При несильно сложной графике (ну, например, трёхмерный wireframe в окошке 400х400) - 20 fps как с куста.

Какой нафиг OpenGL?

Про линух вообще молчу.

radar657 28.03.2011 19:26

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от Stanson (Сообщение 130169)
Хм. Я так понимаю, что и в элементарнейших схемах с ОУ Вы тоже не разбираетесь?
Там же всё очевидно. На выходе ОУ должно быть +3 Вольта. Коэффициэнт усиления ОУ - 10, установлен цепью обратной связи. Соответственно, надо подать на вычитающий вход -300 мВ. Подаётся это напряжение с повторителя на втором ОУ. На входе этого повторителя должно быть -300 мВ. Как резисторный делитель заставить выдавать нужное напряжение надо объяснять?

Кондёры C2 и входного делителя не высчитываются, ибо нет исходных данных для их расчёта. Входная ёмкость ОУ с диодами в схеме зависит от кучи причин, даже от разводки платы, так что...
Всё подбирается. Общая идея - цепь из ёмкостей должна представлять из себя копию цепи из резисторов, только для переменного тока.
Подаёте на вход меандр с хорошими фронтами и последовательно подбираете ёмкости на всех пределах чтобы меандр выглядел меандром.



Нет и не будет.



Ну опять же - документацию почитайте. Это можно сделать даже не потратив ни копейки реальных денег. Подсказка: меня устроит даже сумма в 0.05 BTC

Получаеться нужно подать на 1,2 ногу ОУ -300 mv и настраивать коэф.усиления потенциометром на 10КОм? У меня получаеться такая ситуация: ОУ-OPA 2350,но он не заводиться:confused: и как выставить смещение? на потенциометрах 5КОм и 50Ком? Может у меня 2-я половина ОУ работает а первая нет?:confused:

radar657 28.03.2011 19:29

Re: USB осциллограф на PIC18F4550
 
И ещё немогу разобраться как пополнить на Bitcoin?

Stanson 28.03.2011 20:05

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от radar657 (Сообщение 130876)
Получаеться нужно подать на 1,2 ногу ОУ -300 mv и настраивать коэф.усиления потенциометром на 10КОм? У меня получаеться такая ситуация: ОУ-OPA 2350,но он не заводиться:confused: и как выставить смещение? на потенциометрах 5КОм и 50Ком? Может у меня 2-я половина ОУ работает а первая нет?:confused:

Так. Делать надо всё по-порядку.
1. Подать 3 В на вход АЦП. Убедиться что морда отображает это напряжение правильно - линия должна быть в пределах экрана и иметь шум в пределах 1 пикселя. При изменении напряжения должна смещаться. Пока это не сделано - всё остальное не имеет смысла.
2. Если выполнен пункт 1, то нужно убедится, что на 4 ноге PIC присутствует напряжение отличное от 0 и 5В и оно изменяется при вращении крутилки X offset в морде. Всё остальное тоже не имеет смысла, если не выполнен этот пункт.
3. Если выполнены пункты 1 и 2, то нужно проверить наличие напряжения питания +5 и -5 В на ОУ.
4. Если выполнены пункты 1, 2 и 3, то нужно выставить движок крутилки X offset в морде в среднее положение и резисторами R6 и R7 добиться напряжения -300мВ на ноге 3 ОУ.
5. Если выполнены пункты 1, 2, 3 и 4 то нужно измерить напряжение на 1 ноге ОУ и если оно слегка отличается от -300мВ то подстроить при помощи R6. Если выходное напряжение сильно отличается от -300мВ, заменить ОУ.
6. Если выполнены пункты 1, 2, 3, 4 и 5 нужно замкнуть вход осциллографа на землю и резистором R5 установить напряжение 3В на выходе ОУ.
7. Если выполнены пункты 1, 2, 3, 4, 5 и 6, Настроить X offset так, чтобы в крайних положениях движка линия не выходила за пределы экрана. Делать это проще всего вращая R7, при этом периодически подстраивая R6 чтобы в среднем положении линия оставалась в центре экрана.

Разумеется, всё вышеперечисленное имеет смысл только если монтаж выполнен правильно.

Цитата:

И ещё немогу разобраться как пополнить на Bitcoin?
Кто бы сомневался...
Нет, уж, любезнейший, разобраться с Bitcoin и перечислить мне любую, даже самую минимальную сумму, в доказательство того, что Вы поняли что к чему - это и есть ваша оплата :)
Вы обещали заплатить. Вот и платите, не отлынивайте.

http://bitcoin.org
Там всё написано.

radar657 29.03.2011 19:13

Re: USB осциллограф на PIC18F4550
 
ув. Stanson у меня на 5 пункте проблема на 1 ноге нет напряжения -300mV блин второй ОУ негодный,видать партия OPA2350 ,видать партия микросхем бракованая:mad: ,а может она статики боиться? Китайцы блин:(...В пятницу привезут на 16МГц и думаю прорвёмся?.. С Bitcoin-не очень понятно что прописывать,чтобы генерировать монеты...?:(

Stanson 02.04.2011 18:16

Re: USB осциллограф на PIC18F4550
 
Итак, свершилось.

Добрый человек Kharakternyk прислал исходники, программу и драйвер
для обсуждаемой поделки с прошивкой версии 0.2 под Windows.
Помимо базовой функциональности в ней реализован ещё и спектроанализатор.

С его разрешения я всё это выложил у себя.

Welcome:
http://stanson.ch/index.php?page=proj&proj=USB-oscope
В конце странички найдёте и емыл автора и краткое описание.

Архив со всем богатством:
http://stanson.ch/files/USB-oscope/U...-win32-2.0.tgz

radar657 02.04.2011 21:13

Re: USB осциллограф на PIC18F4550
 
А как его открыть или тоже надо компилировать?

Stanson 02.04.2011 21:16

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от radar657 (Сообщение 131564)
А как его открыть или тоже надо компилировать?

Вообще-то всякие винрары и винзипы ещё лет 15 назад прекрасно открывали tgz.
Компилировать не надо.

radar657 02.04.2011 21:18

Re: USB осциллограф на PIC18F4550
 
Я разархивировал а там непонятный файл-может расширение поменять?

Stanson 02.04.2011 21:31

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от radar657 (Сообщение 131566)
Я разархивировал а там непонятный файл-может расширение поменять?

А может архиватор в утиль?
Есть такая штука как гугль.
Там можно узнать практически всё.

radar657 02.04.2011 21:34

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от Stanson (Сообщение 131570)
А может архиватор в утиль?
Есть такая штука как гугль.
Там можно узнать практически всё.

Благодарю уже открыл извините за тупость:) А прошивочка без бутлодера наверно не потянет? или чёто надо менять?

Stanson 02.04.2011 21:41

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от radar657 (Сообщение 131572)
А прошивочка без бутлодера наверно не потянет? или чёто надо менять?

Нет, не потянет. Но на том же месте можно скачать прошивку без бутлоадера со старыми VID:PID, которая потянет.

radar657 02.04.2011 22:37

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от Stanson (Сообщение 131573)
Нет, не потянет. Но на том же месте можно скачать прошивку без бутлоадера со старыми VID:PID, которая потянет.

Ув.Stanson! у меня стоит без бутлодера прошивка ваша переделаная - я за неё имею ввиду потянет она?

Stanson 02.04.2011 22:46

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от radar657 (Сообщение 131578)
Ув.Stanson! у меня стоит без бутлодера прошивка ваша переделаная - я за неё имею ввиду потянет она?

Нужно скачать и прошить заново.
Что из этих 5 слов непонятно?

radar657 02.04.2011 22:51

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от Stanson (Сообщение 131579)
Нужно скачать и прошить заново.
Что из этих 5 слов непонятно?

извините но наверно я тупой:confused: скачать там где вы выложили прошивка под кварц 4МГц без бутлодера? или я опять непонял?

radar657 02.04.2011 22:53

Re: USB осциллограф на PIC18F4550
 
Поэтому наверно железо и драйвер не видит?

Stanson 02.04.2011 23:45

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от radar657 (Сообщение 131580)
извините но наверно я тупой:confused: скачать там где вы выложили прошивка под кварц 4МГц без бутлодера? или я опять непонял?

А что, попробовать никак не возможно? Уже можно было раз 5 скачать и прошить без дурацких вопросов.

Да, нужно скачать прошивку снова оттуда же и прошить заново.

Цитата:

Поэтому наверно железо и драйвер не видит?
Да, поэтому.

Слушайте, вы придуриваетесь что-ли?
Накой чорт спрашивать по 500 раз всякую фигню и незнамо сколько ждать ответа, когда можно за это же время перепробовать все возможные и невозможные варианты, прочитать тонну документации и разобраться во всём что только можно?

Var78 14.04.2011 22:51

Re: USB осциллограф на PIC18F4550
 
Здравствуйте.
Очень понравился ваш осциллограф,хочу собрать.
Нашел pic18f2550 и ad823,а вот TDA8708A не могу найти,может посоветуйте замену?

radar657 14.04.2011 23:36

Re: USB осциллограф на PIC18F4550
 
почитай даташит и подбери аналог в инете всё есть:D

Stanson 15.04.2011 00:03

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от Var78 (Сообщение 132663)
Здравствуйте.
Очень понравился ваш осциллограф,хочу собрать.
Нашел pic18f2550 и ad823,а вот TDA8708A не могу найти,может посоветуйте замену?

Любой быстродействующий (>12МГц) параллельный 8-миразрядный АЦП.

Var78 16.04.2011 21:17

Re: USB осциллограф на PIC18F4550
 
Спасибо за ответ,только у нас в магазинах не знают что такое АЦП,нашел в инете с нужными параметрами штук 10,спрашивал,нечего не было:mad:

GANY 16.04.2011 21:25

Re: USB осциллограф на PIC18F4550
 
Цитата:

Сообщение от Var78 (Сообщение 132807)
Спасибо за ответ,только у нас в магазинах не знают что такое АЦП,нашел в инете с нужными параметрами штук 10,спрашивал,нечего не было:mad:

Да везде так. Никто в магазинах не спец. Даже наоборот, женщины.:D
Так что...

Var78 20.04.2011 23:17

Re: USB осциллограф на PIC18F4550
 
radar657 у вас прибор заработал?

Var78 21.04.2011 23:13

Re: USB осциллограф на PIC18F4550
 
Stanson большое СПАСИБО за хороший прибор.
Сегодня я его запустил под windows.
У меня есть вопрос,я всё настроил по вашему описанию кроме второго пункта
2. Если выполнен пункт 1, то нужно убедится, что на 4 ноге PIC присутствует напряжение отличное от 0 и 5В и оно изменяется при вращении крутилки X offset в морде. Всё остальное тоже не имеет смысла, если не выполнен этот пункт.
на 4 ноге PIC есть напряжение 1,1в,но оно не никак меняется,в морде под windows нету крутилки под названием X offset,перекрутил там все что есть,напряжение не меняется.
Прибор все таки работает,но хочется чтобы все хорошо работала.
Что вы посоветуйте,где ковырять?



Часовой пояс GMT +3, время: 06:56.

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd. Перевод: zCarot