Sadece Rx kullanıp,Tx kullanmama mümkünmü?

Başlatan My75, 30 Temmuz 2011, 11:53:41

My75

Bir çıkış portuna ihtiyacım var ama çıkış yolu bulamıyorum..Bildiğim kadarı ile donanımsal tx pini iptal edilmiyor ki uğraşıyorum olmuyor zaten..Bir çıkış yolu varmıdır??
Tomurcuk için çaba göstermeyen dal,odun kalmaya mahkumdur...

OG

Mümkün değil, ben de bilmiyordum ve pcb çizip bastırdıktan sonra başıma gelmişti. USART açtığınızda TX çıkış olur ve H seviyesinde bekler.

Çok takla atmak zorunda kalmıştım. Program içinde USART'ı kapat, aç, kapat, aç vs.

Kapatıp açarken de H L palslerine sebep olabiliyor.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

My75

Evet şuan bende takla atıyorum.20mhz kristali iptal ettim bu sefer hızdan dolayı problem yaşıyorum.Geçen sizinle görüşmüştük 12f629 ile rgb olayını 16f648' e çevirdim ve 4 kanal rgb yaptım.20mhz ile 12 kanal pwm üretiyorum ve 125kbaud ile usart kesme ile pwm değişikliği yapıyorum.Ama bir port beni yaktı  >:(
Tomurcuk için çaba göstermeyen dal,odun kalmaya mahkumdur...

mozkan87

Hocam USART modülü aktif edildiği zaman Rx ve Tx giriş çıkış olarak kullanılamayacağı datasheet te açıkça belirtilmiş. Eğer software usart kullanma şansınız var ise bu şekilde sorunu çözebilirsiniz. İyi çalışmalar.

-Hasan-

Alıntı Yap125kbaud ile usart

Alıntı Yap
Eğer software usart kullanma şansınız var ise bu şekilde sorunu çözebilirsiniz.

Evet bu sorunun kesin çözümü yazılımsal (software) seri iletişim yapmak, ama 125 kBaud ' da biraz zor olabilir.

EMG81

#5
Alıntı yapılan: Hasan Oguz - 30 Temmuz 2011, 14:38:54
Alıntı Yap125kbaud ile usart

Alıntı Yap
Eğer software usart kullanma şansınız var ise bu şekilde sorunu çözebilirsiniz.

Evet bu sorunun kesin çözümü yazılımsal (software) seri iletişim yapmak, ama 125 kBaud ' da biraz zor olabilir.

Uart ı açamadığına göre RX interrup ını kullanamıyorsun.
20 Mhz ile çalışıyorsan 40 saykıllık şansın var. Eğer ASM veya C kullanıyorsan Tamam da diğer derleyiciler için durum pekte iç açıcı gözükmüyor.

OG

Alıntı yapılan: mozkan87 - 30 Temmuz 2011, 14:06:03
Hocam USART modülü aktif edildiği zaman Rx ve Tx giriş çıkış olarak kullanılamayacağı datasheet te açıkça belirtilmiş.
Çok zekiyiz ya bakma lüzumu görmeden iş yaparsan öyle oluyor :)
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

Klein

PIC kontrolörleri pek tanımıyorum. Bazı işlemcilerde OSCIN girişine kristal osilatör bağlanıp , OSCOUT port olarak kullanılabiliyor. PIC için böyle bir opsiyon varsa bir pin boşa çıkarılabilir.

Tagli

Bazi PIC datasheet'lerinde donanimsal seri iletisim icin hem RX hem de TX bacaklarina denk gelen TRIS bitlerinin 1 yapilmasi gerektigi yaziyor. Denemedim ama belki TX bacaginin TRIS biti 0 yapilirsa cikis olarak kullanilabilir. Bu degisikligi seri portu kuran fonksiyondan sonra yapmak lazim tabi. Bu her derleyicide mumkun olmayabilir,
Gökçe Tağlıoğlu

iyildirim

