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

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

?? common.lst

?? IAPBootLoader源程序是單片機ARM的在系統編程方法1
?? LST
?? 第 1 頁 / 共 4 頁
字號:
     77          			{
     78          				/* return 0; Invalid input */
     79          				res = 0;
   \                     ??Str2Int_10:
   \   00000118   0000A0E3           MOV      R0,#+0
   \   0000011C   00C0B0E1           MOVS     R12,R0
     80          				break;
     81          			}	
     82          		}	
     83          		
     84          		if (i>=11) res = 0;	/* over 8 digit hex --invalid */
   \                     ??Str2Int_5:
   \   00000120   0B0053E3           CMP      R3,#+11
   \   00000124   3900003A           BCC      ??Str2Int_15
   \   00000128   0000A0E3           MOV      R0,#+0
   \   0000012C   00C0B0E1           MOVS     R12,R0
   \   00000130   360000EA           B        ??Str2Int_15
     85          	}
     86          	else /* max 10-digit decimal input */
     87          	{
     88          		for (i=0;i<11;i++)
   \                     ??Str2Int_0:
   \   00000134   0000A0E3           MOV      R0,#+0
   \   00000138   0030B0E1           MOVS     R3,R0
   \                     ??Str2Int_16:
   \   0000013C   0B0053E3           CMP      R3,#+11
   \   00000140   2E00002A           BCS      ??Str2Int_17
     89          		{
     90          			if (inputstr[i] == '\0')
   \   00000144   0200D3E7           LDRB     R0,[R3, +R2]
   \   00000148   000050E3           CMP      R0,#+0
   \   0000014C   0300001A           BNE      ??Str2Int_18
     91          			{
     92          				*intnum = val;
   \   00000150   004081E5           STR      R4,[R1, #+0]
     93          				/* return 1; */
     94          				res =1;
   \   00000154   0100A0E3           MOV      R0,#+1
   \   00000158   00C0B0E1           MOVS     R12,R0
     95          				break;
   \   0000015C   270000EA           B        ??Str2Int_17
     96          			}
     97          			else if ((inputstr[i] == 'k' ||inputstr[i] == 'K') && (i>0))
   \                     ??Str2Int_18:
   \   00000160   0200D3E7           LDRB     R0,[R3, +R2]
   \   00000164   6B0050E3           CMP      R0,#+107
   \   00000168   0200000A           BEQ      ??Str2Int_19
   \   0000016C   0200D3E7           LDRB     R0,[R3, +R2]
   \   00000170   4B0050E3           CMP      R0,#+75
   \   00000174   0600001A           BNE      ??Str2Int_20
   \                     ??Str2Int_19:
   \   00000178   000053E3           CMP      R3,#+0
   \   0000017C   0400000A           BEQ      ??Str2Int_20
     98          			{
     99          				val = val << 10;
   \   00000180   0445B0E1           LSLS     R4,R4,#+10
    100          				*intnum = val;
   \   00000184   004081E5           STR      R4,[R1, #+0]
    101          				res = 1;
   \   00000188   0100A0E3           MOV      R0,#+1
   \   0000018C   00C0B0E1           MOVS     R12,R0
    102          				break;
   \   00000190   1A0000EA           B        ??Str2Int_17
    103          			}
    104          			else if ((inputstr[i] == 'm' ||inputstr[i] == 'M') && (i>0))
   \                     ??Str2Int_20:
   \   00000194   0200D3E7           LDRB     R0,[R3, +R2]
   \   00000198   6D0050E3           CMP      R0,#+109
   \   0000019C   0200000A           BEQ      ??Str2Int_21
   \   000001A0   0200D3E7           LDRB     R0,[R3, +R2]
   \   000001A4   4D0050E3           CMP      R0,#+77
   \   000001A8   0600001A           BNE      ??Str2Int_22
   \                     ??Str2Int_21:
   \   000001AC   000053E3           CMP      R3,#+0
   \   000001B0   0400000A           BEQ      ??Str2Int_22
    105          			{	
    106          				
    107          				val = val << 20;
   \   000001B4   044AB0E1           LSLS     R4,R4,#+20
    108          				*intnum = val;
   \   000001B8   004081E5           STR      R4,[R1, #+0]
    109          				res = 1;
   \   000001BC   0100A0E3           MOV      R0,#+1
   \   000001C0   00C0B0E1           MOVS     R12,R0
    110          				break;
   \   000001C4   0D0000EA           B        ??Str2Int_17
    111          			}
    112          			else if (ISVALIDDEC(inputstr[i]))
   \                     ??Str2Int_22:
   \   000001C8   0200D3E7           LDRB     R0,[R3, +R2]
   \   000001CC   300050E3           CMP      R0,#+48
   \   000001D0   0800003A           BCC      ??Str2Int_23
   \   000001D4   0200D3E7           LDRB     R0,[R3, +R2]
   \   000001D8   3A0050E3           CMP      R0,#+58
   \   000001DC   0500002A           BCS      ??Str2Int_23
    113          				val = val*10 + CONVERTDEC(inputstr[i]);
   \   000001E0   0A00A0E3           MOV      R0,#+10
   \   000001E4   0250D3E7           LDRB     R5,[R3, +R2]
   \   000001E8   305055E2           SUBS     R5,R5,#+48
   \   000001EC   905424E0           MLA      R4,R0,R4,R5
   \   000001F0   013093E2           ADDS     R3,R3,#+1
   \   000001F4   D0FFFFEA           B        ??Str2Int_16
    114          			else
    115          			{
    116          				/* return 0; Invalid input */
    117          				res = 0;
   \                     ??Str2Int_23:
   \   000001F8   0000A0E3           MOV      R0,#+0
   \   000001FC   00C0B0E1           MOVS     R12,R0
    118          				break;
    119          			}	
    120          		}
    121          		if (i>=11) res = 0; /* Over 10 digit decimal --invalid */
   \                     ??Str2Int_17:
   \   00000200   0B0053E3           CMP      R3,#+11
   \   00000204   0100003A           BCC      ??Str2Int_15
   \   00000208   0000A0E3           MOV      R0,#+0
   \   0000020C   00C0B0E1           MOVS     R12,R0
    122          	}
    123          	
    124          	return res;
   \                     ??Str2Int_15:
   \   00000210   0C00B0E1           MOVS     R0,R12
   \                     ??Str2Int_3:
   \   00000214   3000BDE8           POP      {R4,R5}
   \   00000218   0EF0A0E1           MOV      PC,LR            ;; return
    125          }
    126          /*******************************************************************************
    127          * Function Name  : GetIntegerInput
    128          * Description    : Get an integer from the HyperTerminal
    129          * Input          : The inetger
    130          * Return         : 1 -- Correct
    131                           : 0 -- Error
    132          *******************************************************************************/

   \                                 In segment CODE_Flash, align 4, keep-with-next
    133          u32 GetIntegerInput(s32 * num)
    134          {
   \                     GetIntegerInput:
   \   00000000   10402DE9           PUSH     {R4,LR}
   \   00000004   10D04DE2           SUB      SP,SP,#+16
   \   00000008   0040B0E1           MOVS     R4,R0
    135          	char inputstr[16];
    136          
    137          	while(1)
    138          	{
    139          		GetInputString(inputstr);
   \                     ??GetIntegerInput_0:
   \   0000000C   0D00B0E1           MOVS     R0,SP
   \   00000010   ........           BL       GetInputString
    140          		if (inputstr[0] == '\0') continue;
   \   00000014   0000DDE5           LDRB     R0,[SP, #+0]
   \   00000018   000050E3           CMP      R0,#+0
   \   0000001C   FAFFFF0A           BEQ      ??GetIntegerInput_0
    141          		
    142          		if ((inputstr[0] == 'a'||inputstr[0] == 'A')&& inputstr[1] == '\0')		
   \   00000020   0000DDE5           LDRB     R0,[SP, #+0]
   \   00000024   610050E3           CMP      R0,#+97
   \   00000028   0200000A           BEQ      ??GetIntegerInput_1
   \   0000002C   0000DDE5           LDRB     R0,[SP, #+0]
   \   00000030   410050E3           CMP      R0,#+65
   \   00000034   0600001A           BNE      ??GetIntegerInput_2
   \                     ??GetIntegerInput_1:
   \   00000038   0100DDE5           LDRB     R0,[SP, #+1]
   \   0000003C   000050E3           CMP      R0,#+0
   \   00000040   0300001A           BNE      ??GetIntegerInput_2
    143          		{	
    144          			SerialPutString("User Cancelled \r\n");
   \   00000044   34009FE5           LDR      R0,??GetIntegerInput_3  ;; `?<Constant "User Cancelled \\r\\n">`
   \   00000048   ........           BL       SerialPutString
    145          			return 0;
   \   0000004C   0000A0E3           MOV      R0,#+0
   \   00000050   080000EA           B        ??GetIntegerInput_4
    146          		}	
    147          		
    148          		if (Str2Int(inputstr,num) ==0)	
   \                     ??GetIntegerInput_2:
   \   00000054   0410B0E1           MOVS     R1,R4
   \   00000058   0D00B0E1           MOVS     R0,SP
   \   0000005C   ........           BL       Str2Int
   \   00000060   000050E3           CMP      R0,#+0
   \   00000064   0200001A           BNE      ??GetIntegerInput_5
    149          			SerialPutString("Error, Input again: \r\n");
   \   00000068   14009FE5           LDR      R0,??GetIntegerInput_3+0x4  ;; `?<Constant "Error, Input again: \\r\\n">`
   \   0000006C   ........           BL       SerialPutString
   \   00000070   E5FFFFEA           B        ??GetIntegerInput_0
    150          		else return 1;	
   \                     ??GetIntegerInput_5:
   \   00000074   0100A0E3           MOV      R0,#+1
   \                     ??GetIntegerInput_4:
   \   00000078   10D08DE2           ADD      SP,SP,#+16       ;; stack cleaning
   \   0000007C   1080BDE8           POP      {R4,PC}          ;; return
   \                     ??GetIntegerInput_3:
   \   00000080   ........           DC32     `?<Constant "User Cancelled \\r\\n">`
   \   00000084   ........           DC32     `?<Constant "Error, Input again: \\r\\n">`
    151          	}
    152          }
    153          
    154          /*******************************************************************************
    155          * Function Name  : SerialKeyPressed
    156          * Description    : Test to see if a key has been pressed on the HyperTerminal
    157          * Input          : The key pressed
    158          * Return         : 1 -- Correct
    159                           : 0 -- Error
    160          *******************************************************************************/

   \                                 In segment CODE_Flash, align 4, keep-with-next
    161          u32 SerialKeyPressed(char *key)
    162          {
   \                     SerialKeyPressed:
   \   00000000   0010B0E1           MOVS     R1,R0
    163             	if (UART0->SR & UART_RxBufFull)
   \   00000004   5301A0E3           MOV      R0,#-1073741804
   \   00000008   400C80E3           ORR      R0,R0,#0x4000
   \   0000000C   B000D0E1           LDRH     R0,[R0, #+0]
   \   00000010   010010E3           TST      R0,#0x1
   \   00000014   0500000A           BEQ      ??SerialKeyPressed_0
    164             	{
    165             		*key = (char)UART0->RxBUFR;
   \   00000018   8C02A0E3           MOV      R0,#-1073741816
   \   0000001C   400C80E3           ORR      R0,R0,#0x4000
   \   00000020   B000D0E1           LDRH     R0,[R0, #+0]
   \   00000024   0000C1E5           STRB     R0,[R1, #+0]
    166             		return 1;
   \   00000028   0100A0E3           MOV      R0,#+1
   \   0000002C   000000EA           B        ??SerialKeyPressed_1
    167             	}
    168             	else
    169             		return 0;
   \                     ??SerialKeyPressed_0:
   \   00000030   0000A0E3           MOV      R0,#+0
   \                     ??SerialKeyPressed_1:
   \   00000034   0EF0A0E1           MOV      PC,LR            ;; return
    170          }
    171          /*******************************************************************************
    172          * Function Name  : GetKey
    173          * Description    : Get a key from the HyperTerminal
    174          * Input          : None
    175          * Return         : The Key Pressed
    176          *******************************************************************************/

   \                                 In segment CODE_Flash, align 4, keep-with-next
    177          u8 GetKey(void)
    178          {
   \                     GetKey:
   \   00000000   00402DE9           PUSH     {LR}
   \   00000004   04D04DE2           SUB      SP,SP,#+4
    179            u8 key;
    180            /* First clear Rx buffer */
    181            UART_FifoReset(UART0,UART_RxFIFO);
   \   00000008   0010A0E3           MOV      R1,#+0
   \   0000000C   C004A0E3           MOV      R0,#-1073741824
   \   00000010   400C80E3           ORR      R0,R0,#0x4000
   \   00000014   ........           _BLF     UART_FifoReset,??UART_FifoReset??rA
    182          	
    183            /* Then, waiting for user input */
    184            while (1)
    185            {
    186              if (SerialKeyPressed((char*)&key)) break;
   \                     ??GetKey_0:
   \   00000018   0D00B0E1           MOVS     R0,SP
   \   0000001C   ........           BL       SerialKeyPressed
   \   00000020   000050E3           CMP      R0,#+0
   \   00000024   FBFFFF0A           BEQ      ??GetKey_0
    187            }
    188            return key;
   \   00000028   0000DDE5           LDRB     R0,[SP, #+0]
   \   0000002C   04D08DE2           ADD      SP,SP,#+4        ;; stack cleaning
   \   00000030   0080BDE8           POP      {PC}             ;; return
    189          }
    190          
    191          /*******************************************************************************

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91福利视频久久久久| 国产成人丝袜美腿| 欧日韩精品视频| 国产成人小视频| 亚洲国产成人porn| 最新热久久免费视频| 日韩欧美一区在线| 欧美午夜精品电影| 99在线精品一区二区三区| 国产精品亚洲人在线观看| 毛片一区二区三区| 三级亚洲高清视频| 天堂午夜影视日韩欧美一区二区| 国产精品视频观看| 国产精品国产自产拍在线| 久久亚洲二区三区| 国产欧美一区二区精品久导航| 精品国产91亚洲一区二区三区婷婷| 欧美精选一区二区| 日韩欧美在线综合网| 日韩欧美一区二区三区在线| 欧美精品一二三四| 精品少妇一区二区三区在线视频| 欧美一区二区在线免费观看| 884aa四虎影成人精品一区| 欧美人妖巨大在线| 欧美不卡一区二区三区四区| 久久久电影一区二区三区| 国产精品欧美一级免费| 亚洲精品成人天堂一二三| 爽好久久久欧美精品| 看电影不卡的网站| 国产成人av一区二区三区在线| 94-欧美-setu| 日韩欧美你懂的| 亚洲天堂av一区| 日韩精品久久理论片| 91.麻豆视频| 国产精品伦理一区二区| 亚洲mv在线观看| 高清av一区二区| 在线播放日韩导航| 中文字幕欧美国产| 日本aⅴ亚洲精品中文乱码| 懂色av一区二区三区免费观看| 欧美无乱码久久久免费午夜一区| 337p粉嫩大胆色噜噜噜噜亚洲 | 91亚洲国产成人精品一区二区三| 欧美美女喷水视频| 亚洲免费观看高清完整| 狠狠色综合播放一区二区| 欧美日韩免费在线视频| 自拍偷拍亚洲激情| 成人精品在线视频观看| 欧美大片在线观看一区二区| 亚洲一区二区欧美激情| 91在线观看地址| 最新中文字幕一区二区三区| 国产成人在线视频网址| 精品久久久久久久久久久院品网| 午夜精品久久久久久久久久| 99视频一区二区| 国产精品每日更新在线播放网址| 韩国v欧美v亚洲v日本v| 欧美tickle裸体挠脚心vk| 婷婷成人激情在线网| 欧美日韩亚洲丝袜制服| 亚洲一区在线播放| 欧美日韩黄色影视| 日本亚洲天堂网| 日韩欧美一区在线| 国产在线视频一区二区三区| 精品国产乱码久久久久久久| 麻豆精品国产91久久久久久| 日韩一区二区三免费高清| 狠狠色丁香婷综合久久| 久久久精品免费观看| 岛国精品一区二区| 一区二区三区欧美在线观看| 欧美性生活一区| 麻豆一区二区99久久久久| 久久久久久久久蜜桃| jlzzjlzz亚洲女人18| 婷婷综合五月天| 欧美激情艳妇裸体舞| 欧美日韩中文一区| 久久爱另类一区二区小说| 国产精品少妇自拍| 欧美日韩视频专区在线播放| 国产真实乱子伦精品视频| 亚洲久本草在线中文字幕| 欧美不卡一二三| 欧美日韩国产精选| 成人性视频网站| 另类小说一区二区三区| 亚洲精品久久7777| 欧美极品xxx| 日韩欧美亚洲国产精品字幕久久久| www.亚洲免费av| 激情欧美一区二区| 日韩福利电影在线| 亚洲综合图片区| 国产精品久久一卡二卡| 日韩欧美中文字幕一区| 4438x成人网最大色成网站| 波多野结衣亚洲| 国产盗摄一区二区| 韩国三级在线一区| 看电视剧不卡顿的网站| 一区二区三区在线观看欧美| 中文字幕精品在线不卡| 欧美激情一区在线| 中文字幕av不卡| 亚洲天堂福利av| 亚洲欧美精品午睡沙发| 亚洲免费大片在线观看| 国产精品看片你懂得| 中文幕一区二区三区久久蜜桃| 2023国产精品| 国产欧美日韩综合| 国产精品网曝门| 亚洲欧美日韩国产另类专区| 亚洲欧美日韩综合aⅴ视频| 中文字幕一区二区不卡| 亚洲九九爱视频| 奇米精品一区二区三区四区| 蜜桃久久av一区| 国产成人aaa| 在线看不卡av| 久久综合久久综合久久综合| 日韩欧美一区二区在线视频| 精品国产乱码久久久久久牛牛| 国产视频一区不卡| 亚洲高清一区二区三区| 奇米精品一区二区三区四区| 韩国三级在线一区| 97久久久精品综合88久久| 欧美三级中文字幕在线观看| 日韩亚洲欧美综合| 中文字幕中文字幕在线一区 | 精品处破学生在线二十三| 综合电影一区二区三区| 麻豆精品视频在线观看视频| 成人性色生活片免费看爆迷你毛片| 99视频在线精品| 精品日韩欧美在线| 亚洲午夜久久久| 99久久精品国产导航| 日韩精品一区二区三区视频| 亚洲一区在线观看网站| 国产a精品视频| 欧美一级在线免费| 亚洲综合一区二区| www.欧美.com| 国产欧美在线观看一区| 久久综合综合久久综合| 91官网在线免费观看| 亚洲欧洲成人自拍| 成人午夜伦理影院| 久久久久国产免费免费 | 欧美无人高清视频在线观看| 欧美国产日韩a欧美在线观看| 美女视频黄久久| 日韩欧美另类在线| 奇米一区二区三区av| 在线播放中文一区| 日韩成人一区二区三区在线观看| 欧美性欧美巨大黑白大战| 亚洲色欲色欲www| 91美女在线看| 成人小视频免费在线观看| 国产调教视频一区| 不卡av免费在线观看| 国产精品乱码一区二三区小蝌蚪| 国产成人在线视频网站| 国产精品免费av| 91日韩精品一区| 舔着乳尖日韩一区| 日韩精品一区二区三区中文不卡| 激情欧美一区二区三区在线观看| 久久精品免视看| 99久久精品一区| 日韩精品视频网站| 久久精品人人做人人爽人人| 高清shemale亚洲人妖| 亚洲六月丁香色婷婷综合久久| 欧美写真视频网站| 国产在线精品一区二区| 亚洲欧洲无码一区二区三区| 欧美亚洲动漫另类| 久久精品国产精品亚洲红杏| 国产亚洲制服色| 欧美日韩aaa| av午夜一区麻豆| 久久国产生活片100| 亚洲久草在线视频| 国产日韩精品一区二区浪潮av| 91在线播放网址| 国产福利精品导航| 首页国产欧美久久|