TFT MENU using STM32 || ST7735 1.8" || Multiple Pages || HAL SPI

Поділитися
Вставка
  • Опубліковано 27 лис 2024

КОМЕНТАРІ • 29

  • @emreoztoklu
    @emreoztoklu 4 роки тому +2

    Your explanation is good and Clear to understand, I am appreciate that you create these videos. I enjoy when I watch your project and learn more. I would like to see also a project by u create a touchgfx project and graphics tools like a sinus func to draw it or same like this kind if it’s possible. Thanks for your videos and I hope to see more of them.

    • @ControllersTech
      @ControllersTech  4 роки тому +1

      I don't have any device that supports touchgfx. It's very hard to implement in cheap TFTs given that ST haven't provided proper documentation... Or they did but i don't understand it 😔

  • @ilsonjunior2805
    @ilsonjunior2805 3 місяці тому

    Hi, the video is very good.
    I would like to know if there was a way to create another type of font.
    If so, could you give an example or suggest a tutorial?

  • @linkpad6270
    @linkpad6270 10 місяців тому

    Hi Great demo! Is there anyway to add new fonts to that ST7735 library?

  • @deutrion
    @deutrion 4 роки тому +1

    Nice video thanks for share

  • @paulopecegueiro1694
    @paulopecegueiro1694 4 роки тому +2

    Nice video, have you ever heard about LVGL?

    • @ControllersTech
      @ControllersTech  4 роки тому +1

      Nope. But i just checked it out and it seems interesting. Will definitely work on it..

  • @Vernon9998
    @Vernon9998 2 роки тому +1

    Where do I find the files you mention?

  • @fernando.liozzi.41878
    @fernando.liozzi.41878 4 роки тому +1

    Great tutorial, thanks!!!!!!

  • @Red_Fang.
    @Red_Fang. Рік тому

    Hello, Excuse me, i want to display the RTC Clock and Date in the main menu, can you help me ? and also i want to implement my sleep mode on my main menu, can you help me ?

  • @shivamsharma-dd1qd
    @shivamsharma-dd1qd 11 місяців тому

    I'm currently working on a project with a 2.4-inch display and need larger fonts. Could you please provide more font options, especially ones with larger sizes?

  • @muhitasraf1807
    @muhitasraf1807 3 роки тому

    How can I do the same things with Arduino UNO or Mega?

  • @skvalavideo
    @skvalavideo 2 роки тому

    Sir can you plz explain how to print a variable contains integer value which function I used to do so.

    • @ControllersTech
      @ControllersTech  2 роки тому

      Convert it to character using sprintf function. Then print it

    • @skvalavideo
      @skvalavideo 2 роки тому

      @@ControllersTech ok it's work thanks

  • @chris-tal
    @chris-tal 4 роки тому

    I wonder if ST's TouchGFX can be used with these kind of SPI interfaced displays. Have you ever tried it?

    • @ControllersTech
      @ControllersTech  4 роки тому +2

      I haven't tried it but i have heard that it can be used. I'll try to work on it

    • @naveensiva170
      @naveensiva170 Рік тому

      @@ControllersTech Any updates on this? Does TouchGFX support ST7735

    • @ControllersTech
      @ControllersTech  Рік тому +2

      Yes there is a video about it in the touchgfx playlist.
      Not 7735, but ili9341..
      You can use same method for 7735 also.

  • @AfricanTimeMeal
    @AfricanTimeMeal 4 роки тому

    Awesome !

  • @manofmesopotamia7602
    @manofmesopotamia7602 3 роки тому

    I wish you have tutorials on programming stm32f103c8t6 using registers on Keil☺

    • @ControllersTech
      @ControllersTech  3 роки тому +1

      Well i am thinking about uploading the same code for 103c8 also. But I can't create videos for it. The logic will be similar to f4 just minor changes in the code..

    • @manofmesopotamia7602
      @manofmesopotamia7602 3 роки тому

      @@ControllersTech
      I already highly appreciate your efforts ☺️

  • @liamferro7123
    @liamferro7123 2 роки тому

    lcd i2c MENU?😀

  • @liamferro7123
    @liamferro7123 2 роки тому

    #define TRIAC_PULSE_WIDTH 500 // Duration of TRIAC trigger pulse in µs

    lcd_init();

    lcd_send_cmd (0x80|0x00);
    lcd_send_string("HELLO WORLD");

    lcd_send_cmd (0x80|0x40);
    lcd_send_string("LCD 20x4 DEMO");

    lcd_send_cmd (0x80|0x1C);
    lcd_send_string("BY");

    lcd_send_cmd (0x80|0x54);
    lcd_send_string("powertechnologies");

    void timer1_init( void )
    {
    __HAL_RCC_TIM1_CLK_ENABLE(); // Enable Timer 1 clock
    TIM1->CR1 = 0x0088; // Auto-reload, One-Pulse-Mode
    TIM1->CR2 = 0x0000; // Idle-state configuration
    TIM1->SMCR = 0x0066; // Trigger-Mode, Timer input 2
    TIM1->DIER = 0x0000; // Disable interrupts
    TIM1->SR = 0x0000; // Clear status register
    TIM1->EGR = 0x0000; // Clear event generation register
    TIM1->CCMR1 = 0x0178; // OC1: PWM2-Mode, Preload, IC2: IC2 on TI2
    TIM1->CCMR2 = 0x0000; // OC3/OC4, IC3/IC4 off
    TIM1->CCER = 0x00A1; // OC1: On, AH; IC2: On, Both edges
    TIM1->CNT = 0; // Clear timer 1 counter
    TIM1->PSC = 168-1; // Set prescaler to 168
    TIM1->ARR = 0x0000; // Initialize Auto-reload register
    TIM1->RCR = 0x0000; // Clear repetition counter
    TIM1->CCR1 = 0x0000; // Initialize Capture/Compare register 1
    TIM1->CCR2 = 0x0000; // Clear Capture/Compare register 2
    TIM1->CCR3 = 0x0000; // Clear Capture/Compare register 3
    TIM1->CCR4 = 0x0000; // Clear Capture/Compare register 4
    TIM1->BDTR = 0x8000; // Main output enable
    TIM1->DCR = 0x0000; // Clear DMA configuration (DMA not needed)
    // TIM1->DMAR = ......;
    TIM1->CR1 |= 0x0001; // Timer 1 Enable
    }

    void gpio_init( void )
    {
    __HAL_RCC_GPIOE_CLK_ENABLE(); // Enable GPIOE clock
    GPIOE->MODER = 0x00880000; // Enable PE9/PE11 alternate function mode
    GPIOE->AFR[1] = 0x00001010; // Select PE9/PE11 alternate function AF1
    GPIOE->AFR[0] = 0x00000000; // Clear AFRL
    GPIOE->OTYPER = 0x00000000; // Set all outputs to push-pull mode (default)
    GPIOE->OSPEEDR = 0x00000000; // Set all outputs to low-speed (default)
    GPIOE->PUPDR = 0x00000000; // Disable all pull-ups and pull-downs
    }


    void set_alpha( int alpha )
    {
    TIM1->CCR1 = alpha;
    TIM1->ARR = alpha + TRIAC_PULSE_WIDTH;
    }
    I use STM32F429ZI and stmcube ide to write the code. I have activate the timer 1 (ch1 at output compare PE9 and ch2 input capture PE11 ).
    On PE11 i put a quare wave of 50 hz and in the output(PE9 i have the pulses every rising and falling edges.)The lcd works very fine (i2c but i have tried also spi and it works.) but when i connect the lcd to send strings(for example when i write lcd init(), the timer output(PE9 ) go up at 3.3v and the pulse misses.

    Can you help me please? if you want more information , i can be more clear.

    • @rajdeeproychowdhury7301
      @rajdeeproychowdhury7301 2 роки тому

      Hi..Liam Ferro
      I am rajdeep from india.I am using stm32f429zi nucleo board.I want to use ethernet hardware configuration on that board with lan8742. but could not used it.If you have any tutorials then please help me.

  • @总裁大人-c8r
    @总裁大人-c8r 4 роки тому +2

    大佬牛逼