動(dòng)態(tài)顯示的是有固定格式的,賦值,開顯示,延時(shí),關(guān)顯示,假設(shè)p0口接數(shù)據(jù)顯示位,p2口低4位接片選,
成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、寧蒗網(wǎng)絡(luò)推廣、小程序開發(fā)、寧蒗網(wǎng)絡(luò)營銷、寧蒗企業(yè)策劃、寧蒗品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供寧蒗建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:www.rwnh.cn
p2=tab[1];
//賦值
p3_0=0;
//開第一位顯示
for(i=0;i200:i++);//延時(shí)
p3_0=1;
//關(guān)第一位顯示
p2=tab[2];
p3_1=0;
//開第二位顯示
for(i=0;i200:i++);
p3_1=1;
這個(gè)程序就是讓兩個(gè)數(shù)碼管分別顯示1和2,注意程序開頭包含頭文件regx52.h,如果是包含reg52.h編譯不了的
C語言實(shí)現(xiàn)LED燈閃爍控制配套51單片機(jī)開發(fā)板。
#include??? //包含單片機(jī)寄存器的頭文件
/****************************************
函數(shù)功能:延時(shí)一段時(shí)間
*****************************************/
void delay(void)??????? //兩個(gè)void意思分別為無需返回值,沒有參數(shù)傳遞。
{
unsigned int i;?????? //定義無符號整數(shù),最大取值范圍65535。
for(i=0;i20000;i++)? //做20000次空循環(huán)。
;?????????????? //什么也不做,等待一個(gè)機(jī)器周期。
}
/*******************************************************
函數(shù)功能:主函數(shù) (C語言規(guī)定必須有也只能有1個(gè)主函數(shù))。
********************************************************/
void main(void)
{
while(1)????? //無限循環(huán)。
{
P0=0xfe;?? //P1=1111 1110B, P0.0輸出低電平。
delay();?? //延時(shí)一段時(shí)間。
P0=0xff;?? //P1=1111 1111B, P0.0輸出高電平。
delay();? //延時(shí)一段時(shí)間。
}
}
單片機(jī)驅(qū)動(dòng)LED燈的源程序:
#includereg52.h //頭文件。
#define uint unsigned int
#define uchar unsigned char
sbit LED1=P1^7; //位定義。
void delay_ms(uint);//mS級帶參數(shù)延時(shí)函數(shù)。
void main()
{
while(1)
{
LED1=0;
delay_ms(1000);
LED1=1;
delay_ms(1000);
}
}
void delay_ms(uint z) //延時(shí)子程序
{
uint x,y;
for(x=z;x0;x--)
for(y=110;y0;y--);
}
擴(kuò)展資料:
單片機(jī)應(yīng)用分類:
通用型:
這是按單片機(jī)(Microcontrollers)適用范圍來區(qū)分的。例如,80C51式通用型單片機(jī),它不是為某種專門用途設(shè)計(jì)的;專用型單片機(jī)是針對一類產(chǎn)品甚至某一個(gè)產(chǎn)品設(shè)計(jì)生產(chǎn)的,例如為了滿足電子體溫計(jì)的要求,在片內(nèi)集成ADC接口等功能的溫度測量控制電路。
總線型:
這是按單片機(jī)(Microcontrollers)是否提供并行總線來區(qū)分的??偩€型單片機(jī)普遍設(shè)置有并行地址總線、 數(shù)據(jù)總線、控制總線,這些引腳用以擴(kuò)展并行外圍器件都可通過串行口與單片機(jī)連接。
另外,許多單片機(jī)已把所需要的外圍器件及外設(shè)接口集成一片內(nèi),因此在許多情況下可以不要并行擴(kuò)展總線,大大減省封裝成本和芯片體積,這類單片機(jī)稱為非總線型單片機(jī)。
控制型:
這是按照單片機(jī)(Microcontrollers)大致應(yīng)用的領(lǐng)域進(jìn)行區(qū)分的。一般而言,工控型尋址范圍大,運(yùn)算能力強(qiáng);用于家電的單片機(jī)多為專用型。
通常是小封裝、低價(jià)格,外圍器件和外設(shè)接口集成度高。 顯然,上述分類并不是惟一的和嚴(yán)格的。例如,80C51類單片機(jī)既是通用型又是總線型,還可以作工控用。
參考資料來源:百度百科-單片機(jī)
該程序的原理是動(dòng)態(tài)掃描,即每一時(shí)刻,只讓一個(gè)數(shù)碼管亮。讓數(shù)碼管從第一個(gè)到地第八個(gè)依次快速地顯示,給人的視覺效果就是八個(gè)數(shù)碼管同時(shí)顯示。
/*程序讓八個(gè)數(shù)碼管顯示數(shù)字0-7。*/
#includereg52.h
#includeintrins.h包含對_crol_()函數(shù)的聲明的頭文件。
#define uchar unsigned char宏定義用以簡寫unsigned char
#define uint unsigned int
uchar temp,i;定義無字符型全局變量temp,i。
void delay(unsigned int z)//延時(shí)程序,大概延時(shí)1ms。
{
unsigned int x ,y;
for(x=z;x0;x--)
for(y=110;y0;y--);
}
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07};//數(shù)碼管真值數(shù)組,分別為0到7.
void main()
{
while(1)//大循環(huán),讓顯示的狀態(tài)保持
{
temp=0xfe;
for(i=0;i8;i++)
{
P3=temp;讓第一個(gè)數(shù)碼管顯示
P1=table[i];調(diào)用數(shù)組
temp=_crol_(temp,1); 每執(zhí)行一條這個(gè)語句,temp的值左移一位
delay(4); 延時(shí)(4這個(gè)參數(shù)不知道管不管用,你實(shí)際操作的時(shí)候自己改一下)
}
i=0;
}
}
網(wǎng)頁標(biāo)題:led動(dòng)態(tài)顯示函數(shù)c語言 led動(dòng)態(tài)顯示的原理
網(wǎng)頁地址:http://www.rwnh.cn/article36/doshcsg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、App開發(fā)、網(wǎng)站改版、網(wǎng)站設(shè)計(jì)公司、動(dòng)態(tài)網(wǎng)站、App設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)