在没有arduino的atmega32上编程电子墨水显示

问题描述 投票:0回答:1

我已经从waveshare购买了eink 1,54显示模块,我想对atmega32进行编程,并设计一个带有此eink按键的gui。我在Eclipse中使用spi编写了一个简单的代码:

  #include <avr/io.h>
  #include <util/delay.h>

  void Inicjacja_spi()
  {
      DDRB = ( 1 << PB5 ) | ( 1 << PB7 ) | ( 1 << PB4 );                                      

      SPCR = ( 1 << SPE ) | ( 1 << MSTR ) | (1<<SPI2X) |( 1 << SPR1 ) | ( 1 << SPR0 );   
  }                            


  void Wyslij_spi(unsigned char bajt)
  {
      SPDR = bajt;                        

      while( ! bit_is_set( SPSR, SPIF ) );
  }


  int main()
  {
      unsigned char bajt[] = {0x04,0x20,0x21,0x22,0x25,0x26,0x27};

      Inicjacja_spi();

      for(int i=0; i<8; i++)
          Wyslij_spi(bajt[i]);

       while(1)
       {
       }
   }

我已经阅读了有关如何通过spi将命令发送到此eink的信息,但这没有用。我是否需要编写复杂的库才能将一些数据发送到显示屏幕?我猜它应该使用简单的命令就能工作,但是也许我做错了什么。如果有人可以告诉我如何将简单的命令写入此内容,因为我不了解这些文档。一个简单的工作示例应该对我有帮助。

c avr spi
1个回答
0
投票

我将首先从显示器制造商的文档开始。

通常,这些设备需要特定的驱动程序,制造商会提供这些驱动程序以及一些示例代码。

显示器本身通常需要一些驱动程序硬件,这是否包含在您的显示模块中?

对不起,由于您没有提供任何有关显示器的信息,除了您从何处购买显示器及其尺寸之外,我无法更具体地说明。

编辑刚刚进行了非常快速的扫描,发现有一个指向使用SPI驱动这些库的库链接-Library source on GIT hub您可能可以对其进行调整,或者从源代码中收集有用的信息。

© www.soinside.com 2019 - 2024. All rights reserved.