HX8347-I_(T)初始化代码

void LCD_Init1(void)
{    
 unsigned int i; 

    GPIO_SetBits(GPIOE, GPIO_Pin_1 );   
    Delay(3000);
    GPIO_ResetBits(GPIOE, GPIO_Pin_1);
    Delay(10000);                      
    GPIO_SetBits(GPIOE, GPIO_Pin_1 );   
    Delay(10000);       
    Delay(10000);
    Delay(10000);   
    Delay(10000);                      
    Delay(10000);   

 LCD_WR_REG(0x2E);LCD_WR_Data(0x89);//89
 LCD_WR_REG(0x29);LCD_WR_Data(0x8F);
 LCD_WR_REG(0x2B);LCD_WR_Data(0x02);
 LCD_WR_REG(0xE2);LCD_WR_Data(0x06);
 LCD_WR_REG(0xE4);LCD_WR_Data(0x01);
 LCD_WR_REG(0xE5);LCD_WR_Data(0x10);//10
 LCD_WR_REG(0xE6);LCD_WR_Data(0x01);
 LCD_WR_REG(0xE7);LCD_WR_Data(0x10);
 LCD_WR_REG(0xE8);LCD_WR_Data(0x52);//70
 LCD_WR_REG(0xF2);LCD_WR_Data(0x00); 
//Driving ability Setting 
 LCD_WR_REG(0xEA);LCD_WR_Data(0x00);
 LCD_WR_REG(0xEB);LCD_WR_Data(0x20);//20
 LCD_WR_REG(0xEC);LCD_WR_Data(0x3C);//3C
 LCD_WR_REG(0xED);LCD_WR_Data(0xC8);
 LCD_WR_REG(0xE9);LCD_WR_Data(0x38);//38
 LCD_WR_REG(0xF1);LCD_WR_Data(0x01);//01    

//Gamma 2.2 Setting 
 LCD_WR_REG(0x40);LCD_WR_Data(0x00); //
 LCD_WR_REG(0x41);LCD_WR_Data(0x10); //
 LCD_WR_REG(0x42);LCD_WR_Data(0x01); //
 LCD_WR_REG(0x43);LCD_WR_Data(0x1D); //
 LCD_WR_REG(0x44);LCD_WR_Data(0x1B); //
 LCD_WR_REG(0x45);LCD_WR_Data(0x38); //
 LCD_WR_REG(0x46);LCD_WR_Data(0x1F); //
 LCD_WR_REG(0x47);LCD_WR_Data(0x68); //
 LCD_WR_REG(0x48);LCD_WR_Data(0x00); //
 LCD_WR_REG(0x49);LCD_WR_Data(0x18); //
 LCD_WR_REG(0x4A);LCD_WR_Data(0x1B); //
 LCD_WR_REG(0x4B);LCD_WR_Data(0x1A); //
 LCD_WR_REG(0x4C);LCD_WR_Data(0x13); //
 LCD_WR_REG(0x50);LCD_WR_Data(0x07); //
 LCD_WR_REG(0x51);LCD_WR_Data(0x24); //
 LCD_WR_REG(0x52);LCD_WR_Data(0x22); //
 LCD_WR_REG(0x53);LCD_WR_Data(0x3E); //
 LCD_WR_REG(0x54);LCD_WR_Data(0x2F); //
 LCD_WR_REG(0x55);LCD_WR_Data(0x3F); //
 LCD_WR_REG(0x56);LCD_WR_Data(0x17); //
 LCD_WR_REG(0x57);LCD_WR_Data(0x60); //
 LCD_WR_REG(0x58);LCD_WR_Data(0x0C); //
 LCD_WR_REG(0x59);LCD_WR_Data(0x05); //
 LCD_WR_REG(0x5A);LCD_WR_Data(0x04); //
 LCD_WR_REG(0x5B);LCD_WR_Data(0x07); //
 LCD_WR_REG(0x5C);LCD_WR_Data(0x1F); //
 LCD_WR_REG(0x5D);LCD_WR_Data(0xCC); // 

//Power Voltage Setting 
 LCD_WR_REG(0x1B);LCD_WR_Data(0x2E);//2e
 LCD_WR_REG(0x1A);LCD_WR_Data(0x02);//02
 LCD_WR_REG(0x24);LCD_WR_Data(0x5f);//61
 LCD_WR_REG(0x25);LCD_WR_Data(0x5c);//5c 
 //****VCOM offset**/// 
 LCD_WR_REG(0x23);LCD_WR_Data(0x53);//59 
 //Power on Setting 
 LCD_WR_REG(0x18);LCD_WR_Data(0x3F);//36
 LCD_WR_REG(0x19);LCD_WR_Data(0x01);
 LCD_WR_REG(0x01);LCD_WR_Data(0x02);
 LCD_WR_REG(0x1F);LCD_WR_Data(0x88);// GAS=1, VOMG=00,  

Delay(1500); LCD_WR_REG(0x1F);LCD_WR_Data(0x80);// GAS=1, VOMG=00, 
Delay(1500); LCD_WR_REG(0x1F);LCD_WR_Data(0x90);// GAS=1, VOMG=00, 
Delay(1500); LCD_WR_REG(0x1F);LCD_WR_Data(0xD4);// GAS=1, VOMG=10, 
Delay(1500); LCD_WR_REG(0x2F);LCD_WR_Data(0x00);// GAS=1, VOMG=00,  

// LCD_WR_REG(0x16);LCD_WR_Data(0x20); 
//262k/65k color selection 
 LCD_WR_REG(0x17);LCD_WR_Data(0x05); //default 0x06 262k color // 0x05 65k color
//SET PANEL
 LCD_WR_REG(0x36);LCD_WR_Data(0x0B); //SS_P, 
//GS_P,REV_P,BGR_P//0B 
//Display ON Setting 
LCD_WR_REG(0x28);LCD_WR_Data(0x38); //GON=1, DTE=1, D=1000 
Delay(12000); 
LCD_WR_REG(0x28);LCD_WR_Data(0x3C); //GON=1, DTE=1, D=1100  

//Set GRAM Area 
 LCD_WR_REG(0x02);LCD_WR_Data(0x00);
 LCD_WR_REG(0x03);LCD_WR_Data(0x00); //Column Start
 LCD_WR_REG(0x04);LCD_WR_Data(0x00);
 LCD_WR_REG(0x05);LCD_WR_Data(0xEF); //Column End
 LCD_WR_REG(0x06);LCD_WR_Data(0x00);
 LCD_WR_REG(0x07);LCD_WR_Data(0x00); //Row Start
 LCD_WR_REG(0x08);LCD_WR_Data(0x01);
 LCD_WR_REG(0x09);LCD_WR_Data(0x3F); //Row End
 LCD_WR_REG(0x22);//LCD_WR_Data(0X00); 

    for(i=0;i<76800;i++)
    {
      LCD_WR_Data(0xEBDDD1);                     //ÓúÚÉ«ÇåÆÁ
    }  
}
void LCD_Init1(void)
{    
 unsigned int i; 

    GPIO_SetBits(GPIOE, GPIO_Pin_1 );   
    Delay(3000);
    GPIO_ResetBits(GPIOE, GPIO_Pin_1);
    Delay(10000);                      
    GPIO_SetBits(GPIOE, GPIO_Pin_1 );   
    Delay(10000);       
    Delay(10000);
    Delay(10000);   
    Delay(10000);                      
    Delay(10000);   

 LCD_WR_REG(0x2E);LCD_WR_Data(0x89);//89
 LCD_WR_REG(0x29);LCD_WR_Data(0x8F);
 LCD_WR_REG(0x2B);LCD_WR_Data(0x02);
 LCD_WR_REG(0xE2);LCD_WR_Data(0x06);
 LCD_WR_REG(0xE4);LCD_WR_Data(0x01);
 LCD_WR_REG(0xE5);LCD_WR_Data(0x10);//10
 LCD_WR_REG(0xE6);LCD_WR_Data(0x01);
 LCD_WR_REG(0xE7);LCD_WR_Data(0x10);
 LCD_WR_REG(0xE8);LCD_WR_Data(0x52);//70
 LCD_WR_REG(0xF2);LCD_WR_Data(0x00); 
//Driving ability Setting 
 LCD_WR_REG(0xEA);LCD_WR_Data(0x00);
 LCD_WR_REG(0xEB);LCD_WR_Data(0x20);//20
 LCD_WR_REG(0xEC);LCD_WR_Data(0x3C);//3C
 LCD_WR_REG(0xED);LCD_WR_Data(0xC8);
 LCD_WR_REG(0xE9);LCD_WR_Data(0x38);//38
 LCD_WR_REG(0xF1);LCD_WR_Data(0x01);//01    

//Gamma 2.2 Setting 
 LCD_WR_REG(0x40);LCD_WR_Data(0x00); //
 LCD_WR_REG(0x41);LCD_WR_Data(0x10); //
 LCD_WR_REG(0x42);LCD_WR_Data(0x01); //
 LCD_WR_REG(0x43);LCD_WR_Data(0x1D); //
 LCD_WR_REG(0x44);LCD_WR_Data(0x1B); //
 LCD_WR_REG(0x45);LCD_WR_Data(0x38); //
 LCD_WR_REG(0x46);LCD_WR_Data(0x1F); //
 LCD_WR_REG(0x47);LCD_WR_Data(0x68); //
 LCD_WR_REG(0x48);LCD_WR_Data(0x00); //
 LCD_WR_REG(0x49);LCD_WR_Data(0x18); //
 LCD_WR_REG(0x4A);LCD_WR_Data(0x1B); //
 LCD_WR_REG(0x4B);LCD_WR_Data(0x1A); //
 LCD_WR_REG(0x4C);LCD_WR_Data(0x13); //
 LCD_WR_REG(0x50);LCD_WR_Data(0x07); //
 LCD_WR_REG(0x51);LCD_WR_Data(0x24); //
 LCD_WR_REG(0x52);LCD_WR_Data(0x22); //
 LCD_WR_REG(0x53);LCD_WR_Data(0x3E); //
 LCD_WR_REG(0x54);LCD_WR_Data(0x2F); //
 LCD_WR_REG(0x55);LCD_WR_Data(0x3F); //
 LCD_WR_REG(0x56);LCD_WR_Data(0x17); //
 LCD_WR_REG(0x57);LCD_WR_Data(0x60); //
 LCD_WR_REG(0x58);LCD_WR_Data(0x0C); //
 LCD_WR_REG(0x59);LCD_WR_Data(0x05); //
 LCD_WR_REG(0x5A);LCD_WR_Data(0x04); //
 LCD_WR_REG(0x5B);LCD_WR_Data(0x07); //
 LCD_WR_REG(0x5C);LCD_WR_Data(0x1F); //
 LCD_WR_REG(0x5D);LCD_WR_Data(0xCC); // 

//Power Voltage Setting 
 LCD_WR_REG(0x1B);LCD_WR_Data(0x2E);//2e
 LCD_WR_REG(0x1A);LCD_WR_Data(0x02);//02
 LCD_WR_REG(0x24);LCD_WR_Data(0x5f);//61
 LCD_WR_REG(0x25);LCD_WR_Data(0x5c);//5c 
 //****VCOM offset**/// 
 LCD_WR_REG(0x23);LCD_WR_Data(0x53);//59 
 //Power on Setting 
 LCD_WR_REG(0x18);LCD_WR_Data(0x3F);//36
 LCD_WR_REG(0x19);LCD_WR_Data(0x01);
 LCD_WR_REG(0x01);LCD_WR_Data(0x02);
 LCD_WR_REG(0x1F);LCD_WR_Data(0x88);// GAS=1, VOMG=00,  

Delay(1500); LCD_WR_REG(0x1F);LCD_WR_Data(0x80);// GAS=1, VOMG=00, 
Delay(1500); LCD_WR_REG(0x1F);LCD_WR_Data(0x90);// GAS=1, VOMG=00, 
Delay(1500); LCD_WR_REG(0x1F);LCD_WR_Data(0xD4);// GAS=1, VOMG=10, 
Delay(1500); LCD_WR_REG(0x2F);LCD_WR_Data(0x00);// GAS=1, VOMG=00,  

// LCD_WR_REG(0x16);LCD_WR_Data(0x20); 
//262k/65k color selection 
 LCD_WR_REG(0x17);LCD_WR_Data(0x05); //default 0x06 262k color // 0x05 65k color
//SET PANEL
 LCD_WR_REG(0x36);LCD_WR_Data(0x0B); //SS_P, 
//GS_P,REV_P,BGR_P//0B 
//Display ON Setting 
LCD_WR_REG(0x28);LCD_WR_Data(0x38); //GON=1, DTE=1, D=1000 
Delay(12000); 
LCD_WR_REG(0x28);LCD_WR_Data(0x3C); //GON=1, DTE=1, D=1100  

//Set GRAM Area 
 LCD_WR_REG(0x02);LCD_WR_Data(0x00);
 LCD_WR_REG(0x03);LCD_WR_Data(0x00); //Column Start
 LCD_WR_REG(0x04);LCD_WR_Data(0x00);
 LCD_WR_REG(0x05);LCD_WR_Data(0xEF); //Column End
 LCD_WR_REG(0x06);LCD_WR_Data(0x00);
 LCD_WR_REG(0x07);LCD_WR_Data(0x00); //Row Start
 LCD_WR_REG(0x08);LCD_WR_Data(0x01);
 LCD_WR_REG(0x09);LCD_WR_Data(0x3F); //Row End
 LCD_WR_REG(0x22);//LCD_WR_Data(0X00); 

    for(i=0;i<76800;i++)
    {
      LCD_WR_Data(0xEBDDD1);                     //ÓúÚÉ«ÇåÆÁ
    }  
}
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!下面是一个基本的 STM32F103C8T6 与 HX711 称重传感器的代码示例: ```c #include "stm32f10x.h" // HX711引脚定义 #define HX711_CLK_PIN GPIO_Pin_0 #define HX711_CLK_GPIO GPIOA #define HX711_DOUT_PIN GPIO_Pin_1 #define HX711_DOUT_GPIO GPIOA // 函数声明 void HX711_Init(void); int32_t HX711_Read(void); // 延时函数 void Delay_us(uint32_t us) { us *= 9; while (us--) { __NOP(); } } // GPIO初始化函数 void GPIO_Init(void) { GPIO_InitTypeDef GPIO_InitStruct; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); GPIO_InitStruct.GPIO_Pin = HX711_CLK_PIN; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_Init(HX711_CLK_GPIO, &GPIO_InitStruct); GPIO_InitStruct.GPIO_Pin = HX711_DOUT_PIN; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IPU; GPIO_Init(HX711_DOUT_GPIO, &GPIO_InitStruct); } // HX711模块初始化 void HX711_Init(void) { GPIO_SetBits(HX711_CLK_GPIO, HX711_CLK_PIN); Delay_us(1); GPIO_ResetBits(HX711_CLK_GPIO, HX711_CLK_PIN); Delay_us(1); } // 读取HX711数据 int32_t HX711_Read(void) { uint32_t count = 0; uint32_t i; while (GPIO_ReadInputDataBit(HX711_DOUT_GPIO, HX711_DOUT_PIN)) { Delay_us(1); } for (i = 0; i < 24; i++) { GPIO_SetBits(HX711_CLK_GPIO, HX711_CLK_PIN); Delay_us(1); count = count << 1; GPIO_ResetBits(HX711_CLK_GPIO, HX711_CLK_PIN); Delay_us(1); if (GPIO_ReadInputDataBit(HX711_DOUT_GPIO, HX711_DOUT_PIN)) { count++; } } GPIO_SetBits(HX711_CLK_GPIO, HX711_CLK_PIN); Delay_us(1); count ^= 0x800000; GPIO_ResetBits(HX711_CLK_GPIO, HX711_CLK_PIN); Delay_us(1); return (int32_t)count; } int main(void) { int32_t weight; GPIO_Init(); HX711_Init(); while (1) { weight = HX711_Read(); // 使用weight进行后续处理,比如打印输出或者其他操作 Delay_us(100000); // 延时100ms } } ``` 这个代码的作用是通过 STM32F103C8T6 板上的 GPIO 与 HX711 模块进行通信,读取称重传感器的数据。请注意,这只是一个基本的示例代码,您可能需要根据具体的需求进行修改和适配。同时,您也需要在 STM32CubeMX 或者其他开发工具中配置相关的引脚和时钟。 希望对您有帮助!如果您有任何其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值