[STM32L1] STM8L152的段式液晶驱动程序

[复制链接]
1820|4
 楼主| quray1985 发表于 2016-7-14 20:48 | 显示全部楼层 |阅读模式
  1. #include "stm8l15x.h"
  2. void display_LCD(unsigned int temp);
  3. void delay(unsigned int time);



  4. void main(void)
  5. {  
  6.     unsigned int  temp;
  7.     temp=0;
  8.     CLK_PeripheralClockConfig(CLK_Peripheral_RTC, ENABLE);   //使能实时时钟   
  9.     CLK_PeripheralClockConfig(CLK_Peripheral_LCD, ENABLE);   //使能LCD时钟   
  10.     CLK_RTCClockConfig(CLK_RTCCLKSource_HSI,CLK_RTCCLKDiv_8);   //选择RTC时钟源
  11.     LCD_Init(LCD_Prescaler_64,LCD_Divider_16,LCD_Duty_1_4,LCD_Bias_1_3,LCD_VoltageSource_External );    //LCD初始化   
  12.     delay(10);

  13.     LCD_PortMaskConfig(LCD_PortMaskRegister_1,0XFE);  // seg 9,10,11,12,13,14,15为seg口   
  14.     LCD_PortMaskConfig(LCD_PortMaskRegister_2,0X3F);  // seg 16,17,18,19,20,21,为seg口

  15.     LCD_ContrastConfig(LCD_Contrast_Level_3);             //配置LCD的对比度
  16.     LCD_DeadTimeConfig(LCD_DeadTime_0);                  // 配置LCD液晶的死区时间
  17.     LCD_PulseOnDurationConfig(LCD_PulseOnDuration_1);    // 配置LCD脉冲持续时间。

  18.     LCD_Cmd(ENABLE);   //使能LCD控制器

  19.   while (1)
  20.   {   
  21.        display_LCD(temp);
  22.             temp++;
  23.             if(temp==100)
  24.               temp=0;      
  25.   }
  26. }
  27. //////**********************************************************************//////////


  28. //////*****************************LCD显示函数*****************************//////////
  29. void display_LCD(unsigned int temp)
  30. {
  31.      unsigned int shi,ge;
  32.               shi=temp/10;
  33.               ge=temp%10;

  34.     //********************十位显示********************//////////
  35.        switch(shi)

  36.        {
  37.         case 1:
  38.            {
  39.                              //显示十位1     
  40.                //   LCD_WriteRAM(LCD_RAMRegister_5,0X40);
  41.                   assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  42.                   LCD->RAM[LCD_RAMRegister_5] = 0x40|(LCD->RAM[LCD_RAMRegister_5]);
  43.                  // LCD_WriteRAM(LCD_RAMRegister_12,0X40);
  44.                   assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  45.                   LCD->RAM[LCD_RAMRegister_12] = 0x40|(LCD->RAM[LCD_RAMRegister_12]);
  46.                   break;
  47.           }
  48.        case 2:
  49.         {
  50.                               //显示十位2
  51.                //   LCD_WriteRAM(LCD_RAMRegister_2,0X08);
  52.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  53.           LCD->RAM[LCD_RAMRegister_2] = 0x08|(LCD->RAM[LCD_RAMRegister_2]);
  54.                 //  LCD_WriteRAM(LCD_RAMRegister_5,0X80);
  55.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  56.           LCD->RAM[LCD_RAMRegister_5] = 0x80|(LCD->RAM[LCD_RAMRegister_5]);
  57.                  // LCD_WriteRAM(LCD_RAMRegister_9,0X04);  
  58.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  59.           LCD->RAM[LCD_RAMRegister_9] = 0x04|(LCD->RAM[LCD_RAMRegister_9]);
  60.                  // LCD_WriteRAM(LCD_RAMRegister_12,0XC0);  
  61.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  62.           LCD->RAM[LCD_RAMRegister_12] = 0xC0|(LCD->RAM[LCD_RAMRegister_12]);
  63.                   break;
  64.         }
  65.        case 3:
  66.        {
  67.                             //显示十位3
  68.                  // LCD_WriteRAM(LCD_RAMRegister_2,0X08);
  69.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  70.           LCD->RAM[LCD_RAMRegister_2] = 0x08|(LCD->RAM[LCD_RAMRegister_2]);         
  71.                  // LCD_WriteRAM(LCD_RAMRegister_5,0X40);
  72.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  73.           LCD->RAM[LCD_RAMRegister_5] = 0x40|(LCD->RAM[LCD_RAMRegister_5]);         
  74.                  // LCD_WriteRAM(LCD_RAMRegister_9,0X04);
  75.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  76.           LCD->RAM[LCD_RAMRegister_9] = 0x04|(LCD->RAM[LCD_RAMRegister_9]);                  
  77.                  // LCD_WriteRAM(LCD_RAMRegister_12,0XC0);   
  78.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  79.           LCD->RAM[LCD_RAMRegister_12] = 0xC0|(LCD->RAM[LCD_RAMRegister_12]);         
  80.                   break;
  81.        }
  82.        case 4:
  83.        {
  84.                           //显示十位4   
  85.                //   LCD_WriteRAM(LCD_RAMRegister_5,0X40);  
  86.            assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  87.            LCD->RAM[LCD_RAMRegister_5] = 0x40|(LCD->RAM[LCD_RAMRegister_5]);  
  88.                  // LCD_WriteRAM(LCD_RAMRegister_9,0X0C);  
  89.            assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  90.           LCD->RAM[LCD_RAMRegister_9] = 0x0C|(LCD->RAM[LCD_RAMRegister_9]);                  
  91.                 //  LCD_WriteRAM(LCD_RAMRegister_12,0X40);  
  92.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  93.           LCD->RAM[LCD_RAMRegister_12] = 0x40|(LCD->RAM[LCD_RAMRegister_12]);                  
  94.                   break;
  95.        }
  96.        case 5:
  97.        {
  98.                          //显示十位5
  99.                  // LCD_WriteRAM(LCD_RAMRegister_2,0X08);
  100.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  101.           LCD->RAM[LCD_RAMRegister_2] = 0x08|(LCD->RAM[LCD_RAMRegister_2]);            
  102.                   //LCD_WriteRAM(LCD_RAMRegister_5,0X40);
  103.             assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  104.            LCD->RAM[LCD_RAMRegister_5] = 0x40|(LCD->RAM[LCD_RAMRegister_5]);         
  105.                //   LCD_WriteRAM(LCD_RAMRegister_9,0X0C);
  106.             assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  107.           LCD->RAM[LCD_RAMRegister_9] = 0x0C|(LCD->RAM[LCD_RAMRegister_9]);            
  108.                  // LCD_WriteRAM(LCD_RAMRegister_12,0X80);  
  109.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  110.           LCD->RAM[LCD_RAMRegister_12] = 0x80|(LCD->RAM[LCD_RAMRegister_12]);            
  111.                   break;

  112.        }


 楼主| quray1985 发表于 2016-7-14 20:49 | 显示全部楼层
  1. case 6:
  2.          {
  3.                            //显示十位6
  4.                 //  LCD_WriteRAM(LCD_RAMRegister_2,0X08);  
  5.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  6.           LCD->RAM[LCD_RAMRegister_2] = 0x08|(LCD->RAM[LCD_RAMRegister_2]);                  
  7.                 //  LCD_WriteRAM(LCD_RAMRegister_5,0XC0);
  8.             assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  9.            LCD->RAM[LCD_RAMRegister_5] = 0xC0|(LCD->RAM[LCD_RAMRegister_5]);               
  10.                  // LCD_WriteRAM(LCD_RAMRegister_9,0X0C);
  11.             assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  12.           LCD->RAM[LCD_RAMRegister_9] = 0x0C|(LCD->RAM[LCD_RAMRegister_9]);               
  13.                 //  LCD_WriteRAM(LCD_RAMRegister_12,0X80);   
  14.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  15.           LCD->RAM[LCD_RAMRegister_12] = 0x80|(LCD->RAM[LCD_RAMRegister_12]);              
  16.                   break;
  17.          }
  18.        case 7:
  19.          {
  20.                           //显示十位7   
  21.                 //  LCD_WriteRAM(LCD_RAMRegister_5,0X40);   
  22.             assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  23.            LCD->RAM[LCD_RAMRegister_5] = 0x40|(LCD->RAM[LCD_RAMRegister_5]);              
  24.                //   LCD_WriteRAM(LCD_RAMRegister_12,0XC0);     
  25.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  26.           LCD->RAM[LCD_RAMRegister_12] = 0xC0|(LCD->RAM[LCD_RAMRegister_12]);              
  27.                   break;
  28.          }
  29.        case 8:
  30.          {
  31.                         //显示十位8
  32.                 //  LCD_WriteRAM(LCD_RAMRegister_2,0X08);   
  33.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  34.           LCD->RAM[LCD_RAMRegister_2] = 0x08|(LCD->RAM[LCD_RAMRegister_2]);               
  35.                 //  LCD_WriteRAM(LCD_RAMRegister_5,0XC0);      
  36.             assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  37.            LCD->RAM[LCD_RAMRegister_5] = 0xC0|(LCD->RAM[LCD_RAMRegister_5]);               
  38.                 //  LCD_WriteRAM(LCD_RAMRegister_9,0X0C);      
  39.              assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  40.           LCD->RAM[LCD_RAMRegister_9] = 0x0C|(LCD->RAM[LCD_RAMRegister_9]);              
  41.                //   LCD_WriteRAM(LCD_RAMRegister_12,0XC0);   
  42.            assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  43.           LCD->RAM[LCD_RAMRegister_12] = 0xC0|(LCD->RAM[LCD_RAMRegister_12]);            
  44.                   break;
  45.          }
  46.        case 9:
  47.          {
  48.                         //显示十位9
  49.                 //  LCD_WriteRAM(LCD_RAMRegister_2,0X08);   
  50.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  51.           LCD->RAM[LCD_RAMRegister_2] = 0x08|(LCD->RAM[LCD_RAMRegister_2]);            
  52.                 //  LCD_WriteRAM(LCD_RAMRegister_5,0X40);  
  53.             assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  54.            LCD->RAM[LCD_RAMRegister_5] = 0x40|(LCD->RAM[LCD_RAMRegister_5]);            
  55.                 //  LCD_WriteRAM(LCD_RAMRegister_9,0X0C);  
  56.              assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  57.           LCD->RAM[LCD_RAMRegister_9] = 0x0C|(LCD->RAM[LCD_RAMRegister_9]);               
  58.                 //  LCD_WriteRAM(LCD_RAMRegister_12,0XC0);  
  59.            assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  60.           LCD->RAM[LCD_RAMRegister_12] = 0xC0|(LCD->RAM[LCD_RAMRegister_12]);            
  61.                   break;
  62.          }

  63.      }
  64.    //************************************************************//////  
  65.   //******************个位显示******************************//////  
  66.       switch(ge)

  67.        {
  68.         case 0:
  69.            {
  70.                       //显示个位0   
  71.                 //  LCD_WriteRAM(LCD_RAMRegister_2,0X02);
  72.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  73.           LCD->RAM[LCD_RAMRegister_2] = 0x02|(LCD->RAM[LCD_RAMRegister_2]);            
  74.                 //  LCD_WriteRAM(LCD_RAMRegister_5,0X30);  
  75.            assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  76.           LCD->RAM[LCD_RAMRegister_5] = 0x30|(LCD->RAM[LCD_RAMRegister_5]);         
  77.                 //  LCD_WriteRAM(LCD_RAMRegister_9,0X02);  
  78.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  79.           LCD->RAM[LCD_RAMRegister_9] = 0x02|(LCD->RAM[LCD_RAMRegister_9]);            
  80.                 // LCD_WriteRAM(LCD_RAMRegister_12,0X30);   
  81.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  82.           LCD->RAM[LCD_RAMRegister_12] = 0x30|(LCD->RAM[LCD_RAMRegister_12]);            
  83.                   break;
  84.           }
  85.        case 1:
  86.         {
  87.                     //显示个位1     
  88.                  // LCD_WriteRAM(LCD_RAMRegister_5,0X10);
  89.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  90.           LCD->RAM[LCD_RAMRegister_5] = 0x10|(LCD->RAM[LCD_RAMRegister_5]);         
  91.                  // LCD_WriteRAM(LCD_RAMRegister_12,0X10);
  92.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  93.           LCD->RAM[LCD_RAMRegister_12] = 0x10|(LCD->RAM[LCD_RAMRegister_12]);           
  94.                   break;
  95.         }
  96.        case 2:
  97.        {
  98.                     //显示个位2
  99.                 //  LCD_WriteRAM(LCD_RAMRegister_2,0X02);   
  100.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  101.           LCD->RAM[LCD_RAMRegister_2] = 0x02|(LCD->RAM[LCD_RAMRegister_2]);              
  102.                  // LCD_WriteRAM(LCD_RAMRegister_5,0X20);
  103.            assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  104.           LCD->RAM[LCD_RAMRegister_5] = 0x20|(LCD->RAM[LCD_RAMRegister_5]);              
  105.                 //  LCD_WriteRAM(LCD_RAMRegister_9,0X01);  
  106.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  107.           LCD->RAM[LCD_RAMRegister_9] = 0x01|(LCD->RAM[LCD_RAMRegister_9]);            
  108.                 //  LCD_WriteRAM(LCD_RAMRegister_12,0X30);  
  109.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  110.           LCD->RAM[LCD_RAMRegister_12] = 0x30|(LCD->RAM[LCD_RAMRegister_12]);            
  111.                   break;
  112.        }
  113.        case 3:
  114.        {
  115.                           //显示个位3
  116.                  // LCD_WriteRAM(LCD_RAMRegister_2,0X02);   
  117.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  118.           LCD->RAM[LCD_RAMRegister_2] = 0x02|(LCD->RAM[LCD_RAMRegister_2]);            
  119.                  // LCD_WriteRAM(LCD_RAMRegister_5,0X10);  
  120.             assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  121.           LCD->RAM[LCD_RAMRegister_5] = 0x10|(LCD->RAM[LCD_RAMRegister_5]);            
  122.                 // LCD_WriteRAM(LCD_RAMRegister_9,0X01);  
  123.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  124.           LCD->RAM[LCD_RAMRegister_9] = 0x01|(LCD->RAM[LCD_RAMRegister_9]);              
  125.                 //  LCD_WriteRAM(LCD_RAMRegister_12,0X30);   
  126.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  127.           LCD->RAM[LCD_RAMRegister_12] = 0x30|(LCD->RAM[LCD_RAMRegister_12]);            
  128.                   break;
  129.        }
 楼主| quray1985 发表于 2016-7-14 20:50 | 显示全部楼层
  1. case 4:
  2.        {
  3.                    //显示个位4   
  4.                 //  LCD_WriteRAM(LCD_RAMRegister_5,0X10);
  5.             assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  6.           LCD->RAM[LCD_RAMRegister_5] = 0x10|(LCD->RAM[LCD_RAMRegister_5]);              
  7.                 //  LCD_WriteRAM(LCD_RAMRegister_9,0X03);   
  8.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  9.           LCD->RAM[LCD_RAMRegister_9] = 0x03|(LCD->RAM[LCD_RAMRegister_9]);              
  10.                 //  LCD_WriteRAM(LCD_RAMRegister_12,0X10);   
  11.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  12.           LCD->RAM[LCD_RAMRegister_12] = 0x10|(LCD->RAM[LCD_RAMRegister_12]);            
  13.                   break;

  14.        }
  15.        case 5:
  16.          {
  17.                         //显示个位5
  18.                 //  LCD_WriteRAM(LCD_RAMRegister_2,0X02);   
  19.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  20.           LCD->RAM[LCD_RAMRegister_2] = 0x02|(LCD->RAM[LCD_RAMRegister_2]);               
  21.                 //  LCD_WriteRAM(LCD_RAMRegister_5,0X10);  
  22.             assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  23.           LCD->RAM[LCD_RAMRegister_5] = 0x10|(LCD->RAM[LCD_RAMRegister_5]);               
  24.                 //  LCD_WriteRAM(LCD_RAMRegister_9,0X03);   
  25.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  26.           LCD->RAM[LCD_RAMRegister_9] = 0x03|(LCD->RAM[LCD_RAMRegister_9]);               
  27.                 //  LCD_WriteRAM(LCD_RAMRegister_12,0X20);   
  28.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  29.           LCD->RAM[LCD_RAMRegister_12] = 0x20|(LCD->RAM[LCD_RAMRegister_12]);              
  30.                   break;
  31.          }
  32.        case 6:
  33.          {
  34.                    //显示个位6
  35.                //   LCD_WriteRAM(LCD_RAMRegister_2,0X02);   
  36.            assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  37.           LCD->RAM[LCD_RAMRegister_2] = 0x02|(LCD->RAM[LCD_RAMRegister_2]);               
  38.                //   LCD_WriteRAM(LCD_RAMRegister_5,0X30);     
  39.             assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  40.           LCD->RAM[LCD_RAMRegister_5] = 0x30|(LCD->RAM[LCD_RAMRegister_5]);               
  41.                 //  LCD_WriteRAM(LCD_RAMRegister_9,0X03);     
  42.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  43.           LCD->RAM[LCD_RAMRegister_9] = 0x03|(LCD->RAM[LCD_RAMRegister_9]);               
  44.                //   LCD_WriteRAM(LCD_RAMRegister_12,0X20);   
  45.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  46.           LCD->RAM[LCD_RAMRegister_12] = 0x20|(LCD->RAM[LCD_RAMRegister_12]);              
  47.                   break;
  48.          }
  49.        case 7:
  50.          {
  51.                   //显示个位7   
  52.                //   LCD_WriteRAM(LCD_RAMRegister_5,0X10);  
  53.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  54.           LCD->RAM[LCD_RAMRegister_5] = 0x10|(LCD->RAM[LCD_RAMRegister_5]);               
  55.                //   LCD_WriteRAM(LCD_RAMRegister_12,0X30);      
  56.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  57.           LCD->RAM[LCD_RAMRegister_12] = 0x30|(LCD->RAM[LCD_RAMRegister_12]);              
  58.                   break;
  59.          }
  60.        case 8:
  61.          {
  62.                   //显示个位8
  63.                //   LCD_WriteRAM(LCD_RAMRegister_2,0X02);   
  64.            assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  65.           LCD->RAM[LCD_RAMRegister_2] = 0x02|(LCD->RAM[LCD_RAMRegister_2]);               
  66.                //   LCD_WriteRAM(LCD_RAMRegister_5,0X30);   
  67.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  68.           LCD->RAM[LCD_RAMRegister_5] = 0x30|(LCD->RAM[LCD_RAMRegister_5]);               
  69.                //   LCD_WriteRAM(LCD_RAMRegister_9,0X03);   
  70.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  71.           LCD->RAM[LCD_RAMRegister_9] = 0x03|(LCD->RAM[LCD_RAMRegister_9]);               
  72.                 //  LCD_WriteRAM(LCD_RAMRegister_12,0X30);   
  73.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  74.           LCD->RAM[LCD_RAMRegister_12] = 0x30|(LCD->RAM[LCD_RAMRegister_12]);              
  75.                   break;
  76.          }
  77.        case 9:
  78.          {
  79.                   //显示个位9
  80.                //   LCD_WriteRAM(LCD_RAMRegister_2,0X02);   
  81.            assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_2));
  82.           LCD->RAM[LCD_RAMRegister_2] = 0x02|(LCD->RAM[LCD_RAMRegister_2]);               
  83.                //   LCD_WriteRAM(LCD_RAMRegister_5,0X10);      
  84.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_5));
  85.           LCD->RAM[LCD_RAMRegister_5] = 0x10|(LCD->RAM[LCD_RAMRegister_5]);                 
  86.                //   LCD_WriteRAM(LCD_RAMRegister_9,0X03);     
  87.            assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_9));
  88.           LCD->RAM[LCD_RAMRegister_9] = 0x03|(LCD->RAM[LCD_RAMRegister_9]);               
  89.                //   LCD_WriteRAM(LCD_RAMRegister_12,0X30);     
  90.           assert_param(IS_LCD_RAM_REGISTER(LCD_RAMRegister_12));
  91.           LCD->RAM[LCD_RAMRegister_12] = 0x30|(LCD->RAM[LCD_RAMRegister_12]);               
  92.                  break;
  93.          }
  94.      }
  95. //**********************************************************//////
 楼主| quray1985 发表于 2016-7-14 20:50 | 显示全部楼层
  1. delay(500);
  2.   //**********************************************************//////
  3.    //***************************清屏***************************//////
  4.                   LCD_WriteRAM(LCD_RAMRegister_2,0X00);   
  5.                   LCD_WriteRAM(LCD_RAMRegister_5,0X00);        
  6.                   LCD_WriteRAM(LCD_RAMRegister_9,0X00);            
  7.                   LCD_WriteRAM(LCD_RAMRegister_12,0X00);  
  8. //**********************************************************//////   
  9. }

  10. //////*********************************延时函数*********************************//////
  11. void delay(unsigned int time)
  12. {unsigned int i,j;
  13.    for(i=0;i<255;i++)
  14.      for(j=time;j>0;j--);
  15. }

wahahaheihei 发表于 2016-7-14 22:38 | 显示全部楼层
底层的驱动写好后,在主函数调用就显得非常简单了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

156

主题

1488

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部