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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 8771|回復(fù): 3
打印 上一主題 下一主題
收起左側(cè)

STM32單片機(jī)紅外遙控MP3實(shí)驗(yàn)報(bào)告

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
實(shí)驗(yàn)12 紅外遙控MP3
  • 實(shí)驗(yàn)?zāi)康募皟?nèi)容
    1、實(shí)現(xiàn)開(kāi)始播放、上一曲、下一曲、音量加、音量減、暫停、快進(jìn)、快退等功能;
  • 通過(guò)遙控紅外控制;
  • 正確運(yùn)用sd卡的功能;
  • 了解串口通道與硬件引腳的對(duì)應(yīng)關(guān)系;
  • 正確配置串口;
    二、實(shí)驗(yàn)原理圖


三、實(shí)驗(yàn)步驟(補(bǔ)充完整)

1、利用原有工程Remote,添加各種文件,其中在HARDWARE中添加一個(gè)新的usart2文件夾新寫(xiě)入一個(gè)usart2.c

2、在usart2.c中寫(xiě)入一個(gè)串口2 的中斷服務(wù)程序

  • usart.c中的串口都寫(xiě)成usart2,引腳寫(xiě)成對(duì)應(yīng)的pa2,pa3

4、主函數(shù)中在對(duì)應(yīng)按鍵下用senddata發(fā)送指令,控制播放,暫停,下一曲,快進(jìn)等

四、實(shí)驗(yàn)代碼(要有詳細(xì)的注釋)

Usart2.c
void uart_init(u32 bound){
    //GPIO????
    GPIO_InitTypeDef GPIO_InitStructure;
              USART_InitTypeDef USART_InitStructure;
              NVIC_InitTypeDef NVIC_InitStructure;

              RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);              //使能USART2,GPIOA
              RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2,ENABLE);
              USART_DeInit(USART2);  //復(fù)位串口2
              //USART2_TX   PA.2
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; //PA.2
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
    GPIO_Init(GPIOA, &GPIO_InitStructure);

    //USART2_RX                PA.3
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
    GPIO_Init(GPIOA, &GPIO_InitStructure);
              USART_InitStructure.USART_BaudRate = bound;//一般設(shè)置為9600;
              USART_InitStructure.USART_WordLength = USART_WordLength_8b;//字長(zhǎng)為8位數(shù)據(jù)格式
              USART_InitStructure.USART_StopBits = USART_StopBits_1;//一個(gè)停止位
              USART_InitStructure.USART_Parity = USART_Parity_No;//無(wú)奇偶校驗(yàn)位
              USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//無(wú)硬件數(shù)據(jù)流控制

              USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;              //收發(fā)模式
    USART_Init(USART2, &USART_InitStructure); //初始化串口
    //USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);
    USART_Cmd(USART2, ENABLE);                    //使能串口

}
Main.c
int main(void)
{
              u8 key;
              u8 *str=0;              
              delay_init();
              uart_init(9600);                            //串口初始化9600   
              Remote_Init();
              while(1)
              {
                            key=Remote_Scan();            
                            if(key)
                            {                                          
                                          switch(key)
                                          {
                                                        case 0:str="ERROR";break;                                            
                                                        case 162:str="POWER";break;                 
                                                        case 98:str="UP";             //上一曲
                                                        USART_SendData(USART2,0x7E);
                                                        USART_SendData(USART2,0x02);
                                                        USART_SendData(USART2,0x04);
                                                        USART_SendData(USART2,0xEF);
                                                        delay_ms(1000);break;                 
                                                        case 2:str="PLAY";           //播放
                                                        USART_SendData(USART2,0x7E);
                                                        USART_SendData(USART2,0x02);
                                                        USART_SendData(USART2,0x01);
                                                        USART_SendData(USART2,0xEF);break;                           
                                                        case 226:str="ALIENTEK";break;                             
                                                        case 194:str="RIGHT";         //快進(jìn)
                                                        USART_SendData(USART2,0x7E);
                                                        USART_SendData(USART2,0x02);
                                                        USART_SendData(USART2,0x0A);
                                                        USART_SendData(USART2,0xEF);break;               
                                                        case 34:str="LEFT";           //快退
                                                        USART_SendData(USART2,0x7E);
                                                        USART_SendData(USART2,0x02);
                                                        USART_SendData(USART2,0x0B);
                                                        USART_SendData(USART2,0xEF);break;                             
                                                        case 224:str="VOL-";          //音量-
                                                        USART_SendData(USART2,0x7E);
                                                        USART_SendData(USART2,0x02);
                                                        USART_SendData(USART2,0x06);
                                                        USART_SendData(USART2,0xEF);
                                                        delay_ms(1000);break;                             
                                                        case 168:str="DOWN";         //
                                                        USART_SendData(USART2,0x7E);
                                                        USART_SendData(USART2,0x02);
                                                        USART_SendData(USART2,0x03);
                                                        USART_SendData(USART2,0xEF);
                                                        delay_ms(1000);break;                              
                                                        case 144:str="VOL+";
                                                        USART_SendData(USART2,0x7E);
                                                        USART_SendData(USART2,0x02);
                                                        USART_SendData(USART2,0x05);
                                                        USART_SendData(USART2,0xEF);
                                                        delay_ms(1000);break;                              
                                                        case 104:str="1";
                                                        USART_SendData(USART2,0x7E);
                                                        USART_SendData(USART2,0x02);
                                                        USART_SendData(USART2,0x02);
                                                        USART_SendData(USART2,0xEF);break;                             
                                                        case 152:str="2";
                                                        USART_SendData(USART2,0x7E);
                                                        USART_SendData(USART2,0x02);
                                                        USART_SendData(USART2,0x09);
                                                        USART_SendData(USART2,0xEF);break;               
                                                        case 176:str="3";
                                                        USART_SendData(USART2,0x7E);
                                                        USART_SendData(USART2,0x02);
                                                        USART_SendData(USART2,0x06);
                                                        USART_SendData(USART2,0xEF);
                                                        delay_ms(1000);break;                 
                                                        case 48:str="4";break;                              
                                                        case 24:str="5";break;                              
                                                        case 122:str="6";break;                             
                                                        case 16:str="7";break;                                                                                                                  
                                                        case 56:str="8";break;            
                                                        case 90:str="9";break;
                                                        case 66:str="0";break;
                                                        case 82:str="DELETE";break;                           
                                          }
                            }else delay_ms(10);               
              }
}
五、心得體會(huì)(不少于100字)

      通過(guò)實(shí)驗(yàn),實(shí)現(xiàn)了遙控控制MP3實(shí)現(xiàn)開(kāi)始播放、上一曲、下一曲、音量加、音量減、暫停、快進(jìn)、快退等功能;通過(guò)遙控紅外控制;正確運(yùn)用了sd卡的功能;了解串口通道與硬件引腳的對(duì)應(yīng)關(guān)系;正確配置串口,通過(guò)新建一個(gè)中斷子函數(shù)實(shí)現(xiàn)串口USART2的發(fā)送接收命令功能,通過(guò)PA2和PA3來(lái)連通sd卡和單片機(jī),學(xué)到了很多關(guān)于單片機(jī)控制的知識(shí)很有幫助。

