娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

stc8單片機+8針oled驅動顯示ADC值源程序

發布者:chaochen最新更新時間:2019-10-15 來源: eefocus關鍵字:stc8單片機  8針oled  驅動顯示  ADC 手機看文章 掃描二維碼
隨時隨地手機看文章

#include

#include


sbit lcd_sclk=P5^0;  /*接口定義:lcd_sclk就是CLK*/

sbit lcd_sid=P5^1;   /*接口定義:lcd_sid就是MOSI*/

sbit lcd_rs=P5^2;    /*接口定義:lcd_rs就是DC*/

sbit lcd_cs1=P5^3;   /*接口定義:lcd_cs1就是OLED的片選CS1*/

sbit Rom_OUT=P5^4;   /*字庫IC接口定義:Rom_OUT就是FSO*/

sbit Rom_CS=P5^5;    /*字庫IC接口定義Rom_CS就是字庫IC的CS2*/

unsigned char code ASCII[] =    {'0','1','2','3','4','5','6','7','8','9'};




#define uchar unsigned char 

#define uint unsigned int

#define ulong unsigned long


uchar code bmp1[];




/*寫指令到LCD模塊*/

void transfer_command_lcd(int data1)   

{

        char i;

        lcd_rs=0;

        lcd_sclk=0;

        for(i=0;i<8;i++)

   {

                

                if(data1&0x80) lcd_sid=1;

                else lcd_sid=0;

                lcd_sclk=1;

                _nop_();

                lcd_sclk=0;

                 data1<<=1;

   }

}


/*寫數據到LCD模塊*/

void transfer_data_lcd(int data1)

{

        char i;

        lcd_rs=1;

        lcd_sclk=0;

        for(i=0;i<8;i++)

   {

                

                if(data1&0x80) lcd_sid=1;

                else lcd_sid=0;

                lcd_sclk=1;

                _nop_();

                lcd_sclk=0;

                 data1<<=1;

   }

}


/*延時*/

void delay(int n_ms)               

