Пультоскоп на Arduino 27МГц!!!

D.I.M
Offline
Зарегистрирован: 14.03.2016

bpl, можете не обращать на это внимания, все прекрасно работает. Рад был помочь.

Joiner
Offline
Зарегистрирован: 04.09.2014

bpl, попробуйте тестовый скетч для дисплея. Он у меня работал на всех дисплеях 5110 без преобразователя уровней. Здесь нет ни каких библиотек, запускается сам по себе, только ножки правильно укажите. Если будет работать, значит дисплей исправный.

[code]

//Function: This procedure applies to the Arduino driver NOKIA 5110 LCD.
//Time:September 4,2012
#define PIN_SCE   7
#define PIN_RESET 6
#define PIN_DC    5
#define PIN_SDIN  4
#define PIN_SCLK  3

#define LCD_C     LOW
#define LCD_D     HIGH
int count=0;
char dat[4];
char disp_tab[]={'0','1','2','3','4','5','6','7','8','9'};
#define LCD_X     84
#define LCD_Y     48
char buf[72]="A_simple_example_of_interfacing_with_the_84_x_48_pixel_Nokia_3310_LCD!!";
static const byte ASCII[][5] =
{
 {0x00, 0x00, 0x00, 0x00, 0x00} // 20  
,{0x00, 0x00, 0x5f, 0x00, 0x00} // 21 !
,{0x00, 0x07, 0x00, 0x07, 0x00} // 22 "
,{0x14, 0x7f, 0x14, 0x7f, 0x14} // 23 #
,{0x24, 0x2a, 0x7f, 0x2a, 0x12} // 24 $
,{0x23, 0x13, 0x08, 0x64, 0x62} // 25 %
,{0x36, 0x49, 0x55, 0x22, 0x50} // 26 &
,{0x00, 0x05, 0x03, 0x00, 0x00} // 27 '
,{0x00, 0x1c, 0x22, 0x41, 0x00} // 28 (
,{0x00, 0x41, 0x22, 0x1c, 0x00} // 29 )
,{0x14, 0x08, 0x3e, 0x08, 0x14} // 2a *
,{0x08, 0x08, 0x3e, 0x08, 0x08} // 2b +
,{0x00, 0x50, 0x30, 0x00, 0x00} // 2c ,
,{0x08, 0x08, 0x08, 0x08, 0x08} // 2d -
,{0x00, 0x60, 0x60, 0x00, 0x00} // 2e .
,{0x20, 0x10, 0x08, 0x04, 0x02} // 2f /
,{0x3e, 0x51, 0x49, 0x45, 0x3e} // 30 0
,{0x00, 0x42, 0x7f, 0x40, 0x00} // 31 1
,{0x42, 0x61, 0x51, 0x49, 0x46} // 32 2
,{0x21, 0x41, 0x45, 0x4b, 0x31} // 33 3
,{0x18, 0x14, 0x12, 0x7f, 0x10} // 34 4
,{0x27, 0x45, 0x45, 0x45, 0x39} // 35 5
,{0x3c, 0x4a, 0x49, 0x49, 0x30} // 36 6
,{0x01, 0x71, 0x09, 0x05, 0x03} // 37 7
,{0x36, 0x49, 0x49, 0x49, 0x36} // 38 8
,{0x06, 0x49, 0x49, 0x29, 0x1e} // 39 9
,{0x00, 0x36, 0x36, 0x00, 0x00} // 3a :
,{0x00, 0x56, 0x36, 0x00, 0x00} // 3b ;
,{0x08, 0x14, 0x22, 0x41, 0x00} // 3c <
,{0x14, 0x14, 0x14, 0x14, 0x14} // 3d =
,{0x00, 0x41, 0x22, 0x14, 0x08} // 3e >
,{0x02, 0x01, 0x51, 0x09, 0x06} // 3f ?
,{0x32, 0x49, 0x79, 0x41, 0x3e} // 40 @
,{0x7e, 0x11, 0x11, 0x11, 0x7e} // 41 A
,{0x7f, 0x49, 0x49, 0x49, 0x36} // 42 B
,{0x3e, 0x41, 0x41, 0x41, 0x22} // 43 C
,{0x7f, 0x41, 0x41, 0x22, 0x1c} // 44 D
,{0x7f, 0x49, 0x49, 0x49, 0x41} // 45 E
,{0x7f, 0x09, 0x09, 0x09, 0x01} // 46 F
,{0x3e, 0x41, 0x49, 0x49, 0x7a} // 47 G
,{0x7f, 0x08, 0x08, 0x08, 0x7f} // 48 H
,{0x00, 0x41, 0x7f, 0x41, 0x00} // 49 I
,{0x20, 0x40, 0x41, 0x3f, 0x01} // 4a J
,{0x7f, 0x08, 0x14, 0x22, 0x41} // 4b K
,{0x7f, 0x40, 0x40, 0x40, 0x40} // 4c L
,{0x7f, 0x02, 0x0c, 0x02, 0x7f} // 4d M
,{0x7f, 0x04, 0x08, 0x10, 0x7f} // 4e N
,{0x3e, 0x41, 0x41, 0x41, 0x3e} // 4f O
,{0x7f, 0x09, 0x09, 0x09, 0x06} // 50 P
,{0x3e, 0x41, 0x51, 0x21, 0x5e} // 51 Q
,{0x7f, 0x09, 0x19, 0x29, 0x46} // 52 R
,{0x46, 0x49, 0x49, 0x49, 0x31} // 53 S
,{0x01, 0x01, 0x7f, 0x01, 0x01} // 54 T
,{0x3f, 0x40, 0x40, 0x40, 0x3f} // 55 U
,{0x1f, 0x20, 0x40, 0x20, 0x1f} // 56 V
,{0x3f, 0x40, 0x38, 0x40, 0x3f} // 57 W
,{0x63, 0x14, 0x08, 0x14, 0x63} // 58 X
,{0x07, 0x08, 0x70, 0x08, 0x07} // 59 Y
,{0x61, 0x51, 0x49, 0x45, 0x43} // 5a Z
,{0x00, 0x7f, 0x41, 0x41, 0x00} // 5b [
,{0x02, 0x04, 0x08, 0x10, 0x20} // 5c ¥
,{0x00, 0x41, 0x41, 0x7f, 0x00} // 5d ]
,{0x04, 0x02, 0x01, 0x02, 0x04} // 5e ^
,{0x40, 0x40, 0x40, 0x40, 0x40} // 5f _
,{0x00, 0x01, 0x02, 0x04, 0x00} // 60 `
,{0x20, 0x54, 0x54, 0x54, 0x78} // 61 a
,{0x7f, 0x48, 0x44, 0x44, 0x38} // 62 b
,{0x38, 0x44, 0x44, 0x44, 0x20} // 63 c
,{0x38, 0x44, 0x44, 0x48, 0x7f} // 64 d
,{0x38, 0x54, 0x54, 0x54, 0x18} // 65 e
,{0x08, 0x7e, 0x09, 0x01, 0x02} // 66 f
,{0x0c, 0x52, 0x52, 0x52, 0x3e} // 67 g
,{0x7f, 0x08, 0x04, 0x04, 0x78} // 68 h
,{0x00, 0x44, 0x7d, 0x40, 0x00} // 69 i
,{0x20, 0x40, 0x44, 0x3d, 0x00} // 6a j 
,{0x7f, 0x10, 0x28, 0x44, 0x00} // 6b k
,{0x00, 0x41, 0x7f, 0x40, 0x00} // 6c l
,{0x7c, 0x04, 0x18, 0x04, 0x78} // 6d m
,{0x7c, 0x08, 0x04, 0x04, 0x78} // 6e n
,{0x38, 0x44, 0x44, 0x44, 0x38} // 6f o
,{0x7c, 0x14, 0x14, 0x14, 0x08} // 70 p
,{0x08, 0x14, 0x14, 0x18, 0x7c} // 71 q
,{0x7c, 0x08, 0x04, 0x04, 0x08} // 72 r
,{0x48, 0x54, 0x54, 0x54, 0x20} // 73 s
,{0x04, 0x3f, 0x44, 0x40, 0x20} // 74 t
,{0x3c, 0x40, 0x40, 0x20, 0x7c} // 75 u
,{0x1c, 0x20, 0x40, 0x20, 0x1c} // 76 v
,{0x3c, 0x40, 0x30, 0x40, 0x3c} // 77 w
,{0x44, 0x28, 0x10, 0x28, 0x44} // 78 x
,{0x0c, 0x50, 0x50, 0x50, 0x3c} // 79 y
,{0x44, 0x64, 0x54, 0x4c, 0x44} // 7a z
,{0x00, 0x08, 0x36, 0x41, 0x00} // 7b {
,{0x00, 0x00, 0x7f, 0x00, 0x00} // 7c |
,{0x00, 0x41, 0x36, 0x08, 0x00} // 7d }
,{0x10, 0x08, 0x08, 0x10, 0x08} // 7e ←
,{0x78, 0x46, 0x41, 0x46, 0x78} // 7f →
};

