ÔÆÌ⺣ - רҵÎÄÕ·¶ÀýÎĵµ×ÊÁÏ·ÖÏíÆ½Ì¨

µ±Ç°Î»ÖãºÊ×Ò³ > \\"¼ò¼òµ¥µ¥DSP\\"ϵÁÐѧϰ»î¶¯ - µÚÁùÆÚADѧϰ¼°Ê¹ÓÃ

\\"¼ò¼òµ¥µ¥DSP\\"ϵÁÐѧϰ»î¶¯ - µÚÁùÆÚADѧϰ¼°Ê¹ÓÃ

  • 62 ´ÎÔĶÁ
  • 3 ´ÎÏÂÔØ
  • 2026/4/24 20:09:36

AdcRegs.MAX_CONV.all=0x000F; /*²ÉÑù ADCINA0*/

AdcRegs.ADCCHSELSEQ1.bit.CONV00=0x0; /*²ÉÑù ADCINA1*/

AdcRegs.ADCCHSELSEQ1.bit.CONV01=0x1; /*²ÉÑù ADCINA2*/

AdcRegs.ADCCHSELSEQ1.bit.CONV02=0x2; /*²ÉÑù ADCINA3*/

AdcRegs.ADCCHSELSEQ1.bit.CONV03=0x3; /*²ÉÑù ADCINA4*/

AdcRegs.ADCCHSELSEQ2.bit.CONV04=0x4; /*²ÉÑù ADCINA5*/

AdcRegs.ADCCHSELSEQ2.bit.CONV05=0x5; /*²ÉÑù ADCINA6*/

AdcRegs.ADCCHSELSEQ2.bit.CONV06=0x6; /*²ÉÑù ADCINA7*/

AdcRegs.ADCCHSELSEQ2.bit.CONV07=0x7; /*²ÉÑù ADCINB0*/

AdcRegs.ADCCHSELSEQ3.bit.CONV08=0x8; /*²ÉÑù ADCINB1*/

AdcRegs.ADCCHSELSEQ3.bit.CONV09=0x9; /*²ÉÑù ADCINB2*/

AdcRegs.ADCCHSELSEQ3.bit.CONV10=0xA; /*²ÉÑù ADCINB3*/

AdcRegs.ADCCHSELSEQ3.bit.CONV11=0xB; /*²ÉÑù ADCINB4*/

AdcRegs.ADCCHSELSEQ4.bit.CONV12=0xC; /*²ÉÑù ADCINB5*/

AdcRegs.ADCCHSELSEQ4.bit.CONV13=0xD; /*²ÉÑù ADCINB6*/

AdcRegs.ADCCHSELSEQ4.bit.CONV14=0xE; /*²ÉÑù ADCINB7*/

AdcRegs.ADCCHSELSEQ4.bit.CONV15=0xF; ת»»Íê³Éºó£¬½á¹û´æ·ÅÔÚ½á¹û»º³å¼Ä´æÆ÷ADCRESULTn£¨x=1~16£©ÖУ¬½á¹ûÅÅÐòÈçÏÂ

Èç¹û SEQÒѾ­Íê³ÉÁËת»»£¬ÄÇô£¬½á¹ûÈçͼ Ëùʾ£º ADCINA0--->ADCRESULT0 ADCINA1--->ADCRESULT1 ADCINA2--->ADCRESULT2 ADCINA3--->ADCRESULT3 ADCINA4--->ADCRESULT4 ADCINA5--->ADCRESULT5 ADCINA6--->ADCRESULT6 ADCINA7--->ADCRESULT7 ADCINB0--->ADCRESULT0 ADCINB1--->ADCRESULT8

ADCINB2--->ADCRESULT9 ADCINB3--->ADCRESULT10 ADCINB4--->ADCRESULT11 ADCINB5--->ADCRESULT13 ADCINB6--->ADCRESULT14 ADCINB7--->ADCRESULT15 d¡¢¼¶ÁªÄ£Ê½Í¬²½²ÉÑù ¼¶ÁªÄ£Ê½Í¬²½²ÉÑù,¾ÍÊÇÒ»´ÎÓÐÒ»¶ÔͨµÀ²ÉÑù£¬ÏñÉÏÃæËµµÄÕâÒ»¶ÔÊǶÔÓ¦µÄ¡£Óõ½µÄ×Ô¶¯ÅÅÐòÆ÷ÊÇSEQ½«Óõ½SEQADCADCCHSELSEQ1¡¢ADCADCCHSELSEQ2.