完整的實(shí)驗(yàn)報(bào)告下載地址word格式的(可編輯):
http://m.zg4o1577.cn/bbs/dpj-86578-1.html



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

地板
ID:222183 發(fā)表于 2017-8-11 16:23 | 只看該作者
厲害厲害,正好需要
回復(fù)

使用道具 舉報(bào)

板凳
ID:206955 發(fā)表于 2017-6-2 08:49 | 只看該作者
好資料,51黑有你更精彩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:1 發(fā)表于 2017-6-2 01:02 | 只看該作者
好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产精品久久网 | 成人在线视频网 | 丁香五月网久久综合 | 日批免费看 | 日韩免费激情视频 | 久久一二区| 中文字幕成人在线 | 午夜精品一区二区三区在线视频 | 国产精品1区 | 国产精品毛片久久久久久久 | 成人午夜黄色 | 午夜久久久久 | 欧美国产日韩成人 | 国产精品久久精品 | 亚洲午夜视频在线观看 | 日韩一区在线播放 | 中文字幕av亚洲精品一部二部 | 久久精品一区二 | 男女视频在线观看网站 | 国产一区二区精 | 一区二区三区在线播放 | 日本特黄a级高清免费大片 特黄色一级毛片 | 国产欧美综合在线 | 玖玖精品视频 | 欧美激情视频一区二区三区在线播放 | 亚洲另类春色偷拍在线观看 | 欧美一区日韩一区 | 中文天堂在线观看 | 欧美一级久久久猛烈a大片 日韩av免费在线观看 | 国产成人精品一区二 | 亚洲国产成人av好男人在线观看 | www.国产日本| 蜜臀网站| 欧美电影免费网站 | 国产精品99999 | 粉嫩一区二区三区四区公司1 | 精品国偷自产在线 | 国产精品欧美一区二区三区不卡 | www.欧美 | 免费久久久 | 日本一区二区三区免费观看 |