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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

MSP430單片機12864顯示原代碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:208712 發表于 2017-6-7 10:25 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
/*
* LCD_12864.c
*
*  Created on: 2016年6月15日
*      Author: Jack zhao
*/
#include<MSP430F249.h>
#include "LCD_12864.h"
#define uchar unsigned char
#define uint unsigned int
uchar DIR_S[]={
                /*--  文字:  順  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x00,0xFE,0x00,0xFC,0x00,0xFF,0x00,0xF2,0x12,0x1A,0xD6,0x12,0x12,0xF2,0x02,0x00,
                0x40,0x3F,0x00,0x3F,0x00,0xFF,0x80,0x4F,0x20,0x18,0x07,0x10,0x20,0x4F,0x80,0x00,
                /*--  文字:  時  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x00,0xFC,0x84,0x84,0x84,0xFC,0x00,0x10,0x10,0x10,0x10,0x10,0xFF,0x10,0x10,0x00,
                0x00,0x3F,0x10,0x10,0x10,0x3F,0x00,0x00,0x01,0x06,0x40,0x80,0x7F,0x00,0x00,0x00,
                /*--  文字:  針  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x40,0x20,0x38,0xE7,0x24,0x24,0x44,0x40,0x40,0x40,0xFF,0x40,0x40,0x40,0x40,0x00,
                0x01,0x01,0x01,0x7F,0x21,0x11,0x09,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,
};
uchar DIR_N[]={
                /*--  文字:  逆  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x40,0x42,0xCC,0x00,0x08,0xC8,0x09,0x0E,0x08,0xF8,0x08,0x0C,0x0B,0xC8,0x08,0x00,
                0x40,0x20,0x1F,0x20,0x40,0x63,0x52,0x4A,0x46,0x43,0x42,0x42,0x42,0x47,0x40,0x00,
                /*--  文字:  時  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x00,0xFC,0x84,0x84,0x84,0xFC,0x00,0x10,0x10,0x10,0x10,0x10,0xFF,0x10,0x10,0x00,
                0x00,0x3F,0x10,0x10,0x10,0x3F,0x00,0x00,0x01,0x06,0x40,0x80,0x7F,0x00,0x00,0x00,
                /*--  文字:  針  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x40,0x20,0x38,0xE7,0x24,0x24,0x44,0x40,0x40,0x40,0xFF,0x40,0x40,0x40,0x40,0x00,
                0x01,0x01,0x01,0x7F,0x21,0x11,0x09,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,
};
uchar  num1[]={
                /*--  文字:  課  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x40,0x42,0xCC,0x00,0x00,0x00,0xFE,0x92,0x92,0xFE,0x92,0x92,0xFE,0x00,0x00,0x00,
                0x00,0x00,0x3F,0x10,0x08,0x22,0x12,0x0A,0x06,0xFF,0x06,0x0A,0x12,0x22,0x20,0x00,
                /*--  文字:  程  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x24,0x24,0xA4,0xFE,0x23,0x22,0x00,0x3E,0x22,0x22,0x22,0x22,0x22,0x3E,0x00,0x00,
                0x08,0x06,0x01,0xFF,0x01,0x06,0x40,0x49,0x49,0x49,0x7F,0x49,0x49,0x49,0x41,0x00,
                /*--  文字:  設  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x40,0x40,0x42,0xCC,0x00,0x40,0xA0,0x9E,0x82,0x82,0x82,0x9E,0xA0,0x20,0x20,0x00,
                0x00,0x00,0x00,0x3F,0x90,0x88,0x40,0x43,0x2C,0x10,0x28,0x46,0x41,0x80,0x80,0x00,
                /*--  文字:  計  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x40,0x40,0x42,0xCC,0x00,0x40,0x40,0x40,0x40,0xFF,0x40,0x40,0x40,0x40,0x40,0x00,
                0x00,0x00,0x00,0x7F,0x20,0x10,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,
};
uchar  num[]={
                /*--  文字:  電  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x00,0x00,0xF8,0x88,0x88,0x88,0x88,0xFF,0x88,0x88,0x88,0x88,0xF8,0x00,0x00,0x00,
                0x00,0x00,0x1F,0x08,0x08,0x08,0x08,0x7F,0x88,0x88,0x88,0x88,0x9F,0x80,0xF0,0x00,
                /*--  文字:  機  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x10,0x10,0xD0,0xFF,0x90,0x10,0x00,0xFE,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x00,
                0x04,0x03,0x00,0xFF,0x00,0x83,0x60,0x1F,0x00,0x00,0x00,0x3F,0x40,0x40,0x78,0x00,

                /*--  文字:  控  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x10,0x10,0x10,0xFF,0x90,0x20,0x98,0x48,0x28,0x09,0x0E,0x28,0x48,0xA8,0x18,0x00,
                0x02,0x42,0x81,0x7F,0x00,0x40,0x40,0x42,0x42,0x42,0x7E,0x42,0x42,0x42,0x40,0x00,
                /*--  文字:  制  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x40,0x50,0x4E,0x48,0x48,0xFF,0x48,0x48,0x48,0x40,0xF8,0x00,0x00,0xFF,0x00,0x00,
                0x00,0x00,0x3E,0x02,0x02,0xFF,0x12,0x22,0x1E,0x00,0x0F,0x40,0x80,0x7F,0x00,0x00,
                /*--  文字:  調  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x40,0x42,0xCC,0x00,0x00,0xFE,0x82,0x92,0x92,0xFE,0x92,0x92,0x82,0xFE,0x00,0x00,
                0x00,0x00,0x3F,0x10,0x88,0x7F,0x00,0x1E,0x12,0x12,0x12,0x5E,0x80,0x7F,0x00,0x00,

                /*--  文字:  速  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x40,0x40,0x42,0xCC,0x00,0x04,0xF4,0x94,0x94,0xFF,0x94,0x94,0xF4,0x04,0x00,0x00,
                0x00,0x40,0x20,0x1F,0x20,0x48,0x44,0x42,0x41,0x5F,0x41,0x42,0x44,0x48,0x40,0x00,
                /*--  文字:  系  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x00,0x00,0x22,0x32,0x2A,0xA6,0xA2,0x62,0x21,0x11,0x09,0x81,0x01,0x00,0x00,0x00,
                0x00,0x42,0x22,0x13,0x0B,0x42,0x82,0x7E,0x02,0x02,0x0A,0x12,0x23,0x46,0x00,0x00,

                /*--  文字:  統  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x20,0x30,0xAC,0x63,0x30,0x00,0x88,0xC8,0xA8,0x99,0x8E,0x88,0xA8,0xC8,0x88,0x00,
                0x22,0x67,0x22,0x12,0x12,0x80,0x40,0x30,0x0F,0x00,0x00,0x3F,0x40,0x40,0x71,0x00,
};
uchar num2[]={
                /*--  文字:  轉  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0xC8,0xB8,0x8F,0xE8,0x88,0x88,0x40,0x48,0x48,0xE8,0x5F,0x48,0x48,0x48,0x40,0x00,
                0x08,0x18,0x08,0xFF,0x04,0x04,0x00,0x02,0x0B,0x12,0x22,0xD2,0x0A,0x06,0x00,0x00,
                /*--  文字:  速  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x40,0x40,0x42,0xCC,0x00,0x04,0xF4,0x94,0x94,0xFF,0x94,0x94,0xF4,0x04,0x00,0x00,
                0x00,0x40,0x20,0x1F,0x20,0x48,0x44,0x42,0x41,0x5F,0x41,0x42,0x44,0x48,0x40,0x00,
                /*--  文字:  :  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
                0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};
uchar num3[]={
                /*--  文字:  轉  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0xC8,0xB8,0x8F,0xE8,0x88,0x88,0x40,0x48,0x48,0xE8,0x5F,0x48,0x48,0x48,0x40,0x00,
                0x08,0x18,0x08,0xFF,0x04,0x04,0x00,0x02,0x0B,0x12,0x22,0xD2,0x0A,0x06,0x00,0x00,
                /*--  文字:  向  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x00,0xF8,0x08,0x08,0x0C,0xCA,0x49,0x48,0x48,0xC8,0x08,0x08,0x08,0xF8,0x00,0x00,
                0x00,0xFF,0x00,0x00,0x00,0x1F,0x08,0x08,0x08,0x1F,0x00,0x40,0x80,0x7F,0x00,0x00,
                /*--  文字:  :  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
                0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
                0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};
uchar shuzi[]={
                /*--  文字:  0  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,
                /*--  文字:  1  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,
                /*--  文字:  2  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0x70,0x08,0x08,0x08,0x08,0xF0,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,
                /*--  文字:  3  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0x30,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x18,0x20,0x21,0x21,0x22,0x1C,0x00,
                /*--  文字:  4  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0x00,0x80,0x40,0x30,0xF8,0x00,0x00,0x00,0x06,0x05,0x24,0x24,0x3F,0x24,0x24,
                /*--  文字:  5  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0xF8,0x88,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x20,0x20,0x20,0x11,0x0E,0x00,
                /*--  文字:  6  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0xE0,0x10,0x88,0x88,0x90,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x20,0x1F,0x00,
                /*--  文字:  7  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0x18,0x08,0x08,0x88,0x68,0x18,0x00,0x00,0x00,0x00,0x3E,0x01,0x00,0x00,0x00,
                /*--  文字:  8  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,
                /*--  文字:  9  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0xF0,0x08,0x08,0x08,0x10,0xE0,0x00,0x00,0x01,0x12,0x22,0x22,0x11,0x0F,0x00,
};
uchar RMP[]={
                /*--  文字:  r  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x80,0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x20,0x20,0x3F,0x21,0x20,0x00,0x01,0x00,
                /*--  文字:  /  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0x00,0x00,0x00,0xC0,0x38,0x04,0x00,0x00,0x60,0x18,0x07,0x00,0x00,0x00,0x00,
                /*--  文字:  m  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x20,0x3F,0x20,0x00,0x3F,0x20,0x00,0x3F,
                /*--  文字:  i  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x00,0x80,0x98,0x98,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,
                /*--  文字:  n  --*/
                /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
                0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x21,0x00,0x00,0x20,0x3F,0x20,
};
void left()                 //左半屏
{
        P6OUT&=~BIT0;//cs1=0;
        P6OUT|=BIT1;//cs2=1;
}
void right()                 //右半屏
{
        P6OUT|=BIT0;//cs1=1;
        P6OUT&=~BIT1;//cs2=0;
}
//判忙
void busy_12864()
{
        do{
        P6OUT&=~BIT4;//e=0;
        _NOP();
        P6OUT&=~BIT2;//rs=0;
        P6OUT|=BIT3;//rw=1;
            P5OUT=0x00;
        P6OUT|=BIT4;//e=1;
        P6OUT&=~BIT4;//e=0;
          }while(!(bflag==0X00));
}
//命令寫入
void wreg(uchar c)
{
        busy_12864();
        P6OUT&=~BIT2;//rs=0;
        P6OUT&=~BIT3;//rw=0;
        P6OUT&=~BIT4;//E=0
        _NOP();
        _NOP();
        P5OUT=c;
        _NOP();
        _NOP();
        _NOP();
        _NOP();
        P6OUT|=BIT4;//e=1;
        _NOP();
        _NOP();
        _NOP();
        _NOP();
        P6OUT&=~BIT4;//e=0;
}
//數據寫入
void wdata(uchar c)
{
        busy_12864();
        P6OUT|=BIT2;//rs=1
        P6OUT&=~BIT3;//rw=0
        P5OUT=c;
        _NOP();
        _NOP();
        _NOP();
        _NOP();
        P6OUT|=BIT4;//e=1
        _NOP();
        _NOP();
        _NOP();
        _NOP();
        P6OUT&=~BIT4;
}
//顯示初始頁
void pagefirst(uchar c)
{
        uchar i=c;
        c=i|0xb8;
        busy_12864();
        wreg(c);
}
//設置顯示初始列
void linefirst(uchar c)
{
        uchar i=c;
        c=i|0x40;
        busy_12864();
        wreg(c);}
