{"id":176,"date":"2025-02-28T16:14:58","date_gmt":"2025-02-28T13:14:58","guid":{"rendered":"https:\/\/ta9ea.com\/?p=176"},"modified":"2025-02-28T16:14:58","modified_gmt":"2025-02-28T13:14:58","slug":"adf-frekans-sentezleyicilerinin-programlanmasi","status":"publish","type":"post","link":"https:\/\/ta9ea.com\/?p=176","title":{"rendered":"ADF Frekans Sentezleyicilerinin Programlanmas\u0131"},"content":{"rendered":"<p>ADF sentezleyicilerin ayarlar\u0131 (faz dedekt\u00f6r frekans\u0131, \u00e7\u0131k\u0131\u015f frekans\u0131, ak\u0131m, vb.) ADF&#8217;deki bir dizi kay\u0131t i\u00e7eri\u011fi taraf\u0131ndan belirlenir.<\/p>\n<p>ADF i\u00e7in bu kay\u0131tlar\u0131n i\u00e7erikleri Analog Devices yaz\u0131l\u0131m\u0131 kullan\u0131larak hesaplanabilir. Bu yaz\u0131l\u0131m Analog Devices (Engineering) sayfalar\u0131nda yay\u0131nlanm\u0131\u015ft\u0131r. \u00d6rne\u011fin, ADF 4002: ADI PLL Int-N yaz\u0131l\u0131m\u0131n\u0131 aray\u0131n, ADF4351 i\u00e7in EVAL-ADF4351 veya ADF435x&#8217;i aray\u0131n, ADF5355 i\u00e7in EVAL ADF5355&#8217;i aray\u0131n.<strong><u>\u00a0<\/u><\/strong><\/p>\n<p>Bir Arduino ile bir ADF programlamak kolayd\u0131r. Seviye de\u011fi\u015ftiricileri kullanmak zorunda kalmamak i\u00e7in 3,3 voltluk bir Arduino \u00f6nerilir. USB aray\u00fczl\u00fc bir Arduino bilgisayara ba\u011flanmay\u0131 kolayla\u015ft\u0131r\u0131r.<\/p>\n<p>\u0130\u015fte 2 \u00f6rnek:<br \/>\n1) Arduino Leonardo pro micro 3.3 volt<br \/>\n2) Diymore&#8217;dan PRO-MICRO 3.3 volt<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-177 size-full\" src=\"https:\/\/ta9ea.com\/wp-content\/uploads\/2025\/02\/two-examples-624x637-1.png\" alt=\"\" width=\"624\" height=\"637\" \/><\/p>\n<p>\u015eema basittir. Veri, LE ve CLK, ADF kay\u0131tlar\u0131n\u0131 doldurmak i\u00e7in kullan\u0131l\u0131r. CE (= Chip Enable) ile ADF kilidi a\u00e7\u0131l\u0131r. ADF&#8217;nin CE ba\u011flant\u0131s\u0131 ayr\u0131ca 3,3 voltluk hatta s\u00fcrekli olarak ba\u011flanabilir.<\/p>\n<p>\u015eemaya, ADF&#8217;ye veri aktar\u0131m\u0131 s\u0131ras\u0131nda yanan bir LED eklendi. Basmal\u0131 anahtar Arduino&#8217;nun s\u0131f\u0131rlanmas\u0131na olanak tan\u0131r.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-178 size-full\" src=\"https:\/\/ta9ea.com\/wp-content\/uploads\/2025\/02\/schema_2-624x406-1.png\" alt=\"\" width=\"624\" height=\"406\" \/><\/p>\n<p><strong><u>ADF5355<\/u><\/strong><\/p>\n<p>ADF5355&#8217;te 32 bitlik 13 kay\u0131t vard\u0131r. Kay\u0131tlar \u00f6nce kay\u0131t 12, sonra kay\u0131t 11 ve b\u00f6ylece kay\u0131t 0&#8217;a kadar teker teker doldurulur. Bu kay\u0131tlar\u0131 doldurmak i\u00e7in, 32 bit veri (Veri hatt\u0131) saatin her y\u00fckselen kenar\u0131nda (CLK) ADF&#8217;nin 32 bit kayd\u0131rma kayd\u0131na saatlenir. Veri \u00f6nce MSB&#8217;de saatlenir. Kayd\u0131rma kayd\u0131ndan 13 mandaldan birine veri aktar\u0131m\u0131 LE&#8217;nin (Y\u00fckleme Etkinle\u015ftirme) y\u00fckselen kenar\u0131nda ger\u00e7ekle\u015fir.<\/p>\n<pre class=\"lang:arduino decode:true \">\/\/ Version 0.1 june 2020 \n\/\/ simple Arduino sketch for register setting of the ADF5355.\n\/\/ comments are welcome at on4cdu'at'uba.be\n\nint LEpin = 6, datapin = 8, clkpin = 7, CEpin = 9 ;  \/\/ define ADF5355 enable, data and clock connections\nint ledpin = 10;\nunsigned long Reg00, Reg01, Reg02, Reg03, Reg04, Reg05, Reg06, Reg07, Reg08, Reg09, Reg10, Reg11, Reg12;         \/\/ define registers\n\nvoid writeregister(unsigned long regword) {   \/\/ this routine clocks a 32 bits word (regword) into the ADF\n  for (int pos = 32; pos &gt; 0; pos --) {       \/\/ register word has 32 bits\n    if (regword &amp; 0x80000000) {\n      digitalWrite(datapin, HIGH);            \/\/ write 1 into register ADF\n    }\n    else {\n      digitalWrite(datapin, LOW);             \/\/ write 0 into register ADF\n    }\n    digitalWrite(clkpin, HIGH);\n    digitalWrite(clkpin, LOW);\n    regword = regword &lt;&lt; 1;                    \/\/ rotate left for next bit\n  }\n  digitalWrite(LEpin, HIGH);                   \/\/ latch in register word on rising edge of LE\n  digitalWrite(LEpin, LOW);\n} \/\/  end writeregister\n\nvoid write13registers() {                     \/\/ write 13 registers to ADF\n  digitalWrite(ledpin, HIGH);\n  writeregister(Reg12);\n  writeregister(Reg11);\n  writeregister(Reg10);\n  writeregister(Reg09);\n  writeregister(Reg08);\n  writeregister(Reg07);\n  writeregister(Reg06);\n  writeregister(Reg05);\n  writeregister(Reg04);\n  writeregister(Reg03);\n  writeregister(Reg02);\n  writeregister(Reg01);\n  delay(0.1);\n  writeregister(Reg00);\n  digitalWrite(ledpin, LOW);\n}\n\nvoid setup () {\n  pinMode(ledpin, OUTPUT);\n  pinMode(clkpin, OUTPUT);\n  pinMode(datapin, OUTPUT);\n  pinMode(CEpin, OUTPUT);\n  pinMode(LEpin, OUTPUT);\n  digitalWrite(ledpin, LOW);\n  digitalWrite(clkpin, LOW);\n  digitalWrite(datapin, LOW);\n  digitalWrite(CEpin, LOW);\n  digitalWrite(LEpin, LOW);\n  delay (500);\n  digitalWrite(CEpin, HIGH);\n\n  \/\/ Register settings for Fout= 400MHz and 26MHz reference frequency. PFD = REF\n\n  Reg00 = 0x00200F60;\n  Reg01 = 0x02762761;\n  Reg02 = 0x13B20002;\n  Reg03 = 0x00000003;\n  Reg04 = 0x3000BD84;\n  Reg05 = 0x00800025;\n  Reg06 = 0x15802076;\n  Reg07 = 0x120000E7;\n  Reg08 = 0x102D0428;\n  Reg09 = 0x0B0B3CC9;\n  Reg10 = 0x00C0193A;\n  Reg11 = 0x0061300B;\n  Reg12 = 0x0001041C;\n\n  write13registers();\n}\n\nvoid loop() {                           \/\/ empty main loop\n}\n<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>ADF sentezleyicilerin ayarlar\u0131 (faz dedekt\u00f6r frekans\u0131, \u00e7\u0131k\u0131\u015f frekans\u0131, ak\u0131m, vb.) ADF&#8217;deki bir dizi kay\u0131t i\u00e7eri\u011fi taraf\u0131ndan belirlenir. ADF i\u00e7in bu kay\u0131tlar\u0131n i\u00e7erikleri Analog Devices yaz\u0131l\u0131m\u0131 [&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":181,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,3,4],"tags":[],"class_list":["post-176","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ardu","category-hamrad","category-qo100"],"_links":{"self":[{"href":"https:\/\/ta9ea.com\/index.php?rest_route=\/wp\/v2\/posts\/176","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ta9ea.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ta9ea.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ta9ea.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ta9ea.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=176"}],"version-history":[{"count":0,"href":"https:\/\/ta9ea.com\/index.php?rest_route=\/wp\/v2\/posts\/176\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ta9ea.com\/index.php?rest_route=\/"}],"wp:attachment":[{"href":"https:\/\/ta9ea.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=176"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ta9ea.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=176"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ta9ea.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=176"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}