Keil'de dolanirken karsima cikan garip birsey gordum.
#define USART_DRV_NUM 6
#define USART_BAUDRATE 9600
#define _USART_Driver_(n) Driver_USART##n
#define USART_Driver_(n) _USART_Driver_(n)
extern ARM_DRIVER_USART USART_Driver_(USART_DRV_NUM);
#define ptrUSART (&USART_Driver_(USART_DRV_NUM))
Kod normal gorunuyor ama surada bir gariplik var;
#define _USART_Driver_(n) Driver_USART##n
Ilerideki projelerimde bayagi isime yarayacak bu.
Ayrica internette hicbirsey bulamadim bununla ilgili
Hocam kullanımına dair bir örnek verme şansınız var mı? Ben anlayamadım da.
Simdi ben _USART_Driver_ macrosunu kullanarak onceden define edilmis bir usart modulunu secebiliyorum. Ornegin
_USART_Driver_(4)
Bu USART4 demek.
Hal uzerinden ornek verirsem:
UART_HandleTypeDef huart1;
huart1.Instance =_USART_Driver_(4);
mesaj birleştirme:: 08 Şubat 2016, 23:44:06
Ne oldugunu buldum "Token Pasting" deniyormus buna