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