├── .gitattributes
├── DebugConfig
├── STM32F103C8T6_STM32F103C8_1.0.0.dbgconf
└── Target_1_STM32F103C8_1.0.0.dbgconf
├── EvalBoard
├── DPV0_DRV
│ ├── dp_if.c
│ ├── dp_if.h
│ ├── dp_inc.h
│ ├── dp_isr.c
│ └── dpl_list.h
├── DpAppl.c
├── DpAppl.h
├── DpCfg.c
├── DpCfg.h
├── DpDiag.c
├── DpPrm.c
├── Ext
│ ├── DpDebug.c
│ ├── DpDebug.h
│ ├── STARTUP.ASM
│ ├── Serio.c
│ ├── extsnd1.h
│ ├── hard.h
│ ├── lcd.c
│ ├── lcd.h
│ ├── regsnd1.h
│ ├── serio.h
│ ├── twi.c
│ └── twi.h
├── GSD
│ ├── EASY4711.gsd
│ ├── EASY_1N.bmp
│ ├── EASY_1N.dib
│ └── EASY_1S.bmp
├── main.c
└── platform.h
├── EventRecorderStub.scvd
├── Firmware
└── Customer
│ ├── DPV0_DRV
│ ├── dp_if.c
│ ├── dp_if.h
│ ├── dp_inc.h
│ ├── dp_inc.h~RF13de7da9.TMP
│ ├── dp_isr.c
│ └── dpl_list.h
│ ├── DpAppl.c
│ ├── DpCfg.c
│ ├── DpDiag.c
│ ├── DpPrm.c
│ ├── GSD
│ ├── EASY4711.gsd
│ ├── EASY_1N.bmp
│ ├── EASY_1N.dib
│ ├── EASY_1S.bmp
│ └── Thumbs.db
│ └── Inc
│ ├── DpAppl.h
│ ├── DpCfg.h
│ └── platform.h
├── Listings
├── SPI_TESZT_VPC3.map
└── startup_stm32f10x_md.lst
├── Main.c
├── Objects
├── ExtDll.iex
├── SPI_TESZT_VPC3.axf
├── SPI_TESZT_VPC3.build_log.htm
├── SPI_TESZT_VPC3.htm
├── SPI_TESZT_VPC3.lnp
├── SPI_TESZT_VPC3.sct
├── SPI_TESZT_VPC3_STM32F103C8T6.dep
├── delay.crf
├── delay.d
├── delay.o
├── dp_if.crf
├── dp_if.d
├── dp_if.o
├── dp_isr.crf
├── dp_isr.d
├── dp_isr.o
├── dpappl.crf
├── dpappl.d
├── dpappl.o
├── dpcfg.crf
├── dpcfg.d
├── dpcfg.o
├── dpdiag.crf
├── dpdiag.d
├── dpdiag.o
├── dpprm.crf
├── dpprm.d
├── dpprm.o
├── fw_main.crf
├── fw_main.d
├── fw_main.o
├── gpio_stm32f10x.crf
├── gpio_stm32f10x.d
├── gpio_stm32f10x.o
├── hd44780.crf
├── hd44780.d
├── hd44780.o
├── lcd16x2.crf
├── lcd16x2.d
├── lcd16x2.o
├── main.crf
├── main.d
├── main.o
├── misc.crf
├── misc.d
├── misc.o
├── periph_init.crf
├── periph_init.d
├── periph_init.o
├── spi_vpc3.crf
├── spi_vpc3.d
├── spi_vpc3.o
├── startup_stm32f10x_md.d
├── startup_stm32f10x_md.o
├── stm32f10x_exti.crf
├── stm32f10x_exti.d
├── stm32f10x_exti.o
├── stm32f10x_gpio.crf
├── stm32f10x_gpio.d
├── stm32f10x_gpio.o
├── stm32f10x_rcc.crf
├── stm32f10x_rcc.d
├── stm32f10x_rcc.o
├── stm32f10x_spi.crf
├── stm32f10x_spi.d
├── stm32f10x_spi.o
├── stm32f10x_tim.crf
├── stm32f10x_tim.d
├── stm32f10x_tim.o
├── stm_my_lcd16x2.d
├── system_stm32f10x.crf
├── system_stm32f10x.d
├── system_stm32f10x.o
├── test.crf
├── test.d
├── test.o
├── vpc3.crf
├── vpc3.d
└── vpc3.o
├── README.md
├── RTE
├── Device
│ └── STM32F103C8
│ │ ├── RTE_Device.h
│ │ ├── startup_stm32f10x_md.s
│ │ ├── stm32f10x_conf.h
│ │ └── system_stm32f10x.c
├── _STM32F103C8T6
│ └── RTE_Components.h
└── _Target_1
│ └── RTE_Components.h
├── SPI_TESZT_VPC3.uvguix.tanyigergo
├── SPI_TESZT_VPC3.uvoptx
├── SPI_TESZT_VPC3.uvprojx
├── Test
├── test.c
└── test.h
├── delay.c
├── inc
├── delay.h
├── lcd16x2.h
├── periph_init.h
├── vpc3.h
├── vpc3.h~RF12ad5b58.TMP
├── vpc3.h~RFde33637.TMP
└── vpc3.h~RFf03af17.TMP
├── lcd16x2.c
├── periph_init.c
├── readme.txt
└── vpc3.c
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
--------------------------------------------------------------------------------
/DebugConfig/STM32F103C8T6_STM32F103C8_1.0.0.dbgconf:
--------------------------------------------------------------------------------
1 | // <<< Use Configuration Wizard in Context Menu >>>
2 | // Debug MCU Configuration
3 | // DBG_SLEEP
4 | // Debug Sleep Mode
5 | // 0: (FCLK=On, HCLK=Off) FCLK is clocked by the system clock as previously configured by the software while HCLK is disabled
6 | // 1: (FCLK=On, HCLK=On) HCLK is fed by the same clock that is provided to FCLK
7 | // DBG_STOP
8 | // Debug Stop Mode
9 | // 0: (FCLK=Off, HCLK=Off) Clock controller disables all clocks
10 | // 1: (FCLK=On, HCLK=On) FCLK and HCLK are provided by the internal RC oscillator which remains active
11 | // DBG_STANDBY
12 | // Debug Standby Mode
13 | // 0: (FCLK=Off, HCLK=Off) The whole digital part is unpowered.
14 | // 1: (FCLK=On, HCLK=On) Digital part is powered and FCLK and HCLK are provided by the internal RC oscillator which remains active
15 | // DBG_IWDG_STOP
16 | // Debug independent watchdog stopped when core is halted
17 | // 0: The watchdog counter clock continues even if the core is halted
18 | // 1: The watchdog counter clock is stopped when the core is halted
19 | // DBG_WWDG_STOP
20 | // Debug window watchdog stopped when core is halted
21 | // 0: The window watchdog counter clock continues even if the core is halted
22 | // 1: The window watchdog counter clock is stopped when the core is halted
23 | // DBG_TIM1_STOP
24 | // Timer 1 counter stopped when core is halted
25 | // 0: The clock of the involved Timer Counter is fed even if the core is halted
26 | // 1: The clock of the involved Timer counter is stopped when the core is halted
27 | // DBG_TIM2_STOP
28 | // Timer 2 counter stopped when core is halted
29 | // 0: The clock of the involved Timer Counter is fed even if the core is halted
30 | // 1: The clock of the involved Timer counter is stopped when the core is halted
31 | // DBG_TIM3_STOP
32 | // Timer 3 counter stopped when core is halted
33 | // 0: The clock of the involved Timer Counter is fed even if the core is halted
34 | // 1: The clock of the involved Timer counter is stopped when the core is halted
35 | // DBG_TIM4_STOP
36 | // Timer 4 counter stopped when core is halted
37 | // 0: The clock of the involved Timer Counter is fed even if the core is halted
38 | // 1: The clock of the involved Timer counter is stopped when the core is halted
39 | // DBG_CAN1_STOP
40 | // Debug CAN1 stopped when Core is halted
41 | // 0: Same behavior as in normal mode
42 | // 1: CAN1 receive registers are frozen
43 | // DBG_I2C1_SMBUS_TIMEOUT
44 | // I2C1 SMBUS timeout mode stopped when Core is halted
45 | // 0: Same behavior as in normal mode
46 | // 1: The SMBUS timeout is frozen
47 | // DBG_I2C2_SMBUS_TIMEOUT
48 | // I2C2 SMBUS timeout mode stopped when Core is halted
49 | // 0: Same behavior as in normal mode
50 | // 1: The SMBUS timeout is frozen
51 | // DBG_TIM8_STOP
52 | // Timer 8 counter stopped when core is halted
53 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
54 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
55 | // DBG_TIM5_STOP
56 | // Timer 5 counter stopped when core is halted
57 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
58 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
59 | // DBG_TIM6_STOP
60 | // Timer 6 counter stopped when core is halted
61 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
62 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
63 | // DBG_TIM7_STOP
64 | // Timer 7 counter stopped when core is halted
65 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
66 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
67 | // DBG_CAN2_STOP
68 | // Debug CAN2 stopped when Core is halted
69 | // 0: Same behavior as in normal mode
70 | // 1: CAN2 receive registers are frozen
71 | // DBG_TIM12_STOP
72 | // Timer 12 counter stopped when core is halted
73 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
74 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
75 | // DBG_TIM13_STOP
76 | // Timer 13 counter stopped when core is halted
77 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
78 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
79 | // DBG_TIM14_STOP
80 | // Timer 14 counter stopped when core is halted
81 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
82 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
83 | // DBG_TIM9_STOP
84 | // Timer 9 counter stopped when core is halted
85 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
86 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
87 | // DBG_TIM10_STOP
88 | // Timer 10 counter stopped when core is halted
89 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
90 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
91 | // DBG_TIM11_STOP
92 | // Timer 11 counter stopped when core is halted
93 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
94 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
95 | //
96 | DbgMCU_CR = 0x00000007;
97 | // <<< end of configuration section >>>
--------------------------------------------------------------------------------
/DebugConfig/Target_1_STM32F103C8_1.0.0.dbgconf:
--------------------------------------------------------------------------------
1 | // <<< Use Configuration Wizard in Context Menu >>>
2 | // Debug MCU Configuration
3 | // DBG_SLEEP
4 | // Debug Sleep Mode
5 | // 0: (FCLK=On, HCLK=Off) FCLK is clocked by the system clock as previously configured by the software while HCLK is disabled
6 | // 1: (FCLK=On, HCLK=On) HCLK is fed by the same clock that is provided to FCLK
7 | // DBG_STOP
8 | // Debug Stop Mode
9 | // 0: (FCLK=Off, HCLK=Off) Clock controller disables all clocks
10 | // 1: (FCLK=On, HCLK=On) FCLK and HCLK are provided by the internal RC oscillator which remains active
11 | // DBG_STANDBY
12 | // Debug Standby Mode
13 | // 0: (FCLK=Off, HCLK=Off) The whole digital part is unpowered.
14 | // 1: (FCLK=On, HCLK=On) Digital part is powered and FCLK and HCLK are provided by the internal RC oscillator which remains active
15 | // DBG_IWDG_STOP
16 | // Debug independent watchdog stopped when core is halted
17 | // 0: The watchdog counter clock continues even if the core is halted
18 | // 1: The watchdog counter clock is stopped when the core is halted
19 | // DBG_WWDG_STOP
20 | // Debug window watchdog stopped when core is halted
21 | // 0: The window watchdog counter clock continues even if the core is halted
22 | // 1: The window watchdog counter clock is stopped when the core is halted
23 | // DBG_TIM1_STOP
24 | // Timer 1 counter stopped when core is halted
25 | // 0: The clock of the involved Timer Counter is fed even if the core is halted
26 | // 1: The clock of the involved Timer counter is stopped when the core is halted
27 | // DBG_TIM2_STOP
28 | // Timer 2 counter stopped when core is halted
29 | // 0: The clock of the involved Timer Counter is fed even if the core is halted
30 | // 1: The clock of the involved Timer counter is stopped when the core is halted
31 | // DBG_TIM3_STOP
32 | // Timer 3 counter stopped when core is halted
33 | // 0: The clock of the involved Timer Counter is fed even if the core is halted
34 | // 1: The clock of the involved Timer counter is stopped when the core is halted
35 | // DBG_TIM4_STOP
36 | // Timer 4 counter stopped when core is halted
37 | // 0: The clock of the involved Timer Counter is fed even if the core is halted
38 | // 1: The clock of the involved Timer counter is stopped when the core is halted
39 | // DBG_CAN1_STOP
40 | // Debug CAN1 stopped when Core is halted
41 | // 0: Same behavior as in normal mode
42 | // 1: CAN1 receive registers are frozen
43 | // DBG_I2C1_SMBUS_TIMEOUT
44 | // I2C1 SMBUS timeout mode stopped when Core is halted
45 | // 0: Same behavior as in normal mode
46 | // 1: The SMBUS timeout is frozen
47 | // DBG_I2C2_SMBUS_TIMEOUT
48 | // I2C2 SMBUS timeout mode stopped when Core is halted
49 | // 0: Same behavior as in normal mode
50 | // 1: The SMBUS timeout is frozen
51 | // DBG_TIM8_STOP
52 | // Timer 8 counter stopped when core is halted
53 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
54 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
55 | // DBG_TIM5_STOP
56 | // Timer 5 counter stopped when core is halted
57 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
58 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
59 | // DBG_TIM6_STOP
60 | // Timer 6 counter stopped when core is halted
61 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
62 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
63 | // DBG_TIM7_STOP
64 | // Timer 7 counter stopped when core is halted
65 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
66 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
67 | // DBG_CAN2_STOP
68 | // Debug CAN2 stopped when Core is halted
69 | // 0: Same behavior as in normal mode
70 | // 1: CAN2 receive registers are frozen
71 | // DBG_TIM12_STOP
72 | // Timer 12 counter stopped when core is halted
73 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
74 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
75 | // DBG_TIM13_STOP
76 | // Timer 13 counter stopped when core is halted
77 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
78 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
79 | // DBG_TIM14_STOP
80 | // Timer 14 counter stopped when core is halted
81 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
82 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
83 | // DBG_TIM9_STOP
84 | // Timer 9 counter stopped when core is halted
85 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
86 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
87 | // DBG_TIM10_STOP
88 | // Timer 10 counter stopped when core is halted
89 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
90 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
91 | // DBG_TIM11_STOP
92 | // Timer 11 counter stopped when core is halted
93 | // 0: The clock of the involved timer counter is fed even if the core is halted, and the outputs behave normally.
94 | // 1: The clock of the involved timer counter is stopped when the core is halted, and the outputs are disabled (as if there were an emergency stop in response to a break event).
95 | //
96 | DbgMCU_CR = 0x00000007;
97 | // <<< end of configuration section >>>
--------------------------------------------------------------------------------
/EvalBoard/DPV0_DRV/dp_if.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/DPV0_DRV/dp_if.c
--------------------------------------------------------------------------------
/EvalBoard/DPV0_DRV/dp_if.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/DPV0_DRV/dp_if.h
--------------------------------------------------------------------------------
/EvalBoard/DPV0_DRV/dp_inc.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/DPV0_DRV/dp_inc.h
--------------------------------------------------------------------------------
/EvalBoard/DPV0_DRV/dp_isr.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/DPV0_DRV/dp_isr.c
--------------------------------------------------------------------------------
/EvalBoard/DPV0_DRV/dpl_list.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/DPV0_DRV/dpl_list.h
--------------------------------------------------------------------------------
/EvalBoard/DpAppl.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/DpAppl.c
--------------------------------------------------------------------------------
/EvalBoard/DpAppl.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/DpAppl.h
--------------------------------------------------------------------------------
/EvalBoard/DpCfg.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/DpCfg.c
--------------------------------------------------------------------------------
/EvalBoard/DpCfg.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/DpCfg.h
--------------------------------------------------------------------------------
/EvalBoard/DpDiag.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/DpDiag.c
--------------------------------------------------------------------------------
/EvalBoard/DpPrm.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/DpPrm.c
--------------------------------------------------------------------------------
/EvalBoard/Ext/DpDebug.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/Ext/DpDebug.c
--------------------------------------------------------------------------------
/EvalBoard/Ext/DpDebug.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/Ext/DpDebug.h
--------------------------------------------------------------------------------
/EvalBoard/Ext/STARTUP.ASM:
--------------------------------------------------------------------------------
1 | ;------------------------------------------------------------------------------
2 | ; This file is part of the C-51 Compiler package
3 | ; Copyright KEIL ELEKTRONIK GmbH 1990
4 | ;------------------------------------------------------------------------------
5 | ; STARTUP.A51: This code is executed after processor reset.
6 | ;
7 | ; To translate this file use A51 with the following invocation:
8 | ;
9 | ; A51 STARTUP.A51
10 | ;
11 | ; To link the modified STARTUP.OBJ file to your application use the following
12 | ; L51 invocation:
13 | ;
14 | ; L51 , STARTUP.OBJ
15 | ;
16 | ;------------------------------------------------------------------------------
17 | ;
18 | ; User-defined Power-On Initialization of Memory
19 | ;
20 | ; With the following EQU statements the initialization of memory
21 | ; at processor reset can be defined:
22 | ;
23 | ; ; the absolute start-address of IDATA memory is always 0
24 | IDATALEN EQU 80H ; the length of IDATA memory in bytes.
25 | ;
26 | XDATASTART EQU 0000H ; the absolute start-address of XDATA memory
27 | XDATALEN EQU 7FFFH ; the length of XDATA memory in bytes.
28 | ;
29 | PDATASTART EQU 0000H ; the absolute start-address of PDATA memory
30 | PDATALEN EQU 0H ; the length of PDATA memory in bytes.
31 | ;
32 | ; Notes: The IDATA space overlaps physically the DATA and BIT areas of the
33 | ; 8051 CPU. At minimum the memory space occupied from the C-51
34 | ; run-time routines must be set to zero.
35 | ;------------------------------------------------------------------------------
36 | ;
37 | ; Reentrant Stack Initilization
38 | ;
39 | ; The following EQU statements define the stack pointer for reentrant
40 | ; functions and initialized it:
41 | ;
42 | ; Stack Space for reentrant functions in the SMALL model.
43 | IBPSTACK EQU 0 ; set to 1 if small reentrant is used.
44 | IBPSTACKTOP EQU 0FFH+1 ; set top of stack to highest location+1.
45 | ;
46 | ; Stack Space for reentrant functions in the LARGE model.
47 | XBPSTACK EQU 0 ; set to 1 if large reentrant is used.
48 | XBPSTACKTOP EQU 0FFFFH+1; set top of stack to highest location+1.
49 | ;
50 | ; Stack Space for reentrant functions in the COMPACT model.
51 | PBPSTACK EQU 0 ; set to 1 if compact reentrant is used.
52 | PBPSTACKTOP EQU 0FFFFH+1; set top of stack to highest location+1.
53 | ;
54 | ;------------------------------------------------------------------------------
55 | ;
56 | ; Page Definition for Using the Compact Model with 64 KByte xdata RAM
57 | ;
58 | ; The following EQU statements define the xdata page used for pdata
59 | ; variables. The EQU PPAGE must conform with the PPAGE control used
60 | ; in the linker invocation.
61 | ;
62 | PPAGEENABLE EQU 1 ; set to 1 if pdata object are used.
63 | PPAGE EQU 00H ; define PPAGE number.
64 | ;
65 | ;------------------------------------------------------------------------------
66 |
67 | NAME ?C_STARTUP
68 |
69 |
70 | ?C_C51STARTUP SEGMENT CODE
71 | ?STACK SEGMENT IDATA
72 |
73 | RSEG ?STACK
74 | DS 1
75 |
76 | EXTRN CODE (?C_START)
77 | PUBLIC ?C_STARTUP
78 |
79 | CSEG AT 0
80 | ?C_STARTUP: LJMP STARTUP1
81 |
82 | RSEG ?C_C51STARTUP
83 |
84 | STARTUP1:
85 |
86 | IF IDATALEN <> 0
87 | MOV R0,#IDATALEN - 1
88 | CLR A
89 | IDATALOOP: MOV @R0,A
90 | DJNZ R0,IDATALOOP
91 | ENDIF
92 |
93 | IF XDATALEN <> 0
94 | MOV DPTR,#XDATASTART
95 | MOV R7,#LOW (XDATALEN)
96 | IF (LOW (XDATALEN)) <> 0
97 | MOV R6,#(HIGH XDATALEN) +1
98 | ELSE
99 | MOV R6,#HIGH (XDATALEN)
100 | ENDIF
101 | CLR A
102 | XDATALOOP: MOVX @DPTR,A
103 | INC DPTR
104 | DJNZ R7,XDATALOOP
105 | DJNZ R6,XDATALOOP
106 | ENDIF
107 |
108 | IF PDATALEN <> 0
109 | MOV R0,#PDATASTART
110 | MOV R7,LOW (PDATALEN)
111 | CLR A
112 | PDATALOOP: MOVX @R0,A
113 | INC R0
114 | DJNZ R7,PDATALOOP
115 | ENDIF
116 |
117 | IF IBPSTACK <> 0
118 | EXTRN DATA (?C_IBP)
119 |
120 | MOV ?C_IBP,#LOW IBPSTACKTOP
121 | ENDIF
122 |
123 | IF XBPSTACK <> 0
124 | EXTRN DATA (?C_XBP)
125 |
126 | MOV ?C_XBP,#HIGH XBPSTACKTOP
127 | MOV ?C_XBP+1,#LOW XBPSTACKTOP
128 | ENDIF
129 |
130 | IF PBPSTACK <> 0
131 | EXTRN DATA (?C_PBP)
132 | MOV ?C_PBP,#LOW PBPSTACKTOP
133 | ENDIF
134 |
135 | IF PPAGEENABLE <> 0
136 | MOV P2,#PPAGE
137 | ENDIF
138 |
139 | MOV SP,#?STACK-1
140 | LJMP ?C_START
141 |
142 | END
143 |
--------------------------------------------------------------------------------
/EvalBoard/Ext/Serio.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/Ext/Serio.c
--------------------------------------------------------------------------------
/EvalBoard/Ext/extsnd1.h:
--------------------------------------------------------------------------------
1 | /*H**************************************************************************
2 | * NAME: extsnd1.h
3 | *----------------------------------------------------------------------------
4 | * Copyright (c) 2003 Atmel.
5 | *----------------------------------------------------------------------------
6 | * RELEASE: c5132-demo-df-smc-2_0_0
7 | * REVISION: 1.7
8 | *----------------------------------------------------------------------------
9 | * PURPOSE:
10 | * This file is an extension to the regsnd1.h file.
11 | * It defines mask for registers.
12 | *****************************************************************************/
13 |
14 | #ifndef _EXTSND1_H_
15 | #define _EXTSND1_H_
16 |
17 | /*_____ I N C L U D E S ____________________________________________________*/
18 |
19 |
20 | /*_____ M A C R O S ________________________________________________________*/
21 |
22 | /* INTERNAL RESSOURCES */
23 |
24 | #define ERAM_SIZE 0x0800
25 | #define DRAM_SIZE 0x0080
26 | #define IRAM_SIZE 0x0100
27 | #define CODE_SIZE 0x10000
28 | #define BOOT_ADDRESS 0xF000
29 | #define BOOT_SIZE 0x1000
30 |
31 |
32 | /* INTERRUPT NUMBER */
33 |
34 | #define IRQ_INT0 0
35 | #define IRQ_T0 1
36 | #define IRQ_INT1 2
37 | #define IRQ_T1 3
38 | #define IRQ_UART 4
39 | #define IRQ_MP3 5
40 | #define IRQ_AUD 6
41 | #define IRQ_MMC 7
42 | #define IRQ_I2C 8
43 | #define IRQ_SPI 9
44 | #define IRQ_ADC 10
45 | #define IRQ_KBD 11
46 | #define IRQ_USB 13
47 |
48 |
49 | /* SYSTEM MANAGEMENT */
50 |
51 | #define MSK_SMOD1 0x80 /* PCON */
52 | #define MSK_SMOD0 0x40
53 | #define MSK_GF1 0x08
54 | #define MSK_GF0 0x04
55 | #define MSK_PD 0x02
56 | #define MSK_IDL 0x01
57 |
58 | #define MSK_EXT16 0x40 /* AUXR */
59 | #define MSK_M0 0x20
60 | #define MSK_DPHDIS 0x10
61 | #define MSK_XRS 0x0C
62 | #define MSK_EXTRAM 0x02
63 | #define MSK_AO 0x01
64 | #define ERAM_256 0x00
65 | #define ERAM_512 0x04
66 | #define ERAM_1024 0x08
67 | #define ERAM_2048 0x0C
68 |
69 | #define MSK_ENBOOT 0x20 /* AUXR1 */
70 | #define MSK_GF3 0x08
71 | #define MSK_DPS 0x01
72 |
73 |
74 | /* PLL & CLOCK */
75 |
76 | #define MSK_X2 0x01 /* CKCON */
77 | #define MSK_T0X2 0x02
78 | #define MSK_T1X2 0x04
79 | #define MSK_WDX2 0x40
80 |
81 | #define MSK_PLOCK 0x01 /* PLLCON */
82 | #define MSK_PLLEN 0x02
83 | #define MSK_PLLRES 0x08
84 |
85 |
86 | /* INTERRUPT */
87 |
88 | #define MSK_EAUD 0x40 /* IEN0 */
89 | #define MSK_EMP3 0x20
90 | #define MSK_ES 0x10
91 | #define MSK_ET1 0x08
92 | #define MSK_EX1 0x04
93 | #define MSK_ET0 0x02
94 | #define MSK_EX0 0x01
95 |
96 | #define MSK_EUSB 0x40 /* IEN1 */
97 | #define MSK_EKB 0x10
98 | #define MSK_EADC 0x08
99 | #define MSK_ESPI 0x04
100 | #define MSK_EI2C 0x02
101 | #define MSK_EMMC 0x01
102 |
103 |
104 | /* TIMERS */
105 |
106 | #define MSK_GATE1 0x80 /* TMOD */
107 | #define MSK_C_T1 0x40
108 | #define MSK_MO1 0x30
109 | #define MSK_GATE0 0x08
110 | #define MSK_C_T0 0x04
111 | #define MSK_MO0 0x03
112 |
113 |
114 | /* WATCHDOG */
115 |
116 | #define MSK_WTO 0x07 /* WDTPRG*/
117 |
118 |
119 | /* MP3 DECODER */
120 |
121 | #define MSK_MPANC 0x80 /* MP3STA */
122 | #define MSK_MPREQ 0x40
123 | #define MSK_ERRLAY 0x20
124 | #define MSK_ERRSYN 0x10
125 | #define MSK_ERRCRC 0x08
126 | #define MSK_MPFS1 0x04
127 | #define MSK_MPFS0 0x02
128 | #define MSK_MPVER 0x01
129 |
130 | #define MSK_MPFREQ 0x10 /* MP3STA1 */
131 | #define MSK_MPBREQ 0x08
132 |
133 | #define MSK_MPEN 0x80 /* MP3CON */
134 | #define MSK_MPBBST 0x40
135 | #define MSK_CRCEN 0x20
136 | #define MSK_MSKANC 0x10
137 | #define MSK_MSKREQ 0x08
138 | #define MSK_MSKLAY 0x04
139 | #define MSK_MSKSYN 0x02
140 | #define MSK_MSKCRC 0x01
141 |
142 | #define MSK_MPFULL 0x08 /* MP3DBG */
143 |
144 |
145 | /* AUDIO INTERFACE */
146 |
147 | #define MSK_JUST 0xF8 /* AUDCON0 */
148 | #define MSK_POL 0x04
149 | #define MSK_DSIZ 0x02
150 | #define MSK_HLR 0x01
151 |
152 | #define MSK_SRC 0x80 /* AUDCON1 */
153 | #define MSK_DRQEN 0x40
154 | #define MSK_MSREQ 0x20
155 | #define MSK_MUDRN 0x10
156 | #define MSK_DUP 0x06
157 | #define MSK_AUDEN 0x01
158 | #define MSK_DUP0 0x00 /* 0 duplication */
159 | #define MSK_DUP1 0x02 /* 1 duplication */
160 | #define MSK_DUP2 0x04 /* 3 duplication */
161 | #define MSK_DUP3 0x06 /* 4 duplication */
162 |
163 | #define MSK_SREQ 0x80 /* AUDSTA */
164 | #define MSK_UDRN 0x40
165 | #define MSK_AUBUSY 0x20
166 |
167 |
168 | /* MMC CONTROLLER */
169 |
170 | #define MSK_CBUSY 0x20 /* MMSTA */
171 | #define MSK_CRC16S 0x10
172 | #define MSK_DATFS 0x08
173 | #define MSK_CRC7S 0x04
174 | #define MSK_RESPFS 0x02
175 | #define MSK_CFLCK 0x01
176 |
177 | #define MSK_DRPTR 0x80 /* MMCON0 */
178 | #define MSK_DTPTR 0x40
179 | #define MSK_CRPTR 0x20
180 | #define MSK_CTPTR 0x10
181 | #define MSK_MBLOCK 0x08
182 | #define MSK_DFMT 0x04
183 | #define MSK_RFMT 0x02
184 | #define MSK_CRCDIS 0x01
185 |
186 | #define MSK_BLEN 0xF0 /* MMCON1 */
187 | #define MSK_DATDIR 0x08
188 | #define MSK_DATEN 0x04
189 | #define MSK_RESPEN 0x02
190 | #define MSK_CMDEN 0x01
191 |
192 | #define MSK_MMCEN 0x80 /* MMCON2 */
193 | #define MSK_DCR 0x40
194 | #define MSK_CCR 0x20
195 | #define MSK_DATD 0x06
196 | #define MSK_FLOWC 0x01
197 |
198 | #define MSK_MCBI 0x80 /* MMINT */
199 | #define MSK_EORI 0x40
200 | #define MSK_EOCI 0x20
201 | #define MSK_EOFI 0x10
202 | #define MSK_F2FI 0x08
203 | #define MSK_F1FI 0x04
204 | #define MSK_F2EI 0x02
205 | #define MSK_F1EI 0x01
206 |
207 | #define MSK_MCBM 0x80 /* MMMSK */
208 | #define MSK_EORM 0x40
209 | #define MSK_EOCM 0x20
210 | #define MSK_EOFM 0x10
211 | #define MSK_F2FM 0x08
212 | #define MSK_F1FM 0x04
213 | #define MSK_F2EM 0x02
214 | #define MSK_F1EM 0x01
215 |
216 |
217 | /* SPI CONTROLLER */
218 |
219 | #define MSK_SPR 0x83 /* SPCON */
220 | #define MSK_SPEN 0x40
221 | #define MSK_SSDIS 0x20
222 | #define MSK_MSTR 0x10
223 | #define MSK_MODE 0x0C
224 | #define MSK_CPOL 0x08
225 | #define MSK_CPHA 0x04
226 |
227 | #define MSK_SPIF 0x80 /* SPSTA */
228 | #define MSK_WCOL 0x40
229 | #define MSK_MODF 0x10
230 |
231 |
232 | /* TWI CONTROLLER */
233 |
234 | #define MSK_SSCR 0x83 /* SSCON */
235 | #define MSK_SSPE 0x40
236 | #define MSK_SSSTA 0x20
237 | #define MSK_SSSTO 0x10
238 | #define MSK_SSSI 0x08
239 | #define MSK_SSAA 0x04
240 |
241 |
242 | /* KEYBOARD */
243 |
244 | #define MSK_KINL 0xF0 /* KBCON */
245 | #define MSK_KINM 0x0F
246 |
247 | #define MSK_KPDE 0x80 /* KBSTA */
248 | #define MSK_KINF 0x0F
249 |
250 |
251 | /* ADC CONVERTER */
252 |
253 | #define MSK_ADIDL 0x40 /* ADCON */
254 | #define MSK_ADEN 0x20
255 | #define MSK_ADEOC 0x10
256 | #define MSK_ADSST 0x08
257 | #define MSK_ADCS 0x01
258 |
259 | #define MSK_ADATL 0x03 /* ADDL */
260 |
261 | #define F_CONV_MAX 700 /* 700 KHz max frequency */
262 |
263 | #define AIN0 0x01 /* Analog Inputs */
264 | #define AIN1 0x00
265 |
266 |
267 | /* USB */
268 |
269 | #define MSK_TXCMPL 0x01 /* UEPSTAX */
270 | #define MSK_RXOUTB0 0x02
271 | #define MSK_RXOUT 0x02
272 | #define MSK_RXSETUP 0x04
273 | #define MSK_STALLED 0x08
274 | #define MSK_TXRDY 0x10
275 | #define MSK_STALLRQ 0x20
276 | #define MSK_RXOUTB1 0x40
277 | #define MSK_DIR 0x80
278 |
279 | #define MSK_RXOUTB0B1 0x42 /* Ping-Pong abilities */
280 |
281 | #define MSK_SPINT 0x01 /* USBINT */
282 | #define MSK_SOFINT 0x08
283 | #define MSK_EORINT 0x10
284 | #define MSK_WUPCPU 0x20
285 |
286 | #define MSK_SUSPCLK 0x40
287 |
288 | //ADDED
289 |
290 | #define MSK_ESPINT 0x01
291 | #define MSK_EEORINT 0x10
292 | #define MSK_EWUPCPU 0x20
293 |
294 | #define MSK_USBE 0x80 /* USBCON */
295 | #define MSK_CONFG 0x02
296 | #define MSK_FADDEN 0x01
297 | #define MSK_UPRSM 0x08
298 | #define MSK_SDRMWUP 0x20
299 | #define MSK_RMWUPE 0x04
300 |
301 | #endif /* _EXTSND1_H_ */
302 |
--------------------------------------------------------------------------------
/EvalBoard/Ext/hard.h:
--------------------------------------------------------------------------------
1 | /*H**************************************************************************
2 | * NAME: hard.h
3 | *----------------------------------------------------------------------------
4 | * Copyright (c) 2003 Atmel.
5 | *----------------------------------------------------------------------------
6 | * RELEASE: c5132-demo-nf-mmc-2_0_0
7 | * REVISION: 1.22
8 | *----------------------------------------------------------------------------
9 | * PURPOSE:
10 | * This file contains the low-level memory definition
11 | *****************************************************************************/
12 |
13 | #ifndef _HARD_H_
14 | #define _HARD_H_
15 |
16 | /*_____ I N C L U D E S ____________________________________________________*/
17 |
18 | #ifndef MEM_CHIP_TYPE
19 | #error MEM_CHIP_TYPE must be defined in config.h
20 | #define MEM_CHIP_TYPE CHIP_NONE
21 | #endif
22 | #ifndef MEM_CARD_TYPE
23 | #error MEM_CARD_TYPE must be defined in config.h
24 | #define MEM_CARD_TYPE CARD_NONE
25 | #endif
26 |
27 | /*_____ M A C R O S ________________________________________________________*/
28 |
29 | /*----- Memory type -----*/
30 | #define MEM_CHIP ((bit)0) /* on-board memory */
31 | #define MEM_CARD ((bit)1) /* memory card */
32 |
33 | #define MEM_DFC ((bit)0) /* data flash card*/
34 | #define MEM_SD ((bit)1) /* sd */
35 |
36 | #define CHIP_NONE 0
37 | #define CHIP_NF 1
38 | #define CHIP_DF 2
39 | #define CHIP_HDD 3
40 |
41 | #define CARD_NONE 0
42 | #define CARD_MMC 1
43 | #define CARD_SD 2
44 | #define CARD_CF 3
45 | #define CARD_SMC 4
46 | #define CARD_CDR 5
47 | #define CARD_DF 6
48 | #define CARD_SD_DFC 7
49 |
50 | #define NF_1X_512B 0
51 | #define NF_2X_512B 1
52 | #define NF_1X_2KB 2
53 | #define NF_2X_2KB 3
54 | #define NF_1X 4
55 |
56 | #ifdef NotUsed
57 |
58 | #if (MEM_CARD_TYPE == CARD_NONE) && (MEM_CHIP_TYPE == CHIP_NONE)
59 | #error No card and chip type defined in config.h
60 | #endif
61 |
62 | #if MEM_CHIP_TYPE == CHIP_NF
63 | #ifndef NF_CONFIG
64 | #error NF_CONFIG must be defined in config.h
65 | #endif
66 | #if NF_CONFIG == NF_1X_512B
67 | #include "lib_mem\nf_1x_512b\nf.h" /* single NF/512B definition */
68 | #elif NF_CONFIG == NF_2X_512B
69 | #include "lib_mem\nf_2x_512b\nf.h" /* double NF/512B definition */
70 | #elif NF_CONFIG == NF_1X_2KB
71 | #include "lib_mem\nf_1x_2kb\nf.h" /* single NF/2KB definition */
72 | #elif NF_CONFIG == NF_2X_2KB
73 | #include "lib_mem\nf_2x_2kb\nf.h" /* Double NF/2KB definition */
74 | #elif NF_CONFIG == NF_1X
75 | #include "lib_mem\nf_1x\nf.h" /* Single NF/512B or 2KB definition */
76 | #else
77 | #error NF_CONFIG baddly defined in config.h
78 | #endif
79 | #define Chip_init() nf_init()
80 | #define Chip_install() nf_read_spare_byte()
81 | #define Chip_uninstall() nf_uninstall()
82 | #define Chip_read_byte() nf_read_byte()
83 | #define Chip_read_open(pos) nf_read_open(pos)
84 | #define Chip_read_close() nf_read_close()
85 | #define Chip_write_byte(b) nf_write_byte(b)
86 | #define Chip_write_open(pos) nf_write_open(pos)
87 | #define Chip_write_close() nf_write_close()
88 | #define Chip_format() nf_format()
89 | #elif MEM_CHIP_TYPE == CHIP_DF
90 | #include "lib_mem\df\df.h" /* dataflash definition */
91 | #define Chip_init() df_init()
92 | #define Chip_install() df_init_mem()
93 | #define Chip_uninstall() df_uninstall()
94 | #define Chip_read_byte() df_read_byte()
95 | #define Chip_read_open(pos) df_read_open(pos)
96 | #define Chip_read_close() df_read_close()
97 | #define Chip_write_byte(b) df_write_byte(b)
98 | #define Chip_write_open(pos) df_write_open(pos)
99 | #define Chip_write_close() df_write_close()
100 | #define Chip_format() df_format()
101 | #elif MEM_CHIP_TYPE == CHIP_HDD
102 | #include "lib_mem\ide\hdd.h" /* hard disk definition */
103 | #define Chip_init() OK
104 | #define Chip_install() ata_install(0)
105 | #define Chip_uninstall() hdd_uninstall()
106 | #define Chip_read_byte() hdd_read_byte()
107 | #define Chip_read_open(pos) hdd_read_open(pos, 1)
108 | #define Chip_read_close() hdd_read_close()
109 | #define Chip_write_byte(b) hdd_write_byte(b)
110 | #define Chip_write_open(pos) hdd_write_open(pos, 1)
111 | #define Chip_write_close() hdd_write_close()
112 | #define Chip_format() hdd_format()
113 | #define Chip_read_long_big_endian() hdd_read_long_big_endian()
114 | #define Chip_read_one_sector() hdd_read_one_sector()
115 | #define Chip_write_one_sector() hdd_write_one_sector()
116 | #define Chip_get_capacity() (Uint32)(hdd_mem_size)
117 | #else
118 | #define Chip_install() KO
119 | #define Chip_uninstall()
120 | #endif
121 |
122 | #endif//#ifdef NotUsed
123 |
124 | #define Chip_read_open(pos) memory_read_open(pos)
125 | #define Chip_read_byte() memory_read_byte()
126 | #define Chip_read_close() memory_read_close()
127 |
128 | #define Chip_write_byte(b) memory_write_byte(b)
129 | #define Chip_write_open(pos) memory_write_open(pos)
130 | #define Chip_write_close() memory_write_close()
131 |
132 | #define Chip_format() memory_format()
133 |
134 | #include "mmc.h" /* multimediacard definition */
135 | #define Card_init() OK
136 | #define Card_install() mmc_install()
137 | #define Card_uninstall() mmc_uninstall()
138 | #define Card_read_byte() mmc_read_byte()
139 | #define Card_read_open(pos) mmc_read_open(pos)
140 | #define Card_read_close() mmc_read_close()
141 | #define Card_write_byte(b) mmc_write_byte(b)
142 | #define Card_write_open(pos) mmc_write_open(pos)
143 | #define Card_write_close() mmc_write_close()
144 | #define Card_format() mmc_format()
145 | #define Card_select_next() mmc_change()
146 | #define Card_check_presence() mmc_check_presence()
147 | #define Card_get_socket() mmc_get_selected_card()
148 | #define CARD_SOCKET_NB 2
149 |
150 | /*_____ D E F I N I T I O N ________________________________________________*/
151 |
152 | extern bdata bit gl_memory; /* selected memory */
153 | extern bit gl_sd_dfc; /* select df / mmc card*/
154 |
155 | /*_____ D E C L A R A T I O N ______________________________________________*/
156 |
157 | #define Hard_chip_init() Chip_init()
158 | #define Hard_chip_install() Chip_install()
159 | #define Hard_chip_uninstall() Chip_uninstall()
160 | #define Hard_card_init() Card_init()
161 | #define Hard_card_install() Card_install()
162 | #define Hard_card_uninstall() Card_uninstall()
163 |
164 | #if MEM_CARD_TYPE == CARD_NONE
165 | #define Hard_read_byte() Chip_read_byte()
166 | #define Hard_read_open(pos) Chip_read_open(pos)
167 | #define Hard_read_close() Chip_read_close()
168 | #define Hard_write_byte(b) Chip_write_byte(b)
169 | #define Hard_write_open(pos) Chip_write_open(pos)
170 | #define Hard_write_close() Chip_write_close()
171 | #define Hard_format() Chip_format()
172 | #define Hard_read_long_big_endian() Chip_read_long_big_endian()
173 | #define Hard_load_sector() Chip_read_one_sector()
174 | #define Hard_download_sector() Chip_write_one_sector()
175 | #define Hard_get_capacity() Chip_get_capacity()
176 | #endif
177 |
178 | #if MEM_CHIP_TYPE == CHIP_NONE
179 | #define Hard_read_byte() Card_read_byte()
180 | #define Hard_read_open(pos) Card_read_open(pos)
181 | #define Hard_read_close() Card_read_close()
182 | #define Hard_write_byte(b) Card_write_byte(b)
183 | #define Hard_write_open(pos) Card_write_open(pos)
184 | #define Hard_write_close() Card_write_close()
185 | #define Hard_format() Card_format()
186 | #define Hard_read_long_big_endian() Card_read_long_big_endian()
187 | #define Hard_load_sector() Card_read_one_sector()
188 | #define Hard_download_sector() Card_write_one_sector()
189 | #define Hard_iso_read_byte() Card_read_byte()
190 | #define Hard_iso_read_word() Card_read_word()
191 | #define Hard_iso_read_open(pos) Card_read_open(pos)
192 | #define Hard_iso_read_close() Card_read_close()
193 | #define Hard_iso_read_toc() Card_read_toc()
194 | #define Hard_iso_ready() Card_ready()
195 | #endif
196 |
197 | #if ((MEM_CHIP_TYPE != CHIP_NONE) && (MEM_CARD_TYPE != CARD_NONE))
198 | #if ((MEM_CHIP_TYPE == CHIP_HDD) && (MEM_CARD_TYPE == CARD_CDR))
199 | #define Hard_read_byte() Chip_read_byte()
200 | #define Hard_read_open(pos) Chip_read_open(pos)
201 | #define Hard_read_close() Chip_read_close()
202 | #define Hard_write_byte(b) Chip_write_byte(b)
203 | #define Hard_write_open(pos) Chip_write_open(pos)
204 | #define Hard_write_close() Chip_write_close()
205 | #define Hard_format() Chip_format()
206 | #define Hard_read_long_big_endian() Chip_read_long_big_endian()
207 | #define Hard_load_sector() Chip_read_one_sector()
208 | #define Hard_download_sector() Chip_write_one_sector()
209 | #define Hard_get_capacity() Chip_get_capacity()
210 | #define Hard_iso_read_byte() Card_read_byte()
211 | #define Hard_iso_read_open(pos) Card_read_open(pos)
212 | #define Hard_iso_read_close() Card_read_close()
213 | #define Hard_iso_read_toc() Card_read_toc()
214 | #define Hard_iso_read_word() Card_read_word()
215 | #define Hard_iso_ready() Card_ready()
216 | #else
217 | #define Hard_read_byte() ((gl_memory == MEM_CHIP) ? Chip_read_byte() : Card_read_byte())
218 | #define Hard_read_open(pos) ((gl_memory == MEM_CHIP) ? Chip_read_open(pos) : Card_read_open(pos))
219 | #define Hard_read_close() ((gl_memory == MEM_CHIP) ? Chip_read_close() : Card_read_close())
220 | #define Hard_write_byte(b) ((gl_memory == MEM_CHIP) ? Chip_write_byte(b) : Card_write_byte(b))
221 | #define Hard_write_open(pos) ((gl_memory == MEM_CHIP) ? Chip_write_open(pos) : Card_write_open(pos))
222 | #define Hard_write_close() ((gl_memory == MEM_CHIP) ? Chip_write_close() : Card_write_close())
223 | #define Hard_format() ((gl_memory == MEM_CHIP) ? Chip_format() : Card_format())
224 | #define Hard_read_long_big_endian() ((gl_memory == MEM_CHIP) ? Chip_read_long_big_endian() : Card_read_long_big_endian())
225 | #define Hard_load_sector() ((gl_memory == MEM_CHIP) ? Chip_read_one_sector() : Card_read_one_sector())
226 | #define Hard_download_sector() ((gl_memory == MEM_CHIP) ? Chip_write_one_sector() : Card_write_one_sector())
227 | #endif
228 | #endif
229 |
230 | #endif /* _HARD_H_ */
231 |
232 |
--------------------------------------------------------------------------------
/EvalBoard/Ext/lcd.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/Ext/lcd.c
--------------------------------------------------------------------------------
/EvalBoard/Ext/lcd.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/Ext/lcd.h
--------------------------------------------------------------------------------
/EvalBoard/Ext/regsnd1.h:
--------------------------------------------------------------------------------
1 | /*H**************************************************************************
2 | * NAME: regsnd1.h
3 | *----------------------------------------------------------------------------
4 | * Copyright (c) 2003 Atmel.
5 | *----------------------------------------------------------------------------
6 | * RELEASE: c5132-demo-df-smc-2_0_0
7 | * REVISION: 1.6
8 | *----------------------------------------------------------------------------
9 | * PURPOSE:
10 | * This file defines the T8xC51SND1 component:
11 | * - Register SFRs
12 | * - Bit SFRs
13 | *****************************************************************************/
14 |
15 | #ifndef _REGSND1_H_
16 | #define _REGSND1_H_
17 |
18 | /*_____ I N C L U D E S ____________________________________________________*/
19 |
20 |
21 | /*_____ M A C R O S ________________________________________________________*/
22 |
23 |
24 | /* C51 CORE */
25 | #define Sfr(x, y) sfr x = y
26 | #define Sbit(x, y, z) sbit x = y^z
27 | #define Sfr16(x,y) sfr16 x = y
28 |
29 | Sfr (A , 0xE0);
30 | Sfr (ACC , 0xE0);
31 | Sfr (B , 0xF0);
32 | Sfr (PSW , 0xD0);
33 | Sfr (SP , 0x81);
34 | Sfr (DPL , 0x82);
35 | Sfr (DPH , 0x83);
36 | Sfr16 (DPTR , 0x82);
37 |
38 | Sbit (CY , PSW , 7);
39 | Sbit (AC , PSW , 6);
40 | Sbit (F0 , PSW , 5);
41 | Sbit (RS1 , PSW , 4);
42 | Sbit (RS0 , PSW , 3);
43 | Sbit (OV , PSW , 2);
44 | Sbit (F1 , PSW , 1);
45 | Sbit (P , PSW , 0);
46 |
47 |
48 | /* SYSTEM MANAGEMENT */
49 |
50 | Sfr (PCON , 0x87);
51 | Sfr (AUXR , 0x8E);
52 | Sfr (AUXR1 , 0xA2);
53 | Sfr (NVERS , 0xFB);
54 |
55 |
56 | /* PLL & CLOCK */
57 |
58 | Sfr (CKCON , 0x8F);
59 | Sfr (PLLCON , 0xE9);
60 | Sfr (PLLDIV0 , 0xEE);
61 | Sfr (PLLNDIV , 0xEE);
62 | Sfr (PLLDIV1 , 0xEF);
63 | Sfr (PLLRDIV , 0xEF);
64 |
65 |
66 | /* INTERRUPT */
67 |
68 | Sfr (IEN0 , 0xA8);
69 | Sfr (IPL0 , 0xB8);
70 | Sfr (IPH0 , 0xB7);
71 | Sfr (IEN1 , 0xB1);
72 | Sfr (IPL1 , 0xB2);
73 | Sfr (IPH1 , 0xB3);
74 |
75 | Sbit (EA , IEN0 , 7);
76 | Sbit (EAUD , IEN0 , 6);
77 | Sbit (EMP3 , IEN0 , 5);
78 | Sbit (ES , IEN0 , 4);
79 | Sbit (ET1 , IEN0 , 3);
80 | Sbit (EX1 , IEN0 , 2);
81 | Sbit (ET0 , IEN0 , 1);
82 | Sbit (EX0 , IEN0 , 0);
83 |
84 | Sbit (IPLAUD , IPL0 , 6);
85 | Sbit (IPLMP3 , IPL0 , 5);
86 | Sbit (IPLS , IPL0 , 4);
87 | Sbit (IPLT1 , IPL0 , 3);
88 | Sbit (IPLX1 , IPL0 , 2);
89 | Sbit (IPLT0 , IPL0 , 1);
90 | Sbit (IPLX0 , IPL0 , 0);
91 |
92 |
93 | /* PORTS */
94 |
95 | Sfr (P0 , 0x80);
96 | Sfr (P1 , 0x90);
97 | Sfr (P2 , 0xA0);
98 | Sfr (P3 , 0xB0);
99 | Sfr (P4 , 0xC0);
100 | Sfr (P5 , 0xD8);
101 |
102 | Sbit (P0_7 , P0 , 7);
103 | Sbit (P0_6 , P0 , 6);
104 | Sbit (P0_5 , P0 , 5);
105 | Sbit (P0_4 , P0 , 4);
106 | Sbit (P0_3 , P0 , 3);
107 | Sbit (P0_2 , P0 , 2);
108 | Sbit (P0_1 , P0 , 1);
109 | Sbit (P0_0 , P0 , 0);
110 |
111 | Sbit (P1_7 , P1 , 7);
112 | Sbit (P1_6 , P1 , 6);
113 | Sbit (P1_5 , P1 , 5);
114 | Sbit (P1_4 , P1 , 4);
115 | Sbit (P1_3 , P1 , 3);
116 | Sbit (P1_2 , P1 , 2);
117 | Sbit (P1_1 , P1 , 1);
118 | Sbit (P1_0 , P1 , 0);
119 |
120 | Sbit (SDA , P1 , 7);
121 | Sbit (SCL , P1 , 6);
122 | Sbit (KIN3 , P1 , 3);
123 | Sbit (KIN2 , P1 , 2);
124 | Sbit (KIN1 , P1 , 1);
125 | Sbit (KIN0 , P1 , 0);
126 |
127 | Sbit (P2_7 , P2 , 7);
128 | Sbit (P2_6 , P2 , 6);
129 | Sbit (P2_5 , P2 , 5);
130 | Sbit (P2_4 , P2 , 4);
131 | Sbit (P2_3 , P2 , 3);
132 | Sbit (P2_2 , P2 , 2);
133 | Sbit (P2_1 , P2 , 1);
134 | Sbit (P2_0 , P2 , 0);
135 |
136 | Sbit (P3_7 , P3 , 7);
137 | Sbit (P3_6 , P3 , 6);
138 | Sbit (P3_5 , P3 , 5);
139 | Sbit (P3_4 , P3 , 4);
140 | Sbit (P3_3 , P3 , 3);
141 | Sbit (P3_2 , P3 , 2);
142 | Sbit (P3_1 , P3 , 1);
143 | Sbit (P3_0 , P3 , 0);
144 |
145 | Sbit (RD , P3 , 7);
146 | Sbit (WR , P3 , 6);
147 | Sbit (T1 , P3 , 5);
148 | Sbit (T0 , P3 , 4);
149 | Sbit (INT1 , P3 , 3);
150 | Sbit (INT0 , P3 , 2);
151 | Sbit (TXD , P3 , 1);
152 | Sbit (RXD , P3 , 0);
153 |
154 | Sbit (P4_7 , P4 , 7);
155 | Sbit (P4_6 , P4 , 6);
156 | Sbit (P4_5 , P4 , 5);
157 | Sbit (P4_4 , P4 , 4);
158 | Sbit (P4_3 , P4 , 3);
159 | Sbit (P4_2 , P4 , 2);
160 | Sbit (P4_1 , P4 , 1);
161 | Sbit (P4_0 , P4 , 0);
162 |
163 | Sbit (SS_ , P4 , 3);
164 | Sbit (SCK , P4 , 2);
165 | Sbit (MOSI , P4 , 1);
166 | Sbit (MISO , P4 , 0);
167 |
168 | Sbit (P5_3 , P5 , 3);
169 | Sbit (P5_2 , P5 , 2);
170 | Sbit (P5_1 , P5 , 1);
171 | Sbit (P5_0 , P5 , 0);
172 |
173 |
174 | /* FLASH MEMORY */
175 |
176 | Sfr (FCON , 0xD1);
177 |
178 |
179 | /* TIMERS */
180 |
181 | Sfr (TCON , 0x88);
182 | Sfr (TMOD , 0x89);
183 | Sfr (TL0 , 0x8A);
184 | Sfr (TL1 , 0x8B);
185 | Sfr (TH0 , 0x8C);
186 | Sfr (TH1 , 0x8D);
187 |
188 | Sbit (TF1 , TCON , 7);
189 | Sbit (TR1 , TCON , 6);
190 | Sbit (TF0 , TCON , 5);
191 | Sbit (TR0 , TCON , 4);
192 | Sbit (IE1 , TCON , 3);
193 | Sbit (IT1 , TCON , 2);
194 | Sbit (IE0 , TCON , 1);
195 | Sbit (IT0 , TCON , 0);
196 |
197 |
198 | /* WATCHDOG */
199 |
200 | Sfr (WDTRST , 0xA6);
201 | Sfr (WDTPRG , 0xA7);
202 |
203 |
204 | /* MP3 DECODER */
205 |
206 | Sfr (MP3CON , 0xAA);
207 | Sfr (MP3STA , 0xC8);
208 | Sfr (MP3STA1 , 0xAF);
209 | Sfr (MP3DAT , 0xAC);
210 | Sfr (MP3ANC , 0xAD);
211 | Sfr (MP3VOL , 0x9E);
212 | Sfr (MP3VOR , 0x9F);
213 | Sfr (MP3BAS , 0xB4);
214 | Sfr (MP3MED , 0xB5);
215 | Sfr (MP3TRE , 0xB6);
216 | Sfr (MP3CLK , 0xEB);
217 | Sfr (MP3DBG , 0xAE); /* hidden register */
218 |
219 | Sbit (MPANC , MP3STA, 7);
220 | Sbit (MPREQ , MP3STA, 6);
221 | Sbit (ERRLAY , MP3STA, 5);
222 | Sbit (ERRSYN , MP3STA, 4);
223 | Sbit (ERRCRC , MP3STA, 3);
224 | Sbit (MPFS1 , MP3STA, 2);
225 | Sbit (MPFS0 , MP3STA, 1);
226 | Sbit (MPVER , MP3STA, 0);
227 |
228 |
229 | /* AUDIO INTERFACE */
230 |
231 | Sfr (AUDCON0 , 0x9A);
232 | Sfr (AUDCON1 , 0x9B);
233 | Sfr (AUDSTA , 0x9C);
234 | Sfr (AUDDAT , 0x9D);
235 | Sfr (AUDCLK , 0xEC);
236 |
237 |
238 | /* USB CONTROLLER */
239 |
240 | Sfr (USBCON , 0xBC);
241 | Sfr (USBADDR , 0xC6);
242 | Sfr (USBINT , 0xBD);
243 | Sfr (USBIEN , 0xBE);
244 | Sfr (UEPNUM , 0xC7);
245 | Sfr (UEPCONX , 0xD4);
246 | Sfr (UEPSTAX , 0xCE);
247 | Sfr (UEPRST , 0xD5);
248 | Sfr (UEPINT , 0xF8);
249 | Sfr (UEPIEN , 0xC2);
250 | Sfr (UEPDATX , 0xCF);
251 | Sfr (UBYCTX , 0xE2);
252 | Sfr (UBYCTLX , 0xE2);
253 | Sfr (UFNUML , 0xBA);
254 | Sfr (UFNUMH , 0xBB);
255 | Sfr (USBCLK , 0xEA);
256 | Sfr (UDPADDH , 0xD7);
257 | Sfr (UDPADDL , 0xD6);
258 |
259 | Sbit (EP3INT , UEPINT, 3);
260 | Sbit (EP2INT , UEPINT, 2);
261 | Sbit (EP1INT , UEPINT, 1);
262 | Sbit (EP0INT , UEPINT, 0);
263 |
264 |
265 | /* MMC CONTROLLER */
266 |
267 | Sfr (MMDAT , 0xDC);
268 | Sfr (MMCMD , 0xDD);
269 | Sfr (MMSTA , 0xDE);
270 | Sfr (MMMSK , 0xDF);
271 | Sfr (MMCON0 , 0xE4);
272 | Sfr (MMCON1 , 0xE5);
273 | Sfr (MMCON2 , 0xE6);
274 | Sfr (MMINT , 0xE7);
275 | Sfr (MMCLK , 0xED);
276 |
277 |
278 | /* IDE CONTROLLER */
279 |
280 | Sfr (DAT16H , 0xF9);
281 |
282 |
283 | /* UART */
284 |
285 | Sfr (SCON , 0x98);
286 | Sfr (SBUF , 0x99);
287 | Sfr (SADDR , 0xA9);
288 | Sfr (SADEN , 0xB9);
289 | Sfr (BDRCON , 0x92);
290 | Sfr (BRL , 0x91);
291 |
292 | Sbit (SM0 , SCON , 7);
293 | Sbit (FE , SCON , 7);
294 | Sbit (SM1 , SCON , 6);
295 | Sbit (SM2 , SCON , 5);
296 | Sbit (REN , SCON , 4);
297 | Sbit (TB8 , SCON , 3);
298 | Sbit (RB8 , SCON , 2);
299 | Sbit (TI , SCON , 1);
300 | Sbit (RI , SCON , 0);
301 |
302 |
303 | /* SPI CONTROLLER */
304 |
305 | Sfr (SPCON , 0xC3);
306 | Sfr (SPSTA , 0xC4);
307 | Sfr (SPDAT , 0xC5);
308 |
309 |
310 | /* I2C CONTROLLER */
311 |
312 | Sfr (SSCON , 0x93);
313 | Sfr (SSSTA , 0x94);
314 | Sfr (SSDAT , 0x95);
315 | Sfr (SSADR , 0x96);
316 |
317 |
318 | /* KEYBOARD */
319 |
320 | Sfr (KBCON , 0xA3);
321 | Sfr (KBSTA , 0xA4);
322 |
323 |
324 | /* ADC CONVERTER */
325 |
326 | Sfr (ADCON , 0xF3);
327 | Sfr (ADDL , 0xF4);
328 | Sfr (ADDH , 0xF5);
329 | Sfr (ADCLK , 0xF2);
330 |
331 |
332 | #endif /* _REGSND1_H_ */
333 |
--------------------------------------------------------------------------------
/EvalBoard/Ext/serio.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/Ext/serio.h
--------------------------------------------------------------------------------
/EvalBoard/Ext/twi.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/Ext/twi.c
--------------------------------------------------------------------------------
/EvalBoard/Ext/twi.h:
--------------------------------------------------------------------------------
1 |
2 | #ifndef _I2C_LIB_H_
3 | #define _I2C_LIB_H_
4 |
5 | #define I2C_NB_SLAVE_DATA 100
6 |
7 |
8 | /*_____ D E F I N I T I O N S ______________________________________________*/
9 |
10 | typedef struct
11 | {
12 | uint8_t bAddress;
13 | uint16_t wLocalAddress;
14 | uint8_t bRw;
15 | uint16_t wNrOfByte;
16 | uint8_t *pToData;
17 | } I2C_type_message;
18 |
19 | /*_____ D E C L A R A T I O N ______________________________________________*/
20 |
21 | extern bit b_I2C_busy;
22 | extern unsigned char I2C_Err;
23 | extern xdata I2C_type_message I2C_message; // The I2C message to be sent in Master Mode
24 | extern unsigned char xdata I2C_slave_data[I2C_NB_SLAVE_DATA]; //The slave data buffer when I2C ask in slave
25 |
26 |
27 | /*_____ M A C R O S ________________________________________________________*/
28 |
29 |
30 | #define I2C_RATIO_256 0x00
31 | #define I2C_RATIO_224 0x01
32 | #define I2C_RATIO_192 0x02
33 | #define I2C_RATIO_160 0x03
34 | #define I2C_RATIO_960 0x80
35 | #define I2C_RATIO_120 0x81
36 | #define I2C_RATIO_60 0x82
37 | #define I2C_RATIO_TIMER1 0x83
38 |
39 | #define I2C_CR2 0x80
40 | #define I2C_SSIE 0x40
41 | #define I2C_STA 0x20
42 | #define I2C_STO 0x10
43 | #define I2C_SI 0x08
44 | #define I2C_AA 0x04
45 | #define I2C_CR1 0x02
46 | #define I2C_CR0 0x01
47 |
48 | #define I2C_WAIT_EVENT { while ( (SSCON & I2C_SI) != I2C_SI ); }
49 | #define I2C_SET_START { SSCON |= I2C_STA; }
50 | #define I2C_CLEAR_START { SSCON &= ~I2C_STA; }
51 | #define I2C_SET_STOP { SSCON |= I2C_STO; }
52 | #define I2C_CLEAR_STOP { SSCON &= ~I2C_STO; }
53 | #define I2C_SET_AA { SSCON |= I2C_AA; }
54 | #define I2C_CLEAR_AA { SSCON &= ~I2C_AA; }
55 | #define I2C_CLEAR_SI { SSCON &= ~I2C_SI; }
56 |
57 |
58 |
59 | #define Tranfer_OK 0
60 | #define BusError 1
61 | #define NoHostAdrAck 2
62 | #define NoHostDataAck 3
63 | #define ArbitrationLost 4
64 | #define UnknownError 5
65 | #define I2C_NOT_FREE 6
66 |
67 |
68 | #define I2C_READ 1
69 | #define I2C_WRITE 0
70 |
71 | /*_____ P R O T O T Y P E S ____________________________________________________________*/
72 |
73 | unsigned char I2C_baud_rate (unsigned int ratio);
74 | uint8_t I2C_Send_Message_polling( uint8_t bSlaveAddr, uint16_t wLocalAddress, uint8_t bRw, uint16_t wNrOfByte, uint8_t * pToData );
75 | unsigned char I2C_Send_Message_interrupt( unsigned char slave_adr,bit rw, unsigned char nbytes, unsigned char *info);
76 | void I2C_decode_status();
77 | unsigned char I2C_slave_polling(void);
78 | void I2C_slave_interrupt(void);
79 | void I2C_Init(void);
80 |
81 | void I2CReadVpc3Byte ( uint8_t bAddress, uint16_t wSubAddress, uint16_t wNrOfBytes, uint8_t * pToData );
82 | void I2CWriteVpc3Byte ( uint8_t bAddress, uint16_t wSubAddress, uint16_t wNrOfBytes, uint8_t * pToData );
83 |
84 | void DebugI2CReadVpc3Byte ( uint8_t bAddress, uint16_t wSubAddress, uint16_t wNrOfBytes, uint8_t * pToData );
85 | void DebugI2CWriteVpc3Byte ( uint8_t bAddress, uint16_t wSubAddress, uint16_t wNrOfBytes, uint8_t * pToData );
86 |
87 | #endif /* _I2C_H_ */
--------------------------------------------------------------------------------
/EvalBoard/GSD/EASY4711.gsd:
--------------------------------------------------------------------------------
1 | ;
2 | ;********************* GSD-Datei for VPC3 Demo application **************************
3 | ;* ================================================================================ *
4 | ;* *
5 | ;* Vendor: profichip GmbH *
6 | ;* Einsteinstr. 6 *
7 | ;* 91074 Herzogenaurach *
8 | ;* Germany *
9 | ;* Tel.: ++49-9132-744-200 *
10 | ;* FAX.: ++49-9132-744-204 *
11 | ;* *
12 | ;* ================================================================================ *
13 | ;* *
14 | ;* Function: Demo for PROFICHIP Software *
15 | ;* *
16 | ;* *
17 | ;* Order Number : PA007062 *
18 | ;* *
19 | ;* -------------------------------------------------------------------------------- *
20 | ;* author: P. Fredehorst *
21 | ;* *
22 | ;* Tel.: ++49-9132-744-214 *
23 | ;* FAX.: ++49-9132-744-204 *
24 | ;* -------------------------------------------------------------------------------- *
25 | ;* *
26 | ;* history *
27 | ;* ================================================================================ *
28 | ;* 09.09.2005 [V1.00] Urversion *
29 | ;* *
30 | ;* -------------------------------------------------------------------------------- *
31 | ;* *
32 | ;************************************************************************************
33 |
34 |
35 | #Profibus_DP
36 |
37 |
38 | ;====================================================================================
39 | ;==== Prm-Text-Def-List =============================================================
40 | ;====================================================================================
41 |
42 | ;=====================================================================================
43 | ;==== Ext-User-Prm-Data-Def-List =====================================================
44 | ;=====================================================================================
45 |
46 |
47 | ;=====================================================================================
48 | ;==== General DP Keywords ============================================================
49 | ;=====================================================================================
50 |
51 | GSD_Revision = 5
52 | Vendor_Name = "profichip GmbH"
53 | Model_Name = "EASY4711"
54 | Revision = "1.00"
55 | Ident_Number = 0x4711
56 | Protocol_Ident = 0
57 | Station_Type = 0
58 | FMS_supp = 0
59 | Hardware_Release = "V1.00"
60 | Software_Release = "V1.00"
61 | Redundancy = 0
62 | Repeater_Ctrl_Sig = 2
63 | 24V_Pins = 0
64 |
65 |
66 | ;==============================================================================
67 | ;==== Supported baudrates =====================================================
68 | ;==============================================================================
69 |
70 | 9.6_supp = 1
71 | 19.2_supp = 1
72 | 45.45_supp = 1
73 | 93.75_supp = 1
74 | 187.5_supp = 1
75 | 500_supp = 1
76 | 1.5M_supp = 1
77 | 3M_supp = 1
78 | 6M_supp = 1
79 | 12M_supp = 1
80 |
81 | MaxTsdr_9.6=15
82 | MaxTsdr_19.2=15
83 | MaxTsdr_45.45=15
84 | MaxTsdr_93.75=15
85 | MaxTsdr_187.5=15
86 | MaxTsdr_500=15
87 | MaxTsdr_1.5M=20
88 | MaxTsdr_3M=35
89 | MaxTsdr_6M=50
90 | MaxTsdr_12M=95
91 |
92 |
93 | ;==============================================================================
94 | ;==== Slave specific values ===================================================
95 | ;==============================================================================
96 |
97 | OrderNumber="PA006300"
98 | Slave_Family = 3@profichip GmbH@EvaKit_ATMEL89C5132
99 | Implementation_Type = "VPC3+"
100 | Info_Text="PROFICHIP: PROFIBUS DPV0 - slave, Project EASY4711"
101 | Bitmap_Device = "EASY_1N"
102 |
103 | Freeze_Mode_supp=1
104 | Sync_Mode_supp=1
105 | Fail_Safe=1
106 | Auto_Baud_supp=1
107 | Set_Slave_Add_supp=0
108 |
109 | Min_Slave_Intervall=6
110 |
111 | Modular_Station=0
112 | Max_Diag_Data_Len=6
113 |
114 | ;==============================================================================
115 | ;==== User-Prm-Data ===========================================================
116 | ;==============================================================================
117 |
118 | Max_User_Prm_Data_Len = 3
119 | Ext_User_Prm_Data_Const(0)= 0x00,0x00,0x00
120 |
121 |
122 | ;==============================================================================
123 | ;==== Module-Definition-List ==================================================
124 | ;==============================================================================
125 |
126 | Module="DIO16" 0x31
127 | 1
128 | EndModule
129 |
130 |
131 |
--------------------------------------------------------------------------------
/EvalBoard/GSD/EASY_1N.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/GSD/EASY_1N.bmp
--------------------------------------------------------------------------------
/EvalBoard/GSD/EASY_1N.dib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/GSD/EASY_1N.dib
--------------------------------------------------------------------------------
/EvalBoard/GSD/EASY_1S.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/GSD/EASY_1S.bmp
--------------------------------------------------------------------------------
/EvalBoard/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/main.c
--------------------------------------------------------------------------------
/EvalBoard/platform.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/EvalBoard/platform.h
--------------------------------------------------------------------------------
/EventRecorderStub.scvd:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/Firmware/Customer/DPV0_DRV/dp_if.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/DPV0_DRV/dp_if.c
--------------------------------------------------------------------------------
/Firmware/Customer/DPV0_DRV/dp_if.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/DPV0_DRV/dp_if.h
--------------------------------------------------------------------------------
/Firmware/Customer/DPV0_DRV/dp_inc.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/DPV0_DRV/dp_inc.h
--------------------------------------------------------------------------------
/Firmware/Customer/DPV0_DRV/dp_inc.h~RF13de7da9.TMP:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/DPV0_DRV/dp_inc.h~RF13de7da9.TMP
--------------------------------------------------------------------------------
/Firmware/Customer/DPV0_DRV/dp_isr.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/DPV0_DRV/dp_isr.c
--------------------------------------------------------------------------------
/Firmware/Customer/DPV0_DRV/dpl_list.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/DPV0_DRV/dpl_list.h
--------------------------------------------------------------------------------
/Firmware/Customer/DpAppl.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/DpAppl.c
--------------------------------------------------------------------------------
/Firmware/Customer/DpCfg.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/DpCfg.c
--------------------------------------------------------------------------------
/Firmware/Customer/DpDiag.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/DpDiag.c
--------------------------------------------------------------------------------
/Firmware/Customer/DpPrm.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/DpPrm.c
--------------------------------------------------------------------------------
/Firmware/Customer/GSD/EASY4711.gsd:
--------------------------------------------------------------------------------
1 | ;
2 | ;********************* GSD-Datei for VPC3 Demo application **************************
3 | ;* ================================================================================ *
4 | ;* *
5 | ;* Vendor: profichip GmbH *
6 | ;* Einsteinstr. 6 *
7 | ;* 91074 Herzogenaurach *
8 | ;* Germany *
9 | ;* Tel.: ++49-9132-744-200 *
10 | ;* FAX.: ++49-9132-744-204 *
11 | ;* *
12 | ;* ================================================================================ *
13 | ;* *
14 | ;* Function: Demo for PROFICHIP Software *
15 | ;* *
16 | ;* *
17 | ;* Order Number : PA007062 *
18 | ;* *
19 | ;* -------------------------------------------------------------------------------- *
20 | ;* author: P. Fredehorst *
21 | ;* *
22 | ;* Tel.: ++49-9132-744-214 *
23 | ;* FAX.: ++49-9132-744-204 *
24 | ;* -------------------------------------------------------------------------------- *
25 | ;* *
26 | ;* history *
27 | ;* ================================================================================ *
28 | ;* 09.09.2005 [V1.00] Urversion *
29 | ;* *
30 | ;* -------------------------------------------------------------------------------- *
31 | ;* *
32 | ;************************************************************************************
33 |
34 |
35 | #Profibus_DP
36 |
37 |
38 | ;====================================================================================
39 | ;==== Prm-Text-Def-List =============================================================
40 | ;====================================================================================
41 |
42 | ;=====================================================================================
43 | ;==== Ext-User-Prm-Data-Def-List =====================================================
44 | ;=====================================================================================
45 |
46 |
47 | ;=====================================================================================
48 | ;==== General DP Keywords ============================================================
49 | ;=====================================================================================
50 |
51 | GSD_Revision = 5
52 | Vendor_Name = "profichip GmbH"
53 | Model_Name = "EASY4711"
54 | Revision = "1.00"
55 | Ident_Number = 0x4711
56 | Protocol_Ident = 0
57 | Station_Type = 0
58 | FMS_supp = 0
59 | Hardware_Release = "V1.00"
60 | Software_Release = "V1.00"
61 | Redundancy = 0
62 | Repeater_Ctrl_Sig = 2
63 | 24V_Pins = 0
64 |
65 |
66 | ;==============================================================================
67 | ;==== Supported baudrates =====================================================
68 | ;==============================================================================
69 |
70 | 9.6_supp = 1
71 | 19.2_supp = 1
72 | 45.45_supp = 1
73 | 93.75_supp = 1
74 | 187.5_supp = 1
75 | 500_supp = 1
76 | 1.5M_supp = 1
77 | 3M_supp = 1
78 | 6M_supp = 1
79 | 12M_supp = 1
80 |
81 | MaxTsdr_9.6=15
82 | MaxTsdr_19.2=15
83 | MaxTsdr_45.45=15
84 | MaxTsdr_93.75=15
85 | MaxTsdr_187.5=15
86 | MaxTsdr_500=15
87 | MaxTsdr_1.5M=20
88 | MaxTsdr_3M=35
89 | MaxTsdr_6M=50
90 | MaxTsdr_12M=95
91 |
92 |
93 | ;==============================================================================
94 | ;==== Slave specific values ===================================================
95 | ;==============================================================================
96 |
97 | OrderNumber="PA006300"
98 | Slave_Family = 3@profichip GmbH@EvaKit_ATMEL89C5132
99 | Implementation_Type = "VPC3+"
100 | Info_Text="PROFICHIP: PROFIBUS DPV0 - slave, Project EASY4711"
101 | Bitmap_Device = "EASY_1N"
102 |
103 | Freeze_Mode_supp=1
104 | Sync_Mode_supp=1
105 | Fail_Safe=1
106 | Auto_Baud_supp=1
107 | Set_Slave_Add_supp=0
108 |
109 | Min_Slave_Intervall=6
110 |
111 | Modular_Station=0
112 | Max_Diag_Data_Len=6
113 |
114 | ;==============================================================================
115 | ;==== User-Prm-Data ===========================================================
116 | ;==============================================================================
117 |
118 | Max_User_Prm_Data_Len = 3
119 | Ext_User_Prm_Data_Const(0)= 0x00,0x00,0x00
120 |
121 |
122 | ;==============================================================================
123 | ;==== Module-Definition-List ==================================================
124 | ;==============================================================================
125 |
126 | Module="DIO16" 0x31
127 | 1
128 | EndModule
129 |
130 |
131 |
--------------------------------------------------------------------------------
/Firmware/Customer/GSD/EASY_1N.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/GSD/EASY_1N.bmp
--------------------------------------------------------------------------------
/Firmware/Customer/GSD/EASY_1N.dib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/GSD/EASY_1N.dib
--------------------------------------------------------------------------------
/Firmware/Customer/GSD/EASY_1S.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/GSD/EASY_1S.bmp
--------------------------------------------------------------------------------
/Firmware/Customer/GSD/Thumbs.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/GSD/Thumbs.db
--------------------------------------------------------------------------------
/Firmware/Customer/Inc/DpAppl.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/Inc/DpAppl.h
--------------------------------------------------------------------------------
/Firmware/Customer/Inc/DpCfg.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/Inc/DpCfg.h
--------------------------------------------------------------------------------
/Firmware/Customer/Inc/platform.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Firmware/Customer/Inc/platform.h
--------------------------------------------------------------------------------
/Main.c:
--------------------------------------------------------------------------------
1 | /*
2 | *A simple est application with two switches connected to the stm32
3 | *Switch_1(ON/OFF) starts/stops a counter, whose data is constantly being sent over profibus to plc
4 | *Switch_2(ON/OFF) simply toggles a bit in a variable, which is also sent to plc
5 | */
6 |
7 | #include "stm32f10x.h"
8 | #include "delay.h"
9 | #include "lcd16x2.h"
10 | #include "periph_init.h"
11 | #include "vpc3.h"
12 | #include "test.h"
13 | #include "DpAppl.h"
14 |
15 |
16 | int main(void)
17 | {
18 | /******************************Init peripherals******************************************************/
19 | myRCC_Init();
20 | myGPIO_Init();
21 | mySPI_Init();
22 | DelayInit();
23 | lcd16x2_init(LCD16X2_DISPLAY_ON_CURSOR_OFF_BLINK_OFF);
24 | SPI_Cmd(SPI1, ENABLE);
25 |
26 |
27 | volatile uint8_t masterData[2]; //2 bytes of data for the PB master device
28 | uint8_t kapcs; //var for button press
29 |
30 | DpAppl_SetResetVPC3Channel1();
31 | DpAppl_ProfibusInit();
32 |
33 |
34 |
35 | while(1)
36 | {
37 |
38 | DpAppl_ProfibusMain();
39 | kapcs = GPIOB->IDR;
40 |
41 | if(kapcs & 64){
42 |
43 | sDpAppl.abDpInputData[0]++;
44 | }
45 |
46 | if(kapcs & 128){
47 |
48 | sDpAppl.abDpInputData[1]=1;
49 | }
50 |
51 | else sDpAppl.abDpInputData[1]=0;
52 |
53 | }//while(1)
54 | }
55 |
56 | /******************************end main****************************************/
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
--------------------------------------------------------------------------------
/Objects/ExtDll.iex:
--------------------------------------------------------------------------------
1 | [EXTDLL]
2 | Count=0
3 |
--------------------------------------------------------------------------------
/Objects/SPI_TESZT_VPC3.axf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/SPI_TESZT_VPC3.axf
--------------------------------------------------------------------------------
/Objects/SPI_TESZT_VPC3.build_log.htm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/SPI_TESZT_VPC3.build_log.htm
--------------------------------------------------------------------------------
/Objects/SPI_TESZT_VPC3.lnp:
--------------------------------------------------------------------------------
1 | --cpu Cortex-M3
2 | ".\objects\main.o"
3 | ".\objects\periph_init.o"
4 | ".\objects\vpc3.o"
5 | ".\objects\delay.o"
6 | ".\objects\lcd16x2.o"
7 | ".\objects\dpappl.o"
8 | ".\objects\dpcfg.o"
9 | ".\objects\dpdiag.o"
10 | ".\objects\dpprm.o"
11 | ".\objects\dp_if.o"
12 | ".\objects\dp_isr.o"
13 | ".\objects\test.o"
14 | ".\objects\misc.o"
15 | ".\objects\stm32f10x_exti.o"
16 | ".\objects\stm32f10x_gpio.o"
17 | ".\objects\stm32f10x_rcc.o"
18 | ".\objects\stm32f10x_spi.o"
19 | ".\objects\stm32f10x_tim.o"
20 | ".\objects\startup_stm32f10x_md.o"
21 | ".\objects\system_stm32f10x.o"
22 | --strict --scatter ".\Objects\SPI_TESZT_VPC3.sct"
23 | --summary_stderr --info summarysizes --map --xref --callgraph --symbols
24 | --info sizes --info totals --info unused --info veneers
25 | --list ".\Listings\SPI_TESZT_VPC3.map" -o .\Objects\SPI_TESZT_VPC3.axf
--------------------------------------------------------------------------------
/Objects/SPI_TESZT_VPC3.sct:
--------------------------------------------------------------------------------
1 | ; *************************************************************
2 | ; *** Scatter-Loading Description File generated by uVision ***
3 | ; *************************************************************
4 |
5 | LR_IROM1 0x08000000 0x00010000 { ; load region size_region
6 | ER_IROM1 0x08000000 0x00010000 { ; load address = execution address
7 | *.o (RESET, +First)
8 | *(InRoot$$Sections)
9 | .ANY (+RO)
10 | }
11 | RW_IRAM1 0x20000000 0x00005000 { ; RW data
12 | .ANY (+RW +ZI)
13 | }
14 | }
15 |
16 |
--------------------------------------------------------------------------------
/Objects/delay.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/delay.crf
--------------------------------------------------------------------------------
/Objects/delay.d:
--------------------------------------------------------------------------------
1 | .\objects\delay.o: delay.c
2 | .\objects\delay.o: .\inc\delay.h
3 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\delay.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\delay.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\delay.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
14 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
15 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\delay.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 |
--------------------------------------------------------------------------------
/Objects/delay.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/delay.o
--------------------------------------------------------------------------------
/Objects/dp_if.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dp_if.crf
--------------------------------------------------------------------------------
/Objects/dp_if.d:
--------------------------------------------------------------------------------
1 | .\objects\dp_if.o: Firmware\Customer\DPV0_DRV\dp_if.c
2 | .\objects\dp_if.o: .\inc\lcd16x2.h
3 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\dp_if.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\dp_if.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\dp_if.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
14 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
15 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\dp_if.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 | .\objects\dp_if.o: .\inc\delay.h
20 | .\objects\dp_if.o: .\Firmware\Customer\Inc\platform.h
21 | .\objects\dp_if.o: .\Firmware\Customer\Inc\DpCfg.h
22 | .\objects\dp_if.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
23 | .\objects\dp_if.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
24 | .\objects\dp_if.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
25 | .\objects\dp_if.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\string.h
26 | .\objects\dp_if.o: .\Firmware\Customer\Inc\platform.h
27 | .\objects\dp_if.o: .\Test\test.h
28 |
--------------------------------------------------------------------------------
/Objects/dp_if.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dp_if.o
--------------------------------------------------------------------------------
/Objects/dp_isr.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dp_isr.crf
--------------------------------------------------------------------------------
/Objects/dp_isr.d:
--------------------------------------------------------------------------------
1 | .\objects\dp_isr.o: Firmware\Customer\DPV0_DRV\dp_isr.c
2 | .\objects\dp_isr.o: .\inc\lcd16x2.h
3 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\dp_isr.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\dp_isr.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\dp_isr.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
14 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
15 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\dp_isr.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 | .\objects\dp_isr.o: .\inc\delay.h
20 | .\objects\dp_isr.o: .\Firmware\Customer\Inc\platform.h
21 | .\objects\dp_isr.o: .\Firmware\Customer\Inc\DpCfg.h
22 | .\objects\dp_isr.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
23 | .\objects\dp_isr.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
24 | .\objects\dp_isr.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
25 | .\objects\dp_isr.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\string.h
26 | .\objects\dp_isr.o: .\Firmware\Customer\Inc\platform.h
27 |
--------------------------------------------------------------------------------
/Objects/dp_isr.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dp_isr.o
--------------------------------------------------------------------------------
/Objects/dpappl.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dpappl.crf
--------------------------------------------------------------------------------
/Objects/dpappl.d:
--------------------------------------------------------------------------------
1 | .\objects\dpappl.o: Firmware\Customer\DpAppl.c
2 | .\objects\dpappl.o: .\inc\lcd16x2.h
3 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\dpappl.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\dpappl.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\dpappl.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
14 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
15 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\dpappl.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 | .\objects\dpappl.o: .\inc\delay.h
20 | .\objects\dpappl.o: .\Firmware\Customer\Inc\platform.h
21 | .\objects\dpappl.o: .\Firmware\Customer\Inc\DpCfg.h
22 | .\objects\dpappl.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
23 | .\objects\dpappl.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
24 | .\objects\dpappl.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
25 | .\objects\dpappl.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\string.h
26 | .\objects\dpappl.o: .\Firmware\Customer\Inc\platform.h
27 | .\objects\dpappl.o: .\Firmware\Customer\Inc\DpAppl.h
28 |
--------------------------------------------------------------------------------
/Objects/dpappl.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dpappl.o
--------------------------------------------------------------------------------
/Objects/dpcfg.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dpcfg.crf
--------------------------------------------------------------------------------
/Objects/dpcfg.d:
--------------------------------------------------------------------------------
1 | .\objects\dpcfg.o: Firmware\Customer\DpCfg.c
2 | .\objects\dpcfg.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\string.h
3 | .\objects\dpcfg.o: .\Firmware\Customer\Inc\platform.h
4 | .\objects\dpcfg.o: .\Firmware\Customer\Inc\DpCfg.h
5 | .\objects\dpcfg.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
6 | .\objects\dpcfg.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
7 | .\objects\dpcfg.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
8 | .\objects\dpcfg.o: .\Firmware\Customer\Inc\DpAppl.h
9 |
--------------------------------------------------------------------------------
/Objects/dpcfg.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dpcfg.o
--------------------------------------------------------------------------------
/Objects/dpdiag.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dpdiag.crf
--------------------------------------------------------------------------------
/Objects/dpdiag.d:
--------------------------------------------------------------------------------
1 | .\objects\dpdiag.o: Firmware\Customer\DpDiag.c
2 | .\objects\dpdiag.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\string.h
3 | .\objects\dpdiag.o: .\Firmware\Customer\Inc\platform.h
4 | .\objects\dpdiag.o: .\Firmware\Customer\Inc\DpCfg.h
5 | .\objects\dpdiag.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
6 | .\objects\dpdiag.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
7 | .\objects\dpdiag.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
8 |
--------------------------------------------------------------------------------
/Objects/dpdiag.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dpdiag.o
--------------------------------------------------------------------------------
/Objects/dpprm.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dpprm.crf
--------------------------------------------------------------------------------
/Objects/dpprm.d:
--------------------------------------------------------------------------------
1 | .\objects\dpprm.o: Firmware\Customer\DpPrm.c
2 | .\objects\dpprm.o: .\Firmware\Customer\Inc\platform.h
3 | .\objects\dpprm.o: .\Firmware\Customer\Inc\DpCfg.h
4 | .\objects\dpprm.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
5 | .\objects\dpprm.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
6 | .\objects\dpprm.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
7 |
--------------------------------------------------------------------------------
/Objects/dpprm.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/dpprm.o
--------------------------------------------------------------------------------
/Objects/fw_main.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/fw_main.crf
--------------------------------------------------------------------------------
/Objects/fw_main.d:
--------------------------------------------------------------------------------
1 | .\objects\fw_main.o: Firmware\Customer\FW_main.c
2 | .\objects\fw_main.o: .\Firmware\Customer\Inc\platform.h
3 | .\objects\fw_main.o: .\Firmware\Customer\Inc\DpCfg.h
4 | .\objects\fw_main.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
5 | .\objects\fw_main.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
6 | .\objects\fw_main.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
7 |
--------------------------------------------------------------------------------
/Objects/fw_main.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/fw_main.o
--------------------------------------------------------------------------------
/Objects/gpio_stm32f10x.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/gpio_stm32f10x.crf
--------------------------------------------------------------------------------
/Objects/gpio_stm32f10x.d:
--------------------------------------------------------------------------------
1 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\RTE_Driver\GPIO_STM32F10x.c
2 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\RTE_Driver\GPIO_STM32F10x.h
3 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdbool.h
4 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
5 | .\objects\gpio_stm32f10x.o: .\RTE\_STM32F103C8T6\RTE_Components.h
6 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
7 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
8 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
9 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
10 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
11 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
12 | .\objects\gpio_stm32f10x.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
13 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
14 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
15 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
16 | .\objects\gpio_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
17 |
--------------------------------------------------------------------------------
/Objects/gpio_stm32f10x.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/gpio_stm32f10x.o
--------------------------------------------------------------------------------
/Objects/hd44780.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/hd44780.crf
--------------------------------------------------------------------------------
/Objects/hd44780.d:
--------------------------------------------------------------------------------
1 | .\objects\hd44780.o: ..\..\stm32-hd44780-master\hd44780.c
2 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
3 | .\objects\hd44780.o: .\RTE\_STM32F103C8T6\RTE_Components.h
4 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
5 | .\objects\hd44780.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
6 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
7 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
8 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
9 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
10 | .\objects\hd44780.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
11 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
12 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
13 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
14 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
15 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
16 | .\objects\hd44780.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
17 | .\objects\hd44780.o: ..\..\stm32-hd44780-master\hd44780.h
18 |
--------------------------------------------------------------------------------
/Objects/hd44780.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/hd44780.o
--------------------------------------------------------------------------------
/Objects/lcd16x2.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/lcd16x2.crf
--------------------------------------------------------------------------------
/Objects/lcd16x2.d:
--------------------------------------------------------------------------------
1 | .\objects\lcd16x2.o: lcd16x2.c
2 | .\objects\lcd16x2.o: .\inc\lcd16x2.h
3 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\lcd16x2.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\lcd16x2.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
14 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
15 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 | .\objects\lcd16x2.o: .\inc\delay.h
20 | .\objects\lcd16x2.o: .\Firmware\Customer\Inc\platform.h
21 | .\objects\lcd16x2.o: .\Firmware\Customer\Inc\DpCfg.h
22 | .\objects\lcd16x2.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
23 | .\objects\lcd16x2.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
24 | .\objects\lcd16x2.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
25 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\string.h
26 | .\objects\lcd16x2.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdio.h
27 |
--------------------------------------------------------------------------------
/Objects/lcd16x2.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/lcd16x2.o
--------------------------------------------------------------------------------
/Objects/main.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/main.crf
--------------------------------------------------------------------------------
/Objects/main.d:
--------------------------------------------------------------------------------
1 | .\objects\main.o: Main.c
2 | .\objects\main.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
3 | .\objects\main.o: .\RTE\_STM32F103C8T6\RTE_Components.h
4 | .\objects\main.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
5 | .\objects\main.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
6 | .\objects\main.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
7 | .\objects\main.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
8 | .\objects\main.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
9 | .\objects\main.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
10 | .\objects\main.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
11 | .\objects\main.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
12 | .\objects\main.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
13 | .\objects\main.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
14 | .\objects\main.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
15 | .\objects\main.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
16 | .\objects\main.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
17 | .\objects\main.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
18 | .\objects\main.o: .\inc\delay.h
19 | .\objects\main.o: .\inc\lcd16x2.h
20 | .\objects\main.o: .\Firmware\Customer\Inc\platform.h
21 | .\objects\main.o: .\Firmware\Customer\Inc\DpCfg.h
22 | .\objects\main.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
23 | .\objects\main.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
24 | .\objects\main.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
25 | .\objects\main.o: .\inc\periph_init.h
26 | .\objects\main.o: .\inc\vpc3.h
27 | .\objects\main.o: .\Firmware\Customer\Inc\platform.h
28 | .\objects\main.o: .\Firmware\Customer\Inc\DpAppl.h
29 | .\objects\main.o: .\Test\test.h
30 | .\objects\main.o: .\Firmware\Customer\Inc\DpAppl.h
31 |
--------------------------------------------------------------------------------
/Objects/main.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/main.o
--------------------------------------------------------------------------------
/Objects/misc.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/misc.crf
--------------------------------------------------------------------------------
/Objects/misc.d:
--------------------------------------------------------------------------------
1 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\src\misc.c
2 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
3 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\misc.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\misc.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\misc.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
14 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
15 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\misc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 |
--------------------------------------------------------------------------------
/Objects/misc.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/misc.o
--------------------------------------------------------------------------------
/Objects/periph_init.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/periph_init.crf
--------------------------------------------------------------------------------
/Objects/periph_init.d:
--------------------------------------------------------------------------------
1 | .\objects\periph_init.o: periph_init.c
2 | .\objects\periph_init.o: .\inc\periph_init.h
3 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\periph_init.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\periph_init.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\periph_init.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
14 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
15 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\periph_init.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 |
--------------------------------------------------------------------------------
/Objects/periph_init.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/periph_init.o
--------------------------------------------------------------------------------
/Objects/spi_vpc3.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/spi_vpc3.crf
--------------------------------------------------------------------------------
/Objects/spi_vpc3.d:
--------------------------------------------------------------------------------
1 | .\objects\spi_vpc3.o: spi_vpc3.c
2 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
3 | .\objects\spi_vpc3.o: .\RTE\_STM32F103C8T6\RTE_Components.h
4 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
5 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
6 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
7 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
8 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
9 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
10 | .\objects\spi_vpc3.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
11 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
12 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
13 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
14 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
15 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
16 | .\objects\spi_vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
17 | .\objects\spi_vpc3.o: .\inc\spi_vpc3.h
18 | .\objects\spi_vpc3.o: .\inc\delay.h
19 | .\objects\spi_vpc3.o: .\Firmware\Customer\Inc\platform.h
20 | .\objects\spi_vpc3.o: .\Firmware\Customer\Inc\DpCfg.h
21 | .\objects\spi_vpc3.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
22 | .\objects\spi_vpc3.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
23 | .\objects\spi_vpc3.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
24 |
--------------------------------------------------------------------------------
/Objects/spi_vpc3.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/spi_vpc3.o
--------------------------------------------------------------------------------
/Objects/startup_stm32f10x_md.d:
--------------------------------------------------------------------------------
1 | .\objects\startup_stm32f10x_md.o: RTE\Device\STM32F103C8\startup_stm32f10x_md.s
2 |
--------------------------------------------------------------------------------
/Objects/startup_stm32f10x_md.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/startup_stm32f10x_md.o
--------------------------------------------------------------------------------
/Objects/stm32f10x_exti.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/stm32f10x_exti.crf
--------------------------------------------------------------------------------
/Objects/stm32f10x_exti.d:
--------------------------------------------------------------------------------
1 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\src\stm32f10x_exti.c
2 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
3 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\stm32f10x_exti.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\stm32f10x_exti.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
14 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
15 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\stm32f10x_exti.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 |
--------------------------------------------------------------------------------
/Objects/stm32f10x_exti.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/stm32f10x_exti.o
--------------------------------------------------------------------------------
/Objects/stm32f10x_gpio.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/stm32f10x_gpio.crf
--------------------------------------------------------------------------------
/Objects/stm32f10x_gpio.d:
--------------------------------------------------------------------------------
1 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\src\stm32f10x_gpio.c
2 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
3 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\stm32f10x_gpio.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\stm32f10x_gpio.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
14 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
15 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\stm32f10x_gpio.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 |
--------------------------------------------------------------------------------
/Objects/stm32f10x_gpio.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/stm32f10x_gpio.o
--------------------------------------------------------------------------------
/Objects/stm32f10x_rcc.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/stm32f10x_rcc.crf
--------------------------------------------------------------------------------
/Objects/stm32f10x_rcc.d:
--------------------------------------------------------------------------------
1 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\src\stm32f10x_rcc.c
2 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
3 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\stm32f10x_rcc.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\stm32f10x_rcc.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
14 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
15 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\stm32f10x_rcc.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 |
--------------------------------------------------------------------------------
/Objects/stm32f10x_rcc.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/stm32f10x_rcc.o
--------------------------------------------------------------------------------
/Objects/stm32f10x_spi.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/stm32f10x_spi.crf
--------------------------------------------------------------------------------
/Objects/stm32f10x_spi.d:
--------------------------------------------------------------------------------
1 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\src\stm32f10x_spi.c
2 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
3 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\stm32f10x_spi.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\stm32f10x_spi.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
14 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
15 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\stm32f10x_spi.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 |
--------------------------------------------------------------------------------
/Objects/stm32f10x_spi.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/stm32f10x_spi.o
--------------------------------------------------------------------------------
/Objects/stm32f10x_tim.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/stm32f10x_tim.crf
--------------------------------------------------------------------------------
/Objects/stm32f10x_tim.d:
--------------------------------------------------------------------------------
1 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\src\stm32f10x_tim.c
2 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
3 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
4 | .\objects\stm32f10x_tim.o: .\RTE\_STM32F103C8T6\RTE_Components.h
5 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
6 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
7 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
8 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
9 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
10 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
11 | .\objects\stm32f10x_tim.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
12 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
13 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
14 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
15 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
16 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
17 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
18 | .\objects\stm32f10x_tim.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
19 |
--------------------------------------------------------------------------------
/Objects/stm32f10x_tim.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/stm32f10x_tim.o
--------------------------------------------------------------------------------
/Objects/stm_my_lcd16x2.d:
--------------------------------------------------------------------------------
1 | .\objects\stm_my_lcd16x2.o: ..\..\LCD16x2_youtube\STM_MY_LCD16X2.c
2 |
--------------------------------------------------------------------------------
/Objects/system_stm32f10x.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/system_stm32f10x.crf
--------------------------------------------------------------------------------
/Objects/system_stm32f10x.d:
--------------------------------------------------------------------------------
1 | .\objects\system_stm32f10x.o: RTE\Device\STM32F103C8\system_stm32f10x.c
2 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
3 | .\objects\system_stm32f10x.o: .\RTE\_STM32F103C8T6\RTE_Components.h
4 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
5 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
6 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
7 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
8 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
9 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
10 | .\objects\system_stm32f10x.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
11 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
12 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
13 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
14 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
15 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
16 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
17 | .\objects\system_stm32f10x.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
18 |
--------------------------------------------------------------------------------
/Objects/system_stm32f10x.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/system_stm32f10x.o
--------------------------------------------------------------------------------
/Objects/test.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/test.crf
--------------------------------------------------------------------------------
/Objects/test.d:
--------------------------------------------------------------------------------
1 | .\objects\test.o: Test\test.c
2 | .\objects\test.o: Test\test.h
3 | .\objects\test.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
4 | .\objects\test.o: .\inc\lcd16x2.h
5 | .\objects\test.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
6 | .\objects\test.o: .\RTE\_STM32F103C8T6\RTE_Components.h
7 | .\objects\test.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
8 | .\objects\test.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
9 | .\objects\test.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
10 | .\objects\test.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
11 | .\objects\test.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
12 | .\objects\test.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
13 | .\objects\test.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
14 | .\objects\test.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
15 | .\objects\test.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
16 | .\objects\test.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
17 | .\objects\test.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
18 | .\objects\test.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
19 | .\objects\test.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
20 | .\objects\test.o: .\inc\delay.h
21 | .\objects\test.o: .\Firmware\Customer\Inc\platform.h
22 | .\objects\test.o: .\Firmware\Customer\Inc\DpCfg.h
23 | .\objects\test.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
24 | .\objects\test.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
25 | .\objects\test.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
26 | .\objects\test.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\string.h
27 | .\objects\test.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdio.h
28 |
--------------------------------------------------------------------------------
/Objects/test.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/test.o
--------------------------------------------------------------------------------
/Objects/vpc3.crf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/vpc3.crf
--------------------------------------------------------------------------------
/Objects/vpc3.d:
--------------------------------------------------------------------------------
1 | .\objects\vpc3.o: vpc3.c
2 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
3 | .\objects\vpc3.o: .\RTE\_STM32F103C8T6\RTE_Components.h
4 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\core_cm3.h
5 | .\objects\vpc3.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
6 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_version.h
7 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_compiler.h
8 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.1.1\CMSIS\Include\cmsis_armcc.h
9 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\system_stm32f10x.h
10 | .\objects\vpc3.o: .\RTE\Device\STM32F103C8\stm32f10x_conf.h
11 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_exti.h
12 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include\stm32f10x.h
13 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_gpio.h
14 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_rcc.h
15 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_spi.h
16 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\stm32f10x_tim.h
17 | .\objects\vpc3.o: C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\StdPeriph_Driver\inc\misc.h
18 | .\objects\vpc3.o: .\inc\vpc3.h
19 | .\objects\vpc3.o: .\Firmware\Customer\Inc\platform.h
20 | .\objects\vpc3.o: .\Firmware\Customer\Inc\DpCfg.h
21 | .\objects\vpc3.o: .\Firmware\Customer\DPV0_DRV\dpl_list.h
22 | .\objects\vpc3.o: .\Firmware\Customer\DPV0_DRV\dp_if.h
23 | .\objects\vpc3.o: .\Firmware\Customer\DPV0_DRV\dp_inc.h
24 | .\objects\vpc3.o: .\Firmware\Customer\Inc\DpAppl.h
25 | .\objects\vpc3.o: .\inc\delay.h
26 | .\objects\vpc3.o: .\inc\periph_init.h
27 | .\objects\vpc3.o: .\Test\test.h
28 |
--------------------------------------------------------------------------------
/Objects/vpc3.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/Objects/vpc3.o
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Profibus_DP_slave
2 | This is a Keil MDK-ARM project, containing a Profibus DP firmware wich is tailored to compile with Keil uVision. It consists of a firmware to create Profibus DP slave devices with the VPC3+S network controller, provided by the vendor Profichip, and an application.
3 |
4 | The firmware source code is modified such that is can be compiled in Keil.
5 |
6 | The project generates code for STM32F103C8T6 microcontroller.
7 |
8 | The STM32 and the VPC3+S can be used as a Profibus DP interface.
9 |
10 | Microcontroller and network controller communicates via SPI. Routines implemented in vpc3.c
11 |
12 | In main() lies a test application sending some irrelevant data to a master device hanging on the same DP network. It also capable of receiveing 2 bytes data and display it on a character LCD screen.
13 |
--------------------------------------------------------------------------------
/RTE/Device/STM32F103C8/startup_stm32f10x_md.s:
--------------------------------------------------------------------------------
1 | ;******************** (C) COPYRIGHT 2011 STMicroelectronics ********************
2 | ;* File Name : startup_stm32f10x_md.s
3 | ;* Author : MCD Application Team
4 | ;* Version : V3.5.0
5 | ;* Date : 11-March-2011
6 | ;* Description : STM32F10x Medium Density Devices vector table for MDK-ARM
7 | ;* toolchain.
8 | ;* This module performs:
9 | ;* - Set the initial SP
10 | ;* - Set the initial PC == Reset_Handler
11 | ;* - Set the vector table entries with the exceptions ISR address
12 | ;* - Configure the clock system
13 | ;* - Branches to __main in the C library (which eventually
14 | ;* calls main()).
15 | ;* After Reset the CortexM3 processor is in Thread mode,
16 | ;* priority is Privileged, and the Stack is set to Main.
17 | ;* <<< Use Configuration Wizard in Context Menu >>>
18 | ;*******************************************************************************
19 | ; THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
20 | ; WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
21 | ; AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
22 | ; INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
23 | ; CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
24 | ; INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
25 | ;*******************************************************************************
26 |
27 | ; Amount of memory (in bytes) allocated for Stack
28 | ; Tailor this value to your application needs
29 | ; Stack Configuration
30 | ; Stack Size (in Bytes) <0x0-0xFFFFFFFF:8>
31 | ;
32 |
33 | Stack_Size EQU 0x00000400
34 |
35 | AREA STACK, NOINIT, READWRITE, ALIGN=3
36 | Stack_Mem SPACE Stack_Size
37 | __initial_sp
38 |
39 |
40 | ; Heap Configuration
41 | ; Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
42 | ;
43 |
44 | Heap_Size EQU 0x00000200
45 |
46 | AREA HEAP, NOINIT, READWRITE, ALIGN=3
47 | __heap_base
48 | Heap_Mem SPACE Heap_Size
49 | __heap_limit
50 |
51 | PRESERVE8
52 | THUMB
53 |
54 |
55 | ; Vector Table Mapped to Address 0 at Reset
56 | AREA RESET, DATA, READONLY
57 | EXPORT __Vectors
58 | EXPORT __Vectors_End
59 | EXPORT __Vectors_Size
60 |
61 | __Vectors DCD __initial_sp ; Top of Stack
62 | DCD Reset_Handler ; Reset Handler
63 | DCD NMI_Handler ; NMI Handler
64 | DCD HardFault_Handler ; Hard Fault Handler
65 | DCD MemManage_Handler ; MPU Fault Handler
66 | DCD BusFault_Handler ; Bus Fault Handler
67 | DCD UsageFault_Handler ; Usage Fault Handler
68 | DCD 0 ; Reserved
69 | DCD 0 ; Reserved
70 | DCD 0 ; Reserved
71 | DCD 0 ; Reserved
72 | DCD SVC_Handler ; SVCall Handler
73 | DCD DebugMon_Handler ; Debug Monitor Handler
74 | DCD 0 ; Reserved
75 | DCD PendSV_Handler ; PendSV Handler
76 | DCD SysTick_Handler ; SysTick Handler
77 |
78 | ; External Interrupts
79 | DCD WWDG_IRQHandler ; Window Watchdog
80 | DCD PVD_IRQHandler ; PVD through EXTI Line detect
81 | DCD TAMPER_IRQHandler ; Tamper
82 | DCD RTC_IRQHandler ; RTC
83 | DCD FLASH_IRQHandler ; Flash
84 | DCD RCC_IRQHandler ; RCC
85 | DCD EXTI0_IRQHandler ; EXTI Line 0
86 | DCD EXTI1_IRQHandler ; EXTI Line 1
87 | DCD EXTI2_IRQHandler ; EXTI Line 2
88 | DCD EXTI3_IRQHandler ; EXTI Line 3
89 | DCD EXTI4_IRQHandler ; EXTI Line 4
90 | DCD DMA1_Channel1_IRQHandler ; DMA1 Channel 1
91 | DCD DMA1_Channel2_IRQHandler ; DMA1 Channel 2
92 | DCD DMA1_Channel3_IRQHandler ; DMA1 Channel 3
93 | DCD DMA1_Channel4_IRQHandler ; DMA1 Channel 4
94 | DCD DMA1_Channel5_IRQHandler ; DMA1 Channel 5
95 | DCD DMA1_Channel6_IRQHandler ; DMA1 Channel 6
96 | DCD DMA1_Channel7_IRQHandler ; DMA1 Channel 7
97 | DCD ADC1_2_IRQHandler ; ADC1_2
98 | DCD USB_HP_CAN1_TX_IRQHandler ; USB High Priority or CAN1 TX
99 | DCD USB_LP_CAN1_RX0_IRQHandler ; USB Low Priority or CAN1 RX0
100 | DCD CAN1_RX1_IRQHandler ; CAN1 RX1
101 | DCD CAN1_SCE_IRQHandler ; CAN1 SCE
102 | DCD EXTI9_5_IRQHandler ; EXTI Line 9..5
103 | DCD TIM1_BRK_IRQHandler ; TIM1 Break
104 | DCD TIM1_UP_IRQHandler ; TIM1 Update
105 | DCD TIM1_TRG_COM_IRQHandler ; TIM1 Trigger and Commutation
106 | DCD TIM1_CC_IRQHandler ; TIM1 Capture Compare
107 | DCD TIM2_IRQHandler ; TIM2
108 | DCD TIM3_IRQHandler ; TIM3
109 | DCD TIM4_IRQHandler ; TIM4
110 | DCD I2C1_EV_IRQHandler ; I2C1 Event
111 | DCD I2C1_ER_IRQHandler ; I2C1 Error
112 | DCD I2C2_EV_IRQHandler ; I2C2 Event
113 | DCD I2C2_ER_IRQHandler ; I2C2 Error
114 | DCD SPI1_IRQHandler ; SPI1
115 | DCD SPI2_IRQHandler ; SPI2
116 | DCD USART1_IRQHandler ; USART1
117 | DCD USART2_IRQHandler ; USART2
118 | DCD USART3_IRQHandler ; USART3
119 | DCD EXTI15_10_IRQHandler ; EXTI Line 15..10
120 | DCD RTCAlarm_IRQHandler ; RTC Alarm through EXTI Line
121 | DCD USBWakeUp_IRQHandler ; USB Wakeup from suspend
122 | __Vectors_End
123 |
124 | __Vectors_Size EQU __Vectors_End - __Vectors
125 |
126 | AREA |.text|, CODE, READONLY
127 |
128 | ; Reset handler
129 | Reset_Handler PROC
130 | EXPORT Reset_Handler [WEAK]
131 | IMPORT __main
132 | IMPORT SystemInit
133 | LDR R0, =SystemInit
134 | BLX R0
135 | LDR R0, =__main
136 | BX R0
137 | ENDP
138 |
139 | ; Dummy Exception Handlers (infinite loops which can be modified)
140 |
141 | NMI_Handler PROC
142 | EXPORT NMI_Handler [WEAK]
143 | B .
144 | ENDP
145 | HardFault_Handler\
146 | PROC
147 | EXPORT HardFault_Handler [WEAK]
148 | B .
149 | ENDP
150 | MemManage_Handler\
151 | PROC
152 | EXPORT MemManage_Handler [WEAK]
153 | B .
154 | ENDP
155 | BusFault_Handler\
156 | PROC
157 | EXPORT BusFault_Handler [WEAK]
158 | B .
159 | ENDP
160 | UsageFault_Handler\
161 | PROC
162 | EXPORT UsageFault_Handler [WEAK]
163 | B .
164 | ENDP
165 | SVC_Handler PROC
166 | EXPORT SVC_Handler [WEAK]
167 | B .
168 | ENDP
169 | DebugMon_Handler\
170 | PROC
171 | EXPORT DebugMon_Handler [WEAK]
172 | B .
173 | ENDP
174 | PendSV_Handler PROC
175 | EXPORT PendSV_Handler [WEAK]
176 | B .
177 | ENDP
178 | SysTick_Handler PROC
179 | EXPORT SysTick_Handler [WEAK]
180 | B .
181 | ENDP
182 |
183 | Default_Handler PROC
184 |
185 | EXPORT WWDG_IRQHandler [WEAK]
186 | EXPORT PVD_IRQHandler [WEAK]
187 | EXPORT TAMPER_IRQHandler [WEAK]
188 | EXPORT RTC_IRQHandler [WEAK]
189 | EXPORT FLASH_IRQHandler [WEAK]
190 | EXPORT RCC_IRQHandler [WEAK]
191 | EXPORT EXTI0_IRQHandler [WEAK]
192 | EXPORT EXTI1_IRQHandler [WEAK]
193 | EXPORT EXTI2_IRQHandler [WEAK]
194 | EXPORT EXTI3_IRQHandler [WEAK]
195 | EXPORT EXTI4_IRQHandler [WEAK]
196 | EXPORT DMA1_Channel1_IRQHandler [WEAK]
197 | EXPORT DMA1_Channel2_IRQHandler [WEAK]
198 | EXPORT DMA1_Channel3_IRQHandler [WEAK]
199 | EXPORT DMA1_Channel4_IRQHandler [WEAK]
200 | EXPORT DMA1_Channel5_IRQHandler [WEAK]
201 | EXPORT DMA1_Channel6_IRQHandler [WEAK]
202 | EXPORT DMA1_Channel7_IRQHandler [WEAK]
203 | EXPORT ADC1_2_IRQHandler [WEAK]
204 | EXPORT USB_HP_CAN1_TX_IRQHandler [WEAK]
205 | EXPORT USB_LP_CAN1_RX0_IRQHandler [WEAK]
206 | EXPORT CAN1_RX1_IRQHandler [WEAK]
207 | EXPORT CAN1_SCE_IRQHandler [WEAK]
208 | EXPORT EXTI9_5_IRQHandler [WEAK]
209 | EXPORT TIM1_BRK_IRQHandler [WEAK]
210 | EXPORT TIM1_UP_IRQHandler [WEAK]
211 | EXPORT TIM1_TRG_COM_IRQHandler [WEAK]
212 | EXPORT TIM1_CC_IRQHandler [WEAK]
213 | EXPORT TIM2_IRQHandler [WEAK]
214 | EXPORT TIM3_IRQHandler [WEAK]
215 | EXPORT TIM4_IRQHandler [WEAK]
216 | EXPORT I2C1_EV_IRQHandler [WEAK]
217 | EXPORT I2C1_ER_IRQHandler [WEAK]
218 | EXPORT I2C2_EV_IRQHandler [WEAK]
219 | EXPORT I2C2_ER_IRQHandler [WEAK]
220 | EXPORT SPI1_IRQHandler [WEAK]
221 | EXPORT SPI2_IRQHandler [WEAK]
222 | EXPORT USART1_IRQHandler [WEAK]
223 | EXPORT USART2_IRQHandler [WEAK]
224 | EXPORT USART3_IRQHandler [WEAK]
225 | EXPORT EXTI15_10_IRQHandler [WEAK]
226 | EXPORT RTCAlarm_IRQHandler [WEAK]
227 | EXPORT USBWakeUp_IRQHandler [WEAK]
228 |
229 | WWDG_IRQHandler
230 | PVD_IRQHandler
231 | TAMPER_IRQHandler
232 | RTC_IRQHandler
233 | FLASH_IRQHandler
234 | RCC_IRQHandler
235 | EXTI0_IRQHandler
236 | EXTI1_IRQHandler
237 | EXTI2_IRQHandler
238 | EXTI3_IRQHandler
239 | EXTI4_IRQHandler
240 | DMA1_Channel1_IRQHandler
241 | DMA1_Channel2_IRQHandler
242 | DMA1_Channel3_IRQHandler
243 | DMA1_Channel4_IRQHandler
244 | DMA1_Channel5_IRQHandler
245 | DMA1_Channel6_IRQHandler
246 | DMA1_Channel7_IRQHandler
247 | ADC1_2_IRQHandler
248 | USB_HP_CAN1_TX_IRQHandler
249 | USB_LP_CAN1_RX0_IRQHandler
250 | CAN1_RX1_IRQHandler
251 | CAN1_SCE_IRQHandler
252 | EXTI9_5_IRQHandler
253 | TIM1_BRK_IRQHandler
254 | TIM1_UP_IRQHandler
255 | TIM1_TRG_COM_IRQHandler
256 | TIM1_CC_IRQHandler
257 | TIM2_IRQHandler
258 | TIM3_IRQHandler
259 | TIM4_IRQHandler
260 | I2C1_EV_IRQHandler
261 | I2C1_ER_IRQHandler
262 | I2C2_EV_IRQHandler
263 | I2C2_ER_IRQHandler
264 | SPI1_IRQHandler
265 | SPI2_IRQHandler
266 | USART1_IRQHandler
267 | USART2_IRQHandler
268 | USART3_IRQHandler
269 | EXTI15_10_IRQHandler
270 | RTCAlarm_IRQHandler
271 | USBWakeUp_IRQHandler
272 |
273 | B .
274 |
275 | ENDP
276 |
277 | ALIGN
278 |
279 | ;*******************************************************************************
280 | ; User Stack and Heap initialization
281 | ;*******************************************************************************
282 | IF :DEF:__MICROLIB
283 |
284 | EXPORT __initial_sp
285 | EXPORT __heap_base
286 | EXPORT __heap_limit
287 |
288 | ELSE
289 |
290 | IMPORT __use_two_region_memory
291 | EXPORT __user_initial_stackheap
292 |
293 | __user_initial_stackheap
294 |
295 | LDR R0, = Heap_Mem
296 | LDR R1, =(Stack_Mem + Stack_Size)
297 | LDR R2, = (Heap_Mem + Heap_Size)
298 | LDR R3, = Stack_Mem
299 | BX LR
300 |
301 | ALIGN
302 |
303 | ENDIF
304 |
305 | END
306 |
307 | ;******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE*****
308 |
--------------------------------------------------------------------------------
/RTE/Device/STM32F103C8/stm32f10x_conf.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F10x_StdPeriph_Template/stm32f10x_conf.h
4 | * @author MCD Application Team
5 | * @version V3.5.0
6 | * @date 08-April-2011
7 | * @brief Library configuration file.
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
12 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
13 | * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
14 | * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
15 | * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
16 | * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
17 | *
18 | * © COPYRIGHT 2011 STMicroelectronics
19 | ******************************************************************************
20 | */
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __STM32F10x_CONF_H
24 | #define __STM32F10x_CONF_H
25 |
26 | /* Run Time Environment will set specific #define for each selected module below */
27 | #include "RTE_Components.h"
28 |
29 | #ifdef RTE_DEVICE_STDPERIPH_ADC
30 | #include "stm32f10x_adc.h"
31 | #endif
32 | #ifdef RTE_DEVICE_STDPERIPH_BKP
33 | #include "stm32f10x_bkp.h"
34 | #endif
35 | #ifdef RTE_DEVICE_STDPERIPH_CAN
36 | #include "stm32f10x_can.h"
37 | #endif
38 | #ifdef RTE_DEVICE_STDPERIPH_CEC
39 | #include "stm32f10x_cec.h"
40 | #endif
41 | #ifdef RTE_DEVICE_STDPERIPH_CRC
42 | #include "stm32f10x_crc.h"
43 | #endif
44 | #ifdef RTE_DEVICE_STDPERIPH_DAC
45 | #include "stm32f10x_dac.h"
46 | #endif
47 | #ifdef RTE_DEVICE_STDPERIPH_DBGMCU
48 | #include "stm32f10x_dbgmcu.h"
49 | #endif
50 | #ifdef RTE_DEVICE_STDPERIPH_DMA
51 | #include "stm32f10x_dma.h"
52 | #endif
53 | #ifdef RTE_DEVICE_STDPERIPH_EXTI
54 | #include "stm32f10x_exti.h"
55 | #endif
56 | #ifdef RTE_DEVICE_STDPERIPH_FLASH
57 | #include "stm32f10x_flash.h"
58 | #endif
59 | #ifdef RTE_DEVICE_STDPERIPH_FSMC
60 | #include "stm32f10x_fsmc.h"
61 | #endif
62 | #ifdef RTE_DEVICE_STDPERIPH_GPIO
63 | #include "stm32f10x_gpio.h"
64 | #endif
65 | #ifdef RTE_DEVICE_STDPERIPH_I2C
66 | #include "stm32f10x_i2c.h"
67 | #endif
68 | #ifdef RTE_DEVICE_STDPERIPH_IWDG
69 | #include "stm32f10x_iwdg.h"
70 | #endif
71 | #ifdef RTE_DEVICE_STDPERIPH_PWR
72 | #include "stm32f10x_pwr.h"
73 | #endif
74 | #ifdef RTE_DEVICE_STDPERIPH_RCC
75 | #include "stm32f10x_rcc.h"
76 | #endif
77 | #ifdef RTE_DEVICE_STDPERIPH_RTC
78 | #include "stm32f10x_rtc.h"
79 | #endif
80 | #ifdef RTE_DEVICE_STDPERIPH_SDIO
81 | #include "stm32f10x_sdio.h"
82 | #endif
83 | #ifdef RTE_DEVICE_STDPERIPH_SPI
84 | #include "stm32f10x_spi.h"
85 | #endif
86 | #ifdef RTE_DEVICE_STDPERIPH_TIM
87 | #include "stm32f10x_tim.h"
88 | #endif
89 | #ifdef RTE_DEVICE_STDPERIPH_USART
90 | #include "stm32f10x_usart.h"
91 | #endif
92 | #ifdef RTE_DEVICE_STDPERIPH_WWDG
93 | #include "stm32f10x_wwdg.h"
94 | #endif
95 | #ifdef RTE_DEVICE_STDPERIPH_FRAMEWORK
96 | #include "misc.h" /* High level functions for NVIC and SysTick (add-on to CMSIS functions) */
97 | #endif
98 |
99 | /* Exported types ------------------------------------------------------------*/
100 | /* Exported constants --------------------------------------------------------*/
101 | /* Uncomment the line below to expanse the "assert_param" macro in the
102 | Standard Peripheral Library drivers code */
103 | /* #define USE_FULL_ASSERT 1 */
104 |
105 | /* Exported macro ------------------------------------------------------------*/
106 | #ifdef USE_FULL_ASSERT
107 |
108 | /**
109 | * @brief The assert_param macro is used for function's parameters check.
110 | * @param expr: If expr is false, it calls assert_failed function which reports
111 | * the name of the source file and the source line number of the call
112 | * that failed. If expr is true, it returns no value.
113 | * @retval None
114 | */
115 | #define assert_param(expr) ((expr) ? (void)0 : assert_failed((uint8_t *)__FILE__, __LINE__))
116 | /* Exported functions ------------------------------------------------------- */
117 | void assert_failed(uint8_t* file, uint32_t line);
118 | #else
119 | #define assert_param(expr) ((void)0)
120 | #endif /* USE_FULL_ASSERT */
121 |
122 | #endif /* __STM32F10x_CONF_H */
123 |
124 | /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/
125 |
--------------------------------------------------------------------------------
/RTE/_STM32F103C8T6/RTE_Components.h:
--------------------------------------------------------------------------------
1 |
2 | /*
3 | * Auto generated Run-Time-Environment Component Configuration File
4 | * *** Do not modify ! ***
5 | *
6 | * Project: 'SPI_TESZT_VPC3'
7 | * Target: 'STM32F103C8T6'
8 | */
9 |
10 | #ifndef RTE_COMPONENTS_H
11 | #define RTE_COMPONENTS_H
12 |
13 |
14 | /*
15 | * Define the Device Header File:
16 | */
17 | #define CMSIS_device_header "stm32f10x.h"
18 |
19 | #define RTE_DEVICE_STDPERIPH_EXTI
20 | #define RTE_DEVICE_STDPERIPH_FRAMEWORK
21 | #define RTE_DEVICE_STDPERIPH_GPIO
22 | #define RTE_DEVICE_STDPERIPH_RCC
23 | #define RTE_DEVICE_STDPERIPH_SPI
24 | #define RTE_DEVICE_STDPERIPH_TIM
25 |
26 | #endif /* RTE_COMPONENTS_H */
27 |
--------------------------------------------------------------------------------
/RTE/_Target_1/RTE_Components.h:
--------------------------------------------------------------------------------
1 |
2 | /*
3 | * Auto generated Run-Time-Environment Component Configuration File
4 | * *** Do not modify ! ***
5 | *
6 | * Project: 'SPI_TESZT_VPC3'
7 | * Target: 'Target 1'
8 | */
9 |
10 | #ifndef RTE_COMPONENTS_H
11 | #define RTE_COMPONENTS_H
12 |
13 |
14 | /*
15 | * Define the Device Header File:
16 | */
17 | #define CMSIS_device_header "stm32f10x.h"
18 |
19 | #define RTE_DEVICE_STDPERIPH_FRAMEWORK
20 | #define RTE_DEVICE_STDPERIPH_RCC
21 | #define RTE_DEVICE_STDPERIPH_SPI
22 |
23 | #endif /* RTE_COMPONENTS_H */
24 |
--------------------------------------------------------------------------------
/SPI_TESZT_VPC3.uvoptx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 1.0
5 |
6 | ### uVision Project, (C) Keil Software
7 |
8 |
9 | *.c
10 | *.s*; *.src; *.a*
11 | *.obj; *.o
12 | *.lib
13 | *.txt; *.h; *.inc
14 | *.plm
15 | *.cpp
16 | 0
17 |
18 |
19 |
20 | 0
21 | 0
22 |
23 |
24 |
25 | STM32F103C8T6
26 | 0x4
27 | ARM-ADS
28 |
29 | 8000000
30 |
31 | 1
32 | 1
33 | 0
34 | 1
35 | 0
36 |
37 |
38 | 1
39 | 65535
40 | 0
41 | 0
42 | 0
43 |
44 |
45 | 79
46 | 66
47 | 8
48 | .\Listings\
49 |
50 |
51 | 1
52 | 1
53 | 1
54 | 0
55 | 1
56 | 1
57 | 0
58 | 1
59 | 0
60 | 0
61 | 0
62 | 0
63 |
64 |
65 | 1
66 | 1
67 | 1
68 | 1
69 | 1
70 | 1
71 | 1
72 | 0
73 | 0
74 |
75 |
76 | 1
77 | 0
78 | 1
79 |
80 | 18
81 |
82 | 0
83 | 1
84 | 1
85 | 1
86 | 1
87 | 1
88 | 1
89 | 1
90 | 1
91 | 1
92 | 1
93 | 1
94 | 1
95 | 1
96 | 0
97 | 1
98 | 1
99 | 1
100 | 1
101 | 0
102 | 0
103 | 1
104 | 5
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 | STLink\ST-LINKIII-KEIL_SWO.dll
116 |
117 |
118 |
119 | 0
120 | DLGDARM
121 | (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=-1,-1,-1,-1,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(234=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)
122 |
123 |
124 | 0
125 | ARMRTXEVENTFLAGS
126 | -L70 -Z18 -C0 -M0 -T1
127 |
128 |
129 | 0
130 | DLGTARM
131 | (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=-1,-1,-1,-1,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)
132 |
133 |
134 | 0
135 | ARMDBGFLAGS
136 | -T0
137 |
138 |
139 | 0
140 | DLGUARM
141 | (105=-1,-1,-1,-1,0)
142 |
143 |
144 | 0
145 | ST-LINKIII-KEIL_SWO
146 | -U57FF6D064965575012210387 -O238 -S0 -C0 -A0 -N00("ARM CoreSight SW-DP") -D00(1BA01477) -L00(0) -TO19 -TC8000000 -TP21 -TDS8003 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_128.FLM -FS08000000 -FL020000 -FP0($$Device:STM32F103C8$Flash\STM32F10x_128.FLM)
147 |
148 |
149 | 0
150 | UL2CM3
151 | UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_128 -FS08000000 -FL020000 -FP0($$Device:STM32F103C8$Flash\STM32F10x_128.FLM))
152 |
153 |
154 |
155 |
156 |
157 | 0
158 | 1
159 | spiReceived
160 |
161 |
162 |
163 | 0
164 |
165 |
166 | 0
167 | 1
168 | 1
169 | 0
170 | 0
171 | 0
172 | 0
173 | 1
174 | 0
175 | 0
176 | 0
177 | 0
178 | 0
179 | 0
180 | 0
181 | 0
182 | 0
183 | 0
184 | 0
185 | 0
186 | 0
187 | 0
188 | 0
189 | 0
190 |
191 |
192 |
193 | 0
194 | 0
195 | 0
196 |
197 |
198 |
199 |
200 |
201 |
202 | System Viewer\GPIOA
203 | 35905
204 |
205 |
206 |
207 | 1
208 | 0
209 | 2
210 | 10000000
211 |
212 |
213 |
214 |
215 |
216 | Application
217 | 1
218 | 0
219 | 0
220 | 0
221 |
222 | 1
223 | 1
224 | 1
225 | 0
226 | 0
227 | 0
228 | .\Main.c
229 | Main.c
230 | 0
231 | 0
232 |
233 |
234 | 1
235 | 2
236 | 1
237 | 0
238 | 0
239 | 0
240 | .\periph_init.c
241 | periph_init.c
242 | 0
243 | 0
244 |
245 |
246 | 1
247 | 3
248 | 1
249 | 0
250 | 0
251 | 0
252 | .\vpc3.c
253 | vpc3.c
254 | 0
255 | 0
256 |
257 |
258 |
259 |
260 | Ext
261 | 1
262 | 0
263 | 0
264 | 0
265 |
266 | 2
267 | 4
268 | 1
269 | 0
270 | 0
271 | 0
272 | .\delay.c
273 | delay.c
274 | 0
275 | 0
276 |
277 |
278 | 2
279 | 5
280 | 1
281 | 0
282 | 0
283 | 0
284 | .\lcd16x2.c
285 | lcd16x2.c
286 | 0
287 | 0
288 |
289 |
290 |
291 |
292 | Profibus_FW_src
293 | 1
294 | 0
295 | 0
296 | 0
297 |
298 | 3
299 | 6
300 | 1
301 | 0
302 | 0
303 | 0
304 | .\Firmware\Customer\DpAppl.c
305 | DpAppl.c
306 | 0
307 | 0
308 |
309 |
310 | 3
311 | 7
312 | 1
313 | 1
314 | 0
315 | 0
316 | .\Firmware\Customer\DpCfg.c
317 | DpCfg.c
318 | 0
319 | 0
320 |
321 |
322 | 3
323 | 8
324 | 1
325 | 0
326 | 0
327 | 0
328 | .\Firmware\Customer\DpDiag.c
329 | DpDiag.c
330 | 0
331 | 0
332 |
333 |
334 | 3
335 | 9
336 | 1
337 | 0
338 | 0
339 | 0
340 | .\Firmware\Customer\DpPrm.c
341 | DpPrm.c
342 | 0
343 | 0
344 |
345 |
346 |
347 |
348 | Profibus_DP_Driver
349 | 1
350 | 0
351 | 0
352 | 0
353 |
354 | 4
355 | 10
356 | 1
357 | 0
358 | 0
359 | 0
360 | .\Firmware\Customer\DPV0_DRV\dp_if.c
361 | dp_if.c
362 | 0
363 | 0
364 |
365 |
366 | 4
367 | 11
368 | 1
369 | 0
370 | 0
371 | 0
372 | .\Firmware\Customer\DPV0_DRV\dp_isr.c
373 | dp_isr.c
374 | 0
375 | 0
376 |
377 |
378 |
379 |
380 | Test
381 | 1
382 | 0
383 | 0
384 | 0
385 |
386 | 5
387 | 12
388 | 1
389 | 0
390 | 0
391 | 0
392 | .\Test\test.c
393 | test.c
394 | 0
395 | 0
396 |
397 |
398 |
399 |
400 | ::CMSIS
401 | 0
402 | 0
403 | 0
404 | 1
405 |
406 |
407 |
408 | ::Device
409 | 1
410 | 0
411 | 0
412 | 1
413 |
414 |
415 |
416 |
--------------------------------------------------------------------------------
/SPI_TESZT_VPC3.uvprojx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 2.1
5 |
6 | ### uVision Project, (C) Keil Software
7 |
8 |
9 |
10 | STM32F103C8T6
11 | 0x4
12 | ARM-ADS
13 | 5060422::V5.06 update 4 (build 422)::ARMCC
14 |
15 |
16 | STM32F103C8
17 | STMicroelectronics
18 | Keil.STM32F1xx_DFP.2.2.0
19 | http://www.keil.com/pack/
20 | IRAM(0x20000000,0x5000) IROM(0x08000000,0x10000) CPUTYPE("Cortex-M3") CLOCK(12000000) ELITTLE
21 |
22 |
23 | UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_128 -FS08000000 -FL020000 -FP0($$Device:STM32F103C8$Flash\STM32F10x_128.FLM))
24 | 4235
25 | $$Device:STM32F103C8$Device\Include\stm32f10x.h
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 | $$Device:STM32F103C8$SVD\STM32F103xx.svd
36 | 0
37 | 0
38 |
39 |
40 |
41 |
42 |
43 |
44 | 0
45 | 0
46 | 0
47 | 0
48 | 1
49 |
50 | .\Objects\
51 | SPI_TESZT_VPC3
52 | 1
53 | 0
54 | 0
55 | 1
56 | 1
57 | .\Listings\
58 | 1
59 | 0
60 | 0
61 |
62 | 0
63 | 0
64 |
65 |
66 | 0
67 | 0
68 | 0
69 | 0
70 |
71 |
72 | 0
73 | 0
74 |
75 |
76 | 0
77 | 0
78 | 0
79 | 0
80 |
81 |
82 | 0
83 | 0
84 |
85 |
86 | 0
87 | 0
88 | 0
89 | 0
90 |
91 | 0
92 |
93 |
94 |
95 | 0
96 | 0
97 | 0
98 | 0
99 | 0
100 | 1
101 | 0
102 | 0
103 | 0
104 | 0
105 | 3
106 |
107 |
108 | 1
109 |
110 |
111 | SARMCM3.DLL
112 |
113 | DARMSTM.DLL
114 | -pSTM32F103C8
115 | SARMCM3.DLL
116 |
117 | TARMSTM.DLL
118 | -pSTM32F103C8
119 |
120 |
121 |
122 | 1
123 | 0
124 | 0
125 | 0
126 | 16
127 |
128 |
129 |
130 |
131 | 1
132 | 0
133 | 0
134 | 1
135 | 1
136 | 4096
137 |
138 | 1
139 | BIN\UL2CM3.DLL
140 | "" ()
141 |
142 |
143 |
144 |
145 | 0
146 |
147 |
148 |
149 | 0
150 | 1
151 | 1
152 | 1
153 | 1
154 | 1
155 | 1
156 | 1
157 | 0
158 | 1
159 | 1
160 | 0
161 | 1
162 | 1
163 | 0
164 | 0
165 | 1
166 | 1
167 | 1
168 | 1
169 | 1
170 | 1
171 | 1
172 | 1
173 | 1
174 | 0
175 | 0
176 | "Cortex-M3"
177 |
178 | 0
179 | 0
180 | 0
181 | 1
182 | 1
183 | 0
184 | 0
185 | 0
186 | 0
187 | 0
188 | 8
189 | 0
190 | 0
191 | 0
192 | 0
193 | 3
194 | 3
195 | 0
196 | 0
197 | 0
198 | 0
199 | 0
200 | 0
201 | 0
202 | 0
203 | 0
204 | 0
205 | 1
206 | 0
207 | 0
208 | 0
209 | 0
210 | 1
211 | 0
212 |
213 |
214 | 0
215 | 0x0
216 | 0x0
217 |
218 |
219 | 0
220 | 0x0
221 | 0x0
222 |
223 |
224 | 0
225 | 0x0
226 | 0x0
227 |
228 |
229 | 0
230 | 0x0
231 | 0x0
232 |
233 |
234 | 0
235 | 0x0
236 | 0x0
237 |
238 |
239 | 0
240 | 0x0
241 | 0x0
242 |
243 |
244 | 0
245 | 0x20000000
246 | 0x5000
247 |
248 |
249 | 1
250 | 0x8000000
251 | 0x10000
252 |
253 |
254 | 0
255 | 0x0
256 | 0x0
257 |
258 |
259 | 1
260 | 0x0
261 | 0x0
262 |
263 |
264 | 1
265 | 0x0
266 | 0x0
267 |
268 |
269 | 1
270 | 0x0
271 | 0x0
272 |
273 |
274 | 1
275 | 0x8000000
276 | 0x10000
277 |
278 |
279 | 1
280 | 0x0
281 | 0x0
282 |
283 |
284 | 0
285 | 0x0
286 | 0x0
287 |
288 |
289 | 0
290 | 0x0
291 | 0x0
292 |
293 |
294 | 0
295 | 0x0
296 | 0x0
297 |
298 |
299 | 0
300 | 0x20000000
301 | 0x5000
302 |
303 |
304 | 0
305 | 0x0
306 | 0x0
307 |
308 |
309 |
310 |
311 |
312 | 1
313 | 3
314 | 0
315 | 0
316 | 1
317 | 0
318 | 0
319 | 0
320 | 0
321 | 0
322 | 2
323 | 0
324 | 0
325 | 1
326 | 0
327 | 1
328 | 1
329 | 1
330 | 1
331 | 0
332 | 0
333 | 0
334 |
335 |
336 |
337 |
338 | .\inc;.\Firmware\Customer\Inc;.\Firmware\Customer;.\Test
339 |
340 |
341 |
342 | 1
343 | 0
344 | 0
345 | 0
346 | 0
347 | 0
348 | 0
349 | 0
350 | 0
351 | 0
352 |
353 |
354 |
355 |
356 |
357 |
358 |
359 |
360 | 1
361 | 0
362 | 0
363 | 0
364 | 1
365 | 0
366 | 0x08000000
367 | 0x20000000
368 |
369 |
370 |
371 |
372 |
373 |
374 |
375 |
376 |
377 |
378 |
379 |
380 | Application
381 |
382 |
383 | Main.c
384 | 1
385 | .\Main.c
386 |
387 |
388 | periph_init.c
389 | 1
390 | .\periph_init.c
391 |
392 |
393 | vpc3.c
394 | 1
395 | .\vpc3.c
396 |
397 |
398 |
399 |
400 | Ext
401 |
402 |
403 | delay.c
404 | 1
405 | .\delay.c
406 |
407 |
408 | lcd16x2.c
409 | 1
410 | .\lcd16x2.c
411 |
412 |
413 |
414 |
415 | Profibus_FW_src
416 |
417 |
418 | DpAppl.c
419 | 1
420 | .\Firmware\Customer\DpAppl.c
421 |
422 |
423 | DpCfg.c
424 | 1
425 | .\Firmware\Customer\DpCfg.c
426 |
427 |
428 | DpDiag.c
429 | 1
430 | .\Firmware\Customer\DpDiag.c
431 |
432 |
433 | DpPrm.c
434 | 1
435 | .\Firmware\Customer\DpPrm.c
436 |
437 |
438 |
439 |
440 | Profibus_DP_Driver
441 |
442 |
443 | dp_if.c
444 | 1
445 | .\Firmware\Customer\DPV0_DRV\dp_if.c
446 |
447 |
448 | dp_isr.c
449 | 1
450 | .\Firmware\Customer\DPV0_DRV\dp_isr.c
451 |
452 |
453 |
454 |
455 | Test
456 |
457 |
458 | test.c
459 | 1
460 | .\Test\test.c
461 |
462 |
463 |
464 |
465 | ::CMSIS
466 |
467 |
468 | ::Device
469 |
470 |
471 |
472 |
473 |
474 |
475 |
476 |
477 |
478 |
479 |
480 |
481 |
482 |
483 |
484 |
485 |
486 |
487 |
488 |
489 |
490 |
491 |
492 |
493 |
494 |
495 |
496 |
497 |
498 |
499 |
500 |
501 |
502 |
503 |
504 |
505 |
506 |
507 |
508 |
509 |
510 |
511 |
512 |
513 |
514 |
515 |
516 |
517 |
518 |
519 |
520 |
521 |
522 |
523 |
524 |
525 |
526 |
527 |
528 | RTE\Device\STM32F103C8\RTE_Device.h
529 |
530 |
531 |
532 |
533 |
534 |
535 |
536 | RTE\Device\STM32F103C8\startup_stm32f10x_md.s
537 |
538 |
539 |
540 |
541 |
542 |
543 |
544 | RTE\Device\STM32F103C8\stm32f10x_conf.h
545 |
546 |
547 |
548 |
549 |
550 |
551 |
552 | RTE\Device\STM32F103C8\system_stm32f10x.c
553 |
554 |
555 |
556 |
557 |
558 |
559 |
560 |
561 |
562 |
563 |
--------------------------------------------------------------------------------
/Test/test.c:
--------------------------------------------------------------------------------
1 | #include "test.h"
2 | #include "lcd16x2.h"
3 | #include
4 | #include
5 | void test(uint16_t bValue){
6 |
7 |
8 | lcdPrintHex((uint8_t)(bValue >> 8));
9 | lcdPrintHex((uint8_t)bValue);
10 |
11 | }
12 |
13 |
14 | void ledTest(){
15 |
16 | int i = 0;
17 | while(i<20){
18 | GPIOC->ODR ^=0X2000;
19 | DelayMs(50);
20 | i++;
21 | }
22 | GPIOC->ODR |= 0X2000;
23 | }
24 |
25 |
26 |
--------------------------------------------------------------------------------
/Test/test.h:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | void test(uint16_t bValue);
4 | void ledTest();
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/delay.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file delay.c
4 | * @author Yohanes Erwin Setiawan
5 | * @date 10 January 2016
6 | ******************************************************************************
7 | */
8 |
9 | #include "delay.h"
10 |
11 | // For store tick counts in us
12 | static __IO uint32_t usTicks;
13 |
14 | // SysTick_Handler function will be called every 1 us
15 | void SysTick_Handler()
16 | {
17 | if (usTicks != 0)
18 | {
19 | usTicks--;
20 | }
21 | }
22 |
23 | void DelayInit()
24 | {
25 | // Update SystemCoreClock value
26 | SystemCoreClockUpdate();
27 | // Configure the SysTick timer to overflow every 1 us
28 | SysTick_Config(SystemCoreClock / 1000000);
29 | }
30 |
31 | void DelayUs(uint32_t us)
32 | {
33 | // Reload us value
34 | usTicks = us;
35 | // Wait until usTick reach zero
36 | while (usTicks);
37 | }
38 |
39 | void DelayMs(uint32_t ms)
40 | {
41 | // Wait until ms reach zero
42 | while (ms--)
43 | {
44 | // Delay 1ms
45 | DelayUs(1000);
46 | }
47 | }
48 |
49 | /********************************* END OF FILE ********************************/
50 | /******************************************************************************/
51 |
--------------------------------------------------------------------------------
/inc/delay.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file delay.h
4 | * @author Yohanes Erwin Setiawan
5 | * @date 10 January 2016
6 | ******************************************************************************
7 | */
8 |
9 | #ifndef __DELAY_H
10 | #define __DELAY_H
11 |
12 | #ifdef __cplusplus
13 | extern "C" {
14 | #endif
15 |
16 | #include "stm32f10x.h"
17 |
18 | void DelayInit(void);
19 | void DelayUs(uint32_t us);
20 | void DelayMs(uint32_t ms);
21 |
22 | #ifdef __cplusplus
23 | }
24 | #endif
25 |
26 | #endif
27 |
28 | /********************************* END OF FILE ********************************/
29 | /******************************************************************************/
30 |
--------------------------------------------------------------------------------
/inc/lcd16x2.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file lcd16x2.h
4 | * @author Yohanes Erwin Setiawan
5 | * @date 6 February 2016
6 | * @note Re-write form Peter Fleury AVR LCD library
7 | ******************************************************************************
8 | */
9 |
10 | #ifndef __LCD16X2_H
11 | #define __LCD16X2_H
12 |
13 | #ifdef __cplusplus
14 | extern "C" {
15 | #endif
16 |
17 | /** Includes ---------------------------------------------------------------- */
18 | #include "stm32f10x.h"
19 | #include "stm32f10x_rcc.h"
20 | #include "stm32f10x_gpio.h"
21 | #include "delay.h"
22 | #include "platform.h"
23 | /** Port and pin definition for 4-bit mode ---------------------------------- */
24 | // LCD control lines (must be on the same port)
25 | #define LCD16X2_RCC_GPIO_CONTROL RCC_APB2Periph_GPIOB
26 | #define LCD16X2_GPIO_CONTROL GPIOB
27 | #define LCD16X2_GPIO_RS GPIOB
28 | #define LCD16X2_GPIO_RW GPIOB
29 | #define LCD16X2_GPIO_EN GPIOB
30 | // LCD data lines (must be on the same port)
31 | #define LCD16X2_RCC_GPIO_DATA RCC_APB2Periph_GPIOA
32 | #define LCD16X2_GPIO_DATA GPIOA
33 | #define LCD16X2_GPIO_D4 GPIOA
34 | #define LCD16X2_GPIO_D5 GPIOA
35 | #define LCD16X2_GPIO_D6 GPIOA
36 | #define LCD16X2_GPIO_D7 GPIOA
37 | // Pin definition
38 | #define LCD16X2_PIN_RS GPIO_Pin_12
39 | #define LCD16X2_PIN_RW GPIO_Pin_13
40 | #define LCD16X2_PIN_EN GPIO_Pin_14
41 | #define LCD16X2_PIN_D4 GPIO_Pin_9 // 4-bit mode LSB
42 | #define LCD16X2_PIN_D5 GPIO_Pin_10
43 | #define LCD16X2_PIN_D6 GPIO_Pin_11
44 | #define LCD16X2_PIN_D7 GPIO_Pin_12 // 4-bit mode MSB
45 |
46 | /** Display size ------------------------------------------------------------ */
47 | // Number of visible lines of the display (1 or 2)
48 | #define LCD16X2_LINES 2
49 | // Visible characters per line of the display
50 | #define LCD16X2_DISP_LENGTH 16
51 | // DDRAM address of first char of line 1
52 | #define LCD16X2_START_LINE_1 0x00
53 | // DDRAM address of first char of line 2
54 | #define LCD16X2_START_LINE_2 0x40
55 |
56 | /** Delay value ------------------------------------------------------------- */
57 | // Delay power on
58 | #define LCD16X2_DELAY_POWER_ON 16000
59 | // Delay after initialize 8-bit
60 | #define LCD16X2_DELAY_INIT 5000
61 | // Delay after initialize 8-bit repeated
62 | #define LCD16X2_DELAY_INIT_REP 64
63 | // Delay after set 4-bit mode
64 | #define LCD16X2_DELAY_INIT_4BIT 64
65 | // Delay until address counter updated after busy flag is cleared
66 | #define LCD16X2_DELAY_BUSY_FLAG 4
67 | // Enable pulse width high level
68 | #define LCD16X2_DELAY_ENABLE_PULSE 2
69 |
70 | /** Instructions bit location ----------------------------------------------- */
71 | #define LCD16X2_CLEAR_DISPLAY 0x01
72 | #define LCD16X2_CURSOR_HOME 0x02
73 | #define LCD16X2_CHARACTER_ENTRY_MODE 0x04
74 | #define LCD16X2_DISPLAY_CURSOR_ON_OFF 0x08
75 | #define LCD16X2_DISPLAY_CURSOR_SHIFT 0x10
76 | #define LCD16X2_FUNCTION_SET 0x20
77 | #define LCD16X2_SET_CGRAM_ADDRESS 0x40
78 | #define LCD16X2_SET_DDRAM_ADDRESS 0x80
79 | /* Character entry mode instructions */
80 | #define LCD16X2_INCREMENT 0x02 // Initialization setting
81 | #define LCD16X2_DECREMENT 0x00
82 | #define LCD16X2_DISPLAY_SHIFT_ON 0x01
83 | #define LCD16X2_DISPLAY_SHIFT_OFF 0x00 // Initialization setting
84 | /* Display cursor on off instructions */
85 | #define LCD16X2_DISPLAY_ON 0x04
86 | #define LCD16X2_DISPLAY_OFF 0x00 // Initialization setting
87 | #define LCD16X2_CURSOR_UNDERLINE_ON 0x02
88 | #define LCD16X2_CURSOR_UNDERLINE_OFF 0x00 // Initialization setting
89 | #define LCD16X2_CURSOR_BLINK_ON 0x01
90 | #define LCD16X2_CURSOR_BLINK_OFF 0x00 // Initialization setting
91 | /* Display cursor shift instructions */
92 | #define LCD16X2_DISPLAY_SHIFT 0x08
93 | #define LCD16X2_CURSOR_MOVE 0x00
94 | #define LCD16X2_RIGHT_SHIFT 0x04
95 | #define LCD16X2_LEFT_SHIFT 0x00
96 | /* Function set instructions */
97 | #define LCD16X2_8BIT_INTERFACE 0x10 // Initialization setting
98 | #define LCD16X2_4BIT_INTERFACE 0x00
99 | #define LCD16X2_2LINE_MODE 0x08
100 | #define LCD16X2_1LINE_MODE 0x00 // Initialization setting
101 | #define LCD16X2_5X10DOT_FORMAT 0x04
102 | #define LCD16X2_5X7DOT_FORMAT 0x00 // Initialization setting
103 | /* Busy flag bit location */
104 | #define LCD16X2_BUSY_FLAG 0x80
105 |
106 | /** LCD display and cursor attributes --------------------------------------- */
107 | #define LCD16X2_DISPLAY_OFF_CURSOR_OFF_BLINK_OFF (LCD16X2_DISPLAY_OFF | \
108 | LCD16X2_CURSOR_UNDERLINE_OFF | LCD16X2_CURSOR_BLINK_OFF)
109 | #define LCD16X2_DISPLAY_ON_CURSOR_OFF_BLINK_OFF (LCD16X2_DISPLAY_ON | \
110 | LCD16X2_CURSOR_UNDERLINE_OFF | LCD16X2_CURSOR_BLINK_OFF)
111 | #define LCD16X2_DISPLAY_ON_CURSOR_OFF_BLINK_ON (LCD16X2_DISPLAY_ON | \
112 | LCD16X2_CURSOR_UNDERLINE_OFF | LCD16X2_CURSOR_BLINK_ON)
113 | #define LCD16X2_DISPLAY_ON_CURSOR_ON_BLINK_OFF (LCD16X2_DISPLAY_ON | \
114 | LCD16X2_CURSOR_UNDERLINE_ON | LCD16X2_CURSOR_BLINK_OFF)
115 | #define LCD16X2_DISPLAY_ON_CURSOR_ON_BLINK_ON (LCD16X2_DISPLAY_ON | \
116 | LCD16X2_CURSOR_UNDERLINE_ON | LCD16X2_CURSOR_BLINK_ON)
117 |
118 | /** Public function prototypes ---------------------------------------------- */
119 | void lcd16x2_init(uint8_t disp_attr);
120 | void lcd16x2_write_command(uint8_t cmd);
121 | void lcd16x2_write_data(uint8_t data);
122 | void lcd16x2_clrscr(void);
123 | void lcd16x2_home(void);
124 | void lcd16x2_gotoxy(uint8_t x, uint8_t y);
125 | uint8_t lcd16x2_getxy(void);
126 | void lcd16x2_entry_inc(void);
127 | void lcd16x2_entry_dec(void);
128 | void lcd16x2_entry_inc_shift(void);
129 | void lcd16x2_entry_dec_shift(void);
130 | void lcd16x2_display_on(void);
131 | void lcd16x2_display_off(void);
132 | void lcd16x2_cursor_on(void);
133 | void lcd16x2_cursor_off(void);
134 | void lcd16x2_blink_on(void);
135 | void lcd16x2_blink_off(void);
136 | void lcd16x2_display_shift_left(void);
137 | void lcd16x2_display_shift_right(void);
138 | void lcd16x2_cursor_shift_left(void);
139 | void lcd16x2_cursor_shift_right(void);
140 | void lcd16x2_putc(const char c);
141 | void lcd16x2_puts(const char* s);
142 | void lcd16x2_create_custom_char(uint8_t location, uint8_t* data_bytes);
143 | void lcd16x2_put_custom_char(uint8_t x, uint8_t y, uint8_t location);
144 |
145 | //myFunctions********************************************
146 |
147 | void lcdPrint(const char *s);
148 | void lcdPrintInt(uint8_t value);
149 | void lcdPrintHex(uint8_t value);
150 | void clrScr();
151 |
152 | #ifdef __cplusplus
153 | }
154 | #endif
155 |
156 | #endif
157 |
158 | /********************************* END OF FILE ********************************/
159 | /******************************************************************************/
160 |
--------------------------------------------------------------------------------
/inc/periph_init.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/inc/periph_init.h
--------------------------------------------------------------------------------
/inc/vpc3.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/inc/vpc3.h
--------------------------------------------------------------------------------
/inc/vpc3.h~RF12ad5b58.TMP:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/inc/vpc3.h~RF12ad5b58.TMP
--------------------------------------------------------------------------------
/inc/vpc3.h~RFde33637.TMP:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/inc/vpc3.h~RFde33637.TMP
--------------------------------------------------------------------------------
/inc/vpc3.h~RFf03af17.TMP:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/inc/vpc3.h~RFf03af17.TMP
--------------------------------------------------------------------------------
/lcd16x2.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/lcd16x2.c
--------------------------------------------------------------------------------
/periph_init.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tanyigergo/Profibus_DP_slave/ef39e5ed7929137f63f222e0a758c3b5bf5f1ce2/periph_init.c
--------------------------------------------------------------------------------
/readme.txt:
--------------------------------------------------------------------------------
1 | blabla
2 | blalb
3 |
--------------------------------------------------------------------------------
/vpc3.c:
--------------------------------------------------------------------------------
1 | #include "stm32f10x.h" // Device header
2 | #include "vpc3.h"
3 |
4 | #include "delay.h"
5 | #include "periph_init.h"
6 |
7 | #include "test.h"
8 |
9 |
10 | /*---------------------------------------------------------------------------*/
11 | /* function: Vpc3Write */
12 | /*---------------------------------------------------------------------------*/
13 | /**
14 | * @brief Write a byte to VPC3+.
15 | *
16 | * @attention This function is only necessary with VPC3+S in SPI- or IIC-Mode!
17 | *
18 | * @param[in]wAddress Address in VPC3+
19 | * @param[in]bData Data
20 | */
21 |
22 | void Vpc3Write(VPC3_ADR wAddress, uint8_t bData )
23 | {
24 |
25 |
26 | //16 bit address into 2 bytes
27 | uint8_t upperByte = (uint8_t)(wAddress >> 8);
28 | uint8_t lowerByte = (uint8_t)wAddress;
29 | //Variable to return
30 | uint8_t spiRxBuffer;
31 |
32 | DpAppl_DisableInterruptVPC3Channel1();
33 |
34 | /*NSS pin = LOW*/
35 | SET_NSS_LOW;
36 | DelayUs(10);
37 |
38 |
39 | /*Send slave the read instruction, 0001 0011*/
40 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
41 | SPI1->DR = WRITE_BYTE;
42 |
43 |
44 | /*Send 16 bit address of slave memory cell*/
45 | //1. Upper byte address
46 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
47 | SPI1->DR = upperByte;
48 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
49 | spiRxBuffer = SPI1->DR;
50 |
51 | //2. Lower byte address
52 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
53 | SPI1->DR = lowerByte;
54 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
55 | spiRxBuffer = SPI1->DR;
56 |
57 | /*Send data byte*/
58 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
59 | SPI1->DR = bData;
60 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
61 | spiRxBuffer = SPI1->DR;
62 |
63 |
64 | /*Wait while the SPI interface is busy*/
65 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
66 |
67 | spiRxBuffer = SPI1->DR;
68 |
69 | DelayUs(10);
70 |
71 | /*NSS pin high*/
72 | SET_NSS_HIGH;
73 |
74 | DelayUs(10);
75 | DpAppl_EnableInterruptVPC3Channel1();
76 |
77 | }//void Vpc3Write( VPC3_ADR wAddress, uint8_t bData )
78 |
79 |
80 |
81 | /*---------------------------------------------------------------------------*/
82 | /* function: Vpc3Read */
83 | /*---------------------------------------------------------------------------*/
84 | /**
85 | * @brief Read one byte from VPC3+.
86 | *
87 | * @attention This function is only necessary with VPC3+S in SPI- or IIC-Mode!
88 | *
89 | * @param[in]wAddress Address in VPC3+
90 | * @return value of wAddress
91 | */
92 |
93 | uint8_t Vpc3Read( VPC3_ADR wAddress )
94 | {
95 |
96 |
97 |
98 | //16 bit address into 2 bytes
99 | uint8_t upperByte = (uint8_t)(wAddress >> 8);
100 | uint8_t lowerByte = (uint8_t)wAddress;
101 |
102 | //Variable to return
103 | uint8_t spiRxBuffer;
104 |
105 | DpAppl_DisableInterruptVPC3Channel1();
106 |
107 | /*NSS pin = LOW*/
108 | SET_NSS_LOW;
109 |
110 |
111 |
112 | /*Send slave the read instruction, 0001 0011*/
113 | SPI1->DR = READ_BYTE;
114 |
115 |
116 | /*Send 16 bit address of slave memory cell*/
117 | //1. Upper byte address
118 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
119 | SPI1->DR = upperByte;
120 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
121 | spiRxBuffer = SPI1->DR;
122 |
123 | //2. Lower byte address
124 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
125 | SPI1->DR = lowerByte;
126 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
127 | spiRxBuffer = SPI1->DR;
128 |
129 | /*Send dummy byte*/
130 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
131 | SPI1->DR = 0x00;
132 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
133 | spiRxBuffer = SPI1->DR;
134 |
135 | // /*Send dummy byte*/
136 | // while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
137 | // SPI1->DR = 0x00;
138 | // while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
139 | // spiRxBuffer = SPI1->DR;
140 |
141 | /*Wait while the SPI interface is busy*/
142 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
143 |
144 | /*Read the received data*/
145 | spiRxBuffer = SPI1->DR;
146 |
147 |
148 |
149 | /*NSS pin high*/
150 | SET_NSS_HIGH;
151 |
152 | DpAppl_EnableInterruptVPC3Channel1();
153 |
154 | return spiRxBuffer;
155 |
156 |
157 |
158 | }//uint8_t Vpc3Read( VPC3_ADR wAddress )
159 |
160 |
161 |
162 |
163 | /*---------------------------------------------------------------------------*/
164 | /* function: Vpc3MemSet */
165 | /*---------------------------------------------------------------------------*/
166 | /**
167 | * @brief Fill block of VPC3+ memory.
168 | *
169 | * @param[in]wAddress Address of the block of memory to fill.
170 | * @param[in]bValue Value to be set.
171 | * @param[in]wLength Number of bytes to be set to the value.
172 | */
173 |
174 | void Vpc3MemSet( VPC3_ADR wAddress, uint8_t bValue, uint16_t wLength )
175 | {
176 | /** @todo Add your own code here! */
177 | uint8_t upperByte = (uint8_t)(wAddress >> 8);
178 | uint8_t lowerByte = (uint8_t)wAddress;
179 | uint16_t i;
180 | uint8_t spiRxBuffer;
181 |
182 | DpAppl_DisableInterruptVPC3Channel1();
183 |
184 | /*NSS pin = LOW*/
185 | SET_NSS_LOW;
186 |
187 |
188 |
189 | /*Send slave the read instruction, 0001 0011*/
190 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
191 | SPI1->DR = WRITE_ARRAY;
192 |
193 |
194 | /*Send 16 bit address of slave memory cell*/
195 | //1. Upper byte address
196 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
197 | SPI1->DR = upperByte;
198 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
199 | spiRxBuffer = SPI1->DR;
200 |
201 | //2. Lower byte address
202 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
203 | SPI1->DR = lowerByte;
204 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
205 | spiRxBuffer = SPI1->DR;
206 |
207 | /*Send data byte*/
208 | for(i = 0; i DR = bValue;
211 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
212 | spiRxBuffer = SPI1->DR;
213 | }
214 |
215 |
216 | /*Wait while the SPI interface is busy*/
217 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
218 | spiRxBuffer = SPI1->DR;
219 |
220 |
221 | /*NSS pin high*/
222 | SET_NSS_HIGH;
223 |
224 | DpAppl_EnableInterruptVPC3Channel1();
225 | }//void Vpc3MemSet( VPC3_ADR wAddress, uint8_t bValue, uint16_t wLength )
226 |
227 |
228 | /*---------------------------------------------------------------------------*/
229 | /* function: Vpc3MemCmp */
230 | /*---------------------------------------------------------------------------*/
231 | /**
232 | * @brief Compare two blocks of VPC3+ memory.
233 | *
234 | * @param[in]pToVpc3Memory1 Pointer to block of memory.
235 | * @param[in]pToVpc3Memory2 Pointer to block of memory.
236 | * @param[in]wLength Number of bytes to compare.
237 | * @return 0 Indicates that the contents of both memory blocks are equal.
238 | * @return 1 Indicates that the contents of both memory blocks are not equal.
239 | */
240 |
241 | uint8_t Vpc3MemCmp( VPC3_UNSIGNED8_PTR pToVpc3Memory1, VPC3_UNSIGNED8_PTR pToVpc3Memory2, uint16_t wLength )
242 | {
243 | /** @todo Add your own code here! */
244 |
245 | uint8_t bRetValue;
246 | uint16_t i;
247 |
248 | bRetValue = 0;
249 | for( i = 0; i < wLength; i++ )
250 | {
251 | if( Vpc3Read( (VPC3_ADR)pToVpc3Memory1++ ) != Vpc3Read( (VPC3_ADR)pToVpc3Memory2++ ) )
252 | {
253 | bRetValue = 1;
254 | break;
255 | }//if( Vpc3Read( (VPC3_ADR)pToVpc3Memory1++ ) != Vpc3Read( (VPC3_ADR)pToVpc3Memory2++ ) )
256 | }//for( i = 0; i < wLength; i++ )
257 |
258 | return bRetValue;
259 | }//uint8_t Vpc3MemCmp( VPC3_UNSIGNED8_PTR pToVpc3Memory1, VPC3_UNSIGNED8_PTR pToVpc3Memory2, uint16_t wLength )
260 |
261 |
262 |
263 |
264 |
265 |
266 | /*---------------------------------------------------------------------------*/
267 | /* function: CopyFromVpc3 */
268 | /*---------------------------------------------------------------------------*/
269 |
270 | /**
271 | * @brief Copy block of memory from VPC3+.
272 | *
273 | * @param[in]pLocalMemory Pointer to the destination array where the content is to be copied.
274 | * @param[in]pToVpc3Memory Pointer to the source of data to be copied.
275 | * @param[in]wLength Number of bytes to copy.
276 | */
277 | void CopyFromVpc3( MEM_UNSIGNED8_PTR pLocalMemory, VPC3_UNSIGNED8_PTR pToVpc3Memory, uint16_t wLength)
278 | {
279 | uint16_t wAddress = (VPC3_ADR)pToVpc3Memory;
280 | uint8_t upperByte = (uint8_t)(wAddress >> 8);
281 | uint8_t lowerByte = (uint8_t)wAddress;
282 |
283 | DpAppl_DisableInterruptVPC3Channel1();
284 | int i;
285 |
286 |
287 |
288 | SET_NSS_LOW;
289 |
290 | /*Send slave the read instruction, 0001 0011*/
291 | SPI1->DR = READ_ARRAY;
292 |
293 |
294 | /*Send 16 bit address of slave memory cell*/
295 | //1. Upper byte address
296 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
297 | SPI1->DR = upperByte;
298 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
299 | pLocalMemory[0] = SPI1->DR;
300 |
301 | //2. Lower byte address
302 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
303 | SPI1->DR = lowerByte;
304 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
305 | pLocalMemory[0] = SPI1->DR;
306 |
307 | /*Send dummy byte*/
308 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
309 | SPI1->DR = 0x00;
310 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
311 | pLocalMemory[0] = SPI1->DR;
312 |
313 | for(i = 0; i < wLength-1; i++){
314 |
315 | /*Send dummy byte*/
316 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
317 | SPI1->DR = 0x00;
318 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
319 | pLocalMemory[i] = SPI1->DR;
320 |
321 | }
322 |
323 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
324 | pLocalMemory[wLength-1] = SPI1->DR;
325 |
326 | /*NSS pin high*/
327 | SET_NSS_HIGH;
328 |
329 |
330 |
331 |
332 |
333 |
334 |
335 | /** @todo Add your own code here! */
336 | }//void CopyFromVpc3( MEM_UNSIGNED8_PTR pLocalMemory, VPC3_UNSIGNED8_PTR pToVpc3Memory, uint16_t wLength )
337 |
338 |
339 |
340 |
341 |
342 |
343 | /*---------------------------------------------------------------------------*/
344 | /* function: CopyToVpc3 */
345 | /*---------------------------------------------------------------------------*/
346 | /**
347 | * @brief Copy block of memory to VPC3+.
348 | *
349 | * @param[in]pToVpc3Memory Pointer to the destination array where the content is to be copied.
350 | * @param[in]pLocalMemory Pointer to the source of data to be copied.
351 | * @param[in]wLength Number of bytes to copy.
352 | */
353 |
354 | void CopyToVpc3(VPC3_UNSIGNED8_PTR pToVpc3Memory, MEM_UNSIGNED8_PTR pLocalMemory, uint16_t wLength)
355 | {
356 | /** @todo Add your own code here! */
357 |
358 |
359 | uint16_t wAddress = (VPC3_ADR)pToVpc3Memory;
360 | uint8_t upperByte = (uint8_t)(wAddress >> 8);
361 | uint8_t lowerByte = (uint8_t)wAddress;
362 | uint16_t i;
363 | uint8_t spiRxBuffer;
364 |
365 | DpAppl_DisableInterruptVPC3Channel1();
366 |
367 | /*NSS pin = LOW*/
368 | SET_NSS_LOW;
369 |
370 |
371 | /*Send slave the read instruction, 0001 0011*/
372 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
373 | SPI1->DR = WRITE_ARRAY;
374 |
375 |
376 | /*Send 16 bit address of slave memory cell*/
377 | //1. Upper byte address
378 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
379 | SPI1->DR = upperByte;
380 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
381 | spiRxBuffer = SPI1->DR;
382 |
383 | //2. Lower byte address
384 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
385 | SPI1->DR = lowerByte;
386 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
387 | spiRxBuffer = SPI1->DR;
388 |
389 | /*Send data byte*/
390 | for(i = 0; i DR = pLocalMemory[i];
393 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);
394 | spiRxBuffer = SPI1->DR;
395 | }
396 |
397 |
398 | /*Wait while the SPI interface is busy*/
399 | while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
400 | spiRxBuffer = SPI1->DR;
401 |
402 |
403 | /*NSS pin high*/
404 | SET_NSS_HIGH;
405 |
406 | DpAppl_EnableInterruptVPC3Channel1();
407 |
408 |
409 | }//void CopyToVpc3( VPC3_UNSIGNED8_PTR pToVpc3Memory, MEM_UNSIGNED8_PTR pLocalMemory, uint16_t wLength )
410 |
411 |
412 |
413 |
414 |
415 |
416 |
417 | /*---------------------------------------------------------------------------*/
418 | /* function: DpAppl_SetResetVPC3Channel1 */
419 | /*---------------------------------------------------------------------------*/
420 | /**
421 | * @brief Set VPC3+ reset.
422 | *
423 | * @attention The VPC3+ reset is high-active!
424 | *
425 | */
426 | void DpAppl_SetResetVPC3Channel1( void )
427 | {
428 | /** @todo Add your own code here! */
429 |
430 |
431 | SET_RESET_PIN;
432 |
433 |
434 | }//void DpAppl_SetResetVPC3Channel1( void )
435 |
436 | /*---------------------------------------------------------------------------*/
437 | /* function: DpAppl_ClrResetVPC3Channel1 */
438 | /*---------------------------------------------------------------------------*/
439 | /**
440 | * @brief Clear VPC3+ reset.
441 | *
442 | * @attention The VPC3+ reset is high-active!
443 | *
444 | */
445 | void DpAppl_ClrResetVPC3Channel1( void )
446 | {
447 | /** @todo Add your own code here! */
448 | RESET_RESET_PIN;
449 | }//void DpAppl_ClrResetVPC3Channel1( void )
450 |
451 | /*---------------------------------------------------------------------------*/
452 | /* function: DpAppl_EnableInterruptVPC3Channel1 */
453 | /*---------------------------------------------------------------------------*/
454 | /**
455 | * @brief Enable VPC3+ interrupt.
456 | */
457 | void DpAppl_EnableInterruptVPC3Channel1( void )
458 | {
459 | /** @todo Add your own code here! */
460 | }//void DpAppl_EnableInterruptVPC3Channel1( void )
461 |
462 | /*---------------------------------------------------------------------------*/
463 | /* function: DpAppl_DisableInterruptVPC3Channel1 */
464 | /*---------------------------------------------------------------------------*/
465 | /**
466 | * @brief Disable VPC3+ interrupt.
467 | *
468 | */
469 | void DpAppl_DisableInterruptVPC3Channel1( void )
470 | {
471 | /** @todo Add your own code here! */
472 | }//void DpAppl_DisableInterruptVPC3Channel1( void )
473 |
474 | /*---------------------------------------------------------------------------*/
475 | /* function: DpAppl_EnableInterruptVPC3Sync */
476 | /*---------------------------------------------------------------------------*/
477 | /**
478 | * @brief Enable VPC3+ isochronous interrupt.
479 | *
480 | * @attention Is only supported from VPC3+S!
481 | *
482 | */
483 | void DpAppl_EnableInterruptVPC3Sync( void )
484 | {
485 | /** @todo Add your own code here! */
486 | }//void DpAppl_EnableInterruptVPC3Sync( void )
487 |
488 | /*---------------------------------------------------------------------------*/
489 | /* function: DpAppl_DisableInterruptVPC3Sync */
490 | /*---------------------------------------------------------------------------*/
491 | /**
492 | * @brief Disable VPC3+ isochronous interrupt.
493 | *
494 | * @attention Is only supported from VPC3+S!
495 | *
496 | */
497 | void DpAppl_DisableInterruptVPC3Sync( void )
498 | {
499 | /** @todo Add your own code here! */
500 | }//void DpAppl_DisableInterruptVPC3Sync( void )
501 |
502 | /*---------------------------------------------------------------------------*/
503 | /* function: DpAppl_EnableAllInterrupts */
504 | /*---------------------------------------------------------------------------*/
505 | /**
506 | * @brief Enable all microcontroller interrupts.
507 | *
508 | */
509 | void DpAppl_EnableAllInterrupts( void )
510 | {
511 | /** @todo Add your own code here! */
512 | }//void DpAppl_EnableAllInterrupts( void )
513 |
514 | /*---------------------------------------------------------------------------*/
515 | /* function: DpAppl_DisableAllInterrupts */
516 | /*---------------------------------------------------------------------------*/
517 | /**
518 | * @brief Disable all microcontroller interrupts.
519 | *
520 | */
521 | void DpAppl_DisableAllInterrupts( void )
522 | {
523 | /** @todo Add your own code here! */
524 | }//void DpAppl_DisableAllInterrupts( void )
525 |
526 | /*---------------------------------------------------------------------------*/
527 | /* function: Vpc3Wait_1ms */
528 | /*---------------------------------------------------------------------------*/
529 | /**
530 | * @brief Wait some time.
531 | *
532 | */
533 | void Vpc3Wait_1ms( void )
534 | {
535 | /** @todo Add your own code here! */
536 | DelayMs(1);
537 | }//void Vpc3Wait_1ms( void )
538 |
539 |
--------------------------------------------------------------------------------