|
第三次發帖了,這次筆者發的是在大二階段筆者在電子技術社團擔任干部期間和社團干部成員一起給大一新生準備一個項目教學計劃。該項目以STC51單片機系統為平臺,意在讓大一新生掌握項目化編程的方法,所以我們只是提供了驅動代碼,新生在初步了解后可以嘗試做出第一個作品,藍牙和壁障小車。
話不多說,附上一些代碼。
*******************************************************************************/
#include "bluetooth.h"
u8 tmp;//開辟一個變量存儲藍牙串口讀取的數據
/*******************************************************************************
* 函 數 名: baudrateinit
* 函數功能: 初始化波特率值為9600,藍牙模塊做好與手機app的連接準備
* 輸 入: 無
* 輸 出: 無
* 使用說明: 這個函數是編寫藍牙小車程序的第一步配置,須在主函數開頭就調用。
* 示 例: baudrateinit();
*******************************************************************************/
void baudrateinit()
{
ES=0; //中斷允許位置0
SCON = 0x50; // REN=1允許串行接受狀態,串口工作模式1,
TMOD = TMOD|0x20; //定時器1工作于方式2,8位自動重載模式,用于產生波特率
TH1=TL1=0xFD; //波特率9600 (本次測試采用晶振為11.0592)
PCON &= 0x7f; //波特率不倍增
TR1 = 1; //定時器1開始工作,產生波特率
TI=0; //發送標志位置0
RI=0; //接收標志位置0
ES=1; //中斷允許
}
/*******************************************************************************
* 函 數 名: readData
* 函數功能: 讀串口數據函數
* 輸 入: 無
* 輸 出: 輸出返回值tmp
*******************************************************************************/
u8 readData()
{
if(RI==1) //接收到藍牙發送信息的標志
{
tmp = SBUF; //將寄存器中的數據存儲在tmp變量中
RI = 0; //將標志清零
}
return tmp; //返回一個變量值
}
/*******************************************************************************
* 函 數 名: carState
* 函數功能: 小車的馬達控制函數
* 輸 入: speed=速度,可輸入high、middle、low三個值
motor=小車模式,可輸入car_Forward、car_Back、car_Left、
car_Right、car_Stop、car_Brake六個值
* 輸 出: P1引腳
* 示 例: 小車工作在高速前進狀態: carState(car_Forward , high)
*******************************************************************************/
void carState(u8 motor , u16 speed)
{
motor_IO = motor ; //調P1引腳輸出的占空比
delay(speed); //motor、speed、motor_IO在頭文件中宏定義了
motor_IO = car_Stop;
delay(500-speed);
}
/*******************************************************************************
* 函 數 名: delay
* 函數功能: 小車的延時函數,無須調用
* 輸 入: i
* 輸 出: 無
*******************************************************************************/
void delay(u16 i)
{
while(i--); //空語句
}
代碼已經打包,還有當時項目教學計劃的說明書和資料文檔。
|
-
-
代碼及教程步驟.rar
2017-12-30 14:17 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
3.71 MB, 下載次數: 14, 下載積分: 黑幣 -5
評分
-
查看全部評分
|