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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6340|回復(fù): 0
收起左側(cè)

config.h頭文件下載

[復(fù)制鏈接]
ID:76127 發(fā)表于 2015-4-18 03:28 | 顯示全部樓層 |閱讀模式
config.h 430單片機頭文件代碼最后的復(fù)制代碼保存到電腦的方式實現(xiàn)下載:
  1. /********************************************************************
  2. //msp430單片機最小系統(tǒng)板外部資源配置文件Config.h
  3. //包含板載各個資源的硬件配置,如果用戶使用過程中,對應(yīng)的硬件發(fā)生了更改,可利用該頭文件更改使用
  4. //SD/MMC卡初始化硬件配置未包含
  5. //調(diào)試環(huán)境:EW430 V5.30
  6. ********************************************************************/
  7. //延時函數(shù),IAR自帶,經(jīng)常使用到
  8. #define CPU_F ((double)8000000)   //外部高頻晶振8MHZ
  9. //#define CPU_F ((double)32768)   //外部低頻晶振32.768KHZ
  10. #define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0))
  11. #define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0))
  12. //自定義數(shù)據(jù)結(jié)構(gòu),方便使用
  13. #define uchar unsigned char
  14. #define uint  unsigned int
  15. #define ulong unsigned long
  16. //8個LED燈,連接在P6口,可通過斷開電源停止使用,ADC使用時斷開電源
  17. #define LED8DIR         P6DIR
  18. #define LED8            P6OUT                             //P6口接LED燈,8個
  19. //4個獨立按鍵連接在P10~P13
  20. #define KeyPort         P1IN                              //獨立鍵盤接在P10~P13
  21. //串口波特率計算,當BRCLK=CPU_F時用下面的公式可以計算,否則要根據(jù)設(shè)置加入分頻系數(shù)
  22. #define baud           9600                                //設(shè)置波特率的大小
  23. #define baud_setting   (uint)((ulong)CPU_F/((ulong)baud))  //波特率計算公式
  24. #define baud_h         (uchar)(baud_setting>>8)            //提取高位
  25. #define baud_l         (uchar)(baud_setting)               //低位
  26. //RS485控制管腳,CTR用于控制RS485處于收或者發(fā)狀態(tài)
  27. #define RS485_CTR1      P5OUT |= BIT2;          //控制線置高,RS485發(fā)送狀態(tài)
  28. #define RS485_CTR0      P5OUT &= ~BIT2;         //控制線置低,RS485接收狀態(tài)
  29. //2.8寸TFT彩屏顯示控制相關(guān)硬件配置
  30. #define RS_CLR         P5OUT &= ~BIT5           //RS置低
  31. #define RS_SET         P5OUT |=  BIT5           //RS置高
  32. #define RW_CLR         P5OUT &= ~BIT6           //RW置低
  33. #define RW_SET         P5OUT |=  BIT6           //RW置高
  34. #define RD_CLR         P5OUT &= ~BIT7           //E置低
  35. #define RD_SET         P5OUT |=  BIT7           //E置高
  36. #define CS_CLR         P5OUT &= ~BIT0            //CS置低
  37. #define CS_SET         P5OUT |=  BIT0            //CS置高
  38. #define RST_CLR         P5OUT &= ~BIT3            //RST置低
  39. #define RST_SET         P5OUT |=  BIT3            //RST置高
  40. #define LE_CLR         P5OUT &= ~BIT1            //LE置低
  41. #define LE_SET         P5OUT |=  BIT1            //LE置高
  42. //2.8寸TFT彩屏觸摸屏控制相關(guān)硬件配置
  43. #define PEN_CLR         P2OUT &= ~BIT0           //PEN置低,觸碰觸摸屏時,Penirq引腳由未觸摸時的高電平變?yōu)榈碗娖?br />
  44. #define PEN_SET         P2OUT |=  BIT0           //PEN置高
  45. #define PEN             (P2IN & 0x01)            //P2.0輸入的值
  46. #define TPDO_CLR P2OUT &= ~BIT1           //TPDO置低
  47. #define TPDO_SET P2OUT |=  BIT1           //TPDO置高
  48. #define TPDOUT          ((P2IN>>1)&0x01)         //P2.1輸入的值
  49. #define BUSY_CLR P2OUT &= ~BIT3           //BUSY置低
  50. #define BUSY_SET P2OUT |=  BIT3           //BUSY置高
  51. #define TPDI_CLR P2OUT &= ~BIT4            //TPDI置低
  52. #define TPDI_SET P2OUT |=  BIT4            //TPDI置高
  53. #define TPCS_CLR P2OUT &= ~BIT5            //TPCS置低
  54. #define TPCS_SET P2OUT |=  BIT5            //TPCS置高
  55. #define TPCLK_CLR P2OUT &= ~BIT6            //TPCLK置低
  56. #define TPCLK_SET P2OUT |=  BIT6            //TPCLK置高
  57. //彩屏/12864液晶/1602液晶的數(shù)據(jù)口,三液晶共用
  58. #define DataDIR         P4DIR                     //數(shù)據(jù)口方向
  59. #define DataPort        P4OUT                     //P4口為數(shù)據(jù)口
  60. //12864/1602液晶控制管腳
  61. #define RS_CLR         P5OUT &= ~BIT5           //RS置低
  62. #define RS_SET         P5OUT |=  BIT5           //RS置高
  63. #define RW_CLR         P5OUT &= ~BIT6           //RW置低
  64. #define RW_SET         P5OUT |=  BIT6           //RW置高
  65. #define EN_CLR         P5OUT &= ~BIT7           //E置低
  66. #define EN_SET         P5OUT |=  BIT7           //E置高
  67. #define PSB_CLR         P5OUT &= ~BIT0            //PSB置低,串口方式
  68. #define PSB_SET         P5OUT |=  BIT0            //PSB置高,并口方式
  69. #define RST_CLR         P5OUT &= ~BIT1            //RST置低
  70. #define RST_SET         P5OUT |= BIT1             //RST置高
  71. //12864應(yīng)用指令集
  72. #define CLEAR_SCREEN 0x01            //清屏指令:清屏且AC值為00H
  73. #define AC_INIT  0x02            //將AC設(shè)置為00H。且游標移到原點位置
  74. #define CURSE_ADD 0x06            //設(shè)定游標移到方向及圖像整體移動方向(默認游標右移,圖像整體不動)
  75. #define FUN_MODE 0x30            //工作模式:8位基本指令集
  76. #define DISPLAY_ON 0x0c            //顯示開,顯示游標,且游標位置反白
  77. #define DISPLAY_OFF 0x08            //顯示關(guān)
  78. #define CURSE_DIR 0x14            //游標向右移動:AC=AC+1
  79. #define SET_CG_AC 0x40            //設(shè)置AC,范圍為:00H~3FH
  80. #define SET_DD_AC 0x80                      //設(shè)置DDRAM AC
  81. #define FUN_MODEK 0x36            //工作模式:8位擴展指令集
  82. //顏色代碼,TFT顯示用
  83. #define White          0xFFFF                        //顯示顏色代碼
  84. #define Black          0x0000
  85. #define Blue           0x001F
  86. #define Blue2          0x051F
  87. #define Red            0xF800
  88. #define Magenta        0xF81F
  89. #define Green          0x07E0
  90. #define Cyan           0x7FFF
  91. #define Yellow         0xFFE0
  92. //NRF2401模塊控制線
  93. #define  RF24L01_CE_0        P1OUT &=~BIT5         //CE在P15        
  94. #define  RF24L01_CE_1        P1OUT |= BIT5      
  95. #define  RF24L01_CSN_0       P2OUT &=~BIT7         //CS在P27
  96. #define  RF24L01_CSN_1       P2OUT |= BIT7   
  97. #define  RF24L01_SCK_0       P3OUT &=~BIT3         //SCK在P33
  98. #define  RF24L01_SCK_1       P3OUT |= BIT3  
  99. #define  RF24L01_MISO_0      P3OUT &=~BIT2         //MISO在P32
  100. #define  RF24L01_MISO_1      P3OUT |= BIT2
  101. #define  RF24L01_MOSI_0      P3OUT &=~BIT1         //MOSI在P31
  102. #define  RF24L01_MOSI_1      P3OUT |= BIT1
  103. #define  RF24L01_IRQ_0       P1OUT &=~BIT4         //IRQ在P14   
  104. #define  RF24L01_IRQ_1       P1OUT |= BIT4
  105. //DS18B20控制腳,單腳控制
  106. #define DQ_IN         P1DIR &= ~BIT7    //設(shè)置輸入,DS18B20接單片機P53口
  107. #define DQ_OUT         P1DIR |= BIT7    //設(shè)置輸出
  108. #define DQ_CLR         P1OUT &= ~BIT7           //置低電平
  109. #define DQ_SET         P1OUT |= BIT7           //置高電平
  110. #define DQ_R         P1IN & BIT7    //讀電平
  111. //紅外接收頭H1838控制腳,單腳控制
  112. #define RED_IN         P1DIR &= ~BIT6           //設(shè)置輸入,紅外接收頭接單片機PE3口
  113. #define RED_OUT         P1DIR |=  BIT6           //設(shè)置輸出
  114. #define RED_L         P1OUT &= ~BIT6           //置低電平
  115. #define RED_H         P1OUT |= BIT6             //置高電平
  116. #define RED_R         (P1IN & BIT6)           //讀電平
  117. //***********************************************************************
  118. //                   系統(tǒng)時鐘初始化,外部8M晶振
  119. //***********************************************************************
  120. void Clock_Init()
  121. {
  122.   uchar i;
  123.   BCSCTL1&=~XT2OFF;                 //打開XT2振蕩器
  124.   BCSCTL2|=SELM1+SELS;              //MCLK為8MHZ,SMCLK為8MHZ
  125.   do{
  126.     IFG1&=~OFIFG;                   //清楚振蕩器錯誤標志
  127.     for(i=0;i<100;i++)
  128.        _NOP();
  129.   }
  130.   while((IFG1&OFIFG)!=0);           //如果標志位1,則繼續(xù)循環(huán)等待
  131.   IFG1&=~OFIFG;
  132. }
  133. //***********************************************************************
  134. //                   系統(tǒng)時鐘初始化,內(nèi)部RC晶振
  135. //***********************************************************************
  136. void Clock_Init_Inc()
  137. {
  138.   uchar i;

  139. // DCOCTL = DCO0 + DCO1 + DCO2;              // Max DCO
  140. // BCSCTL1 = RSEL0 + RSEL1 + RSEL2;          // XT2on, max RSEL

  141.   DCOCTL = 0x60 + 0x00;                       //DCO約3MHZ,3030KHZ
  142.   BCSCTL1 = DIVA_0 + 0x07;
  143.   BCSCTL2 = SELM_2 + DIVM_0 + SELS + DIVS_0;
  144. }
  145. //***********************************************************************
  146. //                   系統(tǒng)時鐘初始化,外部32.768K晶振
  147. //***********************************************************************
  148. void Clock_Init_Ex32768()
  149. {
  150.   uchar i;
  151.   BCSCTL2|=SELM1 + SELM0 + SELS;    //MCLK為32.768KHZ,SMCLK為8MHZ
  152.   do{
  153.     IFG1&=~OFIFG;                   //清楚振蕩器錯誤標志
  154.     for(i=0;i<100;i++)
  155.        _NOP();
  156.   }
  157.   while((IFG1&OFIFG)!=0);           //如果標志位1,則繼續(xù)循環(huán)等待
  158.   IFG1&=~OFIFG;
  159. }
  160. //***********************************************************************
  161. //               MSP430內(nèi)部看門狗初始化
  162. //***********************************************************************
  163. void WDT_Init()
  164. {
  165.    WDTCTL = WDTPW + WDTHOLD;       //關(guān)閉看門狗
  166. }
