簡體   English   中英

使用python代碼在lcd 20x4上創建自定義字符

[英]create custom character on lcd 20x4 using python code

我想嘗試用一些python代碼在LCD 20x4上制作一個大字符。

我之前在帶有adafruit庫的LCD 16x2上顯示了一些數據和文本,但現在我試圖在LCD 20x4上顯示自定義字符並且有點困惑。 我認為下面的代碼(來自adafruit庫)對於制作自定義字符很有用,但我不知道如何使用它。 任何人都可以提供如何做到這一點的指導嗎?

 def create_char(self, location, pattern):
    """Fill one of the first 8 CGRAM locations with custom characters.
    The location parameter should be between 0 and 7 and pattern should
    provide an array of 8 bytes containing the pattern. E.g. you can easyly
    design your custom character athttp://www.quinapalus.com/hd44780udg.html
    To show your custom character use eg. lcd.message('\x01')
    """
    # only position 0..7 are allowed
    location &= 0x7
    self.write8(LCD_SETCGRAMADDR | (location << 3))
    for i in range(8):
        self.write8(pattern[i], char_mode=True)

出於某種原因,它只對我輸入一個新的行字符后才適用。

例如。 \\n \\x01將打印我的角色\\x01 ,任何沒有\\ n的變體都不會打印我的角色。

不知道為什么。 僅供參考,我使用的是20x4液晶顯示器。

使用鏈接中的工具生成模式,然后將十進制版本作為第二個參數中的列表傳遞給此函數,例如

lcd.create_char(1, [0,10,21,17,10,4,0])

將角色1定義為心臟。 完成此操作后,可以在字符串中包含\\x01以打印該字符。

正如文檔中暗示的那樣,同樣的想法適用於0到7之間的任何字符代碼。只需將create_char()的第一個參數替換為該范圍內的另一個數字。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM