微控制器怎麼從lcd1602讀取資料

時間 2022-08-13 14:32:09

1樓:匿名使用者

首先延時函式不能忘 那麼你說加了延時也不行,回頭看看你的**。那麼問題來了,你p0端如果全是低電平他怎麼傳送資料,微控制器接收的都是全被拉低的資料吧,也就是還是低電平,加乙個p0=0xff看看;還有乙個問題就是你的**裡面e引腳多了一條(個人建議)e為底電平的時候才讀高電平就不讀 所以byte = p0;return byte;這兩條要緊跟在在e=0後面。不然一旦e=1 p0就不是讀出來的資料了。

頭一次認真回答問題,也剛研究1602這個功能,幫助到你的話希望採納下,謝謝

unsigned char read_lcd_data()

2樓:融火

程式語句之間要加延時的,不然lcd_e高低跳變的太快,無法正常執行。自己寫乙個us級別的延時函式delayms(),**改下試試(具體延時多少,需要參考1602的讀操作時序圖)

lcd_e = 0;

lcd_rw = 1;

lcd_rs = 1;

delayus(100);

lcd_e = 1;

delayus(100);

lcd_e = 0;

3樓:

每兩條語句間加乙個1us延時。再試試?

4樓:匿名使用者

讀取時是不是應該加延時?

51微控制器如何把串列埠通訊接收到的資料在1602液晶中顯示出來?

5樓:懂事電子設計

先編寫1602顯示函式,然後編寫串列埠接收函式,然後整合一下就可以了。

6樓:匿名使用者

先弄懂串列埠的操作和1602液晶的驅動

微控制器c語言右移指令怎麼用,微控制器C語言右移指令怎麼用?

吉祥二進位制 在c語言中 代表右移運算子,就相當於 shr 該運算子為雙目運算子,結合方向為從左到右,作用是把乙個整型數的所有位向右移動指定的位數,移動到右邊界之外的多餘二進位制位會被丟棄,並從左邊界移入0。舉例 計算表示式14 2的值。表示式14 2的值為3,因為14 即二進位制的0000 111...

微控制器紅外發射是怎麼回事,微控制器紅外發射電路

給點我自己以前整理出來的文件你看下,很詳細 nec編碼標準 編碼晶元有pt2221 pt2222 ht6221 ht6222等 此標準下的發射端所發射的一幀碼含有乙個引導碼 8位使用者碼 8位使用者反碼,8位鍵資料碼 8位鍵資料反碼。引導碼由乙個9ms的高電平和4.5ms的低電平組成。當按下持續時間...

微控制器1秒鐘定時組合語言怎麼編,用微控制器組合語言編寫一秒的定時 用定時器T0 方式2 急求!!

org 00h start mov tmod,01h mov r5,14h mov tl0,0b0h mov th0,03ch setb tr0 djnz r7,next clr tr0 這裡寫要處理的程式 jmp start endnext mov tl0,0b0h mov th0,03ch re...

微控制器怎麼檢測外圍電路有漏電,如何學習微控制器中外圍電路設計

這個要看你漏電電壓多大,如果比較大的話可以接分壓電路,然後用微控制器引腳查詢分壓電阻上是否有電壓,是則執行中斷,我覺得zzg sohu1998的思路也不錯,那樣也比較簡單,不是很容易檢測,最好加乙個漏電保護器。如果只是檢測是否漏電,沒必要使用微控制器,電壓比較器即可。在電熱水器與接地點之間串接乙個1...

微控制器c語言的數怎麼轉換

long int d 1,i 0 int eve 11 while count 0 eve陣列中從eve 0 到最高位分別存放的是count從低到高位的各位數 有誤。以下為準 include static inline void print bin int n int main for i 0 i ...