|
樓主 |
發表於 2014-11-21 22:00:00
|
顯示全部樓層
本文章最後由 antlu 於 2014-11-21 10:16 PM 編輯
- void Delay_us(u16 ust)
- {
- while(ust !=0)
- {
- ust--;
- }
- }
- void DelayMs(u16 mst)
- {
- while( mst !=0)
- {
- Delay_us(400);
- mst--;
- }
- }
- /*20141116
- @
- @ LGC 12002 test
- */
- void GPIOinit(void)
- {
- GPIO_Init(LEDPORT,DIN|STB|Clk,GPIO_MODE_OUT_PP_HIGH_FAST);//for LCM driver
- GPIO_Init(PORT_BEEP,STB2,GPIO_MODE_OUT_PP_HIGH_FAST);//for LCM driver
- }
-
- /*
- 20141116 send Databyte
- */
- void Send6961_Data(u8 Dat)
- {
- u8 i;
- GPIO_WriteLow(LEDPORT,STB);
-
- for (i=0;i<8;i++)
- {
- if((Dat & 0x01)!=0)// SER=Dat & 0x80;
- {
- GPIO_WriteHigh(LEDPORT,DIN);
- }
- else
- {
- GPIO_WriteLow(LEDPORT,DIN);
- }
- Dat>>=1;
- GPIO_WriteLow(LEDPORT,Clk);// GPIO_WriteLow(LEDPORT,Clk);
- GPIO_WriteHigh(LEDPORT,Clk);
- }
- GPIO_WriteLow(LEDPORT,STB);
-
-
- }
- /*
- 20141116 send command byte
- */
- void Send6961_Cmd(u8 Dat)
- {
- u8 i;
- GPIO_WriteHigh(LEDPORT,STB);
- GPIO_WriteLow(LEDPORT,STB);
-
- for (i=0;i<8;i++)
- {
- if((Dat & 0x01)!=0)// SER=Dat & 0x80;
- {
- GPIO_WriteHigh(LEDPORT,DIN);
- }
- else
- {
- GPIO_WriteLow(LEDPORT,DIN);
- }
- Dat>>=1;
- GPIO_WriteLow(LEDPORT,Clk);// Clk=0;
- GPIO_WriteHigh(LEDPORT,Clk);
- }
- GPIO_WriteHigh(LEDPORT,STB);
- // GPIO_WriteHigh(PORT_BEEP,BEEP1);
- // GPIO_WriteLow(PORT_BEEP,BEEP1);
- }
- //LED2
- void Send6961_Cmd2(u8 Dat)
- {
- u8 i;
- GPIO_WriteHigh(PORT_BEEP,STB2);
- GPIO_WriteLow(PORT_BEEP,STB2);
-
- for (i=0;i<8;i++)
- {
- if((Dat & 0x01)!=0)// SER=Dat & 0x80;
- {
- GPIO_WriteHigh(LEDPORT,DIN);
- }
- else
- {
- GPIO_WriteLow(LEDPORT,DIN);
- }
- Dat>>=1;
- GPIO_WriteLow(LEDPORT,Clk);// Clk=0;
- GPIO_WriteHigh(LEDPORT,Clk);
- }
- GPIO_WriteHigh(PORT_BEEP,STB2);
- // GPIO_WriteHigh(PORT_BEEP,BEEP1);
- // GPIO_WriteLow(PORT_BEEP,BEEP1);
- }
- void Send6961_Data2(u8 Dat)
- {
- u8 i;
- GPIO_WriteLow(PORT_BEEP,STB2);
- GPIO_WriteLow(PORT_BEEP,STB2);
-
- for (i=0;i<8;i++)
- {
- if((Dat & 0x01)!=0)// SER=Dat & 0x80;
- {
- GPIO_WriteHigh(LEDPORT,DIN);
- }
- else
- {
- GPIO_WriteLow(LEDPORT,DIN);
- }
- Dat>>=1;
- GPIO_WriteLow(LEDPORT,Clk);// Clk=0;
- GPIO_WriteHigh(LEDPORT,Clk);
- }
- GPIO_WriteLow(PORT_BEEP,STB2);
- // GPIO_WriteHigh(PORT_BEEP,BEEP1);
- // GPIO_WriteLow(PORT_BEEP,BEEP1);
- }
- void PT6961_Init(void) // 8bit mode
- {
- DelayMs(200);
- Send6961_Cmd(0x40);//CMD 2 fix address normal mode
- Send6961_Cmd(0xc0);//CMD 3 address=0
- Send6961_Data(0x0);
- Send6961_Data(0x00);
- Send6961_Data(0x00);
- Send6961_Data(0x00);
- Send6961_Cmd(0x02);//CMD 1 6digit 12segment
- Send6961_Cmd(0x89);//CMD 4 display control bright 14/16
- DelayMs(1);
-
- DelayMs(200);
- Send6961_Cmd2(0x40);//CMD 2 fix address normal mode
- Send6961_Cmd2(0xc0);//CMD 3 address=0
- Send6961_Data2(0x0);
- Send6961_Data2(0x00);
- Send6961_Data2(0x00);
- Send6961_Data2(0x00);
- Send6961_Cmd2(0x02);//CMD 1 6digit 12segment
- Send6961_Cmd2(0x89);//CMD 4 display control bright 14/16
- DelayMs(1);
- }
- void DEMO_display(void)
- {
- Send6961_Cmd(0x40);//CMD 2 fix address normal mode
- Send6961_Cmd(0xc0);//CMD 3 address=0
- Send6961_Data(0xf0);//空白
- Send6961_Data(0x86);//0
- Send6961_Data(0xf0);//空白
- Send6961_Data(0xdb);//1
- Send6961_Data(0xf0);//空白
- Send6961_Data(0xcf);//2
- Send6961_Data(0xf0);//空白
- Send6961_Data(0x66);//4
- Send6961_Cmd(0x02);//CMD 1 6digit 12segment
- Send6961_Cmd(0x89);//CMD 4 display control bright 14/16
-
-
- DelayMs(2);
- }
- void DEMO_display1(void)
- {
- Send6961_Cmd2(0x40);//CMD 2 fix address normal mode
- Send6961_Cmd2(0xc0);//CMD 3 address=0
- Send6961_Data2(0xf0);//空白
- Send6961_Data2(0x6d);//5
- Send6961_Data2(0xf0);//空白
- Send6961_Data2(0xfd);//6
- Send6961_Data2(0xf0);//空白
- Send6961_Data2(0x07);//7
- Send6961_Data2(0xf0);//空白
- Send6961_Data2(0x63);//8
- Send6961_Cmd2(0x02);//CMD 1 6digit 12segment
- Send6961_Cmd2(0x89);//CMD 4 display control bright 14/16
- DelayMs(1);
- }
-
- void main(void)
- {
- GPIOinit();//顯示用
- // tim1init();
- // tim4init();
- // rim();
- // Uart1_Init();
- PT6961_Init();
- //PutString("antlu test uart input!!");
- while(1)
- {
-
- DEMO_display();
- DelayMs(1000);
- DEMO_display1();
- DelayMs(2000);
- }
- }
複製代碼
|
-
|