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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? uart.lst

?? 一個基于arm的
?? LST
?? 第 1 頁 / 共 2 頁
字號:
ARM COMPILER V2.50a,  UART                                                                 16/05/06  14:55:45  PAGE 1   


ARM COMPILER V2.50a, COMPILATION OF MODULE UART
OBJECT MODULE PLACED IN UART.OBJ
COMPILER INVOKED BY: C:\Keil\ARM\BIN\CA.exe UART.c THUMB WARNINGLEVEL(3) BROWSE DEBUG TABS(4) 

stmt  level    source

    1          /**********************************************************************
    2            UART.c file
    3            ADuC7027的串口函數
    4            作者:Computer-lov
    5            建立日期:2006-3-22
    6            修改日期:2006-5-11
    7            版本:V1.0
    8            版權所有,盜版必究。
    9            Copyright(C) Computer-lov 2006-2016
   10            All rights reserved
   11          **********************************************************************/
   12          
   13          #include <ADuC7027.H>
   14          #include "My_type.h"
   15          #include "UART.H"
   16          
   17          //////////////////////////////////////////////////////////////////////
   18          void UART_init(void)
   19          {  
   20   1       GP1CON=0x00000011; //P1.0 P1.1設置為串口功能
   21   1      
   22   1       COMIEN0=0x00;   //禁止所有串口中斷
   23   1      
   24   1      #define BitRate 57600
   25   1      
   26   1      #if (BitRate==19200) || (BitRate==9600)
                COMCON0=0x83;   //1 stop bit,8 data bits  最高位置1,尋址COMDIV1寄存器
                COMDIV1=0x00;
                COMDIV2=0x0000;
               #if BitRate==19200
                COMDIV0=0x44;   //19200 bps
               #else
                COMDIV0=0x88;  //9600bps                  
               #endif
                COMCON0=0x03;   //最高位置0,尋址COMTX寄存器。
                                //因為COMTX寄存器跟COMDIV1寄存器共用一個地址,由COMCON0的最高位選擇
               #endif
   38   1      
   39   1      #if BitRate==57600
   40   1      
   41   1       COMCON0=0x83;   //1 stop bit,8 data bits  最高位置1,尋址COMDIV1寄存器
   42   1       COMDIV1=0x00;
   43   1       COMDIV2=0x426+(2<<11)+0x8000;   //M=2,N=0x642
   44   1       COMDIV0=0x09;
   45   1       COMCON0=0x03;   //最高位置0,尋址COMTX寄存器。
   46   1                       //因為COMTX寄存器跟COMDIV1寄存器共用一個地址,由COMCON0的最高位選擇 
   47   1      #endif
   48   1      }
   49          //////////////////////////////////////////////////////////////////////
   50          
   51          //////////////////////////////////////////////////////////////////////
   52          void send_a_byte(uint8 a_byte)
   53          {
   54   1       while(!(COMSTA0 & 0x40));  //等待發送完畢
   55   1       COMTX=a_byte;
   56   1      }
   57          //////////////////////////////////////////////////////////////////////
   58          
   59          ////////////////////////////// 發送一個字符串 ///////////////////////////////////////////