復(fù)制代碼



回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 91超碰在线| 三级成人在线 | 成人一区二区三区 | 国产美女一区二区 | 久久久久久一区 | 伊久在线 | 国产免费色 | 国产精品精品视频一区二区三区 | www.99热.com| 91精品国产欧美一区二区成人 | 欧美久久精品 | 日韩一区二区在线视频 | 欧美日韩在线成人 | 久久99久久| 久久精品小视频 | 国产精品中文字幕在线播放 | 亚洲一区网站 | 中文字幕一区二区三区不卡 | 久久精品久久久 | 亚洲三级在线观看 | 日韩欧美三区 | 视频一区二区在线观看 | 国产精品免费观看 | 国产真实精品久久二三区 | 日日碰碰| 99久久精品国产毛片 | 欧美亚洲另类丝袜综合网动图 | 国产亚洲日本精品 | 亚洲一区二区视频在线观看 | 久久久久久久久久爱 | 久久久亚洲一区 | 日本久久黄色 | 久久国产精品久久国产精品 | 成年无码av片在线 | 久久在线视频 | 国产精品久久久久久亚洲调教 | 国产一区| 伊人网站视频 | 少妇一级淫片免费放播放 | 精品国产一区二区三区观看不卡 | 亚洲综合一区二区三区 |