久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 想寫一個滾動數碼管滾動11位電話號碼的程序,但想了半天沒想出來 [打印本頁]

作者: 單片機在想peach    時間: 2019-11-21 20:35
標題: 想寫一個滾動數碼管滾動11位電話號碼的程序,但想了半天沒想出來
單片機原理圖已上傳,滾動的時候就像是滾動love you一樣滾動
以前一位老哥寫的程序,但我有點小白沒看懂,主要是一些語法沒學比如static,按位轉換等?煞袂笠粋簡單的程序或者可以解釋詳細一點,謝了



TX-1C型單片機開發(fā)板原理圖.pdf

1015.98 KB, 下載次數: 13

原理圖如下


作者: wc86110    時間: 2019-11-22 06:39
改程序
作者: moluxiyan    時間: 2019-11-22 14:14
C語言不懂得地方就先學,學會了在看程序,“小白”不是接口,學習還是要靠自己
作者: man1234567    時間: 2019-11-22 20:58
把love you和程序再加上you就夠11位了。
作者: yzwzfyz    時間: 2019-11-23 11:26
本帖最后由 yzwzfyz 于 2019-11-23 23:57 編輯

方案簡單:假設你的顯示屏只有N位(N=8),滾顯示N+X-1位(X=3,N+X=1位)。
1、做2N+X-1位一個顯示緩沖區(qū)(2N+X-1=18位)。放顯示的LED碼,注意N+X位之后要重頭重復放N-1位,如:1234567890A1234567)。
2、要點:不要將需要顯示的內容直接送屏,而是送入這個緩沖區(qū)。
3、顯示屏只從這個緩沖區(qū)中取8位進行顯示。
4、滾動的方式有兩種:
4.1、做個顯示屏指針P,讓P每間隔一個時間+1,并從1到N+X (1-11)之間變化,顯示屏以P為起點在緩沖區(qū)中取數字顯示。目的:無論P=?,你取到是總是電話號碼中的連續(xù)8個值在顯示,全每次后移了一位。
4.2、每間隔一個時間你讓緩沖區(qū)中的顯示碼前移一個字節(jié),顯示屏總是取前N(8)個顯示碼顯示。
關鍵點:2N+X-1緩沖區(qū)!
做程序關鍵是方案,寫程序很容易,要明白道理。

作者: zouyadong    時間: 2022-8-24 16:36
  1. #include <STC89C5xRC.H>
  2. #include "intrins.h"
  3. #define uchar unsigned char
  4. #define uint unsigned int

  5. sbit duan=P2^6;
  6. sbit wei=P2^7;
  7. uchar code tab[18]={0x06,0x6f,0x7f,0x06,0x06,0x06,0x6d,0x66,0x5b,0x06,0x5b,0x6f,0x00,0x00,0x00,0x00,0x00,0x00};
  8. //共陰極數碼管段碼表
  9. uchar idata dis_buf[6]={17,17,17,17,17,17};
  10. //顯示緩沖區(qū)數據(十進制)
  11. void delayms(uint i) //延時1ms函數
  12. {
  13.                 uint j;
  14.         for(;i>0;i--)
  15. for(j=120;j>0;j--)
  16. {;}
  17. }


  18. void main() //主函數
  19. {
  20.         uchar k,m,n,bitcode,segcode;
  21.         while(1)
  22.                 {
  23.                         for(n=0;n<17;n++)
  24.                         {
  25.                                 dis_buf[0]=dis_buf[1]; //數據移動
  26.                                 dis_buf[1]=dis_buf[2];
  27.                                 dis_buf[2]=dis_buf[3];
  28.                                 dis_buf[3]=dis_buf[4];
  29.                                 dis_buf[4]=dis_buf[5];
  30.                                 dis_buf[5]=n;
  31.                                 for(m=0;m<100;m++) //100次掃描,大約600ms
  32.                                 {
  33.                                         bitcode=0xfe; //起始位碼
  34.                                         for(k=0;k<6;k++)
  35.                                         {
  36.                                                 P0=0xff; //消影
  37.                                                 wei=1;
  38.                                                 wei=0;
  39.                                                 segcode=dis_buf[k]; //取數據
  40.                                                 P0=tab[segcode]; //送段碼
  41.                                                 duan=1;
  42.                                                 duan=0;
  43.                                                 P0=bitcode; //送位碼
  44.                                                 wei=1;
  45.                                                 wei=0;
  46.                                                 delayms(1);
  47.                                                 bitcode=_crol_(bitcode,1); //更新位碼,準備顯示下一位
  48.                                         }
  49.         }
  50.      }
  51.   }
  52. }
復制代碼

作者: xianfajushi    時間: 2022-8-25 08:00


作者: 名字不是重點    時間: 2022-8-25 10:40
畫個流程圖就能解決問題了,為什么不動手畫一個呢?
作者: zilihangjian    時間: 2022-8-29 08:25
用指針的方式就解決了




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 午夜影院普通用户体验区 | 特黄小视频 | 成人一级视频在线观看 | 91免费在线播放 | 久久久久成人精品免费播放动漫 | 久草视频在线播放 | 国产精品国产 | 国产精品久久久久aaaa九色 | 国产成人在线一区二区 | 欧美日韩一区二区三区四区五区 | 久久婷婷麻豆国产91天堂 | 久色视频在线 | 2019天天干天天操 | 国产乱码精品一区二区三区中文 | www在线视频 | 中文字幕一区二区三区精彩视频 | 精品国产伦一区二区三区观看说明 | 中文字幕 亚洲一区 | 国产精品视频免费看 | 91麻豆精品一区二区三区 | 国内毛片毛片毛片毛片 | 日韩综合色 | 毛片入口| 国产综合欧美 | 国产精品精品 | 免费看黄色国产 | 欧美一级α片 | 久久久久无码国产精品一区 | 日韩av一二三区 | 免费视频一区二区三区在线观看 | 亚洲一区二区电影网 | 不卡视频在线 | 成人av免费在线观看 | 9191av| 蜜桃视频在线观看免费视频网站www | 国产精品永久免费 | 日日干日日色 | 九九精品久久久 | v片网站 | 亚洲va国产日韩欧美精品色婷婷 | 久久亚洲一区二区三 |