//清屏
void ready_12864()
{
        uint i,j;
        left();
        wreg(0x3f);
        right();
        wreg(0x3f);
        left();
        for(i=0;i<8;i++)
    {
                pagefirst(i);
            linefirst(0x00);
                   for(j=0;j<64;j++)
                {
                        wdata(0x00);
                }
        }
        right();
        for(i=0;i<8;i++)
        {
                pagefirst(i);
                linefirst(0x00);
                for(j=0;j<64;j++)
                {
                        wdata(0x00);
                }
        }
}
//16*16漢字顯示,縱向取模,字節倒序
void display(uchar *s,uchar page,uchar line)
{
        uchar i,j;
        pagefirst(page);
        linefirst(line);
        for(i=0;i<16;i++)
        {
                wdata(*s);s++;
        }
        pagefirst(page+1);
        linefirst(line);
        for(j=0;j<16;j++)
        {
                wdata(*s);s++;
        }
}
//8*16漢字顯示,縱向取模,字節倒序
void display_sz(uchar *s,uchar page,uchar line)
{
        uchar i,j;
        pagefirst(page);
        linefirst(line);
        for(i=0;i<8;i++)
        {
                wdata(*s);s++;
        }
        pagefirst(page+1);
        linefirst(line);
        for(j=0;j<8;j++)
        {
                wdata(*s);s++;
        }
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 波多野结衣先锋影音 | 成人激情视频在线观看 | 一区二区免费在线观看 | 精品一区二区视频 | 国产美女一区二区 | 午夜精品久久久久久久99黑人 | 久草成人| 亚洲欧美在线观看 | 成人免费淫片aa视频免费 | 久久精品在线 | 欧美二区在线 | 成人a在线 | 日韩视频在线免费观看 | 黄色免费在线观看 | 国产在线一区二区三区 | 91国自产| 亚洲国产日韩欧美 | 欧美中文一区 | 国产情侣激情 | 欧美日韩精品一区二区 | 国产在线拍偷自揄拍视频 | 免费观看日韩av | 国产成人艳妇aa视频在线 | 久久久国产精品一区 | 中文字幕日本一区二区 | 欧美日批 | 国产一区久久 | 国产欧美日韩视频 | av网站免费在线观看 | 美女国产精品 | 国产日韩久久 | 一级片在线视频 | 国产精品久久久久久一区二区三区 | 成人av大全 | 国产激情偷乱视频一区二区三区 | 羞羞视频一区二区 | 一区二区视频 | 国产日韩欧美一区二区 | 国产精品日韩欧美一区二区三区 | 久久久久久综合 | 亚洲永久免费观看 |