国精品无码一区二区三区,国产精品久久久久五码午夜,99视频精品全部国产盗摄,在线观看免费h视频网站,亚洲国产成人超a在线播放,成年无码按摩av片在线

新聞詳情

OLED模塊HCS2022的應(yīng)用2

日期:2025-04-21 09:33
瀏覽次數(shù):1549
摘要:
 OLED模塊HCS2022的應(yīng)用2
接上一篇文章

四:OLED模塊HCS2022控制器介紹:
      HCS2022采用US2066控制器 ,自帶西文字符集,指令碼有: 清屏,模式選擇,開關(guān)顯示,光標(biāo)顯示和移動,功能設(shè)定等等.......使用上類似普通字符液晶模塊。更多信息請來電13701081790  010-62000662 或者QQ咨詢 453189731。

五。OLED模塊HCS2022與8051單片機(jī)示例:
     
六,示例程序:
       /*******************************************      延時子程序  
*******************************************/
void delay(uint z)     //z=1 延時1ms
{
uint x,y;
for(x=z;x>0;x--)
   for(y=124;y>0;y--);
}
void delay_100us(uchar z)
{
z=z*16;
while(z--);
}


/*******************************************
      寫入指令和數(shù)據(jù)
*******************************************/
void wait(void)       // 忙等待;
{
RD1=0;        _nop_();
CD=0;        _nop_();                   
WR1=1;         _nop_();                         
DATA=0xff;    _nop_();                       
RD1=1;        _nop_();                          
while(DATA&0x80);      _nop_();                       
RD1=0;     _nop_();_nop_();
}
void wr_data(uchar b)    //寫數(shù)據(jù)  ;
{
wait();    _nop_();       
CD=1;    _nop_();             
WR1=0;    _nop_();             
DATA=b;    _nop_();
RD1=1;    _nop_();             
RD1=0; _nop_();_nop_();           
}
void wr_com(uchar com)    //寫命令;
{
wait();        _nop_();                       
CD=0;        _nop_();                       
WR1=0;        _nop_();                       
DATA=com;    _nop_();
RD1=1;        _nop_();                          RD1=0;     _nop_();_nop_();               
}
uchar rd_data(void) //讀數(shù)據(jù);
{
uchar temp;                               
wait();         _nop_();               
CD=1;        _nop_();                   
WR1=1;        _nop_();                         
DATA=0xff;    _nop_();                   
RD1=1;      _nop_();                       
temp=DATA;    _nop_();                   
RD1=0;       _nop_();_nop_();               
return temp;
}


/*******************************************
   定位地址(一個地址對應(yīng)5*8字符和)
   x--> 水平方向地址數(shù)(0~39)    ;y-->  垂直方向字符數(shù)(0~1);
*******************************************/
void  dot(uchar x,uchar y)
{
if(y) x|=0x40;
x|=0x80;
wr_com(x);
}
/*******************************************
  全屏;
*******************************************/
 void  fill(uchar z)   
 {
 uchar x,y ;
 for(y=0;y<2;y++)
    for(x=0;x<20;x++)
    {
    dot(x,y);
    wr_data(z);
    }
 }
/*******************************************
  清屏;
*******************************************/
void clear(void)
{
wr_com(0x01);delay(5);
}
/******************************************* 字符的輸入(5*8)
x--> 水平方向地址數(shù)(0~39)    ;y-->  垂直方向字符數(shù)(0~1);s-->字符代碼首地址;
*******************************************/
void en_c_r(uchar x,uchar y,uchar code  * s)  
{
  dot(x,y);
  while(*s>0&&x<20)
   {
   wr_data(*s);
   s++;
   x++;
   }
}
/*******************************************
  初始化設(shè)置;
*******************************************/
void init(void)
{
      delay(50);
// 設(shè)置電源模式;
      wr_com(0x2a);
      wr_com(0x71);
      wr_data(0x00);
      wr_com(0x28);
// 顯示開關(guān);
      wr_com(0x08);     /* 關(guān)顯示 */
// 設(shè)置Fosc和CDLK;
      wr_com(0x2a);
      wr_com(0x79);
      wr_com(0xd5);
      wr_com(0x70);     /* Fosc=7 CDLK=1 */     
      wr_com(0x78);
      wr_com(0x28);
// 設(shè)置顯示模式;
      wr_com(0x2a);
      wr_com(0x08); /* 字寬=5   1/2行顯示 */
      wr_com(0x28);
// 設(shè)置地圖模式;
      wr_com(0x2a);
      wr_com(0x06);               
/* BCD=1(C0-->C31)   BDS=0(S99-->S0) (已規(guī)定,客戶不可自行修改) */
      wr_com(0x28);
// 選擇內(nèi)部ROM和CGRAM;
      wr_com(0x2a);
      wr_com(0x72);             
      wr_data(0x00);     /* ROM=A  CGRAM=8 */
      wr_com(0x28);
// 設(shè)置OLED特性;
      wr_com(0x2a);
      wr_com(0x79);     /* 進(jìn)入OLED設(shè)置 */
      wr_com(0xda);
      wr_com(0x10);             
/* SEG硬件結(jié)構(gòu)  (已規(guī)定,客戶不可自行修改) */
      wr_com(0xCD);
      wr_com(0x00);     /* 內(nèi)部VSL  GPIO輸出無效 */
      wr_com(0x81);
      wr_com(0x7f);/* 共256級對比度,選一半 */
      wr_com(0xd9);
      wr_com(0xf1);/*P2=15CDLK P1=4CDLK */
      wr_com(0xdb);
      wr_com(0x30);    /* Vcom=0.83Vcc  */
      wr_com(0x78);
      wr_com(0x28);     /* 退出OLED設(shè)置 */
//準(zhǔn)備開顯示;
      wr_com(0x01);     /*  清屏 */
      wr_com(0x80);    /*  設(shè)置DDRAM地址  */
      wr_com(0x0c);    /*  開顯示 */
}
南乐县| 安塞县| 马关县| 巴马| 余姚市| 徐州市| 措勤县| 海林市| 涿州市| 稷山县| 龙胜| 武汉市| 彩票| 阿克| 五家渠市| 镇赉县| 双流县| 英德市| 张家界市|