Что- то типа для KEIL
void outport (port,data){
#asm
mov port, #data
#endasm
}
outport(P1,1);
Как передать номер/адрес порта в подпрограмму
Re: Как передать номер/адрес порта в подпрограмму
Если речь про STM32, то давно уже придумано.
Код: Выделить всё
GPIO_SetBits(GPIOA, GPIO_Pin_0);
GPIO_ResetBits(GPIOA, GPIO_Pin_0);- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18544
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Как передать номер/адрес порта в подпрограмму
в AVR-GCC через указательтолько в данном контексте никакого смысла в том нет...
Код: Выделить всё
void output(volatile uint8_t *p, uint8_t d){
*p = d;
}
output(&PORTB, 12);если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
Re: Как передать номер/адрес порта в подпрограмму
Спасибо за ответы - речь идет конкретно 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
Предложенные примеры не подходят под KEIL
void output(volatile u8 *p, u8 d){
*p = d;
}
В main:
output(&P1, 12); <---- main_8051.c(447): error C189: '&' on bit/sfr illegal