void LcdCharacter(char character)
{
  LcdWrite(LCD_D, 0x00);
  for (int index = 0; index < 5; index++)
  {
    LcdWrite(LCD_D, ASCII[character - 0x20][index]);
  }
  LcdWrite(LCD_D, 0x00);
}

void LcdClear(void)
{
  for (int index = 0; index < LCD_X * LCD_Y / 8; index++)
  {
    LcdWrite(LCD_D, 0x00);
  }
}

void LcdInitialise(void)
{
  pinMode(PIN_SCE, OUTPUT);
  pinMode(PIN_RESET, OUTPUT);
  pinMode(PIN_DC, OUTPUT);
  pinMode(PIN_SDIN, OUTPUT);
  pinMode(PIN_SCLK, OUTPUT);
  digitalWrite(PIN_RESET, LOW);
  digitalWrite(PIN_RESET, HIGH);
  LcdWrite(LCD_C, 0x21 );  // LCD Extended Commands.
  LcdWrite(LCD_C, 0xB1 );  // Set LCD Vop (Contrast). 
  LcdWrite(LCD_C, 0x04 );  // Set Temp coefficent. //0x04
  LcdWrite(LCD_C, 0x14 );  // LCD bias mode 1:48. //0x13
  LcdWrite(LCD_C, 0x0C );  // LCD in normal mode.
  LcdWrite(LCD_C, 0x20 );
  LcdWrite(LCD_C, 0x0C );
}

void LcdString(char *characters)
{
  while (*characters)
  {
    LcdCharacter(*characters++);
  }
}

void LcdWrite(byte dc, byte data)
{
  digitalWrite(PIN_DC, dc);
  digitalWrite(PIN_SCE, LOW);
  shiftOut(PIN_SDIN, PIN_SCLK, MSBFIRST, data);
  digitalWrite(PIN_SCE, HIGH);
}
void gotoXY(int x, int y)
{
  LcdWrite( 0, 0x80 | x);  // Column.
  LcdWrite( 0, 0x40 | y);  // Row.  

}
void setup(void)
{
  LcdInitialise();
  LcdClear();
  LcdString("Hello World!");
  LcdString("The count is");
  gotoXY(0, 3);
  LcdString("++++++++++++");
  LcdString("----over----");
  LcdString("--- over ---");
  //LcdString(buf);
}
void dispcountt(int count)
{
  LcdCharacter(disp_tab[count/10000]);
  LcdCharacter(disp_tab[count/1000%10]);
  LcdCharacter(disp_tab[count/100%10]);
  LcdCharacter(disp_tab[count%100/10]);
  LcdCharacter(disp_tab[count%10]);
}
void loop(void)
{
  gotoXY(0, 2);
  LcdString("**");
  gotoXY(16, 2);
  dispcountt(count);
  count++;
  LcdString("**");
  delay(200);
 
  gotoXY(0, 2);
  LcdString("==");
  gotoXY(16, 2);
  dispcountt(count);
  count++;
  LcdString("==");
  delay(200);

}
[/code]

 

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

D.I.M пишет:

bpl , вот скетч с библиотеками, которые у меня работают IDE 1.6.7: https://drive.google.com/file/d/0B4prOxHsTkgtM1NaSmtwWDVoNDQ/view?usp=sharing

 Попробуйте сначала почистить все библиотеки, а эти установите, иначе будут конфликтовать. Еще может возникать конфликт из - за установленой в IDE платы Arduino Robot  мне пришлось удалить все файлы связанные с этой платой.

Привет. Думаю владельцы таких дисплеев вам скажут спасибо!

Выложил вашу версию на сайт проекта.

Если есть фото в работе или видео или ваш сайт прошу выложите или скиньте мне на почту хочу тоже выложить.

srukamiua собака gmail.com

Да и просто интресно помотреть как смотрится!!!

slider
Offline
Зарегистрирован: 17.06.2014
По ускорению вывода на цветной дисплей 320х240 провел много эксперементов 
взял экран 3.2" на ILI9325, к тому же он имеет среднее количество команд Setxy., который есть и в адафруете
    writeRegister16(0x0050, x1); // Set address window ,Horizontal and Vertical RAM Address Position (R50h, R51h, R52h, R53h)
    writeRegister16(0x0051, x2);
    writeRegister16(0x0052, y1);
    writeRegister16(0x0053, y2);
    writeRegister16(0x0020, x ); // Set address counter to top left
    writeRegister16(0x0021, y );
и в утфт -
LCD_Write_COM_DATA(0x20,x1);
LCD_Write_COM_DATA(0x21,y1);
LCD_Write_COM_DATA(0x50,x1);
LCD_Write_COM_DATA(0x52,y1);
LCD_Write_COM_DATA(0x51,x2);
LCD_Write_COM_DATA(0x53,y2);
LCD_Write_COM(0x22); 
 . доработал utft и adafruit .
 
