在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何在OLED上實現字符的顯示

我快閉嘴 ? 來源:FPGA之旅 ? 作者:FPGA之旅 ? 2022-09-06 09:02 ? 次閱讀

一. 簡介

這是FPGA之旅的第十一例了。在前面的例子中,已經對OLED有了一個基礎的了解,本例將介紹如何在OLED上實現字符的顯示,為后面的例程做準備。

顯示字符需要先使用字摸軟件取模,將得到的字摸數據存儲到寄存器當中,這個過程可以利用Python生成。然后設置好顯示的XY坐標,最后發送字符數據即可。對于字符占兩個page的話,也就是字符高度大于8的情況,中間還需要重新設置page。

二. 字摸軟件簡介

字摸軟件選用PCtoLCD2002,這個比較常用,也是比較方便,界面如下圖所示。

1dc6ae00-2d7e-11ed-ba43-dac502259ad0.png


點擊選項,在彈出的界面中,對生成的字符數據進行設置,為了方便python進行解析,特意設置生成格式如

1de4d510-2d7e-11ed-ba43-dac502259ad0.png

下。

設置好后,×掉,設置好字寬和字高后,輸入需要生成的字符數據,然后點擊生成字摸就可以在文本框中看到生成的數據,然后點擊保存字摸,就可以將字摸數據保存到TXT文件中了。字摸軟件的介紹就到這里了。

1e117bce-2d7e-11ed-ba43-dac502259ad0.png

三. Python程序編寫

想著,大家對python可能不太了解,程序就不貼出來,可以作為一個工具來用,對每個字符生成如下的always塊,字體大小為16*16,方便FPGA讀取。

