Хочу вебовские функции унести в другой файл, и вот заковыка. Есть нечто
Код: Выделить всё
ESP8266WebServer server(80);Код: Выделить всё
server.handleClient();Код: Выделить всё
ESP8266WebServer server(80);Код: Выделить всё
server.handleClient();Код: Выделить всё
extern ESP8266WebServer server; Код: Выделить всё
if(uint32_t x=10; A<B) { ... } else { ... } Код: Выделить всё
if(uint32_t x=10; A<B) { ... } else { ... } Код: Выделить всё
#define MOVE_FORWARD 0x10
#define MOVE_BACKWARD 0x20
int reset(void) {
//
return 1;
}
int init(void) {
//
return 1;
}
int run_cmd(int cmd) {
//
return 1;
}
int main(void) {
if (reset()) {
delay(100);
if (init()) {
delay(100);
if (run_cmd(MOVE_FORWARD)) {
// do smth
}
}
}
}
Код: Выделить всё
int main(void) {
if (reset() && (delay(100), 1) && init() && (delay(100), 1) && run_cmd(MOVE_FORWARD)) {
// do smth
}
}
Код: Выделить всё
#include "stm32f10x_conf.h"
uint8_t Delay(volatile uint32_t nCount)
{
for (; nCount != 0; nCount--);
}
int main(void)
{
GPIO_InitTypeDef Init;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
Init.GPIO_Pin = GPIO_Pin_13;
Init.GPIO_Mode = GPIO_Mode_Out_PP;
Init.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOC, &Init);
while(1)
{
if (((GPIOC->ODR ^= GPIO_Pin_13)!=1) && Delay(1000000));
}
}Код: Выделить всё
int main(void) {
if (reset() && (delay(100), 1) && init() && (delay(100), 1) && run_cmd(MOVE_FORWARD)) {
// do smth
}
}
Это здесь причем? Без volatile оптимизатор "наведет порядок" и когда функция не в if. Хотя бывают исключения.VladislavS писал(а):volatile то вставил, знаешь что иначе оптимизатор почикает всё.
Код: Выделить всё
void custom_delay(unsigned int delay) {
while(--delay) __NOP();
}
//...
while (1) {
if ((GPIOA->BSRR = GPIO_BSRR_BS_0, 1) && (custom_delay(0x01FFFFFF), 1) && (GPIOA->BSRR = GPIO_BSRR_BR_0, 1) && (custom_delay(0x01FFFFFF), 1));
}Код: Выделить всё
\ 0x72 0x.... LDR R6,??DataTable2_3 ;; 0x1ffffff
101 while (1) {
102 if ((GPIOA->BSRR = GPIO_BSRR_BS_0, 1) && (custom_delay(0x01FFFFFF), 1) && (GPIOA->BSRR = GPIO_BSRR_BR_0, 1) && (custom_delay(0x01FFFFFF), 1));
\ ??main_0: (+1)
\ 0x74 0x61AC STR R4,[R5, #+24]
\ 0x76 0x0030 MOVS R0,R6
\ 0x78 0x.... 0x.... BL custom_delay
\ 0x7C 0x0420 LSLS R0,R4,#+16
\ 0x7E 0x61A8 STR R0,[R5, #+24]
\ 0x80 0x0030 MOVS R0,R6
\ 0x82 0x.... 0x.... BL custom_delay
\ 0x86 0xE7F5 B ??main_0