{"id":475,"date":"2014-06-10T11:00:30","date_gmt":"2014-06-10T11:00:30","guid":{"rendered":"https:\/\/ibex.tech\/embedded\/?p=475"},"modified":"2022-02-18T15:37:49","modified_gmt":"2022-02-18T15:37:49","slug":"quadrature-encoder-inputs","status":"publish","type":"post","link":"https:\/\/ibex.tech\/embedded\/microchip\/dspic\/xc16-dspic\/quadrature-encoder-inputs","title":{"rendered":"Quadrature Encoder Inputs"},"content":{"rendered":"<p>\n&nbsp;\n<\/p>\n<h4>\nSetup Quadrature Encoder Inputs<br \/>\n<\/h4>\n<p>\ndsPIC33EP256MU806 example:\n<\/p>\n<pre>\r\n<code>\r\n\r\n\t\/\/-------------------------------------------\r\n\t\/\/----- SETUP QUADRATURE ENCODER INPUTS -----\r\n\t\/\/-------------------------------------------\r\n\r\n\t\/\/----- SETUP QEI 1 -----\r\n\tQEI1CONbits.QEIEN = 0;\t\t\/\/Module counters are disabled\r\n\tQEI1CONbits.CCM = 0;\t\t\/\/Quadrature Encoder mode\r\n\tQEI1CONbits.PIMOD = 0;\t\t\/\/Index input event does not affect position counter\r\n\tQEI1CONbits.IMV = 0;\t\t\/\/Index input event does not affect position counter\r\n\tQEI1CONbits.INTDIV = 0;\r\n\tQEI1CONbits.CNTPOL = 0;\r\n\tQEI1CONbits.GATEN = 0;\r\n\r\n\tQEI1IOCbits.QCAPEN = 0;\r\n\tQEI1IOCbits.FLTREN = 1;\t\t\/\/Input Pin Digital filter is enabled\r\n\tQEI1IOCbits.QFDIV = 0;\t\t\/\/Digital Input Filter Clock Divide Select bits &lt;Set the digital input filter clock divide based on our osc and max encoder speed\r\n\tQEI1IOCbits.OUTFNC = 0;\t\t\/\/Output is disabled\r\n\tQEI1IOCbits.SWPAB = 0;\r\n\tQEI1IOCbits.HOMPOL = 0;\r\n\tQEI1IOCbits.IDXPOL = 0;\r\n\tQEI1IOCbits.QEBPOL = 0;\r\n\tQEI1IOCbits.QEAPOL = 0;\r\n\r\n\tPOS1CNTH = 0;\t\t\t\t\/\/Write MSW first\r\n\tPOS1CNTL = 0;\r\n\r\n\tQEI1CONbits.QEIEN = 1;\t\t\/\/Module counters are enabled\r\n\r\n\t\/\/ = POS1CNTL;\t\t\t\t\/\/Read LSW first\r\n\t\/\/ = POS1CNTH;\r\n<\/code><\/pre>\n<p>\n&nbsp;\n<\/p>\n<p>\n&nbsp;\n<\/p>\n<p>\n&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; Setup Quadrature Encoder Inputs dsPIC33EP256MU806 example: \/\/&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- \/\/&#8212;&#8211; SETUP QUADRATURE ENCODER INPUTS &#8212;&#8211; \/\/&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- \/\/&#8212;&#8211; SETUP QEI 1 &#8212;&#8211; QEI1CONbits.QEIEN = 0; \/\/Module counters are disabled QEI1CONbits.CCM = 0; \/\/Quadrature Encoder mode QEI1CONbits.PIMOD = 0; \/\/Index input event does not affect position counter QEI1CONbits.IMV = 0; \/\/Index input event does not affect position counter [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[51],"tags":[],"class_list":["post-475","post","type-post","status-publish","format-standard","hentry","category-xc16-dspic"],"_links":{"self":[{"href":"https:\/\/ibex.tech\/embedded\/wp-json\/wp\/v2\/posts\/475","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ibex.tech\/embedded\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ibex.tech\/embedded\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ibex.tech\/embedded\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ibex.tech\/embedded\/wp-json\/wp\/v2\/comments?post=475"}],"version-history":[{"count":1,"href":"https:\/\/ibex.tech\/embedded\/wp-json\/wp\/v2\/posts\/475\/revisions"}],"predecessor-version":[{"id":476,"href":"https:\/\/ibex.tech\/embedded\/wp-json\/wp\/v2\/posts\/475\/revisions\/476"}],"wp:attachment":[{"href":"https:\/\/ibex.tech\/embedded\/wp-json\/wp\/v2\/media?parent=475"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ibex.tech\/embedded\/wp-json\/wp\/v2\/categories?post=475"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ibex.tech\/embedded\/wp-json\/wp\/v2\/tags?post=475"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}