ADCADCCHSELSEQ1¡¢ADCADCCHSELSEQ2ÖеÄÿ4λµÄ×î¸ßλÉèÖÃΪ0£»Óõ½ADCMAXCONVÖÐ×îºóÆßλµÄµÍ3λ¡£×ª»»Ë³ÐòÊÇ´ÓADCADCCHSELSEQ1µÄ×îµÍ4λ¿ªÊ¼Ò»Ö±µ½ADCADCCHSELSEQ2µÄ×î¸ß4λÕâ¸ö˳ÐòÀ´µÄ.

C´úÂë·ÖÎö£ºÕâ¸öÊÇ8¶Ôͬ²½²ÉÑùµÄ£¬Ã¿´Î²ÉÑùÁ©¸öͨµÀ£¬Ã¿¸öͨµÀ¶¼²ÉÑùÒ»´Î /*¼¶ÁªÄ£Ê½ */

AdcRegs.ADCTRL1.bit.SEQ_CASC=1; /*ÉèÖÃͬ²½²ÉÑùģʽ*/

AdcRegs.ADCTRL3.bit.SMODE_SEL=1;

/*ÐòÁз¢ÉúÆ÷×î´ó²ÉÑùͨµÀÊýΪ 8£¬×ܹ²¿É²ÉÑù 8¶ÔͨµÀ , SEQ ½«Óõ½ ADCADCCHSELSEQ1¡¢ ADCADCCHSELSEQ2 */ AdcRegs.MAX_CONV.all=0x0007; /*²ÉÑù ADCINA0£¬ADCINB0*/

AdcRegs.ADCCHSELSEQ1.bit.CONV00=0x0; /*²ÉÑù ADCINA1£¬ADCINB1*/

AdcRegs.ADCCHSELSEQ1.bit.CONV01=0x1; /*²ÉÑù ADCINA2,ADCINB2*/

AdcRegs.ADCCHSELSEQ1.bit.CONV02=0x2; /*²ÉÑù ADCINA3,ADCINB3*/

AdcRegs.ADCCHSELSEQ1.bit.CONV03=0x3; /*²ÉÑù ADCINA4,ADCINB4*/

AdcRegs.ADCCHSELSEQ2.bit.CONV04=0x4; /*²ÉÑù ADCINA5,ADCINB5*/

AdcRegs.ADCCHSELSEQ2.bit.CONV05=0x5; /*²ÉÑù ADCINA6,ADCINB6*/

AdcRegs.ADCCHSELSEQ2.bit.CONV6=0x6; /*²ÉÑù ADCINA7,ADCINB7*/

AdcRegs.ADCCHSELSEQ2.bit.CONV7=0x7;

Èç¹û SEQ1¶¼ÒѾ­Íê³ÉÁËת»»£¬ÄÇô½á¹ûÈçͼ Ëùʾ£º ADCINA0--->ADCRESULT0 ADCINB0--->ADCRESULT1 ADCINA1--->ADCRESULT2 ADCINB1--->ADCRESULT3 ADCINA2--->ADCRESULT4 ADCINB2--->ADCRESULT5 ADCINA3--->ADCRESULT6 ADCINB3--->ADCRESULT7 ADCINA4--->ADCRESULT8

