📄 display.lst
字号:
724 1 rgb2=r>>3;
725 1 rgb=rgb2<<11;
726 1 rgb2=g>>2;
727 1 rgb=rgb|rgb2<<5;
728 1 rgb2=b>>3;
729 1 rgb=rgb|rgb2;
730 1 return rgb;
731 1
732 1 }
733
734
735 /*----------------------------------------------------------------
736 SET WHOLE SCREEN sub program
737 -----------------------------------------------------------------*/
738 void set_whole_screen()
739 {
740 1 D0=0;
741 1 D8=0;
742 1 W_C(0x4E);
743 1
744 1 W_D(0x00);
745 1 W_C(0x4F);
746 1 W_D(0x0000);
747 1 W_C(0X22);
748 1
749 1 }
750
751
752 /*----------------------------------------------------------------
753 DISPLAY RED sub program
754 -----------------------------------------------------------------*/
755 void display_red()//red
756 {
757 1
758 1
759 1 uchar i;
760 1 unsigned int k;
761 1
762 1 set_whole_screen();
763 1 D0=0;
764 1 D8=0;
765 1 for(k=0;k<320;k++)
766 1 for(i=0;i<240;i++)
767 1 {
768 2 W_D(0xfc00);
769 2 }
770 1 D0=0;
771 1 D8=0;
772 1 }
773
774
775 /*----------------------------------------------------------------
776 DISPLAY GREEN sub program
777 -----------------------------------------------------------------*/
778
C51 COMPILER V7.01 DISPLAY 11/16/2007 15:52:11 PAGE 17
779 void display_green()//green
780 {
781 1 uchar i;
782 1 unsigned int k;
783 1
784 1 set_whole_screen();
785 1 D0=0;
786 1 D8=1;
787 1 for(k=0;k<320;k++)
788 1 for(i=0;i<240;i++)
789 1 {
790 2 W_D(0x03e0);
791 2
792 2 }
793 1 D0=0;
794 1 D8=0;
795 1 }
796
797 /*----------------------------------------------------------------
798 DISPLAY BLUE sub program
799 -----------------------------------------------------------------*/
800
801 void display_blue()//blue
802 {
803 1 uchar i;
804 1 unsigned int k;
805 1
806 1 set_whole_screen();
807 1 D0=1;
808 1 D8=0;
809 1 for(k=0;k<320;k++)
810 1 for(i=0;i<240;i++)
811 1 {
812 2 W_D(0x1f);
813 2
814 2 }
815 1 D0=0;
816 1 D8=0;
817 1 }//end sub
818
819
820 /*----------------------------------------------------------------
821 DISPLAY WHITE sub program
822 -----------------------------------------------------------------*/
823 void display_white()//white
824 {
825 1 uchar i;
826 1 unsigned int k;
827 1
828 1 set_whole_screen();
829 1
830 1
831 1 for(k=0;k<320;k++)
832 1 for(i=0;i<240;i++)
833 1 {
834 2 W_D(0xffff);
835 2
836 2 }
837 1
838 1 }//end sub
839
840
C51 COMPILER V7.01 DISPLAY 11/16/2007 15:52:11 PAGE 18
841 /*----------------------------------------------------------------
842 DISPLAY BLACK+SHAPE sub program
843 -----------------------------------------------------------------*/
844 void display_black()//black+绿色的框,作为边界确认
845 {
846 1 uchar i;
847 1 unsigned int k;
848 1
849 1 set_whole_screen();
850 1 D0=0;
851 1 D8=0;
852 1 for(k=0;k<320;k++)
853 1 for(i=0;i<240;i++)
854 1 {
855 2 W_D(0x00);
856 2
857 2 }
858 1
859 1 }
860
861
862 /*----------------------------------------------------------------
863 CLEAR DISPLAY sub program
864 -----------------------------------------------------------------*/
865 void display_clear()//clear
866 {
867 1 unsigned char i,ii;
868 1 set_whole_screen();
869 1
870 1 for(ii=0;ii<32;ii++)
871 1 for(i=0;i<240;i++)
872 1 W_D(RGB(254,0,0));//red
873 1
874 1 for(ii=0;ii<32;ii++)
875 1 for(i=0;i<240;i++)
876 1 W_D(RGB(0,254,0));//g
877 1
878 1 for(ii=0;ii<32;ii++)
879 1 for(i=0;i<240;i++)
880 1 W_D(RGB(0,0,254));//b
881 1
882 1 for(ii=0;ii<32;ii++)
883 1 for(i=0;i<240;i++)
884 1 W_D(RGB(0,254,254));//b+g
885 1
886 1 for(ii=0;ii<32;ii++)
887 1 for(i=0;i<240;i++)
888 1 W_D(RGB(254,0,254));//r+b
889 1
890 1
891 1 for(ii=0;ii<32;ii++)
892 1 for(i=0;i<240;i++)
893 1 W_D(RGB(254,254,0));//r+g
894 1
895 1
896 1 for(ii=0;ii<32;ii++)
897 1 for(i=0;i<240;i++)
898 1 W_D(RGB(0,0,0));//black
899 1
900 1 for(ii=0;ii<32;ii++)
901 1 for(i=0;i<240;i++)
902 1 W_D(RGB(254,254,254));//white
C51 COMPILER V7.01 DISPLAY 11/16/2007 15:52:11 PAGE 19
903 1
904 1
905 1 for(ii=0;ii<32;ii++)
906 1 for(i=0;i<240;i++)
907 1 W_D(RGB(0,0,0));//black
908 1
909 1 for(ii=0;ii<32;ii++)
910 1 for(i=0;i<240;i++)
911 1 W_D(RGB(254,254,254));//white
912 1 }//end sub
913
914
915 /*----------------------------------------------------------------
916 DISPLAY PIXEL sub program
917 -----------------------------------------------------------------*/
918 void set_pixel(unsigned int x,unsigned int y)
919 {
920 1 uint value;
921 1 value=x&0x00ff;
922 1 if(x>=240)x=240-1;
923 1 if(y>=320)y=320-1;
924 1 CMD(0x4E, x);
925 1 CMD(0x4F, y);
926 1 CMD(0x22, 0xffff);
927 1
928 1
929 1
930 1 }
931
932
933 /*----------------------------------------------------------------
934 TEST PIXEL sub program
935 -----------------------------------------------------------------*/
936 void test_pixel2()
937 {
938 1 unsigned int a;
939 1 for(a=0;a<320;a++)
940 1 {
941 2 if(a<240)
942 2 {
943 3 W_C(0x4e);
944 3 W_D(a);
945 3 }
946 2 else
947 2 {
948 3 W_C(0x4e);
949 3 W_D(120);
950 3 }
951 2 W_C(0x4f);
952 2 W_D(a);
953 2
954 2 W_C(0X22);
955 2
956 2 W_D(0xffFF);
957 2 }
958 1 }
959
960
961 void write_picdata(uint value)
962 {
963 1 W_D(value);
964 1 }
C51 COMPILER V7.01 DISPLAY 11/16/2007 15:52:11 PAGE 20
965 #if INTERFACE_16BIT
966 void write_picdata1(uchar vdata1,uchar vdata2)
967 {
968 1
969 1 LCM_RS=1;
970 1 lcm_cs(0);
971 1 OUTPORT_H=vdata2;
972 1 OUTPORT_L=vdata1;
973 1 LCM_WR=0;
974 1 LCM_WR=1;
975 1 lcm_cs(1);
976 1 }
977
978 #elif INTERFACE_8BIT
void write_picdata1(uchar vdata1,uchar vdata2)
{
LCM_RS=1;
lcm_cs(0);
OUTPORT_L=vdata2;
LCM_WR=0;
LCM_WR=1;
OUTPORT_L=vdata1;
LCM_WR=0;
LCM_WR=1;
lcm_cs(1);
}
#else
#error write_picdata1(uchar vdata1,uchar vdata2) DON'T SET INTERFACE
#endif
995
996
997 void dis_RGB(void)
998 {
999 1 display_green();//
1000 1 delay10ms(2200);
1001 1 // display_blue();//
1002 1 // delay10ms(2000);
1003 1 // display_red();//
1004 1 // delay10ms(2000);
1005 1 // display_white();//
1006 1 // delay10ms(2000);
1007 1 display_black();//
1008 1 delay10ms(2000);
1009 1 // display_clear();//
1010 1 }
1011
1012 uchar LCM_SETUP_REG(uchar *p)
1013 {
1014 1 if((*(p+2)<0x100)&&*(p+2)>=0)
1015 1 { W_C(*(p+2));
1016 2 W_D_HL(*(p+6),*(p+7));
1017 2 }
1018 1 else
1019 1 return 0;
1020 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1037 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
C51 COMPILER V7.01 DISPLAY 11/16/2007 15:52:11 PAGE 21
PDATA SIZE = ---- ----
DATA SIZE = 3 3
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -