Son İletiler

#1
P
Cortex ARM / Ynt: DMA ADC çalışıyor, işlemc...
Son İleti Gönderen papsukkal - Bugün, 00:14:43
Alıntı yapılan: RaMu - Dün, 23:32:20
hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV;

Satırı aşağıdaki gibi olması gerekir sanırım.

hadc1.Init.EOCSelection = EOC_SEQ_CONV;.

@RaMu hocam gene aynı. Analog dönüşüm yapıyor. Ancak kod yürütmüyor. Led yanıyor ama sönmüyor.
#2
M
Temel Elektrik/Elektronik / Ynt: Batarya şarjı Ters bağlan...
Son İleti Gönderen mg1980 - Bugün, 00:01:02
Bu devre sanırım BMS gibi pilin kullanımında 2,5v altına inmesini önlüyor.
#3
R
Cortex ARM / Ynt: DMA ADC çalışıyor, işlemc...
Son İleti Gönderen RaMu - Dün, 23:32:20
hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV;

Satırı aşağıdaki gibi olması gerekir sanırım.

hadc1.Init.EOCSelection = EOC_SEQ_CONV;.
#4
Hemen bağlantı şemasına bakalım:



Eğer resimdeki modülün bağlantı şeması buysa ve pil ters bağlanırsa, modül pili ters şarj eder ve boşaltır gibi görünüyor.

Yoksa devreyi yanlış mı okudum?

Belki de DW01 pilin ters bağlandığını algılayıp mosfetleri susturuyordur.
#5
P
Cortex ARM / Ynt: DMA ADC çalışıyor, işlemc...
Son İleti Gönderen papsukkal - Dün, 22:59:06
Alıntı yapılan: RaMu - Dün, 21:56:26
MX_DMA_Init();
MX_ADC1_Init():

Init sırasıyla önce DMA, sonra ADC olacak şekilde mi olduğuna dikkat edin.
Bazı cube versiyonlarında böyle bir sıkıntı yaşamıştım.

Bunun haricinde işlemci hızı yüksekse
hadc1.Init.SamplingTimeCommon1 = ADC_SAMPLETIME_79CYCLES_5;
ADC sampling time ı yükseltmeyi deneyin.

Hocam init sıralaması dediğiniz gibi. Önce DMA, sonra ADC. Sample time değerini  160.5 yaptım problem devam ediyor.
#6
R
Cortex ARM / Ynt: DMA ADC çalışıyor, işlemc...
Son İleti Gönderen RaMu - Dün, 21:56:26
MX_DMA_Init();
MX_ADC1_Init():

Init sırasıyla önce DMA, sonra ADC olacak şekilde mi olduğuna dikkat edin.
Bazı cube versiyonlarında böyle bir sıkıntı yaşamıştım.

Bunun haricinde işlemci hızı yüksekse
hadc1.Init.SamplingTimeCommon1 = ADC_SAMPLETIME_79CYCLES_5;
ADC sampling time ı yükseltmeyi deneyin.
#8
Alıntı yapılan: mustafa_cmbz - Dün, 17:53:42Bu bahsettiğin koruma işi için bir chip hali hazırda mevcut hatta resimdeki hazır modüller de var.out- yazan yerdeki chip idi yanlış hatırlamıyor isem.

Kodunu tam hatırlamıyorum ama ters polarite de hem pili hem modülü koruyor. 50 li şarj aleti yapmıştım bununla daha önceki diğer modüllerde elemanlar ters takıp modelleri bozuyorlar idi bu modülle işi çözdüm.
Eminmisiniz?
Bir sitede
ters polarite:Hayır
diye bir ürün açıklaması yapmışlar.
#9
avatar_Tagli
Microchip PIC / Ynt: delaysız pic kodu
Son İleti Gönderen Tagli - Dün, 18:11:07
Genel olarak klasik bekleme döngülerinden kaçınmak gerektiğini ve bunun da en etkili yolunun durum makinesi ve olay tabanlı mimari olduğunu vurgulamak istemiştim. Ancak bu mimariyi geçmişte PIC18'de uygulamaya çalışırken karşılaştığım zorluklara değinince konuyu istemeden çok başka bir yere çekmiş oldum. Özür dilerim.

Orijinal soruya dönecek olursak, aslında @power20 ilk mesajda çözümü anlatmış. Soruyu soran arkadaşın aradığı da bu. Bu yöntemi ben de kendi sistemimde bir system tick oluşturmak için kullanıyorum. Ancak burada dikkat edilmesi gereken birkaç nokta var:

 1) System tick değerini tutmak için 8 bitlik bir değişken yetmeyecek, muhtemelen en az 16, belki de 32 bit bir sayaç kullanmak uygun olacak. Ancak 8 bitlik bir işlemcinin bu sayacı atomik olarak okuması mümkün değil. Bu okumayı doğru bir şekilde yapmanın en kolay yolu, değişkeni okurken kesmeleri geçici olarak kapatmak. Ayrıca değişkenin volatile olarak tanımlanması da gerekecektir.

 2) 8 bit PIC'lerde hatırladığım kadarıyla STM32'lerdeki TIM->ARR register'ına denk bir register çoğu timer'da olmuyor. Bir tek TMR2'de PR register'ı var. Yeni modellerde durum nedir bilmiyorum tabi, epeydir takip etmedim. Bu sebeple eğer TMR2 müsait değilse, örneğin 1 ms'lik bir periyod tanımlamak zorlaşıyor. Bu durumda kesme içinde timer'a bir ön değer yüklemesi yapmak lazım. Ancak bunu yaparken de bu yükleme işleminin kendisinin ne kadar zaman alacağını da hesaplayıp ona göre işlem yapmak gerekiyor, eğer çok hassas bir zamanlama isteniyorsa. Pis bir iş yani. Ancak Microchip'in bununla ilgili uygulama notu vardı diye hatırlıyorum.

Alıntı yapılan: mr.engineer - 02 Mayıs 2024, 22:05:09dsPIC'ler için görüşünüz nedir?
STM32'lerle tanışmadan önce, sene 2013 falan gibi, BLDC motor sürücü yapmak için dsPIC30F2010 kullanmıştım. Özellikle encoder okumak ve ADC - PWM senkronizasyonu için donanım desteği olması benim için tercih sebebi olmuştu. O dönem severek kullanmıştım, ama bugün kullanmam.
#10


Bu bahsettiğin koruma işi için bir chip hali hazırda mevcut hatta resimdeki hazır modüller de var.out- yazan yerdeki chip idi yanlış hatırlamıyor isem.

Kodunu tam hatırlamıyorum ama ters polarite de hem pili hem modülü koruyor. 50 li şarj aleti yapmıştım bununla daha önceki diğer modüllerde elemanlar ters takıp modelleri bozuyorlar idi bu modülle işi çözdüm.