кусочек теста utft ( там где движется и затирается изменяющийся синус ) , зациклил 5 раз - итог utft рисует в 2раза медленней чем адафруит.
Тест №2 такой - точка закрашивает весь экран, и тутже предыдущая с координай -y стирает. На экране видно спускающаяся горизонтальная линия, а фактически точка пробегает экран 2 раза (1раз белый цвет, второй - чёрный)
#include <Adafruit_GFX.h>    // Core graphics library
#include <Adafruit_TFTLCD.h>
#define LCD_CS A3 // Chip Select goes to Analog 3
#define LCD_CD A2 // Command/Data goes to Analog 2
#define LCD_WR A1 // LCD Write goes to Analog 1
#define LCD_RD A0 // LCD Read goes to Analog 0
#define LCD_RESET A4 // Can alternately just connect to Arduino's reset pin

#define  BLACK   0x0000
#define BLUE    0x001F
#define RED     0xF800
#define GREEN   0x07E0
#define CYAN    0x07FF
#define MAGENTA 0xF81F
#define YELLOW  0xFFE0
#define WHITE   0xFFFF

Adafruit_TFTLCD tft(LCD_CS, LCD_CD, LCD_WR, LCD_RD, LCD_RESET);

int long tim,tim2;

void setup()
{
tft.reset();
uint16_t identifier = 0x9325; // Включаем насильно, ибо контроллер аналог ILI9325 
  tft.begin(identifier);
}


void loop()
{
  int buf[318];
  int x, x2;
  int y, y2;
  int r, j,i;
tft.setRotation(3);
// Clear the screen and draw the frame
 tft.fillScreen(BLACK);

tim=millis();
/*
// Draw a moving sinewave
for ( j=0; j<239; j++) 
{
   
  for ( i=1; i<319; i++) 
  {   
    tft.drawPixel(i,j, WHITE);
     tft.drawPixel(i,j-1, BLACK);
  }

}
*/
j=0;
while ( j<239)
{
   i=0;
 while ( i<319) 
  {   
    tft.drawPixel(i,j, WHITE);
     tft.drawPixel(i,j-1, BLACK);
    
     i++;
  }
 j++;
}

 
 tim2=millis();

  //myGLCD.fillScr(0, 0, 255);
   tft.fillScreen(BLUE);
 // myGLCD.setColor(255, 0, 0);
 // myGLCD.fillRoundRect(80, 70, 239, 169);
  tft.fillRoundRect(80, 70, 239, 169, 10 , RED);
  

   tft.setCursor(100, 100);
   tft.setTextColor(WHITE);  tft.setTextSize(3);
   tft.println(tim2-tim);
   
  
  delay (10000);
}

 

Уменьшение setxy в в утфт ускоряет его немного, адафруита почти нет - это означает что не в количестве команд основная задержка, а гдето в рассчете и подготовке регистров.
 
Переброс DB0 DB1 с D8 D9 на D0 D1 немного ускоряет без того медленный utft и сильно ускоряет около 20% adafruit
Про то что в 2раза круче 16бит чем 8бит , я бы здесь не сказал, на ассемблере да. К примеру скорость теста 8bit turbo ili9327 равно что 16бит ili9327.  
 
для переброса DB0 DB1 с D8 D9 на D0 D1 необходимо в pin_magic.h
вместо
 #else // Uno w/Breakout board

  #define write8inline(d) {                          \
    PORTD = (PORTD & B00000011) | ((d) & B11111100); \
    PORTB = (PORTB & B11111100) | ((d) & B00000011); \
    WR_STROBE; }
  #define read8inline(result) {                       \
    RD_ACTIVE;                                        \
    DELAY7;                                           \
    result = (PIND & B11111100) | (PINB & B00000011); \
    RD_IDLE; }
  #define setWriteDirInline() { DDRD |=  B11111100; DDRB |=  B00000011; }
  #define setReadDirInline()  { DDRD &= ~B11111100; DDRB &= ~B00000011; }

записать

#else // Uno w/Breakout board ///// изменяем 

  #define write8inline(d) {                          \
    PORTD = d; \
    WR_STROBE; }
  #define read8inline(result) {                       \
    RD_ACTIVE;                                        \
    DELAY7;                                           \
    result = PIND ; \
    RD_IDLE; }
  #define setWriteDirInline() { DDRD =  B11111111; }
  #define setReadDirInline()  { DDRD = B00000000; }

 #endif

и отказаться от вывода всякой инфы в монитор порта   Serial.begin(9600);   Serial.println(F("TFT LCD test"));........

 
 
 
bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

slider Нужно убирать этот дисплей!

Не по ардуиновски получается, теряетс концепция воткнул залил пользуешься.

--Сколько человек разберется кроме вас?

--Сколько захочет себе но будет бомбить вопросами

--и будут такие кто прочитает мануал и не захочет и связываться)))

 

D.I.M
Offline
Зарегистрирован: 14.03.2016

Цитата:

Привет. Думаю владельцы таких дисплеев вам скажут спасибо!

Выложил вашу версию на сайт проекта.

Если есть фото в работе или видео или ваш сайт прошу выложите или скиньте мне на почту хочу тоже выложить.

srukamiua собака gmail.com

Да и просто интресно помотреть как смотрится!!!

bodriy2014, приветствую, прибор сейчас на макете, вечером постараюсь выложить видео.

slider
Offline
Зарегистрирован: 17.06.2014

bodriy2014 пишет:

slider Нужно убирать этот дисплей!

Не по ардуиновски получается, теряетс концепция воткнул залил пользуешься.

--Сколько человек разберется кроме вас?

--Сколько захочет себе но будет бомбить вопросами

--и будут такие кто прочитает мануал и не захочет и связываться)))

Это значит , что проект на цветном tft 2.4 будет заброшен, и развиваться только будет

arduinо+lcd 5110    ?

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

slider пишет:

Это значит , что проект на цветном tft 2.4 будет заброшен, и развиваться только будет

arduinо+lcd 5110    ?

Попробую еще то что на почту предложили и то только потому что прибор у меня собран в корпусе, нужно дать ему шанс.))

Если не получится сделать красиво сменю этот дисплей на другой.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

slider Спасибо за фото.!!!

Добавил на страницу проекта, если нужно могу позже заменить на другие или удалить по вашему желанию.

Okmor
Okmor аватар
Offline
Зарегистрирован: 16.10.2015

Пока собрал и протестировал входной тракт. Цена вопроса 2$.

Пробовал делать на Nokia 5110 - не понравилось. Картинка мелкая и на циферки места не хватает.

Мне понравился дисплей от транзистор-тестера. Заказал себе такой 128х64 35мм х 38мм 5$.

Итого, вместе с Ардуиной, укладываюсь в 10$, что довольно много. Львиная часть цены это дисплей.

 

 

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Okmor

Выбор дисплея конечно дело вкуса, но считаю что делжен обладать такими качествами:

1--Дешевизна и доступность купить

2--скорость отрисовки

3--небольшое количество занимаемых пинов.

4--иметь готовые библиотеки с символами и линией.

Ну и размер хотябы как два 5110

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

VetalST пишет:

Xumuk пишет:

добрый день не могли бы вы еще раз выложить библиотеку для дисплея ls020, заранее благодарен

Вот ардуино ID 0022 уже с библиотекой и примерами  http://yadi.sk/d/sPCSAXbaqB7Ta

Вот библиотека с примерами http://yadi.sk/d/wWKSj1OHqB7jF ее мне скинул форумчанин она работает только с ардуино ID 1.0.5. лежит тут  http://yadi.sk/d/NabTbzKdqB85J.

Подключение дисплея в обеих библиотеках 

 S65_CS_PIN          (8) //PORTB 0
 S65_RST_PIN         (7) // PORTD 7
 S65_RS_PIN          (10)//PORTB 2
 S65_DAT_PIN         (11)//PORTB 3
 S65_CLK_PIN         (13)//PORTB 5

На днях должны превезти  дисплея ls020 тогда смогу точно сказать какая лутше.

 

 

окей спасибо, буду ждать

D.I.M
Offline
Зарегистрирован: 14.03.2016

  Всем доброго времени суток. Как и обещал выкладываю видео по работе пультоскопа на OLED I2C дисплее :

https://www.youtube.com/watch?v=0lxe9MmX8kY

Заранее прошу извенить за качество так, как снимал на скорую руку. 

 

karl2233
Offline
Зарегистрирован: 05.07.2015

D.I.M, вполне себе получилось.

а чего такие искажения сигнала? или это так дисплейчик отображает?

D.I.M
Offline
Зарегистрирован: 14.03.2016

karl2233 пишет:

а чего такие искажения сигнала? или это так дисплейчик отображает?

karl2233, спасибо. Полагаю, что искажения из-за звуковой карты ноутбука, сигнал брался с нее. А вот с тем, что сигнал обрезает снизу еще не разобрался((

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

D.I.M пишет:

  Всем доброго времени суток. Как и обещал выкладываю видео по работе пультоскопа на OLED I2C дисплее :

https://www.youtube.com/watch?v=0lxe9MmX8kY

Заранее прошу извенить за качество так, как снимал на скорую руку. 

Классно получилось!!!, и звуковую карту протестировал, сразу видно для меломана не пойдет такая)))

Добавил на страничку ваш скетч и видео.

 

karl2233
Offline
Зарегистрирован: 05.07.2015

оне дихь

 

bpl
Offline
Зарегистрирован: 15.02.2016

