久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: Msp430f5529跟FDC2214源碼與資料下載 [打印本頁(yè)]

作者: 1106998808    時(shí)間: 2018-7-21 12:57
標(biāo)題: Msp430f5529跟FDC2214源碼與資料下載
例程跟2018ti杯d題

全部資料51hei下載地址:
FDC2214_F5529_Good程序.rar (66.03 KB, 下載次數(shù): 70)
MSP430F5529 TI官方開(kāi)發(fā)板的實(shí)例程序(非常好).rar (611.21 KB, 下載次數(shù): 56)







Msp430f5529單片機(jī)驅(qū)動(dòng)fdc2214的源碼:
  1. #include <msp430F5529.h>

  2. #include "IIC_Soft.h"
  3. #include "FDC2214.h"
  4. #include "delay.h"

  5. #define uint8_t unsigned char

  6. #define UCA1_OS   1    // 1 = oversampling mode, 0 = low-freq mode
  7. #define UCA1_BR0  17   // Value of UCA1BR0 register
  8. #define UCA1_BR1  0    // Value of UCA1BR1 register
  9. #define UCA1_BRS  0    // Value of UCBRS field in UCA1MCTL register
  10. #define UCA1_BRF  6    // Value of UCBRF field in UCA1MCTL register

  11. void bcUartSend(uint8_t * buf, uint8_t len);
  12. void delay_ms(unsigned int count);
  13. void UartSend(uint8_t * buf);

  14. void sys_clk_config(void);
  15. void uart_config(void);
  16. unsigned char HexToChar(unsigned char bHex);
  17. /*
  18. * main.c
  19. */
  20. int main(void) {

  21.         unsigned long ch0_value = 0;
  22.         unsigned char dat[8]=0;

  23.     WDTCTL = WDTPW + WDTHOLD;
  24.     sys_clk_config();
  25.     uart_config();
  26.     __bis_SR_register(GIE);
  27.     FDC2214_Init();

  28. //    __bis_SR_register(LPM0_bits + GIE); // Enter LPM0, interrupts enabled
  29. //    __no_operation(); // For debugger
  30.     while(1)
  31.     {
  32.             ch0_value = FDC2214_GetResult(0);  //讀取通道0,發(fā)送到串口,轉(zhuǎn)為字符型方便觀察。
  33.             UartSend("Ch0_value is:");
  34.             dat[0] = (unsigned char)(((ch0_value>>24)>>4)&0X0F);
  35.             dat[0] = HexToChar(dat[0]);
  36.             Uart_Send_Char(dat[0]);
  37.             dat[0] = (unsigned char)(((ch0_value>>24)>>0)&0X0F);
  38.             dat[0] = HexToChar(dat[0]);
  39.             Uart_Send_Char(dat[0]);

  40.             dat[0] = (unsigned char)(((ch0_value>>16)>>4)&0X0F);
  41.             dat[0] = HexToChar(dat[0]);
  42.             Uart_Send_Char(dat[0]);
  43.             dat[0] = (unsigned char)(((ch0_value>>16)>>0)&0X0F);
  44.             dat[0] = HexToChar(dat[0]);
  45.             Uart_Send_Char(dat[0]);

  46.             dat[0] = (unsigned char)(((ch0_value>>8)>>4)&0X0F);
  47.             dat[0] = HexToChar(dat[0]);
  48.             Uart_Send_Char(dat[0]);
  49.             dat[0] = (unsigned char)(((ch0_value>>8)>>0)&0X0F);
  50.             dat[0] = HexToChar(dat[0]);
  51.             Uart_Send_Char(dat[0]);

  52.             dat[0] = (unsigned char)(((ch0_value>>0)>>4)&0X0F);
  53.             dat[0] = HexToChar(dat[0]);
  54.             Uart_Send_Char(dat[0]);
  55.             dat[0] = (unsigned char)(((ch0_value>>0)>>0)&0X0F);
  56.             dat[0] = HexToChar(dat[0]);
  57.             Uart_Send_Char(dat[0]);
  58.             UartSend("\n");delay_ms(100);

  59.             ch0_value = FDC2214_GetResult(1);
  60.             UartSend("Ch1_value is:");
  61.             dat[0] = (unsigned char)(((ch0_value>>24)>>4)&0X0F);
  62.             dat[0] = HexToChar(dat[0]);
  63.             Uart_Send_Char(dat[0]);
  64.             dat[0] = (unsigned char)(((ch0_value>>24)>>0)&0X0F);
  65.             dat[0] = HexToChar(dat[0]);
  66.             Uart_Send_Char(dat[0]);

  67.             dat[0] = (unsigned char)(((ch0_value>>16)>>4)&0X0F);
  68.             dat[0] = HexToChar(dat[0]);
  69.             Uart_Send_Char(dat[0]);
  70.             dat[0] = (unsigned char)(((ch0_value>>16)>>0)&0X0F);
  71.             dat[0] = HexToChar(dat[0]);
  72.             Uart_Send_Char(dat[0]);

  73.             dat[0] = (unsigned char)(((ch0_value>>8)>>4)&0X0F);
  74.             dat[0] = HexToChar(dat[0]);
  75.             Uart_Send_Char(dat[0]);
  76.             dat[0] = (unsigned char)(((ch0_value>>8)>>0)&0X0F);
  77.             dat[0] = HexToChar(dat[0]);
  78.             Uart_Send_Char(dat[0]);

  79.             dat[0] = (unsigned char)(((ch0_value>>0)>>4)&0X0F);
  80.             dat[0] = HexToChar(dat[0]);
  81.             Uart_Send_Char(dat[0]);
  82.             dat[0] = (unsigned char)(((ch0_value>>0)>>0)&0X0F);
  83.             dat[0] = HexToChar(dat[0]);
  84.             Uart_Send_Char(dat[0]);
  85.             UartSend("\n");delay_ms(100);


  86.             ch0_value = FDC2214_GetResult(2);
  87.             UartSend("Ch2_value is:");
  88.             dat[0] = (unsigned char)(((ch0_value>>24)>>4)&0X0F);
  89.             dat[0] = HexToChar(dat[0]);
  90.             Uart_Send_Char(dat[0]);
  91.             dat[0] = (unsigned char)(((ch0_value>>24)>>0)&0X0F);
  92.             dat[0] = HexToChar(dat[0]);
  93.             Uart_Send_Char(dat[0]);

  94.             dat[0] = (unsigned char)(((ch0_value>>16)>>4)&0X0F);
  95.             dat[0] = HexToChar(dat[0]);
  96.             Uart_Send_Char(dat[0]);
  97.             dat[0] = (unsigned char)(((ch0_value>>16)>>0)&0X0F);
  98.             dat[0] = HexToChar(dat[0]);
  99.             Uart_Send_Char(dat[0]);

  100.             dat[0] = (unsigned char)(((ch0_value>>8)>>4)&0X0F);
  101.             dat[0] = HexToChar(dat[0]);
  102.             Uart_Send_Char(dat[0]);
  103.             dat[0] = (unsigned char)(((ch0_value>>8)>>0)&0X0F);
  104.             dat[0] = HexToChar(dat[0]);
  105.             Uart_Send_Char(dat[0]);

  106.             dat[0] = (unsigned char)(((ch0_value>>0)>>4)&0X0F);
  107.             dat[0] = HexToChar(dat[0]);
  108.             Uart_Send_Char(dat[0]);
  109.             dat[0] = (unsigned char)(((ch0_value>>0)>>0)&0X0F);
  110.             dat[0] = HexToChar(dat[0]);
  111.             Uart_Send_Char(dat[0]);
  112.             UartSend("\n");delay_ms(100);


  113.             ch0_value = FDC2214_GetResult(3);
  114.             UartSend("Ch3_value is:");
  115.             dat[0] = (unsigned char)(((ch0_value>>24)>>4)&0X0F);
  116.             dat[0] = HexToChar(dat[0]);
  117.             Uart_Send_Char(dat[0]);
  118.             dat[0] = (unsigned char)(((ch0_value>>24)>>0)&0X0F);
  119.             dat[0] = HexToChar(dat[0]);
  120.             Uart_Send_Char(dat[0]);

  121.             dat[0] = (unsigned char)(((ch0_value>>16)>>4)&0X0F);
  122.             dat[0] = HexToChar(dat[0]);
  123.             Uart_Send_Char(dat[0]);
  124.             dat[0] = (unsigned char)(((ch0_value>>16)>>0)&0X0F);
  125.             dat[0] = HexToChar(dat[0]);
  126.             Uart_Send_Char(dat[0]);

  127.             dat[0] = (unsigned char)(((ch0_value>>8)>>4)&0X0F);
  128.             dat[0] = HexToChar(dat[0]);
  129.             Uart_Send_Char(dat[0]);
  130.             dat[0] = (unsigned char)(((ch0_value>>8)>>0)&0X0F);
  131.             dat[0] = HexToChar(dat[0]);
  132.             Uart_Send_Char(dat[0]);

  133.             dat[0] = (unsigned char)(((ch0_value>>0)>>4)&0X0F);
  134.             dat[0] = HexToChar(dat[0]);
  135.             Uart_Send_Char(dat[0]);
  136.             dat[0] = (unsigned char)(((ch0_value>>0)>>0)&0X0F);
  137.             dat[0] = HexToChar(dat[0]);
  138.             Uart_Send_Char(dat[0]);
  139.             UartSend("\n");delay_ms(100);


  140.             UartSend("\n");                     //換行,延時(shí),方便觀察數(shù)據(jù)
  141.             delay_ms(10000);delay_ms(10000);



  142.     }
  143. //        return 0;
  144. }

  145. /************USCI_A1中斷*************/
  146. #pragma vector=USCI_A1_VECTOR
  147. __interrupt void USCI_A1_ISR(void)
  148. {  switch(__even_in_range(UCA1IV,4))
  149.   {
  150.   case 0:break;
  151.   case 2:
  152.     while (!(UCA1IFG&UCTXIFG));
  153.     UCA1TXBUF = UCA1RXBUF;       // 將接收到的數(shù)據(jù)發(fā)送出去
  154.     break;
  155.   case 4:break;
  156.   default: break;
  157.   }
  158. }

  159. // Sends 'len' bytes, starting at 'buf'
  160. void bcUartSend(uint8_t * buf, uint8_t len)
  161. {
  162.     uint8_t i = 0;

  163.     // Write each byte in buf to USCI TX buffer, which sends it out
  164.     while (i < len)
  165.     {
  166.         UCA1TXBUF = *(buf+(i++));
  167. //      while (!(UCA1IFG&UCTXIFG));
  168. //      delay_ms(20);
  169. //      Wait until each bit has been clocked out...
  170.         while(!(UCTXIFG==(UCTXIFG & UCA1IFG))&&((UCA1STAT & UCBUSY)==UCBUSY));
  171.     }
  172. }

  173. void UartSend(uint8_t * buf)
  174. {
  175.         while(*buf !='\0')
  176.         {
  177.                 while (!(UCA1IFG&UCTXIFG));
  178.                 UCA1TXBUF=*buf;
  179.                 *buf++;
  180.                 delay_ms(2);
  181.         }
  182. }

  183. void Uart_Send_Char(uint8_t dat)
  184. {

  185.                 while (!(UCA1IFG&UCTXIFG));
  186.                 UCA1TXBUF=dat;
  187. }

  188. void delay_ms(unsigned int count)
  189. {
  190.   unsigned int i,j;
  191.   for(i=0;i<count;i++)
  192.           for(j=0;j<10;j++)
  193.                   delay_us();
  194. }
  195. void sys_clk_config(void)  //外部晶振4M
  196. {
  197.     P5SEL |= BIT2|BIT3;
  198.     UCSCTL6 &= ~XT2OFF;

  199.     UCSCTL4 = UCSCTL4&(~(SELA_7))|SELA_1;
  200.     UCSCTL3 |= SELREF_2;

  201.     while (SFRIFG1 & OFIFG)
  202.     {
  203.       UCSCTL7 &= ~(XT2OFFG + XT1LFOFFG + DCOFFG);
  204.       SFRIFG1 &= ~OFIFG;
  205.     }
  206.     UCSCTL4 = UCSCTL4&(~(SELS_7|SELM_7))|SELS_5|SELM_5;
  207. }
  208. void uart_config(void)
  209. {
  210.     P4SEL |= BIT4+BIT5;

  211.     UCA1CTL1 |= UCSWRST;
  212.     UCA1CTL1 |= UCSSEL_2;

  213.     UCA1BR0 = 34;//115200,外部4M
  214.     UCA1BR1 = 0;
  215.     UCA1MCTL |= UCBRS_6+UCBRF_0;

  216.     UCA1CTL1 &= ~UCSWRST;
  217.     UCA1IE |= UCRXIE;

  218. }

  219. unsigned char HexToChar(unsigned char bHex)
  220. {

  221.         if((bHex>=0)&&(bHex<=9))
  222.         {
  223.                 bHex += 0x30;
  224.         }
  225.         else if((bHex>=10)&&(bHex<=15))//Capital
  226.         {
  227.                 bHex += 0x37;
  228.         }
  229.         else
  230.         {
  231.                 bHex = 0xff;
  232.         }
  233.         return bHex;
  234. }
