基于STM32籃球計分器數(shù)碼管顯示(Proteus仿真+程序+設(shè)計報告+原理圖PCB+講解視頻)
仿真圖proteus 8.9
程序編譯器:keil 5
編程語言:C語言
設(shè)計編號:C0102
1.主要功能
設(shè)計一個基于STM32單片機的籃球比賽計分器仿真設(shè)計,下面是設(shè)計的功能要求
1.可以在比賽期間隨時更新A和B隊的比分。
2.中場休息期間交換場地,交換A隊和B隊的位置。
3.當添加比賽分數(shù)時,如果有錯誤,可以手動更改賽場分數(shù)。
4.具備籃球24秒進攻時間倒計時,進攻時間結(jié)束時可以觸發(fā)蜂鳴器警報。
5.可以通過復(fù)位按鍵回復(fù)比分初始狀態(tài)。
6.可以通過proteus仿真演示。
主要硬件設(shè)備:STM32F103+74HC138+蜂鳴器+數(shù)碼管
2.功能演示
1.可以在比賽期間隨時更新A和B隊的比分。
2.中場休息期間交換場地,交換A隊和B隊的位置。
3.當添加比賽分數(shù)時,如果有錯誤,可以手動更改賽場分數(shù)。
4.具備籃球24秒進攻時間倒計時,進攻時間結(jié)束時可以觸發(fā)警報。
當系統(tǒng)啟動時,發(fā)光二極管數(shù)碼管按程序流程被點亮,顯示賽場比賽24秒倒計時和賽場比賽計分。沒啟動之前24秒倒計時時間顯示24。比賽分數(shù)000:000.按下啟動按鍵后,24秒倒計時數(shù)碼管開始倒計時。比賽狀態(tài)指示燈開始指示燈點亮,如果有A隊得分,可以通過A+按鍵按一下加一份。如果有錯誤需要修正可以按下A-,按一下減一份。B隊得分同理操作。如果比賽開始后有犯規(guī)或者其他需要暫停比賽的需要,可以按下啟動/暫停按鍵來暫停比賽,需要重新開始再按一下。24秒進攻倒計時結(jié)束后蜂鳴器報警提醒。
下圖是中場A隊得分6分,B隊得分3分。需要交換場地再計分輕觸交換場地按鍵即可。比分會換過來。
3.程序設(shè)計
程序是用keil5 mdk版本打開的,如果打開有問題,核實下keil的版本。程序是HAL版本編寫的,有stm32cubemx配置文件。有注釋可以結(jié)合講解視頻理解。
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
if(htim == &htim2) //定時器2中斷 10ms一次
{
if(start==1){
if(flick_cnt<100){//flick_cnt計數(shù)在0-100,100就一秒
flick_cnt++;
}else{
flick_cnt=0;
if(miao>0){//秒計時 一秒減一次
miao--;
if(miao==0){
start=0;//停止
beep_time=30;
BEEP=BEEP_ON;
}else if(miao>0){
BEEP=BEEP_OFF;
}
}
}
}
if(beep_time>0)//蜂鳴器響
{
if(beep_time)beep_time--;
if(beep_time==0){
BEEP=BEEP_OFF;
}
}
}
}
/*中斷回調(diào)函數(shù)*/
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
if(GPIO_Pin == GPIO_PIN_0) /*檢測到EXTI0線產(chǎn)生外部中斷事件*/
{
HAL_Delay(10);
if(HAL_GPIO_ReadPin(KEY1_GPIO_Port,KEY1_Pin)==0){//消抖
if(start==0) /*檢測到EXTI0線產(chǎn)生外部中斷事件*/
{
start=1;//開始倒計時
miao=24;//倒計時時間24秒
}
else
{
if(start==1)
start=2;
else
start=1;
}
}
}
else if(GPIO_Pin == GPIO_PIN_1) /*檢測到EXTI1線產(chǎn)生外部中斷事件*/
{
HAL_Delay(10);
if(HAL_GPIO_ReadPin(KEY2_GPIO_Port,KEY2_Pin)==0){//消抖
flag=!flag; //交換場地
}
}
else if(GPIO_Pin == GPIO_PIN_6) /*檢測到EXTI6線產(chǎn)生外部中斷事件*/
{
HAL_Delay(10);
if(HAL_GPIO_ReadPin(KEY3_GPIO_Port,KEY3_Pin)==0){//消抖
start=1;
miao=24;
}
}
else if(GPIO_Pin == GPIO_PIN_7) /*檢測到EXTI7線產(chǎn)生外部中斷事件*/
{
HAL_Delay(10);
if(HAL_GPIO_ReadPin(KEY4_GPIO_Port,KEY4_Pin)==0){//消抖
// if(start==0){
fena=0;
miao=24;
fenb=0;
// }
}
}
else if(GPIO_Pin == GPIO_PIN_8) /*檢測到EXTI8線產(chǎn)生外部中斷事件*/
{
HAL_Delay(10);
if(HAL_GPIO_ReadPin(KEY5_GPIO_Port,KEY5_Pin)==0){//消抖
if(fena<999)
fena++;
}
}
else if(GPIO_Pin == GPIO_PIN_9) /*檢測到EXTI9線產(chǎn)生外部中斷事件*/
{
HAL_Delay(10);
if(HAL_GPIO_ReadPin(KEY6_GPIO_Port,KEY6_Pin)==0){//消抖
if(fena>0)
fena--;
}
}
else if(GPIO_Pin == GPIO_PIN_10) /*檢測到EXTI10線產(chǎn)生外部中斷事件*/
{
HAL_Delay(10);
if(HAL_GPIO_ReadPin(KEY7_GPIO_Port,KEY7_Pin)==0){//消抖
if(fenb<999)
fenb++;
}
}
else if(GPIO_Pin == GPIO_PIN_11) /*檢測到EXTI11線產(chǎn)生外部中斷事件*/
{
HAL_Delay(10);
if(HAL_GPIO_ReadPin(KEY8_GPIO_Port,KEY8_Pin)==0){//消抖
if(fenb>0)
fenb--;
}
}
}
/* USER CODE END 4 */
程序流程圖
4.原理圖PCB
5.元器件清單
No. | 數(shù)量 | Comment | Designator |
---|---|---|---|
1 | 1 | 有源蜂鳴器5V | BUZ1 |
2 | 1 | 二極管1N4007 | D1 |
3 | 8 | 按鍵K4-6×6_TH | KEY1,KEY2,KEY3,KEY4,KEY5,KEY6,KEY7,KEY8 |
4 | 2 | LED燈LED-TH-3mm_R | LED1,LED2 |
5 | 1 | 0.36寸共陰極二位數(shù)碼管 | LED4 |
6 | 1 | 三極管SS8550 | Q1 |
7 | 2 | 電阻100歐 | R1,R3 |
8 | 2 | 電阻10k | R5,R6 |
9 | 2 | 0.56寸共陰極四位數(shù)碼管 | SEG1,SEG2 |
10 | 1 | STM32F103C8T6最小系統(tǒng)板 | U1 |
11 | 1 | 74HC245 | U2 |
12 | 1 | 74LS138 | U3 |
實物圖
6.設(shè)計報告
9068字設(shè)計報告,內(nèi)容包括硬件設(shè)計、軟件設(shè)計、結(jié)論等。
籃球是青少年非常喜歡的體育運動,它不僅能鍛煉人的意志,而且還可以陶冶情操,培養(yǎng)團隊精神和合作意識,最重要的是提高青少年的身體素質(zhì)。廣大人民群眾的物質(zhì)生活伴隨著中國綜合國力的不斷上升,也變的花樣繁多起來,與此帶來的是對精神生活的需求。他們都希望自己的身體和精神都能健康。大家都想通過體育運動來鍛煉自己。在過去的30多年里,籃球比賽已經(jīng)成為了全世界最流行的體育運動項目。尤其是進入新世紀以來,很多中國球員和華裔美國人加入了NBA,籃球在中國也越來越流行,年輕人們對籃球也越來越熱愛。針對這一現(xiàn)象,本文根據(jù)我國籃球運動的具體規(guī)定,設(shè)計了一種可以用于籃球比賽賽場的計時計分設(shè)備。這個籃球計時計設(shè)備,在實際賽場中操作簡單,而且計時計分準確。非常適合青少年的日常籃球和其他兩隊制競賽活動。
7.下載鏈接
資料下載鏈接:
通過網(wǎng)盤分享的文件:KEY_C0102
https://pan.baidu.com/s/1FnO5TuM2o0TDhcZHdFK1UA?pwd=2i1u
提取碼: 2i1u
0、常見使用問題及解決方法–必讀?。。?!
1、程序代碼
2、Proteus仿真
3、功能要求
4、開題報告
5、設(shè)計報告+PPT
6、框圖
7、原理圖
8、PCB圖
9、元器件清單
10、實物圖
11、講解視頻
Altium Designer 安裝破解
KEIL+proteus 單片機仿真設(shè)計教程
KEIL安裝破解
Proteus元器件查找
Proteus安裝
Proteus簡易使用教程
單片機學(xué)習(xí)資料
相關(guān)數(shù)據(jù)手冊
答辯技巧
設(shè)計報告常用描述
鼠標雙擊打開查找嘉盛單片機51 STM32單片機課程畢業(yè)設(shè)計.url