Страница 1 из 1
Как передать номер/адрес порта в подпрограмму
Добавлено: Вс мар 05, 2017 11:19:07
FUZZY_
Что- то типа для KEIL
void outport (port,data){
#asm
mov port, #data
#endasm
}
outport(P1,1);
Re: Как передать номер/адрес порта в подпрограмму
Добавлено: Вс мар 05, 2017 12:21:37
Мурик
Если речь про STM32, то давно уже придумано.
Код: Выделить всё
GPIO_SetBits(GPIOA, GPIO_Pin_0);
GPIO_ResetBits(GPIOA, GPIO_Pin_0);
Re: Как передать номер/адрес порта в подпрограмму
Добавлено: Вс мар 05, 2017 13:03:44
ARV
в AVR-GCC через указатель
Код: Выделить всё
void output(volatile uint8_t *p, uint8_t d){
*p = d;
}
output(&PORTB, 12);
только в данном контексте никакого смысла в том нет...
Re: Как передать номер/адрес порта в подпрограмму
Добавлено: Вт мар 07, 2017 15:34:06
FUZZY_
Спасибо за ответы - речь идет конкретно MCS-51 KEIL
Предложенные примеры не подходят под KEIL
void output(volatile u8 *p, u8 d){
*p = d;
}
В main:
output(&P1, 12); <---- main_8051.c(447): error C189: '&' on bit/sfr illegal