Karl двадцать два три три – как дела у вас с освоением кода и добавлением разных ныштяков в пультоскоп. Хотел узнать у вас можно ли в пультоскоп добавить часы чтобы он без дела не простаивал, нажал на кнопочку появились часы удержал кнопку вошел в главное меню пультоскопа в общем как-то так, а то есть такие штуки  часы реального времени DS3231SN и DS1307- I2C батарейка у них своя, подключение три или два пина.

Сам столько кода не скурю, просто так интересуюсь - идея.

karl2233
Offline
Зарегистрирован: 05.07.2015

OOOOOOOHNE

нет освоения.

большое спасибо всемю

если б вы (потому и с маленьклой) знали как это здорово.

ОООООООООООООООООООООООООООНННННННННННННННННН

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

karl2233 пишет:

OOOOOOOHNE

нет освоения.

большое спасибо всемю

если б вы (потому и с маленьклой) знали как это здорово.

ОООООООООООООООООООООООООООНННННННННННННННННН

Ты ента -заканчивай пить среди недели!)))))

karl2233
Offline
Зарегистрирован: 05.07.2015

спасибо, друже!

karl2233
Offline
Зарегистрирован: 05.07.2015

МАМА

у меня только кот остался

рыжый

один

revlerik
Offline
Зарегистрирован: 26.12.2015

bodriy2014 пишет:

D.I.M пишет:

  Всем доброго времени суток. Как и обещал выкладываю видео по работе пультоскопа на OLED I2C дисплее :

https://www.youtube.com/watch?v=0lxe9MmX8kY

Заранее прошу извенить за качество так, как снимал на скорую руку. 

Классно получилось!!!, и звуковую карту протестировал, сразу видно для меломана не пойдет такая)))

Добавил на страничку ваш скетч и видео.

 

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

Пошел заказывать дисплей и ардуино про мини.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

revlerik пишет:

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

Пошел заказывать дисплей и ардуино про мини.

Берите сразу пульт, будет настоящий пультоскоп))))

revlerik
Offline
Зарегистрирован: 26.12.2015

Просто люблю миниатюизацию,и мне для работы будет удобно,ремонтирую частотные преобразователи,и там нужно смотреть сигнал на выходе оптодрайверов,частота 9 кГц,амплитуда 22 вольта,правда двух полюсная,-7 +15.

bpl
Offline
Зарегистрирован: 15.02.2016

Пробовал скетч PULTOSCOPE_128x64_OLED_display.ino  от D.I.M  все работает!!! 

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

revlerik пишет:

Просто люблю миниатюизацию,и мне для работы будет удобно,ремонтирую частотные преобразователи,и там нужно смотреть сигнал на выходе оптодрайверов,частота 9 кГц,амплитуда 22 вольта,правда двух полюсная,-7 +15.

Выше предлагали дисплеи от китайских mp3 плееров, они маленькие как раз вам подойдут.

http://arduino.ru/forum/proekty/pultoskop-na-arduino-27mgts?page=12#comment-176289

Будет как этот прибор

revlerik
Offline
Зарегистрирован: 26.12.2015

bodriy2014 пишет:

revlerik пишет:

Просто люблю миниатюизацию,и мне для работы будет удобно,ремонтирую частотные преобразователи,и там нужно смотреть сигнал на выходе оптодрайверов,частота 9 кГц,амплитуда 22 вольта,правда двух полюсная,-7 +15.

Выше предлагали дисплеи от китайских mp3 плееров, они маленькие как раз вам подойдут.

http://arduino.ru/forum/proekty/pultoskop-na-arduino-27mgts?page=12#comment-176289

Будет как этот прибор

Заказал,и плеер тоже,будем пробовать,правда ждать месяц....

D.I.M
Offline
Зарегистрирован: 14.03.2016

bodriy2014 пишет:

Классно получилось!!!, и звуковую карту протестировал, сразу видно для меломана не пойдет такая)))

Добавил на страничку ваш скетч и видео.

Спасибо, вживую еще лучше выглядит.

revlerik пишет:

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

Пошел заказывать дисплей и ардуино про мини.

Тоже идея запихнуть в маркер)), когда время будет попробую.

bpl пишет:

Пробовал скетч PULTOSCOPE_128x64_OLED_display.ino от D.I.M все работает.

Рад, что у Вас все получилось).

 

 

bpl
Offline
Зарегистрирован: 15.02.2016

D.I.M Спасибо, я тоже рад, в миниатюризации тоже есть свои плюсы, да и последователям наверное будет легче преобразовать ваш скетч под довольно-таки распространенный формат 128x64 с другими размерами экрана, если я правильно понял.

bpl
Offline
Зарегистрирован: 15.02.2016

