|
如題。
實(shí)驗(yàn)器材:
戰(zhàn)艦STM32F103開發(fā)板V3版本
實(shí)驗(yàn)?zāi)康?
學(xué)習(xí)GPIO作為輸入的使用
硬件資源:
1,DS0(連接在PB5),DS1(連接在PE5)
2,蜂鳴器(連接在PB8)
3,按鍵KEY0(PE4)/KEY1(PE3)/KEY2(PE2)/KEY_UP(PA0,也稱之為WK_UP)
實(shí)驗(yàn)現(xiàn)象:
本實(shí)驗(yàn),通過(guò)開發(fā)板上載有的4個(gè)按鈕(KEY_UP、KEY0、KEY1和KEY2),來(lái)控制板
上的2個(gè)LED(DS0和DS1)和蜂鳴器,其中WK_UP控制蜂鳴器,按一次叫,再按一次
停;KEY2控制DS0,按一次亮,再按一次滅;KEY1控制DS1,效果同KEY2;KEY0則
同時(shí)控制DS0和DS1,按一次,他們的狀態(tài)就翻轉(zhuǎn)一次。
注意事項(xiàng):
無(wú).
0.png (24.77 KB, 下載次數(shù): 115)
下載附件
2017-6-6 03:15 上傳
0.png (28.39 KB, 下載次數(shù): 102)
下載附件
2017-6-6 03:15 上傳
單片機(jī)源程序如下:
- #include "sys.h"
- #include "usart.h"
- #include "delay.h"
- #include "led.h"
- #include "key.h"
- #include "exti.h"
- #include "spi.h"
- #define SPI_DR_Addr (*((u16*)0X4000380C))
- void SPI_32(u8 *pdata,u8 *buff,u32 leng)
- {
- // u8 mrece[10];
- while(leng--)
- {
- *buff=SPI2_ReadWriteByte(*pdata);
- // SPI2_ReadWriteByte(*pdata);
- // *buff=SPI1_ReadByte();
- // mrece[10-leng]=SPI1_ReadWriteByte(*buff);
- pdata++;
- buff++;
- }
- }
- int main(void)
- {
- // u8 tbuff[]={3,4,5,6,7,8,9,0,1,2};
- // u8 rbuff[10];
- Stm32_Clock_Init(9); //系統(tǒng)時(shí)鐘設(shè)置
- //uart_init(72,115200); //串口初始化為115200
- delay_init(72); //延時(shí)初始化
- //LED_Init(); //初始化與LED連接的硬件接口
- //KEY_Init();
- SPI2_Init();
- SPI2_SetSpeed(SPI_SPEED_256);
-
- while(1)
- {
- //KEY_Scan();
- //if(KEY1==0)
- //{
- // SPI_32(tbuff,rbuff,10);
- SPI2_ReadWriteByte(0X09);
- // a=SPI1_ReadByte();
- // SPI1_ReadWriteByte(a);
-
- // SPI2_ReadWriteByte(0X02);
- //
- ……………………
- …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
Keil代碼下載:
SPI.7z
(386.03 KB, 下載次數(shù): 26)
2022-12-15 17:48 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|