最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

直流電機驅動10秒,然后LED顯示“磊”字

2023-07-09 22:04 作者:耐可油磊  | 我要投稿

#include "reg52.h"

#include "intrins.h"// 調用_nop_()函數(shù),一個nop就是一個機器周期,1us

typedef unsigned int u16; //對系統(tǒng)默認數(shù)據類型進行重定義

typedef unsigned char u8;//定義74HC595控制管腳

sbit SRCLK=P3^6; //移位寄存器時鐘輸入

sbit RCLK=P3^5; //存儲寄存器時鐘輸入

sbit SER=P3^4; //串行數(shù)據輸入

sbit DC_Motor=P1^0;

#define DC_MOTOR_RUN_TIME 10000 //宏定義

void delay_ms(u16 ms)//延時函數(shù),輸入1,延時1ms

{

u16 i,j;

for(i=ms;i>0;i--)

for(j=110;j>0;j--);

}


//LED點陣顯示漢字磊的列控制數(shù)據。第三片595控制前8列,第四片595控制后8列

u8 gled_col[32]=

{0xFE,0x3F,0x20,0x00,0x10,0x00,0xF8,0x0F,0x14,0x08,0x12,0x08,0xF1,0x0F,0x00,0x00,

0x7E,0x7F,0x08,0x04,0x04,0x02,0x7E,0x3F,0xC5,0x22,0x44,0x22,0x7C,0x3E,0x44,0x22,};//最后一個逗號可去可留


//LED點陣顯示漢字磊的行控制數(shù)據。第一片595控制前8行,第二片595控制后8行

u8 gled_row[32]=

{0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//0x01第一行高有效,0x02第二行高有效??刂魄?行時,后8行數(shù)據全低無效

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//擺放順序可以替換,但要保證每一行都被掃描到,同時其他行為0,main函數(shù)中調用函數(shù)也要修改,

//上下對應的兩個為整個16行,如0x01與0x00對應一次掃描,第一行高有效,其他行都為低無效。所以main函數(shù)中調用行前8行gled_row[i],后8行gled_row[i+16],


void delay_10us(u16 ten_us)

{

while(ten_us--);

}


void hc595_write_data(u8 dat1,u8 dat2,u8 dat3,u8 dat4)//dat1,dat2,dat3,dat4,分別是第一、二、三、四個595

{

u8 i=0;


for(i=0;i<8;i++)//循環(huán)8次即可將一個字節(jié)寫入寄存器中

{

SER=dat4>>7;//優(yōu)先傳輸一個字節(jié)中的高位

dat4<<=1;//將低位移動到高位

SRCLK=0;

// delay_10us(1);

_nop_();

SRCLK=1;

_nop_();

// delay_10us(1);//移位寄存器時鐘上升沿將端口數(shù)據送入寄存器中

}

for(i=0;i<8;i++)

{

SER=dat3>>7;

dat3<<=1;

SRCLK=0;

_nop_();

SRCLK=1;

_nop_();

}


for(i=0;i<8;i++)

{

SER=dat2>>7;

dat2<<=1;

SRCLK=0;

_nop_();

SRCLK=1;

_nop_();

}


for(i=0;i<8;i++)

{

SER=dat1>>7;

dat1<<=1;

SRCLK=0;

_nop_();

SRCLK=1;

_nop_();

}


RCLK=1;

delay_10us(1);

RCLK=0;//存儲寄存器時鐘上升沿將前面寫入到寄存器的數(shù)據輸出

}



void main()

{

u8 i=0;

DC_Motor=1;

delay_ms(DC_MOTOR_RUN_TIME);

DC_Motor=0;

while(1)

{

for(i=0;i<16;i++)//循環(huán)16次掃描16行、列

{

hc595_write_data(gled_row[i],gled_row[i+16],~gled_col[i*2],~gled_col[i*2+1]);//傳送行列選數(shù)據,取反是因為取字器列為高電平,而電路是列為低電平

delay_10us(10);//延時一段時間,等待顯示穩(wěn)定

hc595_write_data(0x00,0x00,0x00,0x00);//消影

}

}

}

直流電機驅動10秒,然后LED顯示“磊”字的評論 (共 條)

分享到微博請遵守國家法律
山东省| 鞍山市| 洛川县| 温州市| 琼中| 八宿县| 台中市| 威信县| 邳州市| 枞阳县| 临高县| 旬邑县| 淅川县| 德格县| 长兴县| 黄梅县| 合水县| 大安市| 凌云县| 阿巴嘎旗| 紫金县| 永顺县| 龙州县| 郓城县| 县级市| 高要市| 南华县| 和田县| 化隆| 衡阳市| 邵东县| 桂林市| 剑河县| 武穴市| 资兴市| 凤城市| 凤凰县| 铜陵市| 精河县| 自治县| 花莲市|