16 bitlik işlemcilerde USART modülü kullanılırken TXEN diye ayrı bir bit var. Hiç ihitiyacım olup da denemedim ama TXEN bitini reset edip TX pinini kullanmadan sadece RX kullanmak mümkün oluyordu diye hatırlıyorum.

Aklımda nereden kaldı hatırlamıyorum ama bazı 8 bitliklerde de TXEN biti vardı diye bir şey kalmış.
Şimdi 627-28-48'in   datasheet'ine baktım. TXEN biti TXSTA registeri içerisinde var.

8 bitlik işlemci deneyimim yok. Farklılıklar olabilir.
TXEN biti reset edildiğinde, modül pini kullanmaya devam edermi ? Bu şekilde deneme yapmış olan biri varmı?.


My75

Alıntı yapılan: OG - 30 Temmuz 2011, 18:42:06
Alıntı yapılan: mozkan87 - 30 Temmuz 2011, 14:06:03
Hocam USART modülü aktif edildiği zaman Rx ve Tx giriş çıkış olarak kullanılamayacağı datasheet te açıkça belirtilmiş.
Çok zekiyiz ya bakma lüzumu görmeden iş yaparsan öyle oluyor :)

Evet bakmadım doğru çünkü böyle bir şeye ihtimal vermedim.Bu durumda kendi zekamdan çok Microchip' in mühendislerinin zekasından şüphe ederim,çünkü TX kullanmadığım halde bunu iptal edemiyorsam ortada bir sıkıntı var demektir.İmkansız bir şey değil yapsınlar zaten saçma saçma bir sürü işleri var..
Tomurcuk için çaba göstermeyen dal,odun kalmaya mahkumdur...

OG

Alıntı YapTXEN biti vardı diye bir şey kalmış
Var, TX'i enable yapar. Ama port başka. USART ayarlarını yapıp da ilk TX veya RX yaptığında portları USART donanımı kapar ve genel I/O olarak kullandırmaz. Ancak USART'ı kapatırsan portları tekrar ele geçirmiş olursunuz.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

z

Baktin Tx pinini iptal edemiyorsun sen de tex pinini sahte cikis icin kullan.

Diyelimki diger portlardaki output pinlerinden birisi kiytirik bir is yapiyor. Mesela Buzzer yada led yada role cikisi.

O kiytirik cikisi Tx den al. Bosa cikan cikisi da yeni ihtiyacinda kullan.

Gelelim Tx pinini nasil sahte cikis yapacagina.

Tx pini H da bekleyen bir pindir ve data transmisyonu basladiginda data tipine gore low high low gibi ziplamalar yapar.
Ornegin Led bu ziplamalardan etkilenmez pir pir etmez. Yapacagin tek sey TX buf bos interrupti uretildiginde derhal yeni Txi baslatmak.

Kisacasi int rutini yazacaksin...

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

esensoy

tx ten 0xAA ve ya 0x55 basıldığında porttan 101010101 yada 010101010 şeklinde veri çıkıyor,
bu esnada porta avometre bağlasak 2.5 volt okuyabilir mi acaba?
pwm le lcd kontrastı kontrol eder gibi tx çıkışında ki voltajla oynansa,
tx çıkışı da bi schimitt triger e girilse, belli voltaj altında 0 üstünde de 1 çıkarsa,

size 1 lerin yoğunluğuna göre bilgi basmak kalacak,

denemek lazım,
En tehlikeli an "zafer" anıdır.

My75

Yok hocam öyle kıytırık bir çıkışım yok 12 kanal pwm yapacaktım ama 1 port yüzünden vazgeçtim,zaten pwm şuan için şart değil o yüzden vazgeçtim ve dahili osc kullanarak port sorunumu hallettim.

Ben sadece anlam veremiyorum neden yani çokmu zorduda bir portu mahkum ediyor bu Microchip,anlamsız yani..
Tomurcuk için çaba göstermeyen dal,odun kalmaya mahkumdur...