ARM COMPILER V2.50a,  UART                                                                 16/05/06  14:55:45  PAGE 2   

   60          //////////////////入口參數: s-要發送的字符串的指針(字符串長度不得大于255)/////////////
   61          /////////////////////////////////////    newline-是否需要換行  0-不換行  非0-換行////////
   62          void prints(uint8 * s,uint32 newline)
   63          {
   64   1       unsigned char i;
   65   1       i=0;
   66   1       while(s[i]!=0)    //判斷字符串是否結束
   67   1        {
   68   2         while(!(COMSTA0 & 0x40));  //等待發送完畢
   69   2         COMTX=s[i];
   70   2         i++;            //移到下字節
   71   2        }
   72   1       if(newline)       //如果需要換行
   73   1        {
   74   2         send_a_byte(13);
   75   2         send_a_byte(10);   //發送回車換行
   76   2        }
   77   1      }
   78          ////////////////////////////////////////////////////////////////////////////////////////////
   79          
   80          /////////////////////////////////////////////////////////////////////////////////
   81          void cls(void)
   82          {
   83   1       send_a_byte(0x0C);   //超級終端清屏指令
   84   1       send_a_byte(0x0C);
   85   1      }
   86          //////////////////////////////////////////////////////////////////////////////////
   87          
   88          
   89          //轉換成十六進制時用的表
   90          const uint8 HEX_TABLE[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
   91          
   92          //////////////////////////將一個16位的整數按十六進制發到串口/////////////////////////////////
   93          void print_uint16(uint16 number)
   94          {
   95   1       send_a_byte('0');              //發送0x
   96   1       send_a_byte('x');
   97   1       send_a_byte(HEX_TABLE[(number>>12) & 0x0F]);  //依次發送各部分
   98   1       send_a_byte(HEX_TABLE[(number>>8)  & 0x0F]);
   99   1       send_a_byte(HEX_TABLE[(number>>4)  & 0x0F]);
  100   1       send_a_byte(HEX_TABLE[(number)     & 0x0F]);
  101   1       send_a_byte(' ');
  102   1      }
  103          //////////////////////////////////////////////////////////////////////////////////
  104          
  105          /////////////////////////將一個32位的整數按十進制發送到串口/////////////////////////////
  106          void print_uint32(uint32 number)
  107          {
  108   1       uint8 buf[12];
  109   1       uint32 i;
  110   1       
  111   1       for(i=0;i<10;i++)   //轉換成字符串
  112   1        {
  113   2         buf[9-i]=(number%10)+'0';
  114   2         number/=10;
  115   2        }
  116   1       for(i=0;i<9;i++)    //將前面的0轉換成空格
  117   1        {
  118   2         if(buf[i]=='0')
  119   2          {
  120   3           buf[i]=' ';
  121   3          }
  122   2         else
  123   2          {
  124   3           break;
  125   3          }
ARM COMPILER V2.50a,  UART                                                                 16/05/06  14:55:45  PAGE 3   

  126   2        }
  127   1       buf[10]=' ';
  128   1       buf[11]=0;       //字符串結束符
  129   1       prints(buf,0);
  130   1      }
  131          //////////////////////////////////////////////////////////////////////////////////////////
  132          
ARM COMPILER V2.50a,  UART                                                                 16/05/06  14:55:45  PAGE 4   

ASSEMBLY LISTING OF GENERATED OBJECT CODE



*** EXTERNALS:
 EXTERN CODE16 (?C?UDIV?T)



*** PUBLICS:
 PUBLIC         UART_init?T
 PUBLIC         send_a_byte?T
 PUBLIC         prints?T
 PUBLIC         cls?T
 PUBLIC         print_uint16?T
 PUBLIC         print_uint32?T
 PUBLIC         HEX_TABLE



*** DATA SEGMENT '?CON?UART':
 00000000          HEX_TABLE:
 00000000           BEGIN_INIT
 00000000  30        DB          0x30
 00000001  31        DB          0x31
 00000002  32        DB          0x32
 00000003  33        DB          0x33
 00000004  34        DB          0x34
 00000005  35        DB          0x35
 00000006  36        DB          0x36
 00000007  37        DB          0x37
 00000008  38        DB          0x38
 00000009  39        DB          0x39
 0000000A  41        DB          0x41
 0000000B  42        DB          0x42
 0000000C  43        DB          0x43
 0000000D  44        DB          0x44
 0000000E  45        DB          0x45
 0000000F  46        DB          0x46
 00000010           END_INIT



*** CODE SEGMENT '?PR?UART_init?T?UART':
   20:  GP1CON=0x00000011; //P1.0 P1.1設置為串口功能
 00000000  2111      MOV         R1,#0x11
 00000002  4800      LDR         R0,=0xFFFFF404
 00000004  6001      STR         R1,[R0,#0x0]
   22:  COMIEN0=0x00;   //禁止所有串口中斷
 00000006  2100      MOV         R1,#0x0
 00000008  4800      LDR         R0,=0xFFFF0704
 0000000A  6001      STR         R1,[R0,#0x0]
   41:  COMCON0=0x83;   //1 stop bit,8 data bits  最高位置1,尋址COMDIV1寄存器
 0000000C  2283      MOV         R2,#0x83
 0000000E  4800      LDR         R0,=0xFFFF070C
 00000010  6002      STR         R2,[R0,#0x0]
   42:  COMDIV1=0x00;
 00000012  4800      LDR         R0,=0xFFFF0704
 00000014  6001      STR         R1,[R0,#0x0]
   43:  COMDIV2=0x426+(2<<11)+0x8000;   //M=2,N=0x642
 00000016  4800      LDR         R1,=0x9426
 00000018  4800      LDR         R0,=0xFFFF072C
 0000001A  6001      STR         R1,[R0,#0x0]
   44:  COMDIV0=0x09;
 0000001C  2109      MOV         R1,#0x9
 0000001E  4800      LDR         R0,=0xFFFF0700
 00000020  6001      STR         R1,[R0,#0x0]
   45:  COMCON0=0x03;   //最高位置0,尋址COMTX寄存器。
 00000022  2103      MOV         R1,#0x3
 00000024  4800      LDR         R0,=0xFFFF070C
 00000026  6001      STR         R1,[R0,#0x0]
   48: }
 00000028  4770      BX          R14
ARM COMPILER V2.50a,  UART                                                                 16/05/06  14:55:45  PAGE 5   

 0000002A          ENDP ; 'UART_init?T'


*** CODE SEGMENT '?PR?send_a_byte?T?UART':
   52: void send_a_byte(uint8 a_byte)
 00000000  1C01      MOV         R1,R0 ; a_byte
 00000002  ---- Variable 'a_byte' assigned to Register 'R1' ----
   54:  while(!(COMSTA0 & 0x40));  //等待發送完畢
 00000002          L_1:
 00000002  4800      LDR         R0,=0xFFFF0714
 00000004  6800      LDR         R0,[R0,#0x0]
 00000006  2240      MOV         R2,#0x40
 00000008  4210      TST         R0,R2
 0000000A  D0FA      BEQ         L_1  ; T=0x00000002
   55:  COMTX=a_byte;
 0000000C  1C08      MOV         R0,R1 ; a_byte
 0000000E  0601      LSL         R1,R0,#0x18 ; a_byte
 00000010  0E09      LSR         R1,R1,#0x18
 00000012  4800      LDR         R0,=0xFFFF0700
 00000014  6001      STR         R1,[R0,#0x0]
   56: }
 00000016  4770      BX          R14
 00000018          ENDP ; 'send_a_byte?T'

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本aⅴ免费视频一区二区三区 | 毛片不卡一区二区| 樱桃视频在线观看一区| 国产精品国产三级国产| 亚洲一区二区三区四区五区黄| 国产精品久久久久久久蜜臀| 日本一区二区成人在线| 亚洲欧洲日韩一区二区三区| 国产日韩精品视频一区| 国产欧美一区二区精品婷婷| 国产女人18水真多18精品一级做| 国产亚洲人成网站| 国产精品美女久久久久久2018| 中文字幕在线观看不卡| 亚洲精品久久久蜜桃| 亚洲 欧美综合在线网络| 日韩精品电影在线观看| 麻豆国产欧美一区二区三区| 国产麻豆视频精品| bt7086福利一区国产| 色综合久久久久网| 欧美一区日本一区韩国一区| 国产欧美日韩久久| 亚洲一区自拍偷拍| 免费日本视频一区| 国产91综合一区在线观看| www.成人网.com| 91精品国产欧美一区二区成人| 精品福利一二区| 亚洲特级片在线| 久久不见久久见免费视频7| 成人综合婷婷国产精品久久蜜臀 | 色综合中文字幕国产 | 亚洲黄色av一区| 日日夜夜一区二区| 国产一区二区三区日韩| 色综合一区二区三区| 日韩视频一区二区| 国产精品久久久久7777按摩 | 日韩一区二区麻豆国产| 亚洲国产精华液网站w| 亚洲国产精品嫩草影院| 国产成人在线看| 欧美三级中文字幕在线观看| 久久久久久久av麻豆果冻| 亚洲国产成人av网| 成人av电影在线网| 久久亚洲影视婷婷| 无码av中文一区二区三区桃花岛| 丁香天五香天堂综合| 制服视频三区第一页精品| 国产精品福利在线播放| 国产一区二区三区观看| 91精品国产色综合久久不卡电影 | 欧美精品一区二区不卡| 亚洲精品一二三四区| 福利一区二区在线| 日韩午夜激情免费电影| 亚洲国产成人av网| 欧美中文字幕一区二区三区亚洲| 久久精品亚洲乱码伦伦中文| 久久精品国产秦先生| 欧美久久久久免费| 亚洲国产精品自拍| 在线看国产日韩| 亚洲品质自拍视频| 99天天综合性| 亚洲人成影院在线观看| 成人美女视频在线观看| 国产片一区二区| 国产成人免费高清| 久久精品亚洲国产奇米99| 极品美女销魂一区二区三区| 日韩一区二区三区免费看| 亚洲va中文字幕| 4438x亚洲最大成人网| 日本aⅴ亚洲精品中文乱码| 欧美日韩国产综合草草| 午夜影院久久久| 日韩一级免费一区| 美国三级日本三级久久99| 日韩欧美专区在线| 国产自产2019最新不卡| 国产日韩亚洲欧美综合| 波多野结衣在线一区| 亚洲私人黄色宅男| 色天天综合色天天久久| caoporn国产一区二区| 亚洲精品欧美二区三区中文字幕| 色综合久久久网| 香蕉av福利精品导航| 日韩欧美中文字幕制服| 国产成人精品亚洲777人妖| 国产精品久久午夜| 日本黄色一区二区| 免费在线视频一区| 久久午夜免费电影| caoporn国产精品| 天天综合色天天综合色h| 日韩一级精品视频在线观看| 国产馆精品极品| 一区二区三区鲁丝不卡| 日韩一区二区三区高清免费看看| 六月婷婷色综合| 亚洲视频精选在线| 欧美一区二区三区在线视频| 国产剧情一区在线| 洋洋成人永久网站入口| 久久亚洲精华国产精华液| 在线免费观看日本一区| 久久精品国产色蜜蜜麻豆| 成人免费一区二区三区视频| 欧美日韩激情在线| 成人一区在线观看| 免费人成黄页网站在线一区二区| 国产精品久久久久久久久免费丝袜 | 一区二区三区精品久久久| 这里只有精品视频在线观看| 国产a精品视频| 亚洲国产精品自拍| 国产欧美精品一区二区三区四区 | 欧美日韩国产一区| 成人永久aaa| 日本亚洲三级在线| 亚洲美女一区二区三区| 久久精品视频一区二区| 欧美一卡二卡在线| 一本大道av一区二区在线播放| 麻豆成人久久精品二区三区红 | 日韩黄色片在线观看| 国产精品午夜春色av| 精品国产乱子伦一区| 欧美亚一区二区| 9人人澡人人爽人人精品| 国产一区福利在线| 免费精品视频最新在线| 午夜视频在线观看一区| 亚洲综合清纯丝袜自拍| 国产精品狼人久久影院观看方式| 精品国产一区二区三区久久影院 | 欧美在线999| aaa欧美色吧激情视频| 国产精品资源网站| 国产伦理精品不卡| 免费精品99久久国产综合精品| 一二三四区精品视频| 亚洲激情综合网| 亚洲一卡二卡三卡四卡无卡久久| 国产精品国产三级国产a| 欧美国产精品专区| 欧美成人精品高清在线播放| 欧美夫妻性生活| 欧美一区日韩一区| 欧美一级在线视频| 日韩一卡二卡三卡国产欧美| 日韩三级高清在线| 欧美成人精品1314www| 久久久亚洲欧洲日产国码αv| 日韩欧美在线影院| 精品国产免费一区二区三区四区 | 在线观看成人免费视频| 91电影在线观看| 欧美系列日韩一区| 欧美人与禽zozo性伦| 日韩欧美一级片| 久久人人爽人人爽| 国产精品欧美一级免费| 中文字幕亚洲不卡| 亚洲成人午夜电影| 精品一区二区在线播放| 成人精品免费视频| 94色蜜桃网一区二区三区| 一本色道久久综合亚洲精品按摩| 色先锋资源久久综合| 欧美日韩精品欧美日韩精品一综合 | 成人一二三区视频| 91高清在线观看| 欧美大片一区二区三区| 久久久久久久久蜜桃| 亚洲免费高清视频在线| 亚洲综合色视频| 蜜桃一区二区三区四区| 成人中文字幕在线| 欧美日韩视频在线第一区| 久久综合久久综合亚洲| 亚洲日本电影在线| 日韩电影在线一区| 粉嫩蜜臀av国产精品网站| 欧美日韩综合一区| 久久婷婷国产综合精品青草| 亚洲精品自拍动漫在线| 久久不见久久见免费视频7 | 日本韩国精品一区二区在线观看| 欧美日韩卡一卡二| 国产日韩成人精品| 日韩不卡在线观看日韩不卡视频| 高清av一区二区| 日韩欧美二区三区| 亚洲欧美另类在线| 国产成人小视频|