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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4319|回復: 1
收起左側

自制單片機LED顯示屏

[復制鏈接]
ID:59583 發表于 2014-3-31 23:32 | 顯示全部樓層 |閱讀模式

運行程序
#include <AT89X52.h>
#include "test_ziku.h"   
#define uchar unsigned char
#define uint unsigned int   
#define ulong unsigned long    //宏定義
#define hang1   P0        //上行線
#define hang2   P2        //下行線
#define lie   P1        //列線
#define CS1   P3_0       //接左屏154譯碼器使能端
#define CS2   P3_1       //接右屏154譯碼器使能端
#define sum   sizeof(hanzi)/32 //自動計算漢字字數

/*****參數設置*****/
#define ziti     16     //字體大小(寬度)
#define light  8        //顯示亮度
#define move_speed 25        //移動速度

uint k=0,j;          //移位變量,k:移位個數
uint a=0;           //用于軟件延時  
ulong s=(sum+1)*ziti;     //s為全部列數
uchar  disbuf[32][2];     //定義顯示緩沖區(32行兩列的二維數組以開辟2個16*16漢字的空間)
bit  move_st;      //移動標志

/*****可變延時*****/
void delay(void)          //用來改變掃描延時以調節亮度
{
uchar i;
for(i=0;i<light;i++);
}

/*****初始化子程序*****/
void init(void)                   //定時器初始化,設置定時器0工作方式1,定時時間1ms
{   
  TMOD=0x1;
  TH0=0xfc;
  TL0=0x18;
}

/*****計數器中斷程序*****/
void timer0(void) interrupt 1      //中斷處理
{
  TH0=0xfc;
  TL0=0x18;
  a++;           
}

/*****漢字循環顯示*****/
void run_move(void)
{
uchar  k1,k2;
if(a>=move_speed)          //move_speed控制移動速度
{   
      
  if(k>s-ziti-1)k=0;      //整屏移動列數  
  k1=k/ziti;
  k2=k%ziti;
  j=ziti*2*k1+k2;     //顯示指針
  k++;
  move_st=1;
  a=0;
}
}

/*****裝載顯示數據至緩沖區*****/
void load_hanzi(void)
{  
uchar i;
run_move();
if(move_st)
{
  for(i=0;i<31;i++)
  {
   disbuf[0]=disbuf[i+1][0];//移位處理
   disbuf[1]=disbuf[i+1][1];//移位處理
  }
  disbuf[31][0]=hanzi[j];
  disbuf[31][1]=(hanzi[ziti+j]);   
  move_st=0;         
}  
}

/*****掃描顯示數據緩沖區的內容*****/
void display(void)
{  
uchar i;
CS2=1;            //關右屏
CS1=0;            //開左屏
for (i=0;i<16;i++)
{
  lie=i;      
  hang1=disbuf[0];
  hang2=disbuf[1];
  delay();
  hang1=0;
  hang2=0;      
}
CS1=1;        //關左屏
CS2=0;                  //開右屏
for (i=0;i<16;i++)
{
  lie=i<<4;
  hang1=disbuf[i+16][0];
  hang2=disbuf[i+16][1];
  delay();
  hang1=0;
  hang2=0;
}

}
/*****主程序*****/
void main (void)
{
init();
EA=1;        //開中斷
TR0=1;         
ET0=1;      
while(1)
{
  load_hanzi();
  display();
}
}

回復

使用道具 舉報

ID:738449 發表于 2020-4-26 13:40 來自觸屏版 | 顯示全部樓層
有沒郵箱,求解proteus仿真
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 99久久久久久99国产精品免 | 欧美a区 | 在线日韩精品视频 | 亚洲成人三级 | 精品一区二区三区在线播放 | 一区二区三区四区在线 | 亚洲深夜福利 | 久久一区二区视频 | 日本福利视频免费观看 | 久热国产精品视频 | 久久av一区二区三区 | 久久成人免费 | 伊人超碰 | 91成人免费看片 | 国产ts人妖系列高潮 | 色婷婷综合网站 | 欧美在线视频二区 | 天天拍天天操 | 亚洲激情一级片 | 91精品国产综合久久精品 | 欧美一二三 | 国产美女一区二区 | 日韩在线视频网址 | 日本韩国电影免费观看 | 日韩精品一区二区三区久久 | 免费午夜视频 | 国产精品国色综合久久 | 在线观看中文字幕视频 | 91天堂| 视频一区 国产精品 | 欧美日韩不卡 | 亚洲综合中文字幕在线观看 | 亚洲成人av在线播放 | 久久av资源网 | 久久成人免费观看 | 狠狠的日| 国产乱码精品一区二区三区忘忧草 | 国产精品a久久久久 | 亚洲欧美一区二区在线观看 | 国产日韩欧美一区二区 | 国产91 在线播放 |