復(fù)制代碼



作者: 從何說(shuō)起    時(shí)間: 2018-7-22 00:32
232021045.248是什么。。。





歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 一级a性色生活片久久毛片波多野 | 99久久久久久 | 91在线资源| 国产一区二区三区 | 中国一级大黄大片 | 日韩精品专区在线影院重磅 | 国产精品美女www爽爽爽视频 | 黄色一级毛片免费看 | 国产精品毛片一区二区三区 | 久久亚洲精品久久国产一区二区 | 欧美专区在线 | 中文字幕国产精品 | 久久久精品视频免费看 | 久久久久国产一区二区三区四区 | 男女羞羞视频在线 | 成人h视频在线 | 欧美精品一区二区三区四区 在线 | 欧美 日韩 中文 | 三级成人在线 | 亚洲欧美日韩久久 | 精品国产一区二区三区四区在线 | 久久蜜桃av一区二区天堂 | 欧美一级久久精品 | 请别相信他免费喜剧电影在线观看 | 性一爱一乱一交一视频 | 9色网站 | 精品国产精品国产偷麻豆 | 电影91久久久 | 亚洲在线中文字幕 | 国产免费看| 人成久久| 国产一区二区在线免费观看 | 农夫在线精品视频免费观看 | 超碰人人91 | 日一区二区 | 国产精品亚洲视频 | 中文字幕视频在线免费 | 国产精品一区二区三 | 成人二区| 久久精品免费一区二区三 | 国产露脸对白88av |