久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
HT66F3185單片機TM1621顯示控制程序
[打印本頁]
作者:
haha13
時間:
2023-7-29 17:24
標題:
HT66F3185單片機TM1621顯示控制程序
1,1621顯示控制數字
2,通過HT66F3185,直接驅動顯示屏。
#include "Smg.h"
//--------聲音------光標-----
uchar Sound_Flag,Cursor_Flag,Manual_falg;
/********************從高位寫入數據*************************/
void Write_Data_H(uchar Data, uchar Cnt) //Data的高cnt位寫入TM1621,高位在前
{
uchar i;
for(i=0;i<Cnt;i++)
{
WRITE=0;
if(Data&0x80) DATA=1;
else DATA=0;
WRITE=1;
Data<<=1;
}
WRITE=1;
DATA=1;
}
/********************從低位寫入數據*************************/
void Write_Data_L(uchar Data,uchar Cnt) //Data 的低cnt位寫入TM1621,低位在前
{
unsigned char i;
for(i=0;i<Cnt;i++)
{
WRITE=0;
if(Data&0x01) DATA=1;
else DATA=0;
WRITE=1;
Data>>=1;
}
WRITE=1;
DATA=1;
}
/********************寫入控制命令*************************/
void WriteCmd(uchar Cmd)
{
CS=0;
Write_Data_H(0x80,4); //寫入命令標志100
Write_Data_H(Cmd,8); //寫入命令數據
CS=1;
}
void WriteOneData(uchar Addr, uchar Data)
{
CS=0;
Write_Data_H(0xa0,3);
Write_Data_H(Addr<<2,6);
Write_Data_L(Data,4);
CS=1;
}
/*******************TM1621初始化**********************/
void Init_Tm1621()
{
//uchar i;
CS_T = 0;
WRITE_T = 0;
DATA_T = 0;
CS=1;
WRITE=1;
DATA=1;
WriteCmd(BIAS); //1/3偏壓 4公共口
WriteCmd(RC); //內部RC振蕩
WriteCmd(SYSDIS); //關系統振蕩器和LCD偏壓發生器
WriteCmd(WDTDIS); //禁止看門狗
WriteCmd(SYSEN); //打開系統振蕩器
WriteCmd(LCDON); //開LCD偏壓
Sound_Flag=1;
Manual_falg=0;
}
const uchar Smg_Buf[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0,0x40,0x38};
//----------------------------0----1----2----3----4----5----6----7----8----9---滅-
const uchar Smg_Buf_Front[]={0x0f,0x06,0x0b,0x0f,0x06,0x0d,0x0d,0x07,0x0f,0x0f,0,0x40,0x38};
const uchar Smg_Buf_After[]={0x0a,0x00,0x0c,0x04,0x06,0x06,0x0e,0x00,0x0e,0x06,0,0x40,0x38};
//-----------------------------0----1----2----3----4----5----6----7----8----9---滅-
const uchar Smg_Buf_Front1[]={0x0a,0x00,0x06,0x04,0x0c,0x0c,0x0f,0x00,0x0f,0x0c,0,0x04,0x38};
const uchar Smg_Buf_After1[]={0x0f,0x06,0x0d,0x0f,0x06,0x0b,0x0b,0x0e,0x0f,0x0f,0,0x00,0x38};
void Disp_Data(uint TEMP,uint TEMP_S,uint TEMP_T,uchar L_M_S_B,uchar MODE)
{
uchar i;
if(MODE==0)
{
for(i=0;i<32;i++)
{
WriteOneData(i,0);
}
}
else if(MODE==1)
{
for(i=0;i<32;i++)
{
WriteOneData(i,0xff);
}
}
else if(MODE == 2)
{
Show_Top(L_M_S_B);
Show_num(TEMP);
Show_num2(TEMP_S);
Show_num3(TEMP_T);
Cursor_Flag=1;
}else if(MODE == 3)
{
Show_Top(L_M_S_B);
//Sound_Flag=1;
Cursor_Flag=1;
Show_num(TEMP);
Show_num2(TEMP_S);
Show_num3(TEMP_T);
}else
{
Show_Top(L_M_S_B);
//Sound_Flag=1;
Cursor_Flag=1;
Show_num(TEMP);
Show_num2(TEMP_S);
Show_num3(TEMP_T);
}
}
void Show_num(uint TEMP)
{
uchar ge,sh,ba,tem;
if(TEMP == 10001)
{
WriteOneData(7,Smg_Buf_Front[0]);
if(Sound_Flag == 1)
{
tem=Smg_Buf_After[0];
tem |= 0x01;
WriteOneData(8,tem);
}else
{
WriteOneData(8,Smg_Buf_After[0]);
}
//WriteOneData(8,Smg_Buf_After[0]);
WriteOneData(9,Smg_Buf_Front[0]);
WriteOneData(10,Smg_Buf_After[0]);
WriteOneData(11,Smg_Buf_Front[0]);
WriteOneData(12,Smg_Buf_After[0]+0x01);
WriteOneData(13,Smg_Buf_Front[0]);
WriteOneData(14,Smg_Buf_After[0]+0x01);
}else
{
ge = TEMP%10;
sh = TEMP%100/10;
ba = TEMP%1000/100;
//ge
WriteOneData(7,Smg_Buf_Front[ge]);
if(Sound_Flag == 1)
{
tem=Smg_Buf_After[ge];
tem |= 0x01;
WriteOneData(8,tem);
}else
{
WriteOneData(8,Smg_Buf_After[ge]);
}
//sh
if(ba == 0)
{
if(sh == 0)
{
WriteOneData(9,0x00);
WriteOneData(10,0x00);
}else
{
WriteOneData(9,Smg_Buf_Front[sh]);
WriteOneData(10,Smg_Buf_After[sh]);
}
}else
{
WriteOneData(9,Smg_Buf_Front[sh]);
WriteOneData(10,Smg_Buf_After[sh]);
}
//ba
if(ba == 0)
{
WriteOneData(11,0x00);
WriteOneData(12,0x00);
}else
{
WriteOneData(11,Smg_Buf_Front[ba]);
WriteOneData(12,Smg_Buf_After[ba]);
}
//去掉千位
WriteOneData(13,0x00);
WriteOneData(14,0x01);
}
}
void Show_num2(uint TEMP)
{
uchar ge,sh,ba;
if(TEMP == 10000)
{
WriteOneData(21,Smg_Buf_Front1[11]);
WriteOneData(22,Smg_Buf_After1[11]);
WriteOneData(19,Smg_Buf_Front1[11]);
WriteOneData(20,Smg_Buf_After1[11]);
WriteOneData(17,Smg_Buf_Front1[11]);
WriteOneData(18,Smg_Buf_After1[11]);
WriteOneData(15,Smg_Buf_Front1[11]+0x01);
WriteOneData(16,Smg_Buf_After1[11]);
}else if(TEMP == 10001)
{
WriteOneData(21,Smg_Buf_Front1[0]);
WriteOneData(22,Smg_Buf_After1[0]);
WriteOneData(19,Smg_Buf_Front1[0]);
WriteOneData(20,Smg_Buf_After1[0]);
WriteOneData(17,Smg_Buf_Front1[0]+0x01);
WriteOneData(18,Smg_Buf_After1[0]);
WriteOneData(15,Smg_Buf_Front1[0]+0x01);
WriteOneData(16,Smg_Buf_After1[0]);
}else
{
ge = TEMP%10;
sh = TEMP%100/10;
ba = TEMP%1000/100;
//ge
WriteOneData(21,Smg_Buf_Front1[ge]);
WriteOneData(22,Smg_Buf_After1[ge]);
//sh
WriteOneData(19,Smg_Buf_Front1[sh]);
WriteOneData(20,Smg_Buf_After1[sh]);
//ba
WriteOneData(17,Smg_Buf_Front1[ba]);
WriteOneData(18,Smg_Buf_After1[ba]);
//去掉千位
WriteOneData(15,0x01);
WriteOneData(16,0x00);
}
}
void Show_num3(uint TEMP)
{
uchar ge,sh,ba;
if(TEMP == 10000)
{
WriteOneData(23,Smg_Buf_Front[0]);
WriteOneData(24,Smg_Buf_After[0]+0x01);
WriteOneData(25,Smg_Buf_Front[10]);
WriteOneData(26,Smg_Buf_After[10]+0x01);
WriteOneData(27,Smg_Buf_Front[10]);
WriteOneData(28,Smg_Buf_After[10]);
WriteOneData(29,Smg_Buf_Front[10]);
WriteOneData(30,Smg_Buf_After[10]+0x01);
}else if(TEMP == 10001)
{
WriteOneData(23,Smg_Buf_Front[0]);
WriteOneData(24,Smg_Buf_After[0]+0x01);
WriteOneData(25,Smg_Buf_Front[0]);
WriteOneData(26,Smg_Buf_After[0]+0x01);
WriteOneData(27,Smg_Buf_Front[0]);
WriteOneData(28,Smg_Buf_After[0]+0x01);
WriteOneData(29,Smg_Buf_Front[0]);
WriteOneData(30,Smg_Buf_After[0]+0x01);
}else
{
ge = TEMP%10;
sh = TEMP%100/10;
ba = TEMP%1000/100;
WriteOneData(23,Smg_Buf_Front1[ge]);
WriteOneData(24,Smg_Buf_After1[ge]);
WriteOneData(25,Smg_Buf_Front1[sh]);
WriteOneData(26,Smg_Buf_After1[sh]);
WriteOneData(27,Smg_Buf_Front1[ba]);
WriteOneData(28,Smg_Buf_After1[ba]);
}
}
void Show_Top(uchar L_M_S_B)
{
if(Manual_falg ==1)
{
WriteOneData(6,0x01);
}else
{
WriteOneData(6,L_M_S_B);
}
if(Cursor_Flag == 1)
{
WriteOneData(31,0x01);
}else if(Cursor_Flag == 2)
{
WriteOneData(31,0x02);
}else if(Cursor_Flag == 3)
{
WriteOneData(31,0x04);
}else
{
WriteOneData(31,0x08);
}
}
復制代碼
原理圖:無
仿真:無
Smg.c和Smg.h 2個文件下載:
smg.zip
(4.05 KB, 下載次數: 14)
2023-7-29 17:24 上傳
點擊文件名下載附件
1621顯示代碼
下載積分: 黑幣 -5
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
99精品视频在线观看
|
岛国av在线免费观看
|
精品久久久久久久久久久久久久
|
免费在线观看一级毛片
|
男女免费视频网站
|
91成人午夜性a一级毛片
|
欧美一区永久视频免费观看
|
91影院
|
国产精品18hdxxxⅹ在线
|
精品一区二区三区四区
|
一区二区三区成人
|
成人国产a
|
日韩欧美在线不卡
|
日韩a在线观看
|
国产精品一区二区三区在线
|
日韩av在线中文字幕
|
国产一区二区在线免费
|
欧美一区二区三区,视频
|
午夜视频在线
|
精品久久精品
|
欧美一区二区三区小说
|
国产视频久
|
亚洲激情专区
|
国产成人精品一区二
|
国产成人精品免费视频
|
国产欧美一区二区三区日本久久久
|
日韩电影免费观看中文字幕
|
国产乱码精品1区2区3区
|
中文字幕亚洲一区
|
中文字幕一区二区三区精彩视频
|
久久噜噜噜精品国产亚洲综合
|
国产精品美女
|
中文字幕av一区二区三区
|
91av视频在线免费观看
|
9久久精品
|
男人的天堂在线视频
|
97福利在线
|
国内自拍偷拍
|
亚洲成人免费视频
|
亚洲精品黄色
|
av黄色免费在线观看
|