Ardunio ile ilgilenmedigim icin konu hakkinda bilgim yok.
Anladigim kadariyla birileri kutuphane yaziyor millet de kutuphaneyi kullanip basitce uygulama yapiyor.
Peki bu kutuphanelerin kaynak kodlari temin edilebiliyor mu?
https://www.arduinolibraries.info/
çok özel birkaç uygulama haricinde çoğunlukla açık kaynak kodlu. C++ olarak kodlanmış durumda.
Evet normal bir projeden pek fazla farkı yok, bugüne kadar derlenmiş bir kütüphane kullanan görmedim. Arka planda oop yapısında çalışan hazır c++ kodları oluyor, kaliteli kütüphanelerde #ifdef tanımlamaları ile arm, avr, pic gibi ayrı mcu'lar için çalışmasını sağlayacak seçici yapılar da bulunuyor.
"include" ettiğinizde size sadece tek satırlık kodla projeyi çalıştırmak kalıyor. Normal bir stm32 projesinde dünyalar kadar zamanınızı çalacak bir iş için yazmanız gereken tek kod şu oluyor :
sensor.init();
value=sensor.read();
@z hocam hayirdir arm asm den sonra ardunyo filan :o
MIT app ile usb to serial haberlesme yapmak icin farkli usb to serial donusturuculer, kendi yaptigim donusturucuyu denedim ve bir turlu calistiramadim. Ayni sorundan muzdarip cok kisi internette yazmis.
Fakat Ardunio ile yapilan ornek calisiyormus. Adamlar ne yapmislar da calisiyor merak ediyorum.
Ya MIT app PID VID bilgisini kontrol ediyor tanidigi bir cip degilse kestirip atiyor ya da baska bir bit yenigi var.
Ardunio kodlari var ama bir turlu foruma ekleyemedim.
Neyse
Serial.begin(9600);
Serial.available()
Serial.readString();
Komutlari ile basit bir program yazilmis.
Bu komutlara ait kutuphanenin hangisi oldugunu anlayamadim.
Elimde ardunio ile ilgili bir IDE yok. Yuklemek de istemiyorum. Kutuphane kodlarini notepad ile acmam yeterli.
Kutuphane linkini verebilecek varmi?
Alıntı yapılan: mehmet - 24 Kasım 2021, 10:52:53https://www.arduinolibraries.info/
Serial.begin(9600);
Serial.available()
Serial.readString();
Bu komutlarin hangi librarye ait oldugunu nasil bulacagim?
https://www.arduino.cc/reference/en/libraries/category/communication/
https://www.arduino.cc/reference/en/language/functions/communication/serial/
https://www.arduino.cc/reference/en/language/functions/communication/serial/begin/
Alıntı YapSerial.available()
Description
Get the number of bytes (characters) available for reading from the serial port. This is data that's already arrived and stored in the serial receive buffer (which holds 64 bytes).
Serial.available() inherits from the Stream utility class.
Hocam bende kurulu sanırım buldum (HardwareSerial.h)
https://dosya.co/95vwlk792abv/avr.rar.html
Cok sagolasin. Hemen inceleyecegim.
Bu arada PID ve VID degerlerini asagidaki gibi yapinca STM CDC duzenegim MIT APP SerialOTG tarafindan taninir hale geldi initilaze ve Open islemlerini yapabiliyorum.
Fakat Close yaptiktan sonra bir daha Open edemiyor. Taa ki uygulamayi kapatip yeniden acana dek.
Verdigin lib den umarim sorun tam olarak anlasilir.
VendorID EQU 0x1EAF
ProductID EQU 0x0004
Herkese teşekkürler. Artık telefonla istediğim gibi haberleşiyorum. En yalın uygulama denemem aşağıdaki gibi.
(http://www.cncdesigner.com/wordpress/wp-content/uploads/Android-Serial.jpg)
Alıntı yapılan: z - 25 Kasım 2021, 14:59:47Cok sagolasin. Hemen inceleyecegim.
Bu arada PID ve VID degerlerini asagidaki gibi yapinca STM CDC duzenegim MIT APP SerialOTG tarafindan taninir hale geldi initilaze ve Open islemlerini yapabiliyorum.
Fakat Close yaptiktan sonra bir daha Open edemiyor. Taa ki uygulamayi kapatip yeniden acana dek.
Verdigin lib den umarim sorun tam olarak anlasilir.
VendorID EQU 0x1EAF
ProductID EQU 0x0004
Bu VID PID neye ait? CH340 mı? CP2102'mi?
Alıntı yapılan: LukeSkywalker - 25 Kasım 2021, 17:20:45Bu VID PID neye ait? CH340 mı? CP2102'mi?
https://devicehunt.com/view/type/usb/vendor/1EAF/device/0004
Maple diye birsey. Ch340 vid pid kullanilirsa belki daha stabil olabilir.
Proje calistiktan sonra bir iki PID-VID daha kullandim onlarda da sorun yasamadim.
Fakat FTDI nin verilerini kullaninca hata mesaji aldim.
Fakat sanirim asil sorun kodlama ile ilgili.
Mesela verdigim kodlarda degisiklik yapip;
Serial fonksiyonunu init edip ardindan open derseniz bir sebeple bir daha open derseniz artik sistem asla calismiyor. Illa uygulamayi kapatip yeniden acmak gerekiyor.
Belki PID-VID sorununa ilave olarak basindan beri farkedemedigim sorun buydu.
Cunku bir iki buton tanimlayip bunlardan biri Init, digeri Open diyordu.
Sorun ciktikca Init, Init, Open, Init, Open , Open deneyip duruyordum.
Forumda da bir gariplik olmali.
13:37'de mesajimi yazip sik sik cevap geldimi geldimi kontrol ettim.
Sonra Serkan'in 14:48 'de gonderdigi mesaji gordum.
Simdi ise Kilic'in 14:40'daki mesajini gordum.
Kilic'in mesaji sisteme girdigi halde gorunmemesinin bir sebebi olabilir mi?
denetimden geciyordur ;)
Alıntı yapılan: Yuunus - 25 Kasım 2021, 19:47:28denetimden geciyordur ;)
Ayağımızı denk alalım o zaman. Korktum şimdi. Sakıncalı üyeler listesindeyim sanırım.
Bu MIT App de mesela Serialden data geldiginde event ureten bir duzenek goremedim.
Buffera data geldimi gelmedimi timer ile sorguluyorum. Halbuki veri geldimi bir fonksiyonun otomatik cagrilmasi lazim.
Bu tur mekanizmalar yok mu?
Hocam, kastetdiğiniz " if(Serial. available() >0) mıdır?
Yok.
Seri porttan veri geldimi kendiliğinden bir rutin çalışmalı.
Timer zamanı geldimi nasıl fonksiyon çalıştırıyor onun gibi.
Alıntı yapılan: z - 25 Kasım 2021, 20:45:41Bu MIT App de mesela Serialden data geldiginde event ureten bir duzenek goremedim.
Buffera data geldimi gelmedimi timer ile sorguluyorum. Halbuki veri geldimi bir fonksiyonun otomatik cagrilmasi lazim.
Bu tur mekanizmalar yok mu?
hocam android std. ya gectin saniyordum, hala app inv diyon, vazmi gectin.
z hocam sadece error durumu için bir event var. Başka görünmüyor.
Alıntı yapılan: Yuunus - 26 Kasım 2021, 00:17:58hocam android std. ya gectin saniyordum, hala app inv diyon, vazmi gectin.
Android studio bana çok karmaşık geldi. Zaten Java da bilmiyorum. Bu saatten sonra da bunları ogrenmeye zaman ayıramayacağım.
Üstelik bayağı baba bir PC almam gerekecek. Bu studyo mevcut makinamda çalışırken delirmek üzereyim.