久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3522|回復: 9
打印 上一主題 下一主題
收起左側

用單片機程序控制12864的字體顯示,括號里數字都啥意思

[復制鏈接]
跳轉到指定樓層
樓主
ID:732410 發表于 2020-4-19 13:38 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
5黑幣
void dis_shijian() //顯示時間
{
write_shu16(0,0*8,shi,0);   //時,來自1302
write_shuzi(1,0*2,2*8,fuhao[1],0); //:
write_shu16(0,3*8,fen,0);   //分,來自1302
write_shuzi(1,0*2,5*8,fuhao[1],0); //:
write_shu16(0,6*8,miao,0);   //秒,來自1302
write_yhanzi(2,0,5*16,qita[6])


/******************顯示時間函數***************************/
void dis_shijian_set() //顯示時間
{
write_shu16(0*2,0*8,0x20,0);
write_shu16(1*2,2*8,shi,0);
write_shu16(1*2,6*8,fen,0);
write_shu16(1*2,10*8,miao,0);
write_shu16(0*2,2*8,nian,0);
write_shu16(0*2,6*8,yue,0);
write_shu16(0*2,10*8,ri,0);
write_yhanzi(1,4,5*16,xingqi[week]);   
}
/************初始化設置顯示*****************/
void init_12864_set1()
{
   //年
write_yhanzi(1,0,4*16,qita[1]);   //月
write_yhanzi(1,0,6*16,qita[2]);   //日
write_yhanzi(1,2,2*16,qita[3]);   //時
write_yhanzi(1,2,4*16,qita[4]);   //分
write_yhanzi(1,2,6*16,qita[5]);   //秒
write_yhanzi(2,4,3*16,qita[6]);   //星期
dis_shijian_set(); //顯示時間

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:732410 發表于 2020-4-19 13:51 | 只看該作者
看了一些資料,有些上邊說第一個數是行,第二個是列,然后是數組(文字)。但這里的很多第一個數都是一樣的,第二個也是一樣的。讓我覺得在同一位置,后邊的4*6什么的意思就更不明朗了
回復

使用道具 舉報

板凳
ID:729982 發表于 2020-4-19 17:22 | 只看該作者
你不把那個write函數拿出來給我們看看,鬼知道那些參數是干嘛的?
回復

使用道具 舉報

地板
ID:367369 發表于 2020-4-19 20:29 | 只看該作者
你得看write-shuzi()函數里面怎么定義這些參數的;數字有相同的部分但是不是完全相同有的同行有的同列有的同頁
回復

使用道具 舉報

5#
ID:74868 發表于 2020-4-19 20:34 | 只看該作者
zhouchun 發表于 2020-4-19 13:51
看了一些資料,有些上邊說第一個數是行,第二個是列,然后是數組(文字)。但這里的很多第一個數都是一樣的, ...

是字模數組
回復

使用道具 舉報

6#
ID:732410 發表于 2020-4-19 21:23 | 只看該作者
我未曾來過 發表于 2020-4-19 17:22
你不把那個write函數拿出來給我們看看,鬼知道那些參數是干嘛的?

uchar code shuzi[10][16]={
0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,/*"0",0*/
0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,/*"1",1*/
0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,/*"2",2*/
0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,/*"3",3*/
0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,/*"4",4*/
0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,/*"5",5*/
0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,/*"6",6*/
0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,/*"7",7*/
0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,/*"8",8*/
0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00};/*"9",9*/

/**********************************************************
*函數名: write_shu16
*功能:在12864上顯示16進制數據
*說明:
*輸入:無
*返回:無
**********************************************************/
void write_shu16(uchar x,uchar y,uchar dat,uchar fanbai)
{
write_shuzi(1,x,y,shuzi[dat/16],fanbai);
write_shuzi(1,x,y+8,shuzi[dat%16],fanbai);
}
void write_shu18b20(uchar x,uchar y,uint dat,uchar fanbai)
{
write_shuzi(1,x,y,shuzi[dat/100%10],fanbai);
write_shuzi(1,x,y+8,shuzi[dat/10%10],fanbai);
write_shuzi(1,x,y+24,shuzi[dat%10],fanbai);
}
void write_shu123(uchar x,uchar y,uchar dat,uchar fanbai)
{
write_shuzi(1,x,y,shuzi[dat/16],fanbai);
write_shuzi(1,x,y+8,shuzi[dat%16],fanbai);
}
回復

使用道具 舉報

7#
ID:732410 發表于 2020-4-19 22:36 | 只看該作者
/***********************寫漢字函數**********************/
void write_yhanzi(uchar n,uchar x,uchar y,uchar  * p)
{
uchar i,j,nm,m;
m=0xb8+x;
for(j=0;j<n;j++)
{          
  if((16*j+y)<64)
  {
   cs1=1;cs2=0;nm=0x40+y+16*j;  
  }
  else
  {
   cs1=0;cs2=1;nm=0x40+y+16*(j-4);  
  }
  write_com(m);
  write_com(nm);
  for(i=0;i<16;i++)
  {
   write_data(*p);p++;
  }
  write_com(m+1);
  write_com(nm);
  for(i=16;i<32;i++)
  {
   write_data(*p);p++;
  }
}
}

void write_yhanzi_fanbai(uchar n,uchar x,uchar y,uchar  * p,uchar fanbai)
{
uchar i,j,nm,m;
m=0xb8+x;
for(j=0;j<n;j++)
{
  if((16*j+y)<64)
  {
   cs1=1;cs2=0;nm=0x40+y+16*j;  
  }
  else
  {
   cs1=0;cs2=1;nm=0x40+y+16*(j-4);  
  }
  write_com(m);
  write_com(nm);
  for(i=0;i<16;i++)
  {
   if(fanbai==0)
   write_data(*p);
   else        
   write_data(~(*p));
   p++;
  }
  write_com(m+1);
  write_com(nm);
  for(i=16;i<32;i++)
  {
   if(fanbai==0)
   write_data(*p);
   else        
   write_data(~(*p));
   p++;
  }
}
}

/***********************寫數字函數**********************/
void write_shuzi(uchar n,uchar x,uchar y,uchar  * p,uchar fanbai)
{
uchar i,j,nm,m;
m=0xb8+x;
for(j=0;j<n;j++)
{   
  if((8*j+y)<64)
  {
   cs1=1;cs2=0;nm=0x40+y+8*j;  
  }
  else
  {
   cs1=0;cs2=1;nm=0x40+y+8*(j-8);  
  }
  write_com(m);
  write_com(nm);
  for(i=0;i<8;i++)
  {
   if(fanbai==0)
   write_data((*p));
   else
   write_data(~(*p));
   p++;
  }
  write_com(m+1);
  write_com(nm);
  for(i=8;i<16;i++)
  {
   if(fanbai==0)
   write_data((*p));
   else
   write_data(~(*p));
   p++;
  }
}
}

/**********************************************************
*函數名: write_shu16
*功能:在12864上顯示16進制數據
*說明:
*輸入:無
*返回:無
**********************************************************/
void write_shu16(uchar x,uchar y,uchar dat,uchar fanbai)
{
write_shuzi(1,x,y,shuzi[dat/16],fanbai);
write_shuzi(1,x,y+8,shuzi[dat%16],fanbai);
}
void write_shu18b20(uchar x,uchar y,uint dat,uchar fanbai)
{
write_shuzi(1,x,y,shuzi[dat/100%10],fanbai);
write_shuzi(1,x,y+8,shuzi[dat/10%10],fanbai);
write_shuzi(1,x,y+24,shuzi[dat%10],fanbai);
}
void write_shu123(uchar x,uchar y,uchar dat,uchar fanbai)
{
write_shuzi(1,x,y,shuzi[dat/16],fanbai);
write_shuzi(1,x,y+8,shuzi[dat%16],fanbai);
}
回復

使用道具 舉報

8#
ID:732410 發表于 2020-4-19 22:37 | 只看該作者
game灬boy 發表于 2020-4-19 20:29
你得看write-shuzi()函數里面怎么定義這些參數的;數字有相同的部分但是不是完全相同有的同行有的同列有 ...

嗯嗯,感謝。但是還是有點懵,等審核過了,麻煩幫忙看看這幾個函數。
回復

使用道具 舉報

9#
ID:732410 發表于 2020-4-19 22:38 | 只看該作者
game灬boy 發表于 2020-4-19 20:29
你得看write-shuzi()函數里面怎么定義這些參數的;數字有相同的部分但是不是完全相同有的同行有的同列有 ...

嗯嗯,如果有時間,可以麻煩幫忙看一下新發的評論里邊的這幾個函數嗎。
回復

使用道具 舉報

10#
ID:282850 發表于 2020-4-20 15:02 | 只看該作者
write_yhanzi(uchar n,uchar x,uchar y,uchar  * p)參數(n寫幾個, x行坐標,y列坐標, *p數據指針)
write_shuzi(uchar n,uchar x,uchar y,uchar  * p,uchar fanbai)參數(n寫幾個, x行坐標,y列坐標, *p數據指針,是否翻白顯示,一般1、0)
你所引用的程序相當不好,Function定義一般要說明參數意義、參數取值范圍,Function功能。從用了拼音來說,原作者水平真不怎么樣。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日日操网站 | 中文字幕一区二区三区四区不卡 | 成人免费视频网站 | 国产精品爱久久久久久久 | 91久久精品国产91久久性色tv | 91文字幕巨乱亚洲香蕉 | 在线色网址 | 精品亚洲一区二区三区四区五区 | 欧美一级免费黄色片 | 久久综合一区 | 欧美久久大片 | 日韩国产黄色片 | 正在播放国产精品 | 国产成人午夜精品影院游乐网 | 日韩视频91| 91欧美| 成年网站在线观看 | 国产成人精品999在线观看 | 精品欧美一区二区在线观看欧美熟 | 日韩中文一区 | 国产高清精品一区二区三区 | 成人在线一区二区三区 | 欧美日韩一区不卡 | 日本亚洲欧美 | 99久久久久国产精品免费 | 国产在线一| 99免费在线视频 | 欧美8一10sex性hd| 中文字幕成人网 | 免费成年网站 | 精品视频成人 | 99久久国产免费 | 综合中文字幕 | 免费成人在线网站 | 国产伦一区二区三区视频 | 婷婷开心激情综合五月天 | 成人毛片视频免费 | 91久久久久久久 | 国产精品久久久久久久久久久免费看 | 成人免费精品 | 日韩精品成人av |