找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3816|回復: 2
打印 上一主題 下一主題
收起左側

基于stm32f103zet6的595控制數碼管顯示的源代碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:539559 發(fā)表于 2019-7-18 23:08 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
本帖最后由 zichenjushi 于 2019-7-19 17:40 編輯

心血來潮碼的程序,,是由stm32F103戰(zhàn)艦板子和自己焊接的一個HC595驅動的四位共陰極數碼管寫的倒計時60s的程序,希望大家能喜歡!

單片機源程序如下:
  1. #include "stm32f10x.h"
  2. #include "led.h"
  3. #include "delay.h"
  4. #include "timer.h"
  5. #include "hc595.h"
  6. u16 i;
  7. u16 temp = 0;

  8. u8 ledchar[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

  9. u8 ledbuff[]={ 0x00, 0x00,0x00, 0x00 };


  10. void display()
  11. {               
  12.                
  13.                 static u8 a = 0;
  14.                
  15.                 wei1 = 1;
  16.                 wei2 = 1;
  17.                 wei3 = 1;
  18.                 wei4 = 1;
  19.                 HC595data(0x00);
  20.                 switch(a)
  21.                 {
  22.                         case 0: wei1 = 0;  HC595data(ledbuff[a]); a++; break;
  23.                         case 1: wei2 = 0;  HC595data(ledbuff[a]); a++; break;
  24.                         case 2: wei3 = 0;  HC595data(ledbuff[a]); a++; break;
  25.                         case 3: wei4 = 0;  HC595data(ledbuff[a]); a=0; break;
  26.                 }
  27.                
  28. }

  29. int main(void)
  30. {
  31.         
  32.         LED_Init();                        //初始化
  33.         delay_init();
  34.         HC595_Init();
  35.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);                //中斷分組  
  36.         TIMER_INT_Init(19,7119);                                                        //2ms
  37.         temp = 60;
  38.         while(1)
  39.         {
  40.                
  41.                 if(i >= 500)
  42.                 {
  43.                         i = 0;
  44.                         temp--;
  45.                         ledbuff[0] = ledchar[temp%10];
  46.                         ledbuff[1] = ledchar[temp/10%10];
  47.                         ledbuff[2] = ledchar[temp/100%10];
  48.                         ledbuff[3] = ledchar[temp/1000%10];
  49.                 }
  50.                 if(temp ==0)
  51.                         i = 0;
  52.         }
  53. }
復制代碼

所有資料51hei提供下載:
595定時器(數碼管)倒計時60s.7z (182.99 KB, 下載次數: 64)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:1 發(fā)表于 2019-7-19 17:25 | 只看該作者
本帖需要重新編輯補全電路原理圖,源碼,詳細說明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
回復

使用道具 舉報

板凳
ID:539559 發(fā)表于 2019-7-19 17:35 | 只看該作者
admin 發(fā)表于 2019-7-19 17:25
本帖需要重新編輯補全電路原理圖,源碼,詳細說明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)

沒有弄電路圖哎,直接用戰(zhàn)艦的板子和自己焊接的hc595驅動數碼管來倒計時60s的
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表