Jump to content

    

ave!

Участник
  • Content Count

    23
  • Joined

  • Last visited

Community Reputation

0 Обычный

About ave!

  • Rank
    Участник
  • Birthday 01/01/1975

Старые поля

  • Vkontakte
    Array

Контакты

  • Сайт
    Array
  • ICQ
    Array
  1. А вы можете поделиться тем, що у вас получилось?
  2. Код рабочий, на AVR компилируется без ошибок и предупреждений. Предупреждения только при переносе на STM. На самом деле это с моей стороны извращение пытаться понять этот код. Стиль написания самой функции поиска следующего хода для меня не понятна: short D(q,l,e,E,z,n) short q,l,e; unsigned char E,z,n; { //... } Я подозреваю, что это тоже самое что: short D(short q, short l, short e, unsigned char E, unsigned char z, unsigned char n) { //... } Под AVR компилятор пропустил и первую запись, а вот под STM не прошло.
  3. Приоритет операций C++ - это я себе в тему на заметку. jcxz, может вы поможете разобраться с остальными местами по списку.
  4. Сергей Борщ, я скопировал все 7 предупреждений. Может у вас будет настроение расставить все скобки. Буду вам очень благодарен. Чувствую, что даже после изучения приоритетов я все-равно где-то, что-то не так сделаю. Программа скомпилируется и даже работать будет, но это шахматный алгоритм, там можно не понять что что-то не так работает. (1) while (d++<n||d<3||z&K==I&&(N<T&d<98||(K=X,L=Y&~M,d=3))) (2) while (r=p>2&r<0?-r:-o[++j]) (3) if (t&k|p<3&!(y-x&7)-!t) (4) v-=p-4|R>29?0:20; (5) Y=y|S&F; (6) if (x+r-y|u&32|p>2&(p-4|j-7||b[G=x+3^r>>1&7]-k-6||b[G^1]|b[G^2])) (7) m=m+I|P==I?m:0; Исправление готово: m = ((m+I)|(P==I)) ? m : 0; Мой случай как раз яркий пример для статьи на хабре: Как вы пишете условия в СИ-подобных языках? Со скобками в условиях или без?
  5. Это не секрет, это шахматная программа micro-Max. Весь код помещается на одном листе А4, притом, что программа знает даже такое правило, как "взятие пешки на проходе". Мне этот алгоритм очень понравился, я когда-то с друзьями в турнир играл, четырех обыграл, а эта програмка меня взувает (сделал шахматный калькулятор на ATmega48). Тут верно заметили, что код писал математик. Спасибо за советы.
  6. Добрый день! Я переношу чужую программу с AVR на STM32 (под HAL Keil). m = m+I|P == I ? m : 0; Эта строка выдает предупреждение: "| имеет более низкий приоритет, чем ==; == будет оцениваться сначала" Когда пишу m = (m+I|P) == I ? m : 0; предупреждение исчезает, но я не знаю можно ли так писать, не нарушит ли эта запись условие. Таких предупреждений много и есть более сложные выражения. if (x+r-y|u&32|p > 2&(p-4|j-7 || b[G=x+3^r>>1&7]-k-6 || b[G^1]|b[G^2])) t += p<5; else F = y; Warning: '&' within (внутри) '|' Warning: & has lower precedence than >; > will be evaluated first Warning: '&' within (внутри) '|' Подскажите ссылку где можно поучится этим условиям в контексте моей проблемы.
  7. Прочитал всю ветку, пробовал все варианты под CooCox и Keil, SPL и HAL - у меня не работает на STM32F030K6. На STM32F103С8 у меня работает и SPL и HAL - https://zxlogin.com/stm/stm32f103-rc522+hal.zip Поделитесь рабочим кодом под STM32F030 для RC522.
  8. Добрий день! Помогите пожалуйста мне установить связь с AD7195. Никак не удается ID прочитать. У вас сигнал Sync (25 нога) висит в воздухе или подключен к контроллеру? Нудно ли его дергать? Буду вам благодарен если поделитесь куском кода инициализации для CY7C68013. Сам я пытаюсь подружить с STM.
  9. Offline распознавание речи (команд) Voice Recognition Robotic Car (Google перевод) Кому-то под силу этот проект перевести с AVR MEGA32 на STM32F030 с предложенными улучшениями?
  10. controller_m30, у вас с камерой в jpeg что-то получилось?
  11. Установил тот же драйвер на другой компьютер с Windows XP. Проблема та же самая. Этот драйвер не подходит к той прошивке. Кто-нибудь имеет правильный драйвер? Кто-нибудь здесь запустил такой LogicDiscovery?
  12. LogicDiscovery — простой логический анализатор на Stm32F4Discovery. Скачал прошивку, прошил. Скачал драйвер, установил на Windows 7. Прошивка драйвера не видит. Кто-нибудь знает как это лечится? Может, кто подскажет, где может быть проблема.
  13. Заработало. Еще одну ошибку заметил - в одной из команд "АТ" было набрано русскими буквами. На счет двойных кавычек, рабочий пример: send_str("AT+CPBW=2,\"+380970000000\",145,\"SOS\"");
  14. Кажется я понял... я читал ваши посты, вы об этом уже писали. Сейчас буду допиливать в этом направлении. Спасибо вам за ответ.
  15. Пытаюсь разными способами через модуль SIM800 командой АТ+CPBW записать номер в 1 ячейку на SIM-карту и, переставив симку в телефон, увидеть этот номер в телефонной книге. Не получается. Другие команды работают, дозвон по номеру происходит. Что я делаю не так? Может, кто подскажет. Думаю, проблема в передаче кавычек. Среда CooCox под STM32. // send_str("АТ+CPBW=1,«+380971112222»,129,«SOS»"); // send_str("АТ+CPBW=1,\"+380971112222\",145,\"SOS\""); send_str2("АТ+CPBW=1,"); send_to_uart(34); // " - 34 (0x22) send_str2("+380971112222"); send_to_uart(34); send_str2(",145,"); send_to_uart(34); send_str2("SOS"); send_to_uart(34); send_to_uart('\r'); send_to_uart('\n'); // Функция отправляет строку в USART void send_str(char * string) { u8 i=0; while (string[i]) { send_to_uart(string[i]); i++; } send_to_uart('\r'); send_to_uart('\n'); } // Функция отправляет строку в USART без '\r\n' (незаконченная строка) void send_str2(char * string) { u8 i=0; while (string[i]) { send_to_uart(string[i]); i++; } }