ADCINB4--->ADCRESULT9 ADCINA5--->ADCRESULT10 ADCINB5--->ADCRESULT11 ADCINA6--->ADCRESULT12 ADCINB6--->ADCRESULT13 ADCINA7--->ADCRESULT14 ADCINB7--->ADCRESULT15 ͨ¹ýÉÏÊöµÄ 4 ÖÖÇé¿öÎÒÃDz»ÄÑ·¢ÏÖ£¬Ë«ÐòÁз¢ÉúÆ÷ͬ²½²ÉÑùºÍ¼¶ÁªÄ£Ê½Í¬²½²ÉÑùµÄ½á¹ûÊÇÒ»ÑùµÄ£¬Ë« ÐòÁз¢ÉúÆ÷˳Ðò²ÉÑùºÍ¼¶ÁªÄ£Ê½Ë³Ðò²ÉÑùµÄ½á¹ûÒ²ÊÇÒ»ÑùµÄ£¬¾ÍÊǼĴæÆ÷ÅäÖÃÓÐЩ²î±ð£¬²»¿ÉÕŹÚÀî´÷£¬·ñÔò²ÉÑù²»ÄÜÕýÈ·½øÐС£´ó¼Ò¿ÉÒÔ×Ðϸ±È¶Ô£¬Ìå»áÕâ 4 ÖÖÇé¿öµÄ²»Í¬Ö®´¦¡£ÔÚʵ¼ÊÓ¦ÓÃÖУ¬´ó¼Ò¿ÉÒÔ¸ù¾ÝÇé¿öÀ´½øÐÐÑ¡Ôñ£¬×î¼òµ¥µÄ¾ÍÊǼ¶Áª³É 16 ·£¬È»ºó½øÐÐ˳Ðò²ÉÑù¡£

4¡¢ÐòÁз¢ÉúÆ÷µÄÁ¬Ðø×Ô¶¯ÐòÁл¯Ä£Ê½ºÍÆô¶¯/ֹͣģʽ ÎÒÃÇÖªµÀ£¬Ò»¸öÐòÁеÄת»»ÊýÊÇÓÉ MAXCONVn ½øÐпØÖƵģ¬ÔÚÆô¶¯Ò»¸öת»»ÐòÁнøÐÐת»»Ê±£¬AD Ä£¿é½« MAXCONVn µÄÖµ×°ÔØ½ø×Ô¶¯ÐòÁÐ״̬¼Ä´æÆ÷ ADCASEQSR µÄÐòÁмÆÊýÆ÷״̬λ SEQCNTR¡£µ±ÐòÁз¢ÉúÆ÷´Ó״̬ CONV00 ¿ªÊ¼²¢Ë³Ðò½øÐУ¨CONV01£¬CONV02¡£¡£¡£¡££©Ê±£¬ SEQCNTR λ´Ó×°ÈëÖµ¿ªÊ¼µÝ¼õ£¬Ö±µ½Îª 0£¬½áÊøÒ»¸öÐòÁеÄת»»£¬Íê³Éת»»ÊýΪ£¨MAXCONVn+1£©¡£ µ± AD µÄ¿ØÖƼĴæÆ÷ 1 µÄ CONT RUN λÉèΪ 0 µÄʱºò£¬AD µÄÐòÁз¢ÉúÆ÷ÔËÐÐÔÚÆô¶¯/ֹͣģʽ£¬Ò²¾ÍÊÇ˵ÕâÖÖģʽÏ£¬ÐòÁз¢ÉúÆ÷ÔÚÍê³É 1 ¸öÐòÁеÄת»»Ö®ºó½«Í£Ö¹¹¤×÷£¬ÔÚÏÂÒ»´Îת»»Æô¶¯¿ªÊ¼Ö®Ç°£¬±ØÐ븴λÐòÁз¢ÉúÆ÷£¬½«×ª»»Æ÷ÖÃΪ CONV00¡£¸´Î»µÄ·½·¨ÈçÏ£º ¸´Î»ÐòÁз¢ÉúÆ÷ £º

/*Á¢¼´¸´Î»ÐòÁз¢ÉúÆ÷Ϊ CONV00 */ AdcRegs.ADCTRL2.bit.RST_SEQ1=1; /*Á¢¼´¸´Î»ÐòÁз¢ÉúÆ÷Ϊ CONV08*/ AdcRegs.ADCTRL2.bit.RST_SEQ2=1; µ± AD µÄ¿ØÖƼĴæÆ÷ 1 µÄ CONT RUN λÉèΪ 1 µÄʱºò£¬AD µÄÐòÁз¢ÉúÆ÷ÔËÐÐÔÚÁ¬Ðø×Ô¶¯ÐòÁл¯Ä£Ê½£¬µ±ÐòÁÐת»»½áÊøÊ±£¬×ª»»ÐòÁÐ×Ô¶¯Öظ´¿ªÊ¼£¬SOC´¥·¢Ê±×Ô¶¯½« MAXCONVn×°Èë SEQCNTR£¬SEQµÄ״̬±äΪ CONV00¡£ÔÚÕâÖÖÇé¿öÏ£¬ÎªÁ˱ÜÃâÖØÐ´Êý¾Ý£¬±ØÐëÈ·±£ÔÚÏÂÒ»¸öת»»ÐòÁпªÊ¼Ç°£¬¶ÁÈ¡½á¹û¼Ä´æÆ÷¡£ 5¡¢ADCµÄ³õʼ»¯ Ê×ÏÈÓ¦¸Ã¸´Î»ADC,ÔÙ¸øREFºÍbandgapµç·Éϵ磬ÉϵçÖ®ºóÒªÓÉÖÁÉÙ5MSµÄÑÓʱʹµçÔ´Îȶ¨£¬ÔÙ¸øADCÖ÷Ä£¿éÉϵ硣³õʼ»¯º¯ÊýÔÚDSP281X_Adc.c¿âº¯ÊýÖУ¬ÔÚÖ÷º¯ÊýÖе÷Óü´¿É

