///2019 6 12 更新 加入 :串口助手截圖 簡易問題說明
///2019 6 11 更新 加入 : 使用的串口調試助手是 XCOM2.0
///關于直接下載代碼后發送相關指令 開發板無響應的問題簡易說明:(1)查看原理圖,看LED和BEEP的IO口是否與本源程序對應,如果不對應,請修改相關C或H文件;(2)查看波特率,停止位,奇偶校驗位等設置是否正確
///說明, 本人小白一枚,最近學習用正點原子戰艦V3學習32 ,恰好學習到串口這一段,想尋找相關以指令控制元件的代碼,可惜良莠不齊,以下源碼是偶基于網上一些前輩版本修改而來,已經完全實現用漢字指令控制LED 與BEEP,最近正在啃短信控制LED.目前源碼、原理圖已經全部上傳。若有問題 敬請指正
LED原理圖.PNG (76.79 KB, 下載次數: 84)
下載附件
LED燈原理圖
2019-6-10 19:49 上傳
BEEP原理圖.PNG (38.33 KB, 下載次數: 73)
下載附件
蜂鳴器原理圖黃色的是單片機
2019-6-10 19:48 上傳
15C21DF9B94BF4456E1425C3AA2ED473.jpg (332.04 KB, 下載次數: 80)
下載附件
發送指令“打開LED1”后 DS1點亮
2019-6-12 16:19 上傳
F78UN5DGZC33P(RYA%8OO(4.png (10.15 KB, 下載次數: 79)
下載附件
發送指令“打開LED1”時串口助手截圖
2019-6-12 16:20 上傳
//芯片:stm32F103ze 軟件:KEIL5 XCOM2.0
硬件:串口1中 RXD與PA9 TXD與PA10相連接 其余不用變動
#include "sys.h"
#include "delay.h"
#include "led.h"
#include "usart.h"
#include "string.h"
#include "beep.h"
char c[200]; //定義一個長度為200的字符串為c
int main(void)
{
u8 z;
u8 t=0;
u8 L;
u8 m=0;
u8 h=0;
delay_init();
LED_Init();
BEEP_Init();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
uart_init(115200);
while(1)
{
if(USART_RX_STA&0x8000)
{
L=USART_RX_STA&0x3FFF;
printf("\r\n執行的命令為:\r\n\r\n\r\n");
for(z=0;z<L;z++)
{
c[z]=USART_RX_BUF[z];
USART_SendData(USART1, USART_RX_BUF[z]);//可顯示向串口1發送的指令
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待發送結束
}
USART_RX_STA=0;
USART_ClearFlag(USART1, USART_FLAG_RXNE);
if(!(strcmp(c,"打開LED1")))
{
LED1=0;
memset(c,0,200);//將0填充進c指向的200字節內存,也就是清零
//執行不了的情況
}
if(!(strcmp(c,"打開LED0")))
{
LED0=0;
memset(c,0,200);
}
if(!(strcmp(c,"打開蜂鳴器")))
{
BEEP=1;
memset(c,0,200);
}
if(!(strcmp(c,"關閉LED1")))
{
LED1=1;
memset(c,0,200);
}
if(!(strcmp(c,"關閉LED0")))
{
LED0=1;
memset(c,0,200);
}
if(!(strcmp(c,"關閉蜂鳴器")))
{
BEEP=0;
memset(c,0,200);
}
if(!(strcmp(c,"打開所有LED")))
{
LED0=0;
LED1=0;
memset(c,0,200);
}
if(!(strcmp(c,"關閉所有LED")))
{
LED0=1;
LED1=1;
memset(c,0,200);
}
}
else
{
printf(" \r\n %d時%d分%d秒 \r\n",h,m,t);
delay_ms(1000);
t++;
if(t%60==0)
{
m=t/60+m;
if(m%60==0)
{
h=m/60+h;
printf(" \r\n %d時%d分%d秒 \r\n",m,t,h);
m=0;
}
else printf(" \r\n %d時%d分%d秒 \r\n",h,t,m);
t=0;
}
}
}
}
全部資料51hei下載地址:
usart.7z
(185.89 KB, 下載次數: 262)
2019-6-3 20:08 上傳
點擊文件名下載附件
所有文件在此 下載積分: 黑幣 -5
|