Для информации: Попалась статья  Arduino и графический дисплей 128x64 с контроллером ST7920   подключение по интерфейсу SPI, интересно он обеспечит необходимую скорость для использования в пультоскопе, SPI займет всего 3 выхода микроконтроллера.

 

D.I.M
Offline
Зарегистрирован: 14.03.2016

bpl пишет:

D.I.M Спасибо, я тоже рад, в миниатюризации тоже есть свои плюсы, да и последователям наверное будет легче преобразовать ваш скетч под довольно-таки распространенный формат 128x64 с другими размерами экрана, если я правильно понял.

Полагаю, что это не составит особого труда, если в адафруит будет библиотека под соответствующий дисплей. 

D.I.M
Offline
Зарегистрирован: 14.03.2016

bpl пишет:

D.I.M Спасибо, я тоже рад, в миниатюризации тоже есть свои плюсы, да и последователям наверное будет легче преобразовать ваш скетч под довольно-таки распространенный формат 128x64 с другими размерами экрана, если я правильно понял.

Полагаю, что это не составит особого труда, если в адафруит будет библиотека под соответствующий дисплей. 

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

bpl пишет:

Для информации: Попалась статья  Arduino и графический дисплей 128x64 с контроллером ST7920   подключение по интерфейсу SPI, интересно он обеспечит необходимую скорость для использования в пультоскопе, SPI займет всего 3 выхода микроконтроллера.

Да это быстрый-хороший дисплей.

Во многих любительских осциллографах используется.

karl2233
Offline
Зарегистрирован: 05.07.2015

эта... другой темы не нашел, так что тут.

27 марта еду в Киев.

если кому чё надо туда-сюда передать пишите.

не украду и у меня не пропадёт.

karl2233
Offline
Зарегистрирован: 05.07.2015

revlerik пишет:

bodriy2014 пишет:

revlerik пишет:

Просто люблю миниатюизацию,и мне для работы будет удобно,ремонтирую частотные преобразователи,и там нужно смотреть сигнал на выходе оптодрайверов,частота 9 кГц,амплитуда 22 вольта,правда двух полюсная,-7 +15.

Выше предлагали дисплеи от китайских mp3 плееров, они маленькие как раз вам подойдут.

http://arduino.ru/forum/proekty/pultoskop-na-arduino-27mgts?page=12#comment-176289

Будет как этот прибор

Заказал,и плеер тоже,будем пробовать,правда ждать месяц....

лажа на картинке какая-то: второй контакт де? =) а так-то да, прикольно.  были б свободные средства, тож заказал бы )))

хотя при моих познаниях в программировании это полный бесполезняк =)

bpl
Offline
Зарегистрирован: 15.02.2016

Ценный опыт: Из за того что курил мало  код, даташиты и научные статьи по пользованию осциллографами, спалил UNO желтую,  дело было так, хотел подать на вход какой ни будь сигнал, под руками ничего не оказалось кроме второго ноутбука (блоки питания ноутбуков подключены от220), UNO подключил от первого по USB а со второго с выхода звуковухи подал сигнал   и тут вслед за облачком зеленоватого дыма душа Атмеги328 отправилась туда где красный модуль5110, что она там шипела я не понял наверное на китайском.

Вывод – не подключайте осциллографы без гальванической развязки куда не попадя.

Joiner
Offline
Зарегистрирован: 04.09.2014

bpl пишет:

Ценный опыт: Из за того что курил мало  код, даташиты и научные статьи по пользованию осциллографами, спалил UNO желтую,  дело было так, хотел подать на вход какой ни будь сигнал, под руками ничего не оказалось кроме второго ноутбука (блоки питания ноутбуков подключены от220), UNO подключил от первого по USB а со второго с выхода звуковухи подал сигнал   и тут вслед за облачком зеленоватого дыма душа Атмеги328 отправилась туда где красный модуль5110, что она там шипела я не понял наверное на китайском.

Вывод – не подключайте осциллографы без гальванической развязки куда не попадя.

Странно......По моим понятиям ни чего не должно было произойти. Блоки питания ноутбуков имеют гальваническую развязку. Какие-то неправильные у Вас ноуты, или Вы сами что-то не туда присоединили.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Joiner пишет:

Странно......По моим понятиям ни чего не должно было произойти. Блоки питания ноутбуков имеют гальваническую развязку. Какие-то неправильные у Вас ноуты, или Вы сами что-то не туда присоединили.

Могло нужен именно ноут НЕ подключенный в розетку на том приборе который питает осцилл.

Или развязка сомого осцилла от ноута, причем полная и по питанию и по сигналу.Не зря недолюбливают профи осциллографические приставки.

Joiner
Offline
Зарегистрирован: 04.09.2014

bodriy2014 пишет:

Могло нужен именно ноут НЕ подключенный в розетку на том приборе который питает осцилл.