#define ADC_usDELAY 8000L #define ADC_usDELAY2 20L void InitAdc(void) {

extern void DSP28x_usDelay(Uint32 Count); AdcRegs.ADCTRL1.bit.RESET=1;//¸´Î»

asm£¨¡° RPT # 10 || NOP¡±£©;//ÖÁÉٵȴý12ÖÜÆÚÒÔʹ¸´Î»ÓÐЧ

AdcRegs.ADCTRL3.bit.ADCBGRFDN = 0x3; // Power up bandgap/reference circuitry DELAY_US(ADC_usDELAY); // Delay before powering up rest of ADC AdcRegs.ADCTRL3.bit.ADCPWDN = 1; // Power up rest of ADC DELAY_US(ADC_usDELAY2); // Delay after powering up ADC

}

6¡¢ADCÆô¶¯

ÔÚÅäÖÃÍêADCºó£¬ÒªÑ¡ÔñËüµÄÆô¶¯Ä£Ê½¡£

SEQ1 £ºÈí¼þÁ¢¼´Æô¶¯ ¡¢EVA µÄ¶àÖÖʼþ ÍⲿÒý½Å £¨GPIO/XINT2_ADCSOC£©

SEQ2 £ºÈí¼þÁ¢¼´Æô¶¯ ¡¢ EVB µÄ¶àÖÖʼþ ?

SEQ £ºÈí¼þÁ¢¼´Æô¶¯ ¡¢EVA µÄ¶àÖÖʼþ ¡¢EVB µÄ¶à ÖÖʼþ ¡¢ÍⲿÒý½Å£¨GPIO/XINT2_ADCSOC£©

¶ÔÓÚÕâЩ´¥·¢·½Ê½µÄÑ¡ÔñÓпØÖƼĴæÆ÷2ADCTRL2¾ö¶¨. ÏÂÃæÒÔÒ»¸öÍêÕûµÄC´úÂëΪÀý˵Ã÷ADCµÄÅäÖã¬Õâ¸öÊǹ¤×÷ÔÚ¼¶ÁªË³Ðò²ÉÑù£¬²ÉÑù16ͨµÀ£¬ÓÐÈí¼þ´¥·¢£¬Ê¹ÄÜÖжϣ¬¹¤×÷ÔÚÖжÏģʽ0. main() {

InitSysCtrl();//³õʼ»¯cpu DINT;//¹ØÖжÏ

InitPieCtrl();//³õʼ»¯pie¼Ä´æÆ÷

IER = 0x0000;//½ûÖ¹ËùÓеÄÖÐ¶Ï IFR = 0x0000;

InitPieVectTable();//³õʼ»¯pieÖжÏÏòÁ¿±í InitAdc()£» //µ÷Óóõʼ»¯ADCº¯Êý

PieCtrlRegs.PIEIER1.bit.INTx6 = 1;//ʹÄÜADµÄPIE¼¶ÖÐ¶Ï IER |= M_INT1; // ʹÄÜADµÄCPU¼¶µÄÖÐ¶Ï EINT; // ¿ªÈ«¾ÖÖÐ¶Ï ERTM; // ʹÄÜ·ÂÕæÖÐ¶Ï LoopCount = 0; /*Èí¼þ´¥·¢*/

AdcRegs.ADCTRL2.bit.SOC_SEQ1 = 1; while(1) {

LoopCount++; } }