always@(posedge clk or negedge rst)begin if(rst == 1'b0) begindata1[0]=8'h00;   data1[1] = 8'h40;   data1[2] = 8'h64;   data1[3] = 8'h1C;   data1[4] = 8'h8A;   data1[5] = 8'h6C;   data1[6] = 8'h1C;   data1[7] = 8'h04;   data1[8] = 8'hFC;   data1[9] = 8'h8A;   data1[10] = 8'h5C;   data1[11] = 8'h64;   data1[12] = 8'h54;   data1[13] = 8'h54;   data1[14] = 8'h10;   data1[15] = 8'h00; endend

四. 字符顯示模塊

這里演示的是8*16大小的字符(中途沒有換行操作,便于理解顯示的過程),也就是顯示一個字符,需要向OLED發送16次IIC請求。

(一) 模塊信號列表

現在這個模塊和初始化模塊一樣,信號列表都是一樣的。當字符請求來了,就把顯示的字符數據發送出去。

module OLED_ShowFont(
 input   sys_clk, input   rst_n,  input   ShowFont_req,   //字符顯示請求 input   write_done,    //iic一組數據寫完成  output[23:0] ShowFont_Data,   //字符顯示數據  output   ShowFont_finish  //字符顯示完成);

(二). 具體代碼實現

1. 顯示一個8*16大小的字符,需要先指定對應的XY坐標,也就是page數和Column地址,發送三個命令即可。

2. 隨后發送16byte的字符數據,就完成了一個支符的顯示。

always@(*)begin case(showfont_index)    'd0  showfont_data_reg <= {8'h78,8'h00,8'hB0 + 8'h03};  //'d3代表顯示的起始頁地址為4    'd1: showfont_data_reg <= {8'h78,8'h00,8'h00 + 8'h02}; //'d2代表顯示的起始column的低四位為2    'd2: showfont_data_reg <= {8'h78,8'h00,8'h10 + 8'h02};  //'d2代表顯示的起始column的高四位為2                  //即顯示的column的起始地址為8'h22,即'd34    default: showfont_data_reg <= {8'h78,8'h40,fontdata};//顯示的數據   endcaseendOLED_FontData OLED_FontData_HP( .sys_clk   (sys_clk), .rst_n     (rst_n), .index     (showfont_index - 'd3), .data    (fontdata));

3. 發送完3byte+16byte的數據后,即顯示結束,也就是當showfont_index == 18的時候,并且在第19個數據剛剛寫完的時候。

(三). OLED_TOP模塊改動

這部分的修改也很少,只需要添加一個狀態,在OLED初始化完成后,進入字符顯示狀態,最后進入空閑態即可,其他的添加和初始化部分一樣。

always@(*)begin case(state) OLED_INIT:  if(init_finish == 1'b1)   next_state <= OLED_ShowFont;  else   next_state <= OLED_INIT; OLED_ShowFont:  if(showfont_finish == 1'b1)   next_state <= OLED_IDLE;  else   next_state <= OLED_ShowFont; OLED_IDLE:  next_state <= OLED_IDLE;
 default: next_state <= OLED_INIT; endcaseend

這里就進行了一個簡單的字符顯示例程,當然在實際使用的時候,會復雜很多,例如有多個不同大小的字符進行顯示,以及動態顯示字符等等情況,但核心的寫法可以參考本例。

顯示效果如下

1e350076-2d7e-11ed-ba43-dac502259ad0.png


審核編輯:湯梓紅


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1630

    文章

    21796

    瀏覽量

    606012
  • OLED
    +關注

    關注

    119

    文章

    6219

    瀏覽量

    224825
  • python
    +關注

    關注

    56

    文章

    4807

    瀏覽量

    85038
  • 顯示字符
    +關注

    關注

    0

    文章

    3

    瀏覽量

    7264

原文標題:FPGA驅動OLED顯示字符

文章出處:【微信號:FPGA之旅,微信公眾號:FPGA之旅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    OLED顯示流程(簡析)

    ,,:比如我們想讓OLED顯示顯示一個字符串:“CODE:”,主函數是這么兩條語句:OLED_ShowString(63,48,"CODE
    發表于 05-07 20:26

    oled驅動程序如何顯示變化的字符串?

    OLED_showString(10,2,"V=3.5m/s",16); //顯示字符串 問題:oled驅動程序顯示
    發表于 10-25 16:42

    STM32驅動OLED屏滾動顯示的軟件該怎樣去設計呢

    何在OLED屏上去實現字符串滾動顯示呢?STM32驅動OLED屏滾動
    發表于 12-08 06:11

    何在串口實驗基礎添加OLED顯示溫濕度?

    何在串口實驗基礎添加OLED顯示溫濕度?
    發表于 12-16 06:39

    何在oled實現鼠標功能呢

    如題,在oled實現鼠標功能,需要什么樣的環境,給點提議也可以。補充一下,能不能使用oled做為輸出屏,用oled屏代替LCD屏,
    發表于 01-12 06:28

    怎樣通過OLED模塊去顯示字符

    OLED是什么?OLED模塊有哪些特點?怎樣通過OLED模塊去顯示字符呢?
    發表于 01-19 07:00

    怎樣使用STM32在0OLED顯示實現字符滾動呢

    基于SPI修改程序的數據顯示如何去實現呢?怎樣使用STM32在OLED顯示實現
    發表于 01-21 07:35

    怎樣使用STM32在0.96寸OLED顯示實現字符滾動呢

    使用STM32在0.96寸OLED顯示實現字符滾動一、初識OLED屏滾動命令二、對所需
    發表于 02-24 07:25

    如何使用FPGA實現字符顯示

    在HDMI輸出實驗中講解了HDMI顯示原理和顯示方式,本實驗介紹如何使用FPGA實現字符顯示,通過這個實驗更加深入的了解HDMI的
    的頭像 發表于 02-09 10:29 ?3674次閱讀
    如何使用FPGA<b class='flag-5'>實現</b><b class='flag-5'>字符</b><b class='flag-5'>顯示</b>

    何在AB32VG1開發板OLED顯示使開發板

    中直接實現的,本編文章直接在MAIN函數實現OLED顯示電自動執行。 根據說明書,AB32VG1開發板上有一路 I2C,本文通過 RT-
    的頭像 發表于 11-08 10:02 ?2690次閱讀
    如<b class='flag-5'>何在</b>AB32VG1開發板<b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>使開發板<b class='flag-5'>上</b>電

    何在MAIN函數實現OLED顯示

    最近在玩AB32VG1,在做OLED顯示實驗時,在csdn搜索了很多關于AB32VG1驅動OLED的文章,很多都是官方例程操作,在msh窗口中輸入測試指令,測試驅動是否正常。很少有關于在main函數中直接
    的頭像 發表于 12-01 17:24 ?4464次閱讀
    如<b class='flag-5'>何在</b>MAIN函數<b class='flag-5'>實現</b><b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>

    使用STM32在0.96寸OLED顯示實現字符滾動

    使用STM32在0.96寸OLED顯示實現字符滾動一、初識OLED屏滾動命令二、對所需
    發表于 01-12 17:25 ?16次下載
    使用STM32在0.96寸<b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>屏<b class='flag-5'>上</b><b class='flag-5'>實現</b><b class='flag-5'>字符</b>滾動

    何在Raspberry Pi Pico中使用OLED顯示

    電子發燒友網站提供《如何在Raspberry Pi Pico中使用OLED顯示器.zip》資料免費下載
    發表于 10-18 09:15 ?4次下載
    如<b class='flag-5'>何在</b>Raspberry Pi Pico中使用<b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>器

    教大家如何在OLED顯示漢字

    我們使用的OLED屏是由方形的發光點陣列組成的,分辨率為128x64。英文和數字最小可用8x8像素,漢字最小顯示像素為16x16,通常為了顯示效果,英文和數字通常使用8x16像素表示。要顯示
    發表于 06-13 14:37 ?4586次閱讀
    教大家如<b class='flag-5'>何在</b><b class='flag-5'>OLED</b>屏<b class='flag-5'>上</b><b class='flag-5'>顯示</b>漢字

    何在I2C 128X32 OLED顯示滾動文本

    電子發燒友網站提供《如何在I2C 128X32 OLED顯示滾動文本.zip》資料免費下載
    發表于 06-28 15:59 ?0次下載
    如<b class='flag-5'>何在</b>I2C 128X32 <b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>器<b class='flag-5'>上</b>滾動文本
    主站蜘蛛池模板: 一级aaa毛片| 国产综合视频在线 | 岛国中文字幕 | 大又大又粗又爽女人毛片 | 黄页网站视频免费 视频 | 五月婷婷色综合 | 天堂在线bt | 天天天天射 | 自拍偷拍综合网 | 白嫩美女在线啪视频观看 | 欲香欲色天天综合和网 | 久操精品在线观看 | 高清午夜线观看免费 | 国产高清色视频免费看的网址 | 亚洲色图偷窥自拍 | 婷婷久久综合九色综合九七 | 亚洲人成人77777网站 | 亚洲成人三级 | 国产理论片在线观看 | 天堂网在线www最新版在线 | 日韩一级一欧美一级国产 | 欧美一级片免费在线观看 | 手机看日韩毛片福利盒子 | 激情五月婷婷色 | 欧美成人午夜不卡在线视频 | 俄罗斯女人69xxx | 国产精品久久久久久久人热 | 国产精品福利一区二区亚瑟 | 中文三 级 黄 色 片 | 男啪女色黄无遮挡免费观看 | 天天在线天天看成人免费视频 | 免费国产网站 | 国产午夜毛片一区二区三区 | 国产成人午夜片在线观看 | 亚洲日本在线观看视频 | 成人看片免费无限观看视频 | 色小视频 | 久热国产精品视频 | 免费久久精品国产片香蕉 | www日本高清| 在线一区观看 |