亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

嵌入式C實戰項目開發技巧:對一個有規律的數組表進行位移操作的方法

2020-05-23 13:23:47
字體:
來源:轉載
供稿:網友

在嵌入式項目開發中,LED燈的操作是一定要會的,也是基礎中的基礎,比如用51單片機寫個跑馬燈,這不簡單嘛,定義一個數組把那8個跑馬燈存起來,然后搞個for循環不就可以了嘛,但是,實際工作開發中寫一個跑馬燈可不像學校和書本上那么簡單噢,往往最簡單的東西,有可能也是最復雜的?,F在我的需求是這樣的,我要求實現以下形式的流水燈:

跑馬燈在這個表格中是一位一位進行存儲的,如果要一行全亮,那么寫0xff,燈就全亮了,寫0x00,燈就全滅了。

c語言,嵌入式,數組,位移

要求從led1流水到led100這個燈,也就是實現100個燈的跑馬燈操作。那如何實現呢?有人肯定會說定義十個數組就行啦,用填表的方法。然后搞十個for循環來實現,那么可取不?可取,但是太麻煩啦,因為這是用空間來換時間,雖然能達到效果,但是就太浪費內存空間了,效率也是很低的。

那么如何快速處理這個問題呢?

答案就是位運算與循環的結合,首先思考一下,led是從第1個開始一直流到第100個,一共有十行,每行有十個,那么我們就可以定義一個for循環來循環相應的行數,設定led燈的初始位置,然后用移位算法,移動8位就換下一行,一個led相當于1bit,這樣的話,兩個for循環就可以搞定了,接下來我們用C語言來模擬這個過程。

#include <stdio.h>void delay(){ int i , j ;  for(i = 0 ; i < 1000 ; i++) for(j = 0 ; j < 8000 ;j++);}//跑馬燈從高位到低位流void test_low_to_high_bit(){ int i , j ;  int tick ; static int ledbuf[10] ; for(i = 0 ; i < 10 ; i++) { ledbuf[i] = 0x01 ; //設定每次開始的位置,從0x01開始 for(j = 0 ; j < 8 ; j++) {  printf("%p ",ledbuf[i]);  ledbuf[i] <<= 1 ; //每次左移一位,左移八次  delay() ; } putchar('/n'); ledbuf[i] = 0 ; //將數組清0,等待進入下一行 }}//跑馬燈從低位到高位流void test_high_to_low_bit(){ int i , j ;  int tick ; static int ledbuf[10] ; for(i = 0 ; i < 10 ; i++) { ledbuf[i] = 0x80 ; //設定從高位的第一個LED燈的位置 for(j = 0 ; j < 8 ; j++) {  printf("%p ",ledbuf[i]);  ledbuf[i] >>= 1 ; //將數組的第一個元素右移一位,一共右移八位  delay() ; } putchar('/n'); ledbuf[i] = 0 ;//將數組清0,等待進入下一行</span> }}int main(void){ test_low_to_high_bit() ; putchar('/n'); test_high_to_low_bit() ; return 0 ;}

運行結果:

c語言,嵌入式,數組,位移

運行結果很明顯,第一個是從第一位移位到第八位,移動了8次,移動了十行。

第二個是反著來的。

如果,現在有個需求改了,那個表中,我要指定的LED亮,其它的不亮,然后實現流水燈的效果,那要如何去寫這個程序?

這種問題的分析就要復雜很多啦,所以,一個流水燈,簡單可以簡單到不用兩分鐘你可以寫出來,復雜可以復雜到可能你想一天都想不出來,所以,無論遇到什么問題,做一下總結,下次遇到問題的時候就可以熟能生巧。沒有寫不出的能實現程序,沒有實現不了的軟件需求。只有頭腦簡單的程序員。加油吧,各位!

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VEVB武林網的支持。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲欧美日韩国产精品| 久久影院资源站| 成人免费网视频| 九色精品免费永久在线| 欧美又大粗又爽又黄大片视频| 成人激情电影一区二区| 亚洲欧美日韩爽爽影院| 亚洲经典中文字幕| 久久免费视频网站| 欧美性理论片在线观看片免费| 91国产美女在线观看| 国产精品久久久久7777婷婷| 色偷偷亚洲男人天堂| 久久人人看视频| 日韩av黄色在线观看| 国产久一一精品| 91亚洲精品视频| 国产日韩在线看片| 最近2019免费中文字幕视频三| 国产精品99久久久久久人| 国产91精品久久久久| 亚洲欧美三级在线| 8090理伦午夜在线电影| 日韩av在线不卡| 91免费在线视频| 91中文字幕在线| 91色精品视频在线| 亚洲欧美国产精品久久久久久久| 国内外成人免费激情在线视频| 亚洲欧美激情四射在线日| 欧美一级免费视频| 亚洲丝袜av一区| 色妞在线综合亚洲欧美| 精品久久久久久久久中文字幕| 国产成人综合一区二区三区| 国产日产亚洲精品| 久久久久久噜噜噜久久久精品| 亚洲综合中文字幕在线观看| 国产精品美女在线观看| 亚洲 日韩 国产第一| 亚洲成人久久电影| 亚洲国语精品自产拍在线观看| 国产精品88a∨| 久久婷婷国产麻豆91天堂| 97精品欧美一区二区三区| 精品久久在线播放| 亚洲成av人影院在线观看| 午夜精品99久久免费| 欧美大胆a视频| 亚洲欧美福利视频| 国产日韩欧美在线视频观看| 国产成人自拍视频在线观看| 亚洲娇小xxxx欧美娇小| 国产一区二区三区在线视频| 日韩有码片在线观看| 高清欧美性猛交| 亚洲综合av影视| 在线成人一区二区| 浅井舞香一区二区| 国产精品aaa| 国产欧美精品一区二区| 欧美日韩国产中文精品字幕自在自线| 亚洲综合色激情五月| 性欧美长视频免费观看不卡| 久久精品视频导航| 国产欧美精品一区二区三区介绍| 成人在线视频网| 国产精品一区二区三区久久久| 久久在精品线影院精品国产| 久久久这里只有精品视频| 国产精品成人va在线观看| 成人做爰www免费看视频网站| 91在线精品播放| 亚洲在线免费视频| 久久久亚洲影院你懂的| wwwwwwww亚洲| 亚洲欧美日韩精品久久奇米色影视| 欧美激情视频给我| 久青草国产97香蕉在线视频| 欧美大尺度电影在线观看| 97在线视频精品| 欧美亚洲一区在线| 日韩激情片免费| 亚洲日本中文字幕免费在线不卡| 欧美成人手机在线| 狠狠色狠狠色综合日日小说| 中文字幕一区电影| 97精品视频在线观看| 秋霞午夜一区二区| 精品国产一区二区三区久久久| 91精品久久久久久久久| 亚洲精品国产精品自产a区红杏吧| 日本成人在线视频网址| 亚洲一区二区三| 啪一啪鲁一鲁2019在线视频| 精品国产乱码久久久久酒店| 丝袜亚洲欧美日韩综合| 久久免费在线观看| 亚洲精品一区二三区不卡| 欧美一区二区三区免费观看| 欧美日韩免费在线观看| 国产丝袜精品视频| 日韩av在线影院| 亚洲成av人片在线观看香蕉| 亚洲视频999| 日本成人黄色片| 亚洲人午夜色婷婷| 4444欧美成人kkkk| 亚洲丁香婷深爱综合| 亚洲精品福利视频| 久久不射热爱视频精品| 国产在线999| 久久久亚洲福利精品午夜| 日韩福利伦理影院免费| 欧美裸体男粗大视频在线观看| 国产精品欧美一区二区三区奶水| 欧美夜福利tv在线| 亚洲黄在线观看| 亚洲第一视频在线观看| 57pao国产成人免费| 国产精品羞羞答答| 一区二区国产精品视频| 国产视频精品一区二区三区| 精品毛片网大全| 亚洲日本中文字幕免费在线不卡| 成人久久一区二区三区| 日韩不卡中文字幕| 欧美裸体xxxx极品少妇软件| 91福利视频网| 亚洲午夜久久久影院| 亚洲精品国产综合区久久久久久久| 国内精品美女av在线播放| 亚洲精选在线观看| 91精品国产高清| 2019av中文字幕| 在线视频国产日韩| 中文字幕精品在线视频| 日韩高清欧美高清| 久久久久日韩精品久久久男男| 国产精品第七十二页| 亚洲一区二区国产| 尤物yw午夜国产精品视频明星| 亚洲欧美国产一区二区三区| 久久久最新网址| 九九久久久久久久久激情| 日韩成人av网| 国产精品伦子伦免费视频| 亚洲黄色在线观看| 国产精品视频自在线| 久久久久久久久亚洲| 4438全国成人免费| 中文字幕欧美日韩在线| 全球成人中文在线| 国产欧洲精品视频| 午夜免费在线观看精品视频| 中文字幕视频一区二区在线有码| 亚洲国产高清高潮精品美女| 色偷偷偷亚洲综合网另类| 国产免费一区二区三区在线观看| 国产日韩一区在线| 亚洲欧美日本精品| 国产成人精品视频| 亚洲国产精久久久久久| 韩国v欧美v日本v亚洲|