³õʼ»¯ADCº¯Êý void InitAdc(void) {

extern void DSP28x_usDelay(Uint32 Count);

AdcRegs.ADCTRL1.bit.RESET = 1;// ADC¸´Î» asm(\µÈ´ýÖÁÉÙ12ÖÜÆÚ

AdcRegs.ADCTRL3.bit.ADCBGRFDN = 0x3; // Power up bandgap/reference circuitry DELAY_US(ADC_usDELAY); // Delay before powering up rest of ADC AdcRegs.ADCTRL3.bit.ADCPWDN = 1; // Power up rest of ADC DELAY_US(ADC_usDELAY2); // Delay after powering up ADC /*ʱÖÓÉèÖÃ12.5M*/

ËÑË÷¸ü¶à¹ØÓÚ£º \\"¼ò¼òµ¥µ¥DSP\\"ϵÁÐѧϰ»î¶¯ µÄÎĵµ
  • ÊÕ²Ø
  • Î¥¹æ¾Ù±¨
  • °æÈ¨ÈÏÁì
ÏÂÔØÎĵµ10.00 Ôª ¼ÓÈëVIPÃâ·ÑÏÂÔØ
ÍÆ¼öÏÂÔØ
±¾ÎÄ×÷Õߣº...

¹²·ÖÏí92ƪÏà¹ØÎĵµ

Îĵµ¼ò½é£º

AdcRegs.MAX_CONV.all=0x000F; /*²ÉÑù ADCINA0*/ AdcRegs.ADCCHSELSEQ1.bit.CONV00=0x0; /*²ÉÑù ADCINA1*/ AdcRegs.ADCCHSELSEQ1.bit.CONV01=0x1; /*²ÉÑù ADCINA2*/ AdcRegs.ADCCHSELSEQ1.bit.CONV02=0x2; /*²ÉÑù ADCINA3*/ AdcRegs.ADCCHSELSEQ1.bit.CONV03=0x3; /*²ÉÑù ADCINA4*/ AdcRegs.ADCCHSELSEQ2.bit.CONV04=0x4; /*²ÉÑù ADCINA5*/ AdcRegs.ADCCHSELSEQ2.bit.CONV05=0x5; /*²ÉÑù ADCINA6*/

¡Á ÓοͿì½ÝÏÂÔØÍ¨µÀ£¨ÏÂÔØºó¿ÉÒÔ×ÔÓɸ´ÖƺÍÅŰ棩
µ¥Æª¸¶·ÑÏÂÔØ
ÏÞÊ±ÌØ¼Û£º10 Ôª/·Ý Ô­¼Û:20Ôª
VIP°üÔÂÏÂÔØ
ÌØ¼Û£º29 Ôª/Ô ԭ¼Û:99Ôª
µÍÖÁ 0.3 Ôª/·Ý ÿÔÂÏÂÔØ150·Ý
ȫվÄÚÈÝÃâ·Ñ×ÔÓɸ´ÖÆ
VIP°üÔÂÏÂÔØ
ÌØ¼Û£º29 Ôª/Ô ԭ¼Û:99Ôª
µÍÖÁ 0.3 Ôª/·Ý ÿÔÂÏÂÔØ150·Ý
ȫվÄÚÈÝÃâ·Ñ×ÔÓɸ´ÖÆ
×¢£ºÏÂÔØÎĵµÓпÉÄÜ¡°Ö»ÓÐĿ¼»òÕßÄÚÈݲ»È«¡±µÈÇé¿ö£¬ÇëÏÂÔØÖ®Ç°×¢Òâ±æ±ð£¬Èç¹ûÄúÒѸ¶·ÑÇÒÎÞ·¨ÏÂÔØ»òÄÚÈÝÓÐÎÊÌ⣬ÇëÁªÏµÎÒÃÇЭÖúÄã´¦Àí¡£
΢ÐÅ£ºfanwen365 QQ£º370150219
Copyright © ÔÆÌ⺣ All Rights Reserved. ËÕICP±¸16052595ºÅ-3 ÍøÕ¾µØÍ¼ ¿Í·þQQ£º370150219 ÓÊÏ䣺370150219@qq.com