2025-12-16 16:59:36 +08:00
|
|
|
|
C51 COMPILER V9.01 GPIO 12/16/2025 16:53:47 PAGE 1
|
2025-12-15 20:48:52 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
C51 COMPILER V9.01, COMPILATION OF MODULE GPIO
|
|
|
|
|
|
OBJECT MODULE PLACED IN .\Objects\GPIO.obj
|
|
|
|
|
|
COMPILER INVOKED BY: D:\Keil_v5\C51\BIN\C51.EXE GPIO.c OPTIMIZE(8,SPEED) BROWSE DEBUG OBJECTEXTEND PRINT(.\Listings\GPIO
|
|
|
|
|
|
-.lst) OBJECT(.\Objects\GPIO.obj)
|
|
|
|
|
|
|
|
|
|
|
|
line level source
|
|
|
|
|
|
|
|
|
|
|
|
1 #include "GPIO.h"
|
|
|
|
|
|
2
|
|
|
|
|
|
3 //========================================================================
|
|
|
|
|
|
4 // <20><><EFBFBD><EFBFBD>: u8 GPIO_Inilize(u8 GPIO, GPIO_InitTypeDef *GPIOx)
|
|
|
|
|
|
5 // <20><><EFBFBD><EFBFBD>: <20><>ʼ<EFBFBD><CABC>IO<49><4F>.
|
|
|
|
|
|
6 // <20><><EFBFBD><EFBFBD>: GPIOx: <20>ṹ<EFBFBD><E1B9B9><EFBFBD><EFBFBD>,<2C><><EFBFBD>ο<EFBFBD>timer.h<><68><EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD>.
|
|
|
|
|
|
7 // <20><><EFBFBD><EFBFBD>: <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>0, <20>ղ<EFBFBD><D5B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1,<2C><><EFBFBD><EFBFBD>2.
|
|
|
|
|
|
8 // <20>汾: V1.0, 2012-10-22
|
|
|
|
|
|
9 //========================================================================
|
|
|
|
|
|
10 u8 GPIO_Inilize(u8 GPIO, GPIO_InitTypeDef *GPIOx)
|
|
|
|
|
|
11 {
|
|
|
|
|
|
12 1 if(GPIO > GPIO_P7) return 1; //<2F>ղ<EFBFBD><D5B2><EFBFBD>
|
|
|
|
|
|
13 1 if(GPIOx->Mode > GPIO_OUT_PP) return 2; //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
14 1 if(GPIO == GPIO_P0)
|
|
|
|
|
|
15 1 {
|
|
|
|
|
|
16 2 if(GPIOx->Mode == GPIO_PullUp) P0M1 &= ~GPIOx->Pin, P0M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD>˫<D7BC><CBAB><EFBFBD><EFBFBD>
|
|
|
|
|
|
17 2 if(GPIOx->Mode == GPIO_HighZ) P0M1 |= GPIOx->Pin, P0M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
18 2 if(GPIOx->Mode == GPIO_OUT_OD) P0M1 |= GPIOx->Pin, P0M0 |= GPIOx->Pin; //<2F><>©<EFBFBD><C2A9><EFBFBD><EFBFBD>
|
|
|
|
|
|
19 2 if(GPIOx->Mode == GPIO_OUT_PP) P0M1 &= ~GPIOx->Pin, P0M0 |= GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
20 2 }
|
|
|
|
|
|
21 1 if(GPIO == GPIO_P1)
|
|
|
|
|
|
22 1 {
|
|
|
|
|
|
23 2 if(GPIOx->Mode == GPIO_PullUp) P1M1 &= ~GPIOx->Pin, P1M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD>˫<D7BC><CBAB><EFBFBD><EFBFBD>
|
|
|
|
|
|
24 2 if(GPIOx->Mode == GPIO_HighZ) P1M1 |= GPIOx->Pin, P1M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
25 2 if(GPIOx->Mode == GPIO_OUT_OD) P1M1 |= GPIOx->Pin, P1M0 |= GPIOx->Pin; //<2F><>©<EFBFBD><C2A9><EFBFBD><EFBFBD>
|
|
|
|
|
|
26 2 if(GPIOx->Mode == GPIO_OUT_PP) P1M1 &= ~GPIOx->Pin, P1M0 |= GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
27 2 }
|
|
|
|
|
|
28 1 if(GPIO == GPIO_P2)
|
|
|
|
|
|
29 1 {
|
|
|
|
|
|
30 2 if(GPIOx->Mode == GPIO_PullUp) P2M1 &= ~GPIOx->Pin, P2M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD>˫<D7BC><CBAB><EFBFBD><EFBFBD>
|
|
|
|
|
|
31 2 if(GPIOx->Mode == GPIO_HighZ) P2M1 |= GPIOx->Pin, P2M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
32 2 if(GPIOx->Mode == GPIO_OUT_OD) P2M1 |= GPIOx->Pin, P2M0 |= GPIOx->Pin; //<2F><>©<EFBFBD><C2A9><EFBFBD><EFBFBD>
|
|
|
|
|
|
33 2 if(GPIOx->Mode == GPIO_OUT_PP) P2M1 &= ~GPIOx->Pin, P2M0 |= GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
34 2 }
|
|
|
|
|
|
35 1 if(GPIO == GPIO_P3)
|
|
|
|
|
|
36 1 {
|
|
|
|
|
|
37 2 if(GPIOx->Mode == GPIO_PullUp) P3M1 &= ~GPIOx->Pin, P3M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD>˫<D7BC><CBAB><EFBFBD><EFBFBD>
|
|
|
|
|
|
38 2 if(GPIOx->Mode == GPIO_HighZ) P3M1 |= GPIOx->Pin, P3M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
39 2 if(GPIOx->Mode == GPIO_OUT_OD) P3M1 |= GPIOx->Pin, P3M0 |= GPIOx->Pin; //<2F><>©<EFBFBD><C2A9><EFBFBD><EFBFBD>
|
|
|
|
|
|
40 2 if(GPIOx->Mode == GPIO_OUT_PP) P3M1 &= ~GPIOx->Pin, P3M0 |= GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
41 2 }
|
|
|
|
|
|
42 1 if(GPIO == GPIO_P4)
|
|
|
|
|
|
43 1 {
|
|
|
|
|
|
44 2 if(GPIOx->Mode == GPIO_PullUp) P4M1 &= ~GPIOx->Pin, P4M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD>˫<D7BC><CBAB><EFBFBD><EFBFBD>
|
|
|
|
|
|
45 2 if(GPIOx->Mode == GPIO_HighZ) P4M1 |= GPIOx->Pin, P4M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
46 2 if(GPIOx->Mode == GPIO_OUT_OD) P4M1 |= GPIOx->Pin, P4M0 |= GPIOx->Pin; //<2F><>©<EFBFBD><C2A9><EFBFBD><EFBFBD>
|
|
|
|
|
|
47 2 if(GPIOx->Mode == GPIO_OUT_PP) P4M1 &= ~GPIOx->Pin, P4M0 |= GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
48 2 }
|
|
|
|
|
|
49 1 if(GPIO == GPIO_P5)
|
|
|
|
|
|
50 1 {
|
|
|
|
|
|
51 2 if(GPIOx->Mode == GPIO_PullUp) P5M1 &= ~GPIOx->Pin, P5M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD>˫<D7BC><CBAB><EFBFBD><EFBFBD>
|
|
|
|
|
|
52 2 if(GPIOx->Mode == GPIO_HighZ) P5M1 |= GPIOx->Pin, P5M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
53 2 if(GPIOx->Mode == GPIO_OUT_OD) P5M1 |= GPIOx->Pin, P5M0 |= GPIOx->Pin; //<2F><>©<EFBFBD><C2A9><EFBFBD><EFBFBD>
|
|
|
|
|
|
54 2 if(GPIOx->Mode == GPIO_OUT_PP) P5M1 &= ~GPIOx->Pin, P5M0 |= GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
2025-12-16 16:59:36 +08:00
|
|
|
|
C51 COMPILER V9.01 GPIO 12/16/2025 16:53:47 PAGE 2
|
2025-12-15 20:48:52 +08:00
|
|
|
|
|
|
|
|
|
|
55 2 }
|
|
|
|
|
|
56 1 if(GPIO == GPIO_P6)
|
|
|
|
|
|
57 1 {
|
|
|
|
|
|
58 2 if(GPIOx->Mode == GPIO_PullUp) P6M1 &= ~GPIOx->Pin, P6M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD>˫<D7BC><CBAB><EFBFBD><EFBFBD>
|
|
|
|
|
|
59 2 if(GPIOx->Mode == GPIO_HighZ) P6M1 |= GPIOx->Pin, P6M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
60 2 if(GPIOx->Mode == GPIO_OUT_OD) P6M1 |= GPIOx->Pin, P6M0 |= GPIOx->Pin; //<2F><>©<EFBFBD><C2A9><EFBFBD><EFBFBD>
|
|
|
|
|
|
61 2 if(GPIOx->Mode == GPIO_OUT_PP) P6M1 &= ~GPIOx->Pin, P6M0 |= GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
62 2 }
|
|
|
|
|
|
63 1 if(GPIO == GPIO_P7)
|
|
|
|
|
|
64 1 {
|
|
|
|
|
|
65 2 if(GPIOx->Mode == GPIO_PullUp) P7M1 &= ~GPIOx->Pin, P7M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD>˫<D7BC><CBAB><EFBFBD><EFBFBD>
|
|
|
|
|
|
66 2 if(GPIOx->Mode == GPIO_HighZ) P7M1 |= GPIOx->Pin, P7M0 &= ~GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
67 2 if(GPIOx->Mode == GPIO_OUT_OD) P7M1 |= GPIOx->Pin, P7M0 |= GPIOx->Pin; //<2F><>©<EFBFBD><C2A9><EFBFBD><EFBFBD>
|
|
|
|
|
|
68 2 if(GPIOx->Mode == GPIO_OUT_PP) P7M1 &= ~GPIOx->Pin, P7M0 |= GPIOx->Pin; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
69 2 }
|
|
|
|
|
|
70 1 return 0; //<2F>ɹ<EFBFBD>
|
|
|
|
|
|
71 1 }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
MODULE INFORMATION: STATIC OVERLAYABLE
|
|
|
|
|
|
CODE SIZE = 596 ----
|
|
|
|
|
|
CONSTANT SIZE = ---- ----
|
|
|
|
|
|
XDATA SIZE = ---- ----
|
|
|
|
|
|
PDATA SIZE = ---- ----
|
|
|
|
|
|
DATA SIZE = ---- ----
|
|
|
|
|
|
IDATA SIZE = ---- ----
|
|
|
|
|
|
BIT SIZE = ---- ----
|
|
|
|
|
|
END OF MODULE INFORMATION.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
|