Или развязка сомого осцилла от ноута, причем полная и по питанию и по сигналу.Не зря недолюбливают профи осциллографические приставки.

Значит мои понятия не совсем верные. Значит третий провод питающего сетевого провода блока питания куда-то соединен. Наверное это как на корпусе любого системного блока компьютера присутствует напряжение относительно земли. Я надеялся что ноуты от этого избавлены.

Спасибо за предупреждение. Будем знать.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Joiner пишет:

Значит мои понятия не совсем верные. Значит третий провод питающего сетевого провода блока питания куда-то соединен. Наверное это как на корпусе любого системного блока компьютера присутствует напряжение относительно земли. Я надеялся что ноуты от этого избавлены.

Спасибо за предупреждение. Будем знать.

По моим прикидкам тоже избавлены, но сколько я видел хороших мастеров они когда лезут смотреть сигнал то ноут из розетки вынимают!!!

Может кто более шаряший зайдет в ветку и разъяснит, я не имею специального образования в этом вопросе.

Или может он ткнул не туда случайно.(((

У меня например Nano переполюсовку 3 раза терпела горел диод на плате, в четвертый раз полегла сама.

karl2233
Offline
Зарегистрирован: 05.07.2015

если глянуть схему любого ИБП, увидим Y конденсатор через который выход гальванически связан с 220В.

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

поэтому в приборах применяют либо сложные схемы ИБП либо классический транс.

или батарейки.

кстати, это одна из причин почему в лабораторниках ставят классический транс.

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

bodriy2014, да это типовая засада при отсутствии настоящего заземления. Достаточно  посмотреть схему стандартного сетевого фильтра,

в ней обычно есть два  последовательно включённых конденсатора для подавления синфазных помех, их средняя точка предпологается к заземлению. Если реальной земли нет, то половина сетевого напряжения уходит по общей минусовой шине  к другим устройствам. И выжигает их, тут раз в месяц  на форуме кто-нибудь рассказывает эту ситуацию, что при подключенном USB включил в ардуину другой БП (или подключил нагрузку, включенную от другого БП) и ардуина сдохла.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

dimax Спасибо!

Значит не зря у меня стоит в лабораторном блоке питания тяжелый но полностью развязанный железный транс на 50Гц, потому видать я гальваникой еще ничего не спалил)))

Сам люблю питать приборы от компа и лабораторного БП и соединять друг с другом.

Все хотел его на импульсник заменить но руки не доходили, теперь и не дойдут.

Joiner
Offline
Зарегистрирован: 04.09.2014

Но все равно не понимаю как в импульснике есть гальваническая связь с электрической сетью. Там потребителя и высоковольтную часть блока питания РАЗДЕЛЯЕТ трансформатор, хоть и высокочастотный. Обмотки взаимодействуют между собой только магнитным полем. Другой связи нет ни какой. Или я что-то не понимаю?

Связь будет, если каким-нибудь проводом организовать что-то "типо заземление".

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Joiner пишет:

Но все равно не понимаю как в импульснике есть гальваническая связь с электрической сетью. Там потребителя и высоковольтную часть блока питания РАЗДЕЛЯЕТ трансформатор, хоть и высокочастотный. Обмотки взаимодействуют между собой только магнитным полем. Другой связи нет ни какой. Или я что-то не понимаю?

Дайте конкретную схему, чтоб было о чем говорить.

Нужно смотреть, как например драйвер импульсника получает обратную связь о выходном напряжении для стабилизации?

Joiner
Offline
Зарегистрирован: 04.09.2014

bodriy2014 пишет:

Дайте конкретную схему, чтоб было о чем говорить.

Нужно смотреть, как например драйвер импульсника получает обратную связь о выходном напряжении для стабилизации?

Например

Посмотрел много схем импульсников в яндекс картинках, в подавляющем большинстве гальванически развязаны.

bodriy2014 пишет:

............ как например драйвер импульсника получает обратную связь о выходном напряжении для стабилизации?

А во многих вообще обратную связь не получают, а просто стабилизирует на своей низкой стороне.

slider
Offline
Зарегистрирован: 17.06.2014

Joiner, не смотрите что на картинках , смотрите что у вас. Зачастую даже в захудалых дешевых зарядках за полбакса, ставят связывающий кондёр 1-2кв . // Он и может пропустить высокочастотнные помехи, и может просто зарядиться от статики.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Joiner пишет:

Например

////

Ты не видешь суслика? и я не вижу -а он есть!)

Сам посмотрел схемы импульсников, вро-де бы все красиво связи нет, но приборы рогят!(

karl2233
Offline
Зарегистрирован: 05.07.2015

bodriy2014,это не правильная схема.

вот, от ноута НР.

как видим связь есть.