74HC595 ile yapılan PWM frekansı nasıl sabitlenir?

Başlatan silver_wolf, 28 Nisan 2022, 13:01:29

mehmet

#15
Estagfurlullah.
Kesme fonksiyonu içerisinde
yapılan işlem epey fazla.
Kesme içinde iken; yeni kesme
gelmesini engellediğimiz için,
o anlık işin tamamlanacağı süre
kadar bir sonraki kesme zamanı
uzuyor. Bu da frekansın devamlı
değişmesine yol açıyor.
Mcu bu işi yaparken epey sürünüyor.
Hem pin sıkıntısı hem de yavaşlama
nedeniyle bu sistem uygun görülmüyor.

Kolaylıklar.

Şema, PCB ve hex kodu:
https://oshwlab.com/mehmetbey/hc595_to_led_01

:020000000D28C9
:10000800DE00030E8312BA000408BB000A08BC0015
:1000180050290E282030831384003730F8228301BA
:10002800EC293F30C5001430C000C10174223C30B7
:10003800C0003F30B0221A2174223C30C0003F304B
:10004800B0221F21B022A1001430C000C1017422C7
:100058003C30C0003F30B0221F21B0222F21B022F7
:10006800A2001430C000C10174223C30C0003F30EF
:10007800B0221F21B0222F21B0223821B022A300A4
:100088001430C000C10174223C30C0003F30B0229F
:100098001F21B0222F21B0223821B022A300053021
:1000A800C0003F30B022A4001430C000C101742247
:1000B8000630C40044081A3E8400831380014408B3
:1000C8001B3E4121B0228313800044081C3E3C2182
:1000D800B0228313800044081D3E4621B0228313BA
:1000E800800044081E3E4B21B02283138000440840
:1000F8001F3E3321B0221121B02229217422103051
:10010800C40A4402031C5E281430C000C1017422D2
:100118000F30C4004408263E84008313800144083D
:10012800253E4121B022831380004408243E3C210F
:10013800B022831380004408233E4621B022831353
:1001480080004408223E4B21B022831380004408DB
:10015800213E3321B0221121B02229217422C40B5F
:100168008E28A601A5013C30C0004508B022A40095
:100178002830C0004508B022A3001430C00045084C
:10018800B022A2000A30C0004508B022A100053004
:10019800C0004508B0221A217422A601A501A401B5
:1001A8003C30C0004508B022A3002830C0004508F4
:1001B800B022A2001430C0004508B022A1000A30C5
:1001C800C0004508B0221A217422A601A501A40185
:1001D800A3013C30C0004508B022A2002830C0006E
:1001E8004508B022A1001430C0004508B0221A21E9
:1001F800742223213C30C0004508B022A1002830D9
:10020800C0004508B0221A2174222321A1013C30E4
:10021800C0004508B0221A21742A831380004408BC
:10022800203E84000330C00045080800A0001430B8
:10023800C000C1010800A0002830C0003F34A6015A
:10024800A501A401A301A2010800831380001430B2
:10025800C000C1010800A1001430C0003F34840070
:100268000530C00045080800A2000A30C0003F342D
:1002780084002830C0004508080084003C30C000D5
:100288004508080084001430C000450808008400B0
:100298000A30C000450808008B130C1C9B2936083F
:1002A800031D5E298510BF0105100511A521031C3A
:1002B80058298514FF30BD00BE00BF013F08203E0D
:1002C800840083130008360203187C293F0AB7000C
:1002D8000130B8000030B90074290310B80DB90D09
:1002E800B70B7129B809B9093808BD053908BE0521
:1002F8001030BF0A3F02031C62298510BF01051098
:100308000515BE1B05110310BD0DBE0DA521031C4F
:10031800832985144030B60A36020318B6010C103A
:1003280083160C14FE3083128F000C308E008B174E
:100338003C088A003B0884003A0E8300DE0E5E0EFD
:10034800090005141030BF0A3F020800C401C501A6
:10035800E221031CAC290830C500D821031CB129AF
:100368000A30C000C1017422C40A4408803A413EE0
:10037800031CAB290A30C000C10174223F30C400FD
:10038800C501E221031CC5290830C500D821031C7A
:10039800CA290A30C000C1017422C403C41FC42979
:1003A8000A30C000C101742A4508203E8400440870
:1003B8003F3C80001030C50A450208004508203E31
:1003C80084004408831380000830C50A45020800E9
:1003D800ED22CB228B17B8308312C2000B30C3003A
:1003E8003F3092220A30C000C101742221225422D7
:1003F800262292220A30C000C101742221225422EE
:10040800262292220A30C000C101742221225422DD
:10041800152015201520152015202B22AA21AA21E8
:10042800AA21AA210A30C2000030C3015422E830B0
:10043800C0000330C1007422EF29B830C2000B306D
:10044800C3000034B830C2000B30C3003F34C401CD
:10045800C5014A227422C50A4508803A413E031C58
:100468002D2A0530C000C10174223F30C5004A2240
:100478007422C503C51F3B2A0530C000C101742280
:100488001030C40A4402031808002C2A4408203EED
:1004980084004508831380000530C000C1010800AE
:1004A800C4003F30C501C5004508440203180800D0
:1004B800C6014608203E84004508FF3E831380009D
:1004C8001030C60A4602031C5D2A42084304031979
:1004D800722A4308C1004208C000DE22C503582A18
:1004E8000030410203300319400203187E2A03300A
:1004F800C000C10101308312C0020030031CC103D7
:10050800C10240084104031908000730C3004B30FA
:10051800C200C20B8D2AC30B8D2A7E2AC400C501D6
:10052800C5014408450203180800C6014608203ED4
:1005380084004508831380001030C60A4602031C55
:100548009A2A420843040319AE2A4308C100420804
:10055800C000DE22C50A952AC100C301400803195C
:10056800C92AC201C20AC01BBC2A0310C00DB62A80
:100578000310C30D40084102031CC62A4008C102EB
:1005880043140310C00CC20BBC2A43080800831292
:10059800901210129015101590101014FE308F0044
:1005A8000C308E008B018B120C1083160C140B115F
:1005B8000B17080001308312C0020030031CC1036E
:1005C800C1024008410403190800EA2AEB2A000086
:1005D800DE2A0730990083169F018312850183164E
:1005E800051105108510080064008001840A0406BE
:0805F800031900340406F92A7E
:08400000FF3FFF3FFF3FFF3FC0
:02400E0042303E
:00000001FF
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
http://www.mehmetbilgi.net.tr

semihell

#16
Merhaba, 74HC595 ve PIC12F675 kullanımı açısında bir örnek uygulama hazırladım. PicBasic bilmiyorum ağırlıklı olarak xc8 kullandığım için c de yazdım. Simülasyon dosyası proteus 8 version 8.13 eski sürümlerde belki açamayabilir. xc8 derleyici versiyonu v2.35. Uygulamada 74hc595 çıkışlarından 1, 2, 3, 4 bacaklardaki pwm duty 50ms aralıklarıyla artmaktadır. 5, 6, 7, 8 nolu bacaklardaki pwm ise servoları sürmektedir. 5 ve 6 bacaklardaki pwm servolara 1 sn de bir 0, 90, 180 derece sürme işlemi yapmaktadır. İşlemci GP4 girişinden analog sinyali okuyarak 7 ve 8 bacaklardaki servolara hesaplanan analog değer ile orantılı olarak konum sinyali gönderir. İşlemci hızının çok düşük olması şimdilik çözünürlüğü 7bit olarak sınırlandırdı. Her bir pwm 20ms periyodlara sahip ve herbirinin duty değerleri ayarlanabilmektedir.


Powered by EzPortal