STM32CubeIDE (вопросы и ответы)

ты бы выход настраивал хоть

нате

второй вывод после передергивания питания на блюпил
блюпил питается от усби, программатор подцеплен тремя проводками CLK DIO Земля.

и что за код такой 0х307? лживые ардуины?

подключайся))

понятно че он читает

этак как так?

void setup() {
  pinMode(PC13, OUTPUT);
  Serial.begin(115200);
  delay(1000);


  // Чтение Device ID
  uint16_t deviceID = *(volatile uint16_t*)0xE0042000;

  // Чтение Flash Size
  uint16_t flashSize = *(volatile uint16_t*)0x1FFFF7E0;

  // Чтение Unique ID
  uint32_t uniqueID1 = *(volatile uint32_t*)0x1FFFF7E8;
  uint32_t uniqueID2 = *(volatile uint32_t*)0x1FFFF7EC;
  uint32_t uniqueID3 = *(volatile uint32_t*)0x1FFFF7F0;

  Serial.println("=== STM32F103C8T6 Information ===");
  Serial.print("Device ID: 0x");
  Serial.println(deviceID, HEX);

  Serial.print("Flash Size: ");
  Serial.print(flashSize);
  Serial.println(" KB (отображается)");

  Serial.print("Actual Flash: 128 KB");  // Физический размер
  Serial.println();

  Serial.print("Unique ID: ");
  Serial.print(uniqueID1, HEX);
  Serial.print("-");
  Serial.print(uniqueID2, HEX);
  Serial.print("-");
  Serial.println(uniqueID3, HEX);

  if (deviceID == 0x410) {
    Serial.println("✓ Устройство подтверждено: STM32F103C8T6");
  }
}

void loop() {
  digitalWrite(PC13, !digitalRead(PC13));
  delay(300);
}

это сырой ещё код был )))

увлёкся, с кем не бывает, там ниже всё правильно должно быть где-то

PS где я а где даташит не тот у меня возраст когда до битика помнишь где что

Моя глупый, только AVR чуть смогла. STM - совсем плохо. Но могу потестить :grinning_face:

начинается…

я тя для этого и спросил, выложи код который не сырой.

Вить, а тебя это не напрягает?

1 лайк

“никогда я жадным не был…” (c) известно чья

void setup() {
  Serial.begin(115200);
  delay(3000);
  
  // Чтение Device ID
  uint16_t deviceID = *(volatile uint16_t*)0xE0042000;
  
  // Чтение Flash Size
  uint16_t flashSize = *(volatile uint16_t*)0x1FFFF7E0;
  
  // Чтение Unique ID
  uint32_t uniqueID1 = *(volatile uint32_t*)0x1FFFF7E8;
  uint32_t uniqueID2 = *(volatile uint32_t*)0x1FFFF7EC;
  uint32_t uniqueID3 = *(volatile uint32_t*)0x1FFFF7F0;
  
  Serial.println("=== STM32F103C8T6 Information ===");
  Serial.print("Device ID: 0x");
  Serial.println(deviceID&0xFFF, HEX);
  
  Serial.print("Flash Size: ");
  Serial.print(flashSize);
  Serial.println(" KB (отображается)");
  
  Serial.print("Actual Flash: 128 KB"); // Физический размер
  Serial.println();
  
  Serial.print("Unique ID: ");
  Serial.print(uniqueID1, HEX);
  Serial.print("-");
  Serial.print(uniqueID2, HEX);
  Serial.print("-");
  Serial.println(uniqueID3, HEX);
  
  if (deviceID == 0x410) {
    Serial.println("✓ Устройство подтверждено: STM32F103C8T6");
  }
}

void loop() {
  delay(1000);
}

неправильные пчёлы и неправильный мёд у тебя, взрослый мальчик сам разберёшься почему )))

вот 100500, ну или у меня руки правильные

Тут в другом суть из STM32F103C8хх в рабочем режиме считать можно, дока пишет что нельзя

сдается мне, это у тебя не STM32F103C8хх

а памяти откуда то 64т то 128?

чета мутишь ты опять там…

64 это я новую плату пытал 22х25мм с чипом CH340, шьётся через родной UART там точно не STM хотя замаркирован как STM

будь любезен, хочется понять…

Их есть у меня, а чё делать - не знаю :grinning_face:
И я б уже тут засумневался

ну взять его код и прошить, потом питание передернуть и лог скинуть

Ну вот хоть код появился.
Осталось аддон уточнить. :roll_eyes: