⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ql300spi.lst

📁 MB90092字符叠模块应用 通用视频字符叠加器模块QL300A SPI接口C51源程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.06   QL300SPI                                                              11/23/2007 13:55:54 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE QL300SPI
OBJECT MODULE PLACED IN ql300spi.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ql300spi.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /*视频字符叠加模块(器)spi接口测试程序(仅供参考)
   2          本程序仅提供常用的基本功能,其它功能读者请自行编写
   3          应用产品:QL300A
   4          编译环环境: KEIL C         
   5          简要说明:
   6          本测试程序使用AT89S51,晶振11.0592MHZ
   7            注:读者如果使用更高运行速度请在指令结束插入适当的延时
   8          */
   9          
  10          #include<reg51.h>
  11          #include<intrins.h>
  12          #include<stdio.h>
  13          #include<string.h>
  14          //#include<ql503_spi_public.c>
  15          #define UN  unsigned char
  16          
  17          void csf_main(void);//初始化叠加的默认值
  18          
  19          UN code zfc[]={0,0,0,0,12,0,0,30,0,0,14,0,0,14,0,31,
  20          255,254,31,255,254,24,0,14,24,0,14,24,0,14,24,0,
  21          14,0,0,16,3,255,240,3,255,240,0,12,0,0,12,0,
  22          0,12,0,3,140,0,3,143,252,3,143,252,7,12,0,7,
  23          12,0,7,140,0,15,204,0,15,204,0,28,236,0,28,124,
  24          1,60,63,254,56,15,254,8,0,0,0,0,0,0,0,0};//定
  25          void csf_uart();
  26          sfr16 DPTR=0x82;
  27          sbit    spics=P1^0;
  28          sbit    spidi =P1^1;
  29          sbit    spido =P1^2;
  30          sbit    spiclk=P1^3;
  31          
  32          unsigned char bdata bm;
  33          sbit  bm0=bm^0;
  34          sbit  bm1=bm^1;
  35          sbit  bm2=bm^2;
  36          sbit  bm3=bm^3;
  37          sbit  bm4=bm^4;
  38          sbit  bm5=bm^5;
  39          sbit  bm6=bm^6;
  40          sbit  bm7=bm^7;
  41          void csf_spi(void);//初始化SPI
  42          void  write_1byte(unsigned char x);
  43          void Tx4b(UN a,b,c,d);
  44          void cls(UN ys);//cm1//按指定颜色清屏0-7
  45          void Neiwai_SaoMiao(UN x);//cm2//内外频及扫描方式选择0-1
  46          void hwy(UN  h,l);//cm3//设定水平方向开始显示的位置0-511
  47          void vwy(UN  h,l);//cm4 PAL方式下设定垂直方向开始显示的位置0-511
  48          void zfjj(UN x);//cm5
  49          void size(UN x);//cm6//字符大小,设置指定行的字符大小,size:大小0-3
  50          void Ding_Wei(UN H,L);//cm7 //定位,设置要显示的起始位置H:行号1-16,L:列号1-35
  51          //void Tx_arry(UN  zfc[]);//字符数组的显示
  52          void Tx_nei_ma(UN  nmH,nmL);//cm8//按字符内码显示1字符,nmH:内码高字节,nmL:内码低字节
  53          void MoRen_Color(UN ys);//cm9//设置默认字符颜色,ys高位0-7,低位0-7
  54          void hj(UN x);//cm10//行距设定0-7
  55          void bk(UN x);//cm11
C51 COMPILER V7.06   QL300SPI                                                              11/23/2007 13:55:54 PAGE 2   

  56          void yy_ys(UN x);//cm12
  57          void fxg(UN x);//cm13
  58          void yykg(UN x);//cm14
  59          void blinking(UN x);//cm15
  60          void lxfszf();//cm16
  61          
  62          void wcode(UN idata zfc[],UN x);//cm17
  63          //无cm18
  64          void copy_f_r(UN m,n);//cm19
  65          void disram(UN x);//cm20
  66          
  67          void delay(unsigned int x);
  68          void delay_ms(unsigned int nMs);//豪秒级的延时<65535ms,,延时函数读者可根据实际使用编写
  69          //#define addr  0xff
  70          //============================================================================
  71          //主程序
  72          //============================================================================
  73          void  main(void)
  74           {UN i,j,h,a,b,a1,b1;
  75   1       unsigned int old1,new1;
  76   1        csf_spi();
  77   1      delay_ms(200);
  78   1      cls(1);//按蓝色清屏
  79   1      delay_ms(60);//发清屏指令后延时
  80   1      blinking(0);//不闪烁
  81   1      hj(0);//设行距为0
  82   1      hwy(0,10);//设水平位移
  83   1      vwy(0,12);//设垂直位移
  84   1      yy_ys(0);//设阴影颜色为黑色
  85   1      yykg(2);//设强阴影
  86   1      
  87   1      Ding_Wei(2,7);//定位,第2行第7列
  88   1      disram(8);//调出显示用户自定义RAM的8个字符
  89   1      
  90   1      Ding_Wei(3,9);//定位,第3行第9列
  91   1      MoRen_Color(0x16);//改变默认字符颜色为蓝底黄字
  92   1      disram(4);//调出显示用户自定义RAM的8个字符
  93   1      
  94   1      
  95   1      MoRen_Color(0x17);//改变默认字符颜色为蓝底白字
  96   1      Tx_nei_ma(0,0xa0);//按字符内码显示1字符
  97   1      Tx_nei_ma(0,0xa1);//按字符内码显示1字符
  98   1      Tx_nei_ma(0,0xa2);//按字符内码显示1字符
  99   1      Tx_nei_ma(0,0x02);//按字符内码显示1字符
 100   1      Tx_nei_ma(0,0x03);//按字符内码显示1字符
 101   1      
 102   1      yykg(0);////设为无阴影
 103   1      Ding_Wei(4,2);//定位,第4行第2列
 104   1      hj(2);//设行距为2
 105   1      i=0;
 106   1      while(i<15){Tx_nei_ma(0,0x11+i);i++;}//按字符内码循环显示字符
 107   1      
 108   1      
 109   1      Ding_Wei(5,2);//定位,第5行第2列
 110   1      size(2);//设字符大小为2号字
 111   1      zfjj(1);//设字间距为1
 112   1      bk(2);//有背景显示且框架阴影在底边
 113   1      MoRen_Color(0x27);//
 114   1      i=0;
 115   1      while(i<15){Tx_nei_ma(0,0x11+i);i++;}//按字符内码显示字符
 116   1      Ding_Wei(6,2);
 117   1      size(3);
C51 COMPILER V7.06   QL300SPI                                                              11/23/2007 13:55:54 PAGE 3   

 118   1      zfjj(3);
 119   1      //bk(1);//有背景显示且框架阴影在底边
 120   1      yykg(0);//设无阴影
 121   1      
 122   1      MoRen_Color(0x60);
 123   1      
 124   1      i=0;
 125   1      while(i<8){Tx_nei_ma(0,0x11+i);i++;}//按字符内码显示字符
 126   1      
 127   1      bk(0);//有背景显示且框架阴影在底边
 128   1      Ding_Wei(7,2);
 129   1      MoRen_Color(0x17);
 130   1      disram(8);
 131   1      
 132   1      
 133   1      Ding_Wei(7,2);
 134   1      blinking(1);//设闪烁
 135   1      MoRen_Color(0x17);
 136   1      disram(8);
 137   1      wcode(zfc,5);//写入1个用户自定义字符点阵数据(96个字节)到用户RAM 5区;
 138   1      Ding_Wei(7,10);
 139   1      size(3);
 140   1      Tx_nei_ma(0,0xa0);//按字符内码显示1字符
 141   1      copy_f_r(15,6);//复制用户FLASH 15区的点阵数据到指定的用户RAM 6区 。
 142   1      //---------------------------------------------------------
 143   1      Ding_Wei(1,10);
 144   1      lxfszf();//连续发送字符代码显示
 145   1      write_1byte(1);write_1byte(0xce);delay(100);write_1byte(1);write_1byte(0xcf);delay(100);write_1byte(1);wri
             -te_1byte(0xd0);delay(100);
 146   1      write_1byte(1);write_1byte(0x40);delay(100);write_1byte(1);write_1byte(0x41);delay(100);write_1byte(1);wri
             -te_1byte(0x42);delay_ms(3);
 147   1      //------------------------------------------------------------------------
 148   1      Ding_Wei(1,17);Tx_nei_ma(0,0xa0);//按字符内码显示1字符
 149   1       
 150   1       
 151   1       
 152   1       
 153   1        while(1){;}//主循环
 154   1      
 155   1      }
*** WARNING C280 IN LINE 74 OF QL300SPI.C: 'j': unreferenced local variable
*** WARNING C280 IN LINE 74 OF QL300SPI.C: 'h': unreferenced local variable
*** WARNING C280 IN LINE 74 OF QL300SPI.C: 'a': unreferenced local variable
*** WARNING C280 IN LINE 74 OF QL300SPI.C: 'b': unreferenced local variable
*** WARNING C280 IN LINE 74 OF QL300SPI.C: 'a1': unreferenced local variable
*** WARNING C280 IN LINE 74 OF QL300SPI.C: 'b1': unreferenced local variable
*** WARNING C280 IN LINE 75 OF QL300SPI.C: 'old1': unreferenced local variable
*** WARNING C280 IN LINE 75 OF QL300SPI.C: 'new1': unreferenced local variable

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -