aureliu67 Postat Decembrie 23, 2023 Partajează Postat Decembrie 23, 2023 (editat) Sarbatori fericite tuturor! Am o intrebare probabil foarte simpla pt unii. Am cerut lui BING sa-mi creeze un programel in Arduino IDE pt STM 32 blue pill. La programelul cu un singur senzor a mers bine. La programelul pentru 2 senzori (LDR) a dat cu virgula, (atasata mesajului rosu de eroare). Asa si nu am inteles care este eroarea.. #define ANALOG_PIN_0 A0; #define ANALOG_PIN_1 A1; void setup() { // Initialize the serial communication Serial.begin(9600); } void loop() { // Read the analog values from the pins int analogValue0 = analogRead(ANALOG_PIN_0); int analogValue1 = analogRead(ANALOG_PIN_1); // Print the analog values Serial.print("analog Value0: "); Serial.println(analogValue0); Serial.print("analog Value 1: "); Serial.println(analogValue1); // Wait for a short time delay(100); } Arduino: 1.8.19 (Windows 10), Board: "Generic STM32F103C series, STM32F103C8 (20k RAM. 64k Flash), STM32duino bootloader, 72Mhz (Normal), Smallest (default)" C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\Aurel\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\Aurel\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\Aurel\Documents\Arduino\libraries -fqbn=ArduinoSTM32:STM32F1:genericSTM32F103C:device_variant=STM32F103C8,upload_method=DFUUploadMethod,cpu_speed=speed_72mhz,opt=osstd -vid-pid=0000_0000 -ide-version=10819 -build-path C:\Users\Aurel\AppData\Local\Temp\arduino_build_204711 -warnings=default -build-cache C:\Users\Aurel\AppData\Local\Temp\arduino_cache_267494 -prefs=build.warn_data_percentage=75 -verbose C:\Users\Aurel\Desktop\proba3_analog_input\proba3_analog_input.ino C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\Aurel\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\Aurel\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\Aurel\Documents\Arduino\libraries -fqbn=ArduinoSTM32:STM32F1:genericSTM32F103C:device_variant=STM32F103C8,upload_method=DFUUploadMethod,cpu_speed=speed_72mhz,opt=osstd -vid-pid=0000_0000 -ide-version=10819 -build-path C:\Users\Aurel\AppData\Local\Temp\arduino_build_204711 -warnings=default -build-cache C:\Users\Aurel\AppData\Local\Temp\arduino_cache_267494 -prefs=build.warn_data_percentage=75 -verbose C:\Users\Aurel\Desktop\proba3_analog_input\proba3_analog_input.ino Using board 'genericSTM32F103C' from platform in folder: C:\Program Files (x86)\Arduino\hardware\ArduinoSTM32\STM32F1 Using core 'maple' from platform in folder: C:\Program Files (x86)\Arduino\hardware\ArduinoSTM32\STM32F1 Detecting libraries used... "C:\\Users\\Aurel\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\arm-none-eabi-gcc\\7-2017q4/bin/arm-none-eabi-g++" -c -g -Os -w -DDEBUG_LEVEL=DEBUG_NONE -std=gnu++11 -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -DBOARD_generic_stm32f103c -DVECT_TAB_ADDR=0x8002000 -DERROR_LED_PORT=GPIOC -DERROR_LED_PIN=13 -w -x c++ -E -CC -mcpu=cortex-m3 -DF_CPU=72000000L -DARDUINO=10819 -DARDUINO_GENERIC_STM32F103C -DARDUINO_ARCH_STM32F1 -DSERIAL_USB -DGENERIC_BOOTLOADER -DMCU_STM32F103C8 -mthumb -march=armv7-m -D__STM32F1__ -DARDUINO_ARCH_STM32 -DMCU_STM32F103C8 -mthumb -march=armv7-m -D__STM32F1__ -DARDUINO_ARCH_STM32 "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/include" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/stm32f1/include" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/usb/stm32f1" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/usb/usb_lib" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\cores\\maple" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\variants\\generic_stm32f103c" "C:\\Users\\Aurel\\AppData\\Local\\Temp\\arduino_build_204711\\sketch\\proba3_analog_input.ino.cpp" -o nul Generating function prototypes... "C:\\Users\\Aurel\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\arm-none-eabi-gcc\\7-2017q4/bin/arm-none-eabi-g++" -c -g -Os -w -DDEBUG_LEVEL=DEBUG_NONE -std=gnu++11 -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -DBOARD_generic_stm32f103c -DVECT_TAB_ADDR=0x8002000 -DERROR_LED_PORT=GPIOC -DERROR_LED_PIN=13 -w -x c++ -E -CC -mcpu=cortex-m3 -DF_CPU=72000000L -DARDUINO=10819 -DARDUINO_GENERIC_STM32F103C -DARDUINO_ARCH_STM32F1 -DSERIAL_USB -DGENERIC_BOOTLOADER -DMCU_STM32F103C8 -mthumb -march=armv7-m -D__STM32F1__ -DARDUINO_ARCH_STM32 -DMCU_STM32F103C8 -mthumb -march=armv7-m -D__STM32F1__ -DARDUINO_ARCH_STM32 "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/include" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/stm32f1/include" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/usb/stm32f1" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/usb/usb_lib" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\cores\\maple" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\variants\\generic_stm32f103c" "C:\\Users\\Aurel\\AppData\\Local\\Temp\\arduino_build_204711\\sketch\\proba3_analog_input.ino.cpp" -o "C:\\Users\\Aurel\\AppData\\Local\\Temp\\arduino_build_204711\\preproc\\ctags_target_for_gcc_minus_e.cpp" "C:\\Program Files (x86)\\Arduino\\tools-builder\\ctags\\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\\Users\\Aurel\\AppData\\Local\\Temp\\arduino_build_204711\\preproc\\ctags_target_for_gcc_minus_e.cpp" Compiling sketch... "C:\\Users\\Aurel\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\arm-none-eabi-gcc\\7-2017q4/bin/arm-none-eabi-g++" -c -g -Os -DDEBUG_LEVEL=DEBUG_NONE -std=gnu++11 -MMD -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -DBOARD_generic_stm32f103c -DVECT_TAB_ADDR=0x8002000 -DERROR_LED_PORT=GPIOC -DERROR_LED_PIN=13 -mcpu=cortex-m3 -DF_CPU=72000000L -DARDUINO=10819 -DARDUINO_GENERIC_STM32F103C -DARDUINO_ARCH_STM32F1 -DSERIAL_USB -DGENERIC_BOOTLOADER -DMCU_STM32F103C8 -mthumb -march=armv7-m -D__STM32F1__ -DARDUINO_ARCH_STM32 -DMCU_STM32F103C8 -mthumb -march=armv7-m -D__STM32F1__ -DARDUINO_ARCH_STM32 "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/include" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/stm32f1/include" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/usb/stm32f1" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\system/libmaple/usb/usb_lib" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\cores\\maple" "-IC:\\Program Files (x86)\\Arduino\\hardware\\ArduinoSTM32\\STM32F1\\variants\\generic_stm32f103c" "C:\\Users\\Aurel\\AppData\\Local\\Temp\\arduino_build_204711\\sketch\\proba3_analog_input.ino.cpp" -o "C:\\Users\\Aurel\\AppData\\Local\\Temp\\arduino_build_204711\\sketch\\proba3_analog_input.ino.cpp.o" C:\Users\Aurel\Desktop\proba3_analog_input\proba3_analog_input.ino: In function 'void loop()': proba3_analog_input:1:22: error: 'A0' was not declared in this scope #define ANALOG_PIN_0 A0; ^ C:\Users\Aurel\Desktop\proba3_analog_input\proba3_analog_input.ino:11:31: note: in expansion of macro 'ANALOG_PIN_0' int analogValue0 = analogRead(ANALOG_PIN_0); ^~~~~~~~~~~~ C:\Users\Aurel\Desktop\proba3_analog_input\proba3_analog_input.ino:1:22: note: suggested alternative: 'D0' #define ANALOG_PIN_0 A0; ^ C:\Users\Aurel\Desktop\proba3_analog_input\proba3_analog_input.ino:11:31: note: in expansion of macro 'ANALOG_PIN_0' int analogValue0 = analogRead(ANALOG_PIN_0); ^~~~~~~~~~~~ proba3_analog_input:11:43: error: expected primary-expression before ')' token int analogValue0 = analogRead(ANALOG_PIN_0); ^ proba3_analog_input:2:22: error: 'A1' was not declared in this scope #define ANALOG_PIN_1 A1; ^ C:\Users\Aurel\Desktop\proba3_analog_input\proba3_analog_input.ino:12:31: note: in expansion of macro 'ANALOG_PIN_1' int analogValue1 = analogRead(ANALOG_PIN_1); ^~~~~~~~~~~~ C:\Users\Aurel\Desktop\proba3_analog_input\proba3_analog_input.ino:2:22: note: suggested alternative: 'D1' #define ANALOG_PIN_1 A1; ^ C:\Users\Aurel\Desktop\proba3_analog_input\proba3_analog_input.ino:12:31: note: in expansion of macro 'ANALOG_PIN_1' int analogValue1 = analogRead(ANALOG_PIN_1); ^~~~~~~~~~~~ proba3_analog_input:12:43: error: expected primary-expression before ')' token int analogValue1 = analogRead(ANALOG_PIN_1); ^ exit status 1 'A0' was not declared in this scope Editat Decembrie 23, 2023 de aureliu67 Link spre comentariu
aureliu67 Postat Decembrie 23, 2023 Autor Partajează Postat Decembrie 23, 2023 Pai eu nu prea ma pricep la programare dar din cate stiu eu, Arduino IDE vrea mereu aceste ;. Link spre comentariu
Stefan Postat Decembrie 23, 2023 Partajează Postat Decembrie 23, 2023 Întrebarea lui @antemir era alta! BING, desi parca mai devreme era GPT, a scris asa? #define ANALOG_PIN_0 A0; #define ANALOG_PIN_1 A1; sau asa? #define ANALOG_PIN_0 A0 #define ANALOG_PIN_1 A1 @antemir am postat in același timp. Link spre comentariu
aureliu67 Postat Decembrie 23, 2023 Autor Partajează Postat Decembrie 23, 2023 (editat) Era cu ; desigur Eu daca nu prea ma pricep, nu imi permit sa modific. Am confundat GPT cu BING.. Dar acum am verificat ambele variante si nici una nu se compileaza. Editat Decembrie 23, 2023 de aureliu67 Link spre comentariu
modoran Postat Decembrie 23, 2023 Partajează Postat Decembrie 23, 2023 Eu pot sa inteleg ca unii nu sepricep la programare, dar macar regulile de baza ar trebui cunoscute ale unui limbaj de programare. Daca nu se cunosc din alea fie se studiaza, fie se renunta la lucrul cu asa ceva. Link spre comentariu
aureliu67 Postat Decembrie 23, 2023 Autor Partajează Postat Decembrie 23, 2023 (editat) Acum 22 minute, modoran a spus: Eu pot sa inteleg ca unii nu sepricep la programare, dar macar regulile de baza ar trebui cunoscute ale unui limbaj de programare. Daca nu se cunosc din alea fie se studiaza, fie se renunta la lucrul cu asa ceva. Care ar fi regulile de baza pt Arduino IDE? Ca nu am gasit asa ceva nicaieri. Doar descriere de comenzi si ce ar face ele.. Nu vreau sa supar pe nimeni si tiu ca sunt prea batran ca sa mai pot invata ceva, dar vreau sa pot sa rezolv doar chestii simple pt mine.. nu pretind la nimic mai mult. Imi pare rau daca am deranjat pe cineva. Mai ales ca am mers pe mana lui BING, care vad ca nu e in stare sa rezolve chestia asta (programel cu 7 linii de cod) si va suparati ca nu ma duce mintea pe mine sa o fac.. Pai ma pot compara eu cu AI?? Daca el nu e in stare ce pretentii pot sa apara referitor la mine?? Editat Decembrie 23, 2023 de aureliu67 Link spre comentariu
Stefan Postat Decembrie 23, 2023 Partajează Postat Decembrie 23, 2023 Sigur se compilează atâta timp cat nu aveți alte probleme la IDE. Regulile de baza nu sunt pentru IDE ci pentru limbajul de programare folosit. #define ANALOG_PIN_0 A0 #define ANALOG_PIN_1 A1 void setup() { // Initialize the serial communication Serial.begin(9600); } void loop() { // Read the analog values from the pins int analogValue0 = analogRead(ANALOG_PIN_0); int analogValue1 = analogRead(ANALOG_PIN_1); // Print the analog values Serial.print("analog Value0: "); Serial.println(analogValue0); Serial.print("analog Value 1: "); Serial.println(analogValue1); // Wait for a short time delay(100); } Ce zice GPT la mine: // Include the necessary libraries #include <Arduino.h> // Define the analog pins for reading const int analogPin1 = PA0; // Change this to the pin you have connected the first sensor to const int analogPin2 = PA1; // Change this to the pin you have connected the second sensor to void setup() { // Start serial communication at a specific baud rate Serial.begin(9600); } void loop() { // Read the analog value from the first pin int value1 = analogRead(analogPin1); // Read the analog value from the second pin int value2 = analogRead(analogPin2); // Print the values to the Serial Monitor Serial.print("Sensor 1 Value: "); Serial.print(value1); Serial.print("\tSensor 2 Value: "); Serial.println(value2); // A delay to avoid overwhelming the Serial Monitor delay(1000); } L-am tras putin de mustati si cica: "Thanks for bringing this up, and I apologize for any confusion. The inclusion of Arduino.h is automatically taken care of by the Arduino IDE in most cases.: După asta a scris iar tot programul dar fără #include Arduino.h deși pana la umăr nu era greșit nici așa. Referitor la problema cu ";" la #define nu are cum sa dea astfel de gherle cum zice @aureliu67 Link spre comentariu
aureliu67 Postat Decembrie 23, 2023 Autor Partajează Postat Decembrie 23, 2023 Acum 47 minute, antemir a spus: Eu altceva te-am intrebat. Acum, amintindu-mi ce am tot incercat, admit, desi nu mai sunt sigur, ca sa salvat o anumita modificarea programului, din cauza ca nu mergea si incercam sa gasesc gresala. posibil ca la incercarea de compilare a variantei modificate de mine sa salvat peste varianta originala. Insa asta sa intamplat doar din cauza ca ce mi-a dat AI nu mergea. Repet inca odata ca nu sunt sigur daca asa a fost sau nu. Pentru ca la cererea mea recenta , solutia mi-a aparut fara punct si virgula.. Link spre comentariu
aureliu67 Postat Decembrie 23, 2023 Autor Partajează Postat Decembrie 23, 2023 Acum 15 minute, Stefan a spus: Sigur se compilează atâta timp cat nu aveți alte probleme la IDE. Regulile de baza nu sunt pentru IDE ci pentru limbajul de programare folosit. #define ANALOG_PIN_0 A0 #define ANALOG_PIN_1 A1 void setup() { // Initialize the serial communication Serial.begin(9600); } void loop() { // Read the analog values from the pins int analogValue0 = analogRead(ANALOG_PIN_0); int analogValue1 = analogRead(ANALOG_PIN_1); // Print the analog values Serial.print("analog Value0: "); Serial.println(analogValue0); Serial.print("analog Value 1: "); Serial.println(analogValue1); // Wait for a short time delay(100); } Ce zice la mine GPT: // Include the necessary libraries #include <Arduino.h> // Define the analog pins for reading const int analogPin1 = PA0; // Change this to the pin you have connected the first sensor to const int analogPin2 = PA1; // Change this to the pin you have connected the second sensor to void setup() { // Start serial communication at a specific baud rate Serial.begin(9600); } void loop() { // Read the analog value from the first pin int value1 = analogRead(analogPin1); // Read the analog value from the second pin int value2 = analogRead(analogPin2); // Print the values to the Serial Monitor Serial.print("Sensor 1 Value: "); Serial.print(value1); Serial.print("\tSensor 2 Value: "); Serial.println(value2); // A delay to avoid overwhelming the Serial Monitor delay(1000); } L-am tras putin de mustati si cica: "Thanks for bringing this up, and I apologize for any confusion. The inclusion of Arduino.h is automatically taken care of by the Arduino IDE in most cases.: După asta a scris iar tot programul dar fără #include Arduino.h deși pana la umăr nu era greșit nici așa. Domnule Stefan, va multumesc mult. Ati rezolvat problema. Varianta a doua se compileaza. Am testat prima varianta prezentata de Dvs (programul sursa) si a dat aceleasi erori. Acesta insa sa compilat cu succes.. Multumesc, , acum trec la faza a 2 cu deciziile. Sper sa nu ma bage iar in balarii AI. PS. domnule Stefan, eu inca mai folosesc uneori termostatul cu PIC pentru care mi-ati facut programul. Au trecut peste 10 ani iar jucaria respectiva inca functioneaza. Spre deosebire de multe arduine care au dat coltul fara motive vizibile.. in alte montaje la fel de simple.. Sunteti printre cei mai valorosi membri al acestui site. Va multumesc din partea celor mai putin priceputi de aici, cu care aveti atata rabdare si carora le oferiti ajutorul dvs. Nu afirm ca sunteti singurul insa cu sigurnta sunteti unul dintre cei mai altruisti membri al acestui forum. Multumesc pt timpul acordat Link spre comentariu
aureliu67 Postat Decembrie 24, 2023 Autor Partajează Postat Decembrie 24, 2023 Am incercat programelul dar pe serial monitor nu imi apare nimic Nu trebuia sa apara cel putin ceva? un caracter, o cocomarla? Link spre comentariu
nico_2010 Postat Decembrie 24, 2023 Partajează Postat Decembrie 24, 2023 Dupa "Serial.begin()" introdu "while (!Serial) { ; // Wait for serial to connect }" Eventual si un delay de 1000ms. De pe tableta nu pot formata codul prin butonul "insert code" Link spre comentariu
merck Postat Decembrie 24, 2023 Partajează Postat Decembrie 24, 2023 Acum 2 ore, aureliu67 a spus: Am incercat programelul dar pe serial monitor nu imi apare nimic Nu trebuia sa apara cel putin ceva? un caracter, o cocomarla? baud rate-ul in Serial Monitor este setat la 9600? Link spre comentariu
Stefan Postat Decembrie 24, 2023 Partajează Postat Decembrie 24, 2023 Plăcutele astea Blue Pill sunt ceva mai complicate fata de clasicele Arduino Nano, adică microcontrolerul STM32F1... este mai complexe fata de Atmega328. Am lucrat foarte puțin cu familia asta de MCU si de fiecare data m-am enervat când am încercat sa-l scriu direct din Arduino. Vina nu a fost a IDE-ului ci mai mult a nepriceperii mele de a înțelege ce drivere trebuie sa instalez si in ce mod comunica prin USB. De exemplu astăzi când l-am conectat a USB nu am mai reușit sa comunic cu el nici "batut". Pana nu am rescris, cu un programator extern, alt bootloder si am reinstalt alte drivere nu am reușit sa descarc nimic din IDE-ul Arduino. In cazul meu setările pentru a încărca ceva in Blue Pill sunt cele de mai jos. Habar nu am ce alte variante mai sunt dar când am încercat fără CDC nu am mai reușit sa-l scot din DFU si iar a trebuie sa=l rescriu cu prog. extern. Nu știu cum pot testa viteza de comunicație deoarece pentru USB-CDC (Virtual COM Port) funcționează indiferent de baud rate-ul selectat in monitor. Link spre comentariu
aureliu67 Postat Decembrie 25, 2023 Autor Partajează Postat Decembrie 25, 2023 La 24.12.2023 la 9:52, nico_2010 a spus: Dupa "Serial.begin()" introdu "while (!Serial) { ; // Wait for serial to connect }" Eventual si un delay de 1000ms. De pe tableta nu pot formata codul prin butonul "insert code" Multumesc! Acum afisaza datele sensorilor. Intradevar trebuia inserata comanda respectiva. Link spre comentariu
aureliu67 Postat Decembrie 25, 2023 Autor Partajează Postat Decembrie 25, 2023 (editat) Acum am observat ca citeste doar senzorul de pe A1. A0 nu il citeste.. Am schimbat senzorii. am verificat conexiunile, defapt am inlocuit firele si senzorii. Nu sa schimbat nimic. Editat Decembrie 25, 2023 de aureliu67 Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum