亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cam.lst

?? 基于單片機(jī)的串口攝像頭模塊的讀寫C語言源程序
?? LST
?? 第 1 頁 / 共 5 頁
字號(hào):
C51 COMPILER V8.16   CAM                                                                   05/23/2009 21:20:21 PAGE 1   


C51 COMPILER V8.16, COMPILATION OF MODULE CAM
OBJECT MODULE PLACED IN CAM.obj
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE SRC\CAM.c BROWSE DEBUG OBJECTEXTEND CODE PRINT(.\CAM.lst) OBJ
                    -ECT(CAM.obj)

line level    source

   1          #include <SST89x5xxRD2.h>
   2          #define uchar unsigned char
   3          #define uint unsigned int
   4          #define Width 10         //圖像的寬80(8*10)個(gè)像素
   5          #define Height 32        //圖像的高
   6          uchar lcd_x;//lcd的x坐標(biāo)
   7          uchar lcd_y;//lcd的y坐標(biāo)
   8          
   9          sbit cs=P3^3;   //定義LCD的D/#C控制口
  10          sbit std=P3^5;  //定義LCD的串行數(shù)據(jù)端口
  11          sbit sclk=P3^7; //定義LCD的串行時(shí)鐘端口                   
  12          sbit rst=P3^6;                  
  13          sbit key=P2^0;
  14          
  15          uchar code SYNC_ID[]=           {0xaa,0x0d,0x00,0x00,0x00,0x00}; 
  16          uchar code INITAL_ID[]=         {0xaa,0x01,0x00,0x01,0x01,0x01};        //2位灰度圖160*120,4800B
  17          uchar code BAUDRATE_ID[]=       {0xaa,0x07,0xbf,0x01,0x00,0x00};        //baudrate=9600
  18          uchar code SNAPSHOT_ID[]=       {0xaa,0x05,0x01,0x00,0x00,0x00};
  19          uchar code GETPICTURE_ID[]=     {0xaa,0x04,0x01,0x00,0x00,0x00};
  20          uchar code RESET1_ID[]=         {0xaa,0x08,0x01,0x00,0x00,0x00};//狀態(tài)寄存器復(fù)位
  21          uchar code RESET2_ID[]=         {0xaa,0x08,0x00,0x00,0x00,0x00};//完全復(fù)位
  22          uchar code SLEEP_ID[]=          {0xaa,0x09,0x00,0x00,0x00,0x00};
  23          uchar code ACK1_ID[]=           {0xaa,0x0e,0x0d,0x00,0x00,0x00};
  24          uchar code ACK2_ID[]=           {0xaa,0x0e,0x0a,0x00,0x00,0x00};
  25          
  26          //定義兩個(gè)隊(duì)列用來緩存圖片數(shù)據(jù)
  27          uchar xdata Picture_Dat1[256]; //內(nèi)部擴(kuò)展數(shù)據(jù)RAM(00H~2FFH)
  28          uchar xdata Picture_Dat2[256];
  29          uchar idata front=0,rear=0;//隊(duì)列的隊(duì)頭指針和隊(duì)尾指針
  30          bit bank;//bank=0指向Picture_Dat1,否則指向Picture_Dat2
  31          
  32          uint idata countr;//已接受的數(shù)據(jù)(byte)
  33          
  34          bit error;//傳輸出錯(cuò)
  35          
  36          void delay(uchar mm)
  37          {
  38   1              uchar idata i;
  39   1              for(i=0;i<mm;i++)
  40   1                      ;
  41   1      }
  42          
  43          void delay_1ms()
  44          {
  45   1              uchar idata i;
  46   1              for(i=0;i<255;i++)
  47   1                      ;
  48   1              for(i=0;i<42;i++)
  49   1                      ;
  50   1      }
  51          
  52          void delay_ms(uchar t)
  53          {
  54   1              uchar idata i;
C51 COMPILER V8.16   CAM                                                                   05/23/2009 21:20:21 PAGE 2   

  55   1              for(i=0;i<t;i++)
  56   1                      delay_1ms();
  57   1      }
  58          
  59          void wr_lcd (uchar dat_comm,uchar content)
  60          {
  61   1              uchar idata a,i,j;
  62   1              delay(50);
  63   1              a=content;
  64   1              cs=1;
  65   1              sclk=0;
  66   1              std=1;
  67   1              for(i=0;i<5;i++)
  68   1              {
  69   2                      sclk=1;
  70   2                      sclk=0;
  71   2              }
  72   1              std=0;
  73   1              sclk=1;
  74   1              sclk=0;
  75   1              if(dat_comm)
  76   1                      std=1;//data
  77   1              else
  78   1                      std=0;//command
  79   1              sclk=1;
  80   1              sclk=0;
  81   1              std=0;
  82   1              sclk=1;
  83   1              sclk=0;
  84   1              for(j=0;j<2;j++)
  85   1              {
  86   2                      for(i=0;i<4;i++)
  87   2                      {
  88   3                              a=a<<1;
  89   3                              std=CY;
  90   3                              sclk=1;
  91   3                              sclk=0;
  92   3                      }
  93   2                      std=0;
  94   2                      for(i=0;i<4;i++)
  95   2                      {
  96   3                              sclk=1;
  97   3                              sclk=0;
  98   3                      }
  99   2              }
 100   1      }
 101          
 102          void init_lcd (void)
 103          {
 104   1              rst=0;
 105   1              delay(100);
 106   1              rst=1;
 107   1              wr_lcd(0,0x30);  //30---基本指令動(dòng)作   
 108   1              wr_lcd(0,0x01);  //清屏,地址指針指向00H
 109   1              delay(100);
 110   1              wr_lcd(0,0x06);  //光標(biāo)的移動(dòng)方向
 111   1              wr_lcd(0,0x0c);  //開顯示,關(guān)游標(biāo)
 112   1      }
 113          
 114          
 115          
 116          
C51 COMPILER V8.16   CAM                                                                   05/23/2009 21:20:21 PAGE 3   

 117          
 118          
 119          
 120          //1、換晶振,用22.1184M晶振,在TH1=0xff時(shí),剛好可以產(chǎn)生115200波特率。
 121          
 122          //2、采用6個(gè)時(shí)鐘周期的單片機(jī)(換單片機(jī)啊。。。)
 123          
 124          //3、增強(qiáng)型51單片機(jī)有定時(shí)器2!(幸好偶用的是增強(qiáng)型。。。)
 125          
 126          //就用第三種方法啦!這時(shí)的公式如下:
 127          
 128          //波特率=11059200/(32×[65536-(RCAP2H,RCAP2L)])
 129          
 130          //其中的RCAP2H,RCAP2L為自動(dòng)重裝值,由上式得:
 131          
 132          //RCAP2H,RCAP2L=65536-11059200/(32×波特率)
 133          
 134          void init_UART()
 135          {
 136   1              SCON=0x50; //串口工作方式1,8位UART,波特率可變  
 137   1          TH2=0xFF;           
 138   1          TL2=0xDC;   //波特率:9600 晶振=11.0592MHz 
 139   1          RCAP2H=0xFF;   
 140   1          RCAP2L=0xDC; //16位自動(dòng)再裝入值 
 141   1      //*****************
 142   1          TCLK=1;   
 143   1          RCLK=1;   
 144   1          C_T2=0;   
 145   1          EXEN2=0; //波特率發(fā)生器工作方式
 146   1      
 147   1      //*****************
 148   1              ES=0;//關(guān)閉串口中斷
 149   1              EA=1;//開全局中斷
 150   1          TR2=1 ; //定時(shí)器2開始
 151   1      }
 152          
 153          void Read_Picture() interrupt 4 using 1
 154          {
 155   1              uchar dat;
 156   1              if(RI)
 157   1              {
 158   2                      dat=SBUF;
 159   2                      RI=0;
 160   2                      if(front==rear+1)//隊(duì)列已滿
 161   2                      {
 162   3                              ES=0;
 163   3                              error=1;
 164   3                      }
 165   2                      if(bank)
 166   2                      {
 167   3                              Picture_Dat2[rear]=dat;
 168   3                              bank=!bank;
 169   3                              rear++;
 170   3                      }
 171   2                      else
 172   2                      {
 173   3                              Picture_Dat2[rear]=dat;
 174   3                              bank=!bank;
 175   3                              countr++;
 176   3                              countr++;
 177   3                      }                       
 178   2              }
C51 COMPILER V8.16   CAM                                                                   05/23/2009 21:20:21 PAGE 4   

 179   1      }
 180          
 181          void Send_Cmd(uchar *cmd)
 182          {
 183   1              uchar idata i;
 184   1              for(i=0;i<6;i++)
 185   1              {
 186   2                      SBUF=cmd[i];
 187   2                      while(TI==0)
 188   2                              ;
 189   2                      TI=0;
 190   2                      delay(1);
 191   2              }
 192   1      }
 193          
 194          void Wait_ACK(uchar *cmd)
 195          {
 196   1              uchar idata i;
 197   1              for(i=0;i<6;i++)
 198   1              {
 199   2                      while(RI==0)
 200   2                              ;
 201   2                      cmd[i]=SBUF;
 202   2                      RI=0;
 203   2              }
 204   1              //if(cmd[0]==0xAA&&cmd[1]>=0x01&&cmd[1]<=0x0F)
 205   1              //      return 1;
 206   1              //return 0;     
 207   1      }
 208          
 209          bit CAM_Cmd(uchar *cmd)
 210          {
 211   1              uchar idata temp_cmd[6]; 
 212   1              Send_Cmd(cmd);
 213   1              Wait_ACK(temp_cmd);
 214   1              if(temp_cmd[0]==0xAA&&temp_cmd[1]==0x0E&&temp_cmd[2]==cmd[1])
 215   1              {
 216   2                      delay_ms(50);
 217   2                      return 1;
 218   2              }
 219   1              return 0;
 220   1      }
 221          
 222          bit Send_SYNC_Cmd()
 223          {
 224   1              uchar idata OldTH2,OldTL2;//保存原先的波特率
 225   1              uchar idata cmd1[6];
 226   1              uchar idata cmd2[6];
 227   1              uchar idata i,j,k;
 228   1              //*****************
 229   1              //將波特率調(diào)整為115200
 230   1              TR2=0 ; //定時(shí)器2停止
 231   1              OldTH2=RCAP2H;
 232   1              OldTL2=RCAP2L;
 233   1              TH2=0xFF;           
 234   1          TL2=0xFD;   //波特率:115200 晶振=11.0592MHz 
 235   1          RCAP2H=0xFF;   
 236   1          RCAP2L=0xFD; //16位自動(dòng)再裝入值
 237   1              TR2=1 ; //定時(shí)器2開始
 238   1              //*****************
 239   1              for(i=0;i<60;i++)
 240   1              {
C51 COMPILER V8.16   CAM                                                                   05/23/2009 21:20:21 PAGE 5   

 241   2                      Send_Cmd(SYNC_ID);
 242   2                      for(j=0;j<255;j++)
 243   2                      {
 244   3                              for(k=0;k<255;k++)
 245   3                              {
 246   4                                      if(RI!=0)
 247   4                                      {
 248   5                                              Wait_ACK(cmd1);
 249   5                                              Wait_ACK(cmd2);
 250   5                                              break;
 251   5                                      }
 252   4                              }
 253   3                      }
 254   2                      if(j==255&&k==255)//350ms內(nèi)沒有獲得應(yīng)答
 255   2                              continue;
 256   2                      if(cmd1[0]!=0xAA||cmd1[1]!=0x0E||cmd1[2]!=0x0D)
 257   2                              continue;
 258   2                      if(cmd2[0]!=0xAA||cmd2[1]!=0x0D)
 259   2                              continue;
 260   2                      Send_Cmd(ACK1_ID);
 261   2                      delay_ms(50);
 262   2                      break;
 263   2              }
 264   1              if(i==60)
 265   1                      return 0;
 266   1      
 267   1              //將CAM的波特率設(shè)置為9600
 268   1              CAM_Cmd(BAUDRATE_ID);
 269   1      
 270   1              //*****************
 271   1              //恢復(fù)原先波特率9600
 272   1              TR2=0 ; //定時(shí)器2停止
 273   1              TH2=OldTH2;           
 274   1          TL2=OldTL2;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品亲子伦对白| 久久一区二区视频| 亚洲最大的成人av| 欧美在线观看视频在线| 午夜欧美大尺度福利影院在线看| 在线观看91视频| 日韩电影在线免费看| 精品国产免费人成电影在线观看四季 | 亚洲精品视频一区二区| 日本道在线观看一区二区| 亚洲国产日产av| 精品少妇一区二区| 国产99久久久国产精品潘金网站| 综合久久国产九一剧情麻豆| 欧洲精品在线观看| 精品一区二区国语对白| 亚洲欧洲另类国产综合| 在线不卡免费av| 国产黑丝在线一区二区三区| 亚洲日本欧美天堂| 欧美一卡二卡三卡四卡| www.99精品| 日本在线观看不卡视频| 欧美国产丝袜视频| 欧美日韩精品一区二区三区四区 | 狠狠色综合日日| 一二三区精品福利视频| 26uuu成人网一区二区三区| 99国产精品久久久久久久久久久| 亚洲国产中文字幕| 久久精品人人做人人爽97| 欧洲生活片亚洲生活在线观看| 狠狠色伊人亚洲综合成人| 亚洲精品高清在线| 久久精品夜色噜噜亚洲a∨| 欧美伊人久久久久久久久影院 | 日本成人中文字幕在线视频| 国产精品色婷婷| 这里是久久伊人| 色香色香欲天天天影视综合网| 蜜臂av日日欢夜夜爽一区| 伊人色综合久久天天人手人婷| 久久综合久久99| 91精品国产综合久久久久久久| 91免费看`日韩一区二区| 精品一区二区三区免费视频| 亚洲一二三级电影| 欧美国产激情一区二区三区蜜月| 日韩一级精品视频在线观看| 欧美色图在线观看| 99麻豆久久久国产精品免费优播| 麻豆视频一区二区| 日韩精品国产精品| 亚洲国产乱码最新视频| 亚洲精品日韩一| 亚洲色欲色欲www在线观看| 国产日韩av一区| 久久综合久久鬼色中文字| 日韩丝袜情趣美女图片| 欧美视频第二页| 欧美性xxxxx极品少妇| 91麻豆精品视频| 成人激情小说网站| 国产黄色成人av| 国产成人在线看| 国内精品在线播放| 蜜桃精品视频在线| 美女在线一区二区| 激情综合色综合久久综合| 日韩精品一二三四| 免费高清成人在线| 久久成人免费网| 国内精品写真在线观看| 精品一区二区日韩| 国产一区二区三区日韩| 国产精品综合一区二区| 国产一区二区三区在线观看精品| 激情丁香综合五月| 韩国精品在线观看| 国产91精品免费| 99精品久久久久久| 91蜜桃视频在线| 91精彩视频在线观看| 欧美日韩亚洲综合一区二区三区| 欧美色电影在线| 欧美精品日韩综合在线| 日韩三级视频中文字幕| 久久久久久久久久美女| 国产精品拍天天在线| 亚洲精品美国一| 五月综合激情婷婷六月色窝| 久久aⅴ国产欧美74aaa| 成人一区二区三区视频在线观看| 成人一道本在线| 色婷婷国产精品久久包臀| 欧美日韩国产高清一区二区 | 国产精品欧美久久久久一区二区| 国产精品免费av| 亚洲精品久久7777| 蜜臀va亚洲va欧美va天堂| 国产精品一区二区x88av| 成人午夜视频网站| 欧洲精品在线观看| 日韩免费在线观看| 成人免费在线视频| 日韩电影在线一区| 成人一区二区视频| 欧美日韩国产高清一区二区三区| 精品精品国产高清一毛片一天堂| 国产精品嫩草影院com| 亚洲123区在线观看| 狠狠色狠狠色合久久伊人| 91亚洲精品久久久蜜桃网站| 日韩亚洲欧美成人一区| 国产精品久久久久久久久久久免费看| 亚洲午夜电影网| 国产精品18久久久久久久久 | 精品成人免费观看| 亚洲六月丁香色婷婷综合久久 | 国产欧美日韩在线| 亚洲高清一区二区三区| 国产精品资源在线看| 欧美日韩一区二区三区高清| 久久九九久久九九| 亚瑟在线精品视频| 成人av资源下载| 欧美本精品男人aⅴ天堂| 亚洲一线二线三线久久久| 国产精品一线二线三线| 欧美日韩一区高清| 国产精品护士白丝一区av| 精品无人码麻豆乱码1区2区 | 成人午夜视频福利| 日韩一二三区视频| 一区二区三区久久久| 成人一道本在线| 久久老女人爱爱| 免费黄网站欧美| 欧美午夜在线观看| 国产精品久久99| 国产精品中文字幕欧美| 欧美一区国产二区| 亚洲小少妇裸体bbw| 91香蕉视频mp4| 国产视频一区二区在线| 免费在线一区观看| 在线中文字幕不卡| 国产精品国产三级国产专播品爱网| 久久成人羞羞网站| 91精品国产综合久久久久久| 亚洲小少妇裸体bbw| 日本韩国精品一区二区在线观看| 中文字幕欧美日韩一区| 国产另类ts人妖一区二区| 日韩情涩欧美日韩视频| 午夜av区久久| 欧美另类高清zo欧美| 亚洲综合丝袜美腿| 色综合激情五月| 亚洲精品成人在线| 91色九色蝌蚪| 亚洲免费av高清| 色哦色哦哦色天天综合| 亚洲男同性视频| 色av综合在线| 一区二区三区四区在线免费观看| 91丨porny丨国产| 亚洲欧美另类小说| 91福利精品视频| 日日夜夜免费精品| 欧美精品18+| 蜜桃av一区二区三区电影| 欧美一卡2卡3卡4卡| 国产在线日韩欧美| 久久久国产精品午夜一区ai换脸| 国产成人亚洲综合a∨猫咪| 国产精品久久99| 在线视频观看一区| 天天影视网天天综合色在线播放| 91精品在线观看入口| 国产综合一区二区| 中文字幕高清一区| 色乱码一区二区三区88| 亚洲国产精品自拍| 欧美电视剧在线看免费| 国产精品资源在线看| 国产精品传媒在线| 欧美日韩mp4| 韩国视频一区二区| 亚洲日穴在线视频| 欧美精品久久99久久在免费线| 美腿丝袜亚洲综合| 国产精品―色哟哟| 欧美日韩在线亚洲一区蜜芽| 捆绑紧缚一区二区三区视频| 国产亚洲精品超碰| 在线观看亚洲精品视频| 蜜桃免费网站一区二区三区| 中文字幕av在线一区二区三区| 在线观看日产精品|