久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
TM1620芯片驅動6位8段顯示的單片機源程序
[打印本頁]
作者:
zkele
時間:
2018-4-8 19:07
標題:
TM1620芯片驅動6位8段顯示的單片機源程序
折騰一天終于將TM1620芯片驅動6位8段顯示搞出來了,共享一下,源碼傳上。
TM1620.JPG
(82.65 KB, 下載次數: 110)
下載附件
2018-4-8 19:07 上傳
單片機源程序如下:
/*
文件名: TM1620
單片機型號: stc90c52
開發環境: Keil uVision2
晶震頻率: 12M
功能:驅動共陰LED數碼屏做計時顯示,可由按鍵控制時鐘暫停,開始,停止以及顯示0-9數字
驅動6位8段數碼顯示完美,OK
*/
#include<reg52.h>
#include<intrins.h>
#define nop _nop_();
#define uchar unsigned char
#define uint unsigned int
sbit stb =P0^0; //定義片選通訊口
sbit clk =P0^1; //定義時鐘通訊口
sbit dio =P0^2; //定義數據輸入/輸出通訊口
uchar cir_LED[6]={ 0x80,0x40,0x02,0x01,0x04,0x10};//數碼屏圓圈做動態顯示,我的PCB接線方式不同所以需修改
uchar show[12] = { 0x76,0x00,0xb5,0x0,0x15,0x0,0x15,0x0,0xd7,0x0,0x0,0x0};//初始化顯示“HELLO”字符代碼
uchar TIME_seconds,seconds_2,sub_1,sub_2,shi_1,shi_2; //時間寄存器,依次從秒個位至小時十位
uchar TIME_count; //定時中斷控制
uchar count6=0;
/*********************************
功能: TM1620寫數據
**********************************/
void write(uchar wr_data)
{
uchar i;
stb =0; //給有效的片選信號(片選信號是低電平有效)
nop;
nop;
for(i=0;i<8;i++)//開始傳送8位數據,每循環一次傳送一位數據
{
clk =0;
nop;
nop;
wr_data >>= 1;//移位數據,低位在前!
nop;
dio = CY;
nop;
nop;
clk =1;
nop;
}
}
/*********************************
TM1620控制指令
功能: 驅動LED屏做相應的顯示
**********************************/
void xianshi(uchar show_led[12])
{
uchar h;
stb = 1;
clk = 1;
dio = 1;
write(0x02);//顯示模式設置,設置為6個GRID,8個SEG
stb = 1;
write(0x40);//寫數據到顯示寄存器,采用地址自動加一
stb = 1;
write(0xc0);//顯示寄存器的00H單元開始
for(h=0;h<12;h++)
{
write(show_led[h]);//給顯示寄存器送數據,
}
stb=1;
write(0x8b);//顯示控制參數,點亮數碼屏幕,亮度可以通過改變低三位調節
}
/**********************************
定時中斷函數入口
功能: 每50MS中斷一次
**********************************/
void time0(void) interrupt 1 using 2
{
TH0=0x3c;
TL0=0xb0;
TIME_count++;
if(TIME_count==20)
{
TIME_count = 0;
TIME_seconds++; // 秒寄存器加1
count6 +=1;
show[2] = (show[2]^0x10);//數碼屏幕冒號驅動位
}
}
/*********************************
計時函數
功能: 處理時鐘顯示
**********************************/
void TIME_show()
{
uchar CODE[] ={0xD7,0x42,0xE5,0xE3,0x72,0xB3,0xB7,0xC2,0xF7,0xF3,0xF6,0x37,0x95,0x67,0xB5,0xB4};//my board seg code
// {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
if(count6 == 6)
{
count6 = 0;
}
show[0] = cir_LED[count6];//0x0;//關閉第一位顯示
show[2] = cir_LED[count6]; //數碼屏圓圈驅動位
show[10] = CODE[TIME_seconds];// 數碼屏上最后一個“8”
show[8] = CODE[seconds_2]; //數碼屏倒數第二個“8”字,
show[6] = CODE[sub_1];
show[4] = CODE[sub_2];
if(TIME_seconds == 10) //對時間數據進行處理,以免溢出。
{
TIME_seconds = 0;
seconds_2+=1;
}
if(seconds_2 == 6)
{
seconds_2 = 0;
sub_1 +=1;
}
if(sub_1 == 10)
{
sub_1 = 0;
sub_2 +=1;
}
if(sub_2 == 6)
{
sub_2 = 0; //時鐘每60分自動清0
sub_2 = 0;
sub_1 = 0;
seconds_2 = 0;
TIME_seconds = 0;
}
}
/********************************
延時函數
功能: 1ms延時
**********************************/
void delay_ms(uchar cyc)
{
//當將=1的時候,延時1ms
uchar ii,jj;
for(jj=1;jj<=cyc;jj++)
{
for(ii=0;ii<200;ii++)
{
nop;
}
}
}
/*********************************
主函數
**********************************/
void main()
{
P0=0xff;
P1=0xff;
P2=0xff;
P3=0xff;//初始化單片機I/O口
TMOD=0x01; //定時器設置
TH0=0x3c;
TL0=0xb0;
IE=0x82;
TF0=1;
xianshi(show);//初始化顯示“HELLO”字符
delay_ms(230);
delay_ms(230);
delay_ms(230);
delay_ms(230);
delay_ms(230); //共延時1s
TR0 = 1;
//show[2] = 0x01;
while(1)//循環
{
stb = 1;
dio = 1;
clk = 1;
TIME_show(); //控制做計時顯示
xianshi(show);//根據計時拆分的值,給顯示寄存器送相應的顯示數據
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
test1.rar
(1.91 KB, 下載次數: 269)
2018-4-8 19:07 上傳
點擊文件名下載附件
STC90C52RC
下載積分: 黑幣 -5
作者:
wdliming
時間:
2018-10-18 08:34
謝謝分享!
作者:
cuixianjin
時間:
2018-11-8 16:04
給力,正好需要
作者:
cuixianjin
時間:
2018-11-8 16:05
謝謝,正好需要
作者:
kanwoe
時間:
2019-8-5 13:48
感謝分享,正好需要。
作者:
k80213082
時間:
2019-10-6 15:40
謝謝分享!,正在學STM8配上這個做個時鐘
作者:
後生仔,拼搏
時間:
2019-11-12 10:41
注釋很詳細,可以說明一下真值表是根據什么寫出來的嗎
作者:
後生仔,拼搏
時間:
2019-11-12 10:43
代碼注釋很詳細,可以再說明一下真值表是怎么寫出來的嗎,目前卡在真值表上了
作者:
zpywz
時間:
2020-1-29 18:31
謝謝,正好需要
作者:
sjx2012
時間:
2020-3-9 15:57
謝謝分享!
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
久久精品欧美一区二区三区不卡
|
国产中文视频
|
国产1区
|
亚洲不卡在线观看
|
亚洲精品一区二区网址
|
精品国产一区二区三区性色av
|
91在线视频免费观看
|
一区二区久久电影
|
1000部精品久久久久久久久
|
天天干天天干
|
日韩欧美国产一区二区
|
成人免费视频网站在线观看
|
欧美1区2区
|
久久久久久久久久久久久久国产
|
99精品欧美一区二区三区综合在线
|
国产精品日产欧美久久久久
|
一区二区国产在线观看
|
九九综合
|
中文字幕欧美日韩
|
日韩在线播放av
|
av福利网
|
久久久久免费精品国产
|
91丨九色丨国产在线
|
av第一页
|
久久久久久国产精品
|
在线色
|
欧美黄在线观看
|
国产精品不卡视频
|
精品视频一区二区在线观看
|
懂色av一区二区三区在线播放
|
少妇淫片aaaaa毛片叫床爽
|
日韩成人免费av
|
久久久久91
|
欧美亚洲国产日韩
|
一区视频在线
|
97人人澡人人爽91综合色
|
欧美精品一区二区三区蜜桃视频
|
秋霞性生活
|
一本色道久久综合亚洲精品高清
|
99精品免费久久久久久久久日本
|
中文字幕国产高清
|