Author Topic: How to access the busy flag over I2C?  (Read 469 times)


  • Newbie
  • *
  • Posts: 1
  • Karma: 0
    • View Profile
How to access the busy flag over I2C?
« on: January 11, 2019, 06:39:16 AM »

I am trying to get a NHD‐C0220BiZ‐FSW‐FBW‐3V3M display to work with an ARM Cortex controller. Instead of bit-banging as described in the sample code I use the Cortex's internal I2C hardware. It seems to work quite well now, but only at clock speeds far below 100kHz, otherwise I get occasional NAKs.
I now would like to interrogate the busy flag BF from my code. Unfortunately I have not succeded quite yet in doing this. According to the datasheet, I have to set RS=0 and R/W=1. But how do I transmit the RS bit to the LCD? When I set R/W=1 in the address byte, an I2C read transaction immediately follows. There is no way to send the command word required to properly set the RS flag. Does anybody know how to do in this case? Neither in the documentation of the display nor in the datasheet of the ST7036i I can find an example.

Best regards



  • Administrator
  • Jr. Member
  • *****
  • Posts: 46
  • Karma: 0
    • View Profile
Re: How to access the busy flag over I2C?
« Reply #1 on: May 23, 2019, 04:28:27 PM »
Hi Mike,

Unfortunately when using I2C interface, the busy flag cannot be read or accessed, as the controller can only operate in write-mode only. Taken from the pg. 14 of the ST7036 controller specs:

I2C interface
It just only could write Data or Instruction to ST7036 by the IIC Interface.
It could not read Data or Instruction from ST7036 (except Acknowledge signal).



[SOLVED] FT5x06 Event Flag Put Up

Started by PaulVdBerghBoard TFTs

Replies: 3
Views: 6005
Last post September 04, 2014, 04:41:55 AM
by PaulVdBergh
I2C 'Busy' issue

Started by L_TuckerBoard Character LCDs

Replies: 1
Views: 6303
Last post March 27, 2014, 05:28:52 PM
by Michael_L
Issue with reading busy flag in 4 bit mode.

Started by SwemarvBoard Character LCDs

Replies: 6
Views: 9092
Last post September 26, 2015, 10:12:49 AM
by acain829