{

int j,k;

for(j=0;jfor(k=0;k<110;k++);

}



/*等待一個按鍵,我的主板是用P2.0與GND之間接一個按鍵*/

//void waitkey()

//{

// repeat:

//          if (P2&0x01) goto repeat;

//        else delay(6);

//        if (P2&0x01) goto repeat;

//        else

//        delay(40);;

//}



/*LCD模塊初始化*/

void initial_lcd()

{

        lcd_cs1=0;

        Rom_CS = 1;

//        lcd_reset=0;        /*低電平復位*/

        delay(20);

        //lcd_reset=1;                    /*復位完畢*/

        delay(20);        

        transfer_command_lcd(0xAE);   //display off

        transfer_command_lcd(0x20);        //Set Memory Addressing Mode        

        transfer_command_lcd(0x10);        //00,Horizontal Addressing Mode;01,Vertical Addressing Mode;10,Page Addressing Mode (RESET);11,Invalid

        transfer_command_lcd(0xb0);        //Set Page Start Address for Page Addressing Mode,0-7

        transfer_command_lcd(0xc8);        //Set COM Output Scan Direction

        transfer_command_lcd(0x00);//---set low column address

        transfer_command_lcd(0x10);//---set high column address

        transfer_command_lcd(0x40);//--set start line address

        transfer_command_lcd(0x81);//--set contrast control register

        transfer_command_lcd(0x7f);

        transfer_command_lcd(0xa1);//--set segment re-map 0 to 127

        transfer_command_lcd(0xa6);//--set normal display

        transfer_command_lcd(0xa8);//--set multiplex ratio(1 to 64)

        transfer_command_lcd(0x3F);//

        transfer_command_lcd(0xa4);//0xa4,Output follows RAM content;0xa5,Output ignores RAM content

        transfer_command_lcd(0xd3);//-set display offset

        transfer_command_lcd(0x00);//-not offset

        transfer_command_lcd(0xd5);//--set display clock divide ratio/oscillator frequency

        transfer_command_lcd(0xf0);//--set divide ratio

        transfer_command_lcd(0xd9);//--set pre-charge period

        transfer_command_lcd(0x22); //

        transfer_command_lcd(0xda);//--set com pins hardware configuration

        transfer_command_lcd(0x12);

        transfer_command_lcd(0xdb);//--set vcomh

        transfer_command_lcd(0x20);//0x20,0.77xVcc

        transfer_command_lcd(0x8d);//--set DC-DC enable

        transfer_command_lcd(0x14);//

        transfer_command_lcd(0xaf);//--turn on oled panel 

        lcd_cs1=1;

}


void lcd_address(uchar page,uchar column)

{


        transfer_command_lcd(0xb0 + column);   /*設置頁地址*/

        transfer_command_lcd(((page & 0xf0) >> 4) | 0x10);        /*設置列地址的高4位*/

        transfer_command_lcd((page & 0x0f) | 0x00);        /*設置列地址的低4位*/        

}


/*全屏清屏*/

void clear_screen()

{

        unsigned char i,j;

        lcd_cs1=0;

        Rom_CS = 1;        

        for(i=0;i<8;i++)

        {

                transfer_command_lcd(0xb0+i);

                transfer_command_lcd(0x00);

                transfer_command_lcd(0x10);

                for(j=0;j<128;j++)

                {

                          transfer_data_lcd(0x00);

                }

        }

         lcd_cs1=1;

}


/*顯示128x64點陣圖像*/

//void display_128x64(uchar *dp)

//{

//        uint i,j;

//        lcd_cs1=0;

//        for(j=0;j<8;j++)

//        {

//                lcd_address(0,j);

//                for (i=0;i<128;i++)

//                {        

//                        transfer_data_lcd(*dp);                                        /*寫數據到LCD,每寫完一個8位的數據后列地址自動加1*/

//                        dp++;

//                }

//        }

//        lcd_cs1=1;

//}



/*顯示16x16點陣圖像、漢字、生僻字或16x16點陣的其他圖標*/

void display_graphic_16x16(uint page,uint column,uchar *dp)

{

        uint i,j;

         lcd_cs1=0;

        Rom_CS = 1;         

        for(j=2;j>0;j--)

        {

                lcd_address(column,page);

                for (i=0;i<16;i++)

                {        

                        transfer_data_lcd(*dp);                                        /*寫數據到LCD,每寫完一個8位的數據后列地址自動加1*/

                        dp++;

                }

                page++;

        }

        lcd_cs1=1;

}



/*顯示8x16點陣圖像、ASCII, 或8x16點陣的自造字符、其他圖標*/

void display_graphic_8x16(uint page,uchar column,uchar *dp)

{

        uint i,j;

        lcd_cs1=0;        

        for(j=2;j>0;j--)

        {

                lcd_address(column,page);

                for (i=0;i<8;i++)

                {        

                        transfer_data_lcd(*dp);                                        /*寫數據到LCD,每寫完一個8位的數據后列地址自動加1*/

                        dp++;

                }

                page++;

        }

        lcd_cs1=1;

}



/*顯示5*7點陣圖像、ASCII, 或5x7點陣的自造字符、其他圖標*/

//void display_graphic_5x7(uint page,uchar column,uchar *dp)

[1] [2] [3]
關鍵字:stc8單片機  8針oled  驅動顯示  ADC 引用地址:stc8單片機+8針oled驅動顯示ADC值源程序

上一篇:stm8s003k3加數碼管做的定時小板,繼電器以及MOS管輸出
下一篇:單片機C語言 串口傳輸 結構體

推薦閱讀最新更新時間:2025-04-26 23:11

芯穎科技“顯示面板的驅動方法和裝置”專利獲批
中穎電子日前發布公告稱,其子公司芯穎科技申請的一項發明專利已獲得國家知識產權局頒發的發明專利證書。 據悉,該專利名稱為“顯示面板的驅動方法及裝置”,專利號為ZL 2019 1 0390360.X,系芯穎科技于2019年5月10日向國家知識產權局提交的一項發明專利。 該專利提供一種能顯示灰階圖片、提高人眼視覺效果的顯示面板的驅動方法及裝置,實現了所述顯示面板的灰階圖片的顯示和拓寬了使用范圍,也提高了人眼視覺效果。 另外,中穎電子在公告中指出,該發明專利技術目前已應用于芯穎科技的產品,專利的取得不會對公司及芯穎科技目前的經營產生重大影響,有利于芯穎科技充分發揮主導產品的知識產權優勢,提升核心競爭力。 天眼查顯示,芯穎科技是一家顯示
[手機便攜]
TM1637數碼管顯示STC51單片機驅動程序
/* Coder : Farman Date : 2018-01-02 參考了廠家的TM1637數據手冊,在此表示感謝。 */ #include STC89C5XRC.h //包含52單片機頭文件 #include Delay.h //////////////////////////////////////////////////////////////////////////// sbit I2C_SCL = P2^1; //定義模擬IIC總線的時鐘線 sbit I2C_SDA = P2^0; //定義模擬IIC總線的數據線 #define TM1637_BRIGHTNESS 7 // 0 - 7
[單片機]
LED背光驅動技術邁入中大尺寸顯示
  面對全球環境保護意識日益高漲,RoHS法規的越來越普及,全球各地液晶顯示屏面板廠商積極地尋求冷陰極熒光燈(CCFL)的替代解決方案。過去數年,LED已得到廣泛的應用,其中成長最快的應用領域是LCD的背光應用。數年間LED已在小尺寸顯示屏的背光應用得到普及,并已取代了CCFL,而在中大尺寸的應用中,LED取代CCFL也正成為趨勢。LED背光已開始邁入需要更高性能和更長工作時間的中大尺寸顯示屏背光應用,如GPS、P-DVD、DPF、筆記本電腦以及E-PC等設備。   LED背光技術相對于CCFL有諸多的優點,比如更好的亮度均勻性、更鮮艷的色彩、更長的壽命、在屏幕輕薄程度以及耗電量上也有很大的優勢。更重要的是,沒有CCFL帶來的
[電源管理]
用AT90S1200代換顯示驅動芯片MC14499的應用電路
1 MC14499簡介 MC14499 是Motorola公司生產的串行輸入BCD十進制輸出的CMOS集成塊,它內含BCD譯碼器和串行接口,可以與任何CPU接口連接,在比較復雜的單片機控制系統中,MC14499具有占用I/O少、控制顯示器多、功耗低、使用方便等優點,因而得到廣泛的應用。但其缺點是用它來實現顯示系統比較復雜,并且成本太高。隨著技術的飛速發展和微處理性能價格比的較高,人們可以采用高性價比的MCU來代換它,這也許是一個趨勢,如用力源PS7219代換 MAX7219等。筆者用AT90S1200來代換CM14499,取得了非常好的效果。AT90S1200是一種性能非常優異的RISC單片機,它可以與主CPU并行工作,而且功
[單片機]
用AT90S1200代換<font color='red'>顯示</font><font color='red'>驅動</font>芯片MC14499的應用電路
中文點陣液晶顯示驅動器RA8816及其應用
液晶顯示器由于它具有功耗低、體積小、重量輕、顯示的信息量大,能顯示各種類型的信息,如字符、圖形(包括漢字、曲線、表格等),正越來越廣泛地應用于各個領域,尤其是在便攜設備中,更是占據著絕對主流的地位。 對于簡單的信息顯示,通常用段碼式LCD驅動器,如盛群的HT1621等。而對于復雜的信息顯示,則必須由點陣式LCD驅動器來驅動,最常見的點陣式LCD驅動器中,有不帶中文字庫的東芝LCD驅動器T6963 ,也有帶中文字庫的矽創LCD驅動器ST7920 。對于較大的應用系統,由于系統通常有足夠大的存儲空間,可以將中文字庫放在系統的存儲空間中,因此常選用不帶中文字庫的LCD模塊;對于較小的應用系統,系統控制器本身的存儲空間有限,且運行速
[電源管理]
中文點陣液晶<font color='red'>顯示</font><font color='red'>驅動</font>器RA8816及其應用
盛群推出BS85xxx系列Flash觸控與顯示面板驅動微控制器
盛群半導體推出具有觸控與顯示面板驅動功能的Flash MCU BS85xxx系列,BS85xxx系列家族成員共2顆,分別是BS85B12-3具有12個觸控按鍵并可直接驅動48顆LED與56段LCD顯示面板與BS85C20-3具有20個觸控按鍵并可直接驅動112顆LED與88段LCD顯示面板。觸控按鍵的功能實現是透過內建在MCU內部的振蕩器電路與定時器來完成,當人體接觸到按鍵,振蕩器外部的等效電容發生變化,振蕩器的輸出頻率就會改變,進而改變定時器的值;再配合信道譯碼器做多信道的掃瞄,以此BS85xxx系列當中的觸控按鍵模塊就可以知道那個按鍵有被按下。BS85xxx系列的觸控按鍵不需要外部參考電容,且可以很容易透過程序來調整每個按鍵的靈
[單片機]
一種經典的STM32 ADC多通道轉換詳細解析
STM32ADC多通道轉換 描述:用ADC連續采集11路模擬信號,并由DMA傳輸到內存。ADC配置為掃描并且連續轉換模式,ADC的時鐘配置為12MHZ。在每次轉換結束后,由DMA循環將轉換的數據傳輸到內存中。ADC可以連續采集N次求平均值。最后通過串口傳輸出最后轉換的結果。 程序如下: #include“stm32f10x.h”//這個頭文件包括STM32F10x所有外圍寄存器、位、內存映射的定義 #include“eval.h”//頭文件(包括串口、按鍵、LED的函數聲明) #include“SysTickDelay.h” #include“UART_INTERFACE.h” #include #defineN50//每通道
[單片機]
一種經典的STM32 <font color='red'>ADC</font>多通道轉換詳細解析
請問ADC是如何在電動汽車充電器中實現高精度計量系統的?
電動汽車 (EV) 充電行業正在快速增長。隨著消費者、行業和政府要求使用更環保、更可持續的交通工具,電動汽車充電基礎設施必須更加高效和便捷。 與直流充電器不同,交流充電器不使用堆疊式電源模塊,因此結構更緊湊,成本更低。其單一的電源模塊架構限制了它們在公共充電站的使用,因為它們無法在合理的時間范圍內提供所需的電量。相反,其 22kW 的充電速度更適合充電時間更久的家用場景。它們受歡迎的另一個原因是,有些交流充電器只需要一個標準插座。交流充電器利用電動汽車的車載充電裝置將交流電轉換為直流電。 直流充電器中的堆疊式電源模塊可加快充電速度至 360kW 以上。堆疊式電源模塊縮短了總充電時間,但增大了充電器的尺寸,更適合公共充電站而
[嵌入式]
請問<font color='red'>ADC</font>是如何在電動汽車充電器中實現高精度計量系統的?
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京B2-20211791 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 汶上县| 金塔县| 溆浦县| 昔阳县| 亚东县| 南靖县| 柯坪县| 鸡西市| 黑河市| 万年县| 合川市| 神木县| 墨江| 元氏县| 承德市| 新绛县| 台湾省| 三台县| 兴仁县| 万宁市| 兴业县| 霍城县| 那曲县| 马尔康县| 宕昌县| 阿图什市| 临洮县| 应城市| 南城县| 鄂伦春自治旗| 阳西县| 开封县| 邵东县| 友谊县| 贺兰县| 新宁县| 张北县| 天等县| 韶关市| 通河县| 玛多县|