日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 單片機 > 單片機
[導讀]FC手柄,大致可分為兩種:一種手柄插口是11針的,一種是9針的,可以直接和DR9的串口頭對插。FC手柄有10個按鍵(實際上只有8個):上、下、左、右、Start、Select、A、B、A連發(fā)、B連發(fā)。A和A連發(fā)是一個鍵值,而B和B連

FC手柄,大致可分為兩種:一種手柄插口是11針的,一種是9針的,可以直接和DR9的串口頭對插。

FC手柄有10個按鍵(實際上只有8個):
上、下、左、右、Start、Select、A、B、A連發(fā)、B連發(fā)。
A和A連發(fā)是一個鍵值,而B和B連發(fā)也是一個鍵值,只是連發(fā)按鍵當你一直按下的時候,會不停的發(fā)送(方便快速按鍵,比如發(fā)炮彈之類的功能)。

FC手柄的控制電路,由1個8位并入串出的移位寄存器(CD4021),外加一個時基集成電路(NE555,用于連發(fā))構(gòu)成。讀取手柄按鍵值的信息十分簡單:先Latch(鎖存鍵值),然后就得到了第一個按鍵值(A,下降沿采集),之后在7個Clock的作用下,依次讀取其他按鍵的鍵值,總共8個按鍵鍵值。

讀寫時序圖:

電路連接圖:

CODE:

#include"joypad.h"http://初始化手柄接口.voidJOYPAD_Init(void){GPIO_InitTypeDefGPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOD,ENABLE);//使能PB,PD端口時鐘GPIO_InitStructure.GPIO_Pin=GPIO_Pin_11;//GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;//推挽輸出GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOB,&GPIO_InitStructure);//初始化GPIOGPIO_SetBits(GPIOB,GPIO_Pin_11);//上拉GPIO_InitStructure.GPIO_Pin=GPIO_Pin_3;//GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;//推挽輸出GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOD,&GPIO_InitStructure);//初始化GPIOGPIO_SetBits(GPIOD,GPIO_Pin_3);//上拉GPIO_InitStructure.GPIO_Pin=GPIO_Pin_10;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IPU;//上拉輸入GPIO_Init(GPIOB,&GPIO_InitStructure);//初始化GPIOGPIO_SetBits(GPIOB,GPIO_Pin_10);//上拉}//手柄延遲函數(shù)//t:要延遲的時間voidJOYPAD_Delay(u16t){while(t--);}//讀取手柄按鍵值.//FC手柄數(shù)據(jù)輸出格式://每給一個脈沖,輸出一位數(shù)據(jù),輸出順序://A->B->SELECT->START->UP->DOWN->LEFT->RIGHT.//總共8位,對于有C按鈕的手柄,按下C其實就等于A+B同時按下.//按下是1,松開是0.//返回值://[7]:右//[6]:左//[5]:下//[4]:上//[3]:Start//[2]:Select//[1]:B//[0]:Au8JOYPAD_Read(void){vu8temp=0;u8t;JOYPAD_LAT=1;//鎖存當前狀態(tài)JOYPAD_Delay(80);JOYPAD_LAT=0;for(t=0;t<8;t++){temp>>=1;if(JOYPAD_DAT==0)temp|=0x80;//LOAD之后,就得到第一個數(shù)據(jù)JOYPAD_CLK=1;//每給一次脈沖,收到一個數(shù)據(jù)JOYPAD_Delay(80);JOYPAD_CLK=0;JOYPAD_Delay(80);}returntemp;}


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