Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
ctboard:peripherals:lcd_ascii [2020/09/05 15:40] – [Programming Example] ruanctboard:peripherals:lcd_ascii [2026/06/25 15:14] (current) scbj
Line 1: Line 1:
 ====== LCD ASCII Interface ====== ====== LCD ASCII Interface ======
  
-Every position on the LCD corresponds to an address. See below for the realation. \\ \\+Every position on the LCD corresponds to an address. See below for the relation. \\ \\
  
 > {{ctboard:ctboard_mode_1.svg?48px }} {{ctboard:ctboard_mode_2.svg?48px }} {{ctboard:ctboard_mode_3.svg?48px }} {{ctboard:ctboard_mode_4.svg?48px }} Please make sure the CT Board is in the correct mode. > {{ctboard:ctboard_mode_1.svg?48px }} {{ctboard:ctboard_mode_2.svg?48px }} {{ctboard:ctboard_mode_3.svg?48px }} {{ctboard:ctboard_mode_4.svg?48px }} Please make sure the CT Board is in the correct mode.
 > Supported [[ctboard:mode_switch|modes]]: **1**, **2**, **3**, **4**  > Supported [[ctboard:mode_switch|modes]]: **1**, **2**, **3**, **4** 
 \\ \\
 +
 +===== Registers =====
 +
 +The registers are write only.
 +
 +\\ {{ctboard_lcd_ascii_reg_new.svg}} \\ \\
 +
 +===== Display Positions =====
 +
 +\\ {{ctboard_lcd_ascii_new.svg?700em}} \\ \\
 +
 +Base address: 0x6000'0300
  
 ===== Programming Example ===== ===== Programming Example =====
  
-The code snippet bellow shows how to use the ASCII interface of the LCD.+The code snippets below shows how to use the ASCII interface of the LCD.
  
 <code c> <code c>
 #include "reg_ctboard.h" #include "reg_ctboard.h"
 +const char text[] = "hello";
  
-CT_LCD->ASCII[13u] = (char) ascii_char   /* Write ascii_char at position 13 on the LCD. */+CT_LCD->ASCII[13u] = 'c'        /* Write character 'c' at position 13 on the LCD. */ 
 +CT_LCD->ASCII[18u] = text[0u];    /* Write character 'h' from string "hello" at position 18 on the LCD. */
 </code> </code>
 \\ \\
  
-<code asm+<code text
-ADDR_LCD_ASCII  EQU      0x60000300+.equ ADDR_LCD_ASCII0x60000300
  
-                LDR      r0, =ADDR_LCD_ASCII +        ldr     r0,  =ADDR_LCD_ASCII 
-                LDR      r1, "E"                          ; Load value of ASCII char 'E' into r2.                 +        ldr     r1,  ="E"                 // load value of ASCII char 'E' into r1.                 
-                STRH     r1, [r0, #13                   ; Write 'E' at position 13 on the LCD.+        strb    r1,  [r0, #12           // write 'E' at position 13 on the LCD.
 </code> </code>
 \\ \\
  
-===== Registers ===== 
- 
-The Registers are write only. 
- 
-\\ {{ctboard_lcd_ascii_reg_new.svg}} \\ \\ 
- 
-===== Display Positions ===== 
- 
-\\ {{ctboard_lcd_ascii_new.svg?700em}} \\ \\ 
- 
-Base address: 0x6000'0300 
  • ctboard/peripherals/lcd_ascii.1599320417.txt.gz
  • Last modified: 2020/09/05 15:40
  • by ruan