找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

單片機(jī)小白求助,三個74hc595控制三個lcd1602的設(shè)計(jì)思路

查看數(shù): 3725 | 評論數(shù): 17 | 收藏 0
關(guān)燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2021-4-19 17:41

正文摘要:

用三個74hc595控制三個lcd1602,請問三個1602端的rs rw en 如何連接呢?每個屏幕分別控制的話,整體編程的思路是什么樣子呢?三個lcd的寫入數(shù)據(jù),寫入指令,初始化都用一個么,還是分別用三個呢? 小白這兩天這個 ...

回復(fù)

ID:332444 發(fā)表于 2021-4-25 15:23
如果說修改代碼也不會或懶得去修改能用我的595驅(qū)動函數(shù)?當(dāng)然可以了,那就要多做一步把十六進(jìn)制數(shù)據(jù)轉(zhuǎn)十進(jìn)位制數(shù)即可直接調(diào)用我十進(jìn)位制處理的驅(qū)動函數(shù)了,進(jìn)制轉(zhuǎn)換有2種方法,一種慢的,一種快的比使用位移7再位移1的處理方法更快.
ID:332444 發(fā)表于 2021-4-25 11:21
剛好有另外的提問,一并做了個實(shí)例,一并回復(fù),我給的連接595驅(qū)動中的十進(jìn)制轉(zhuǎn)化代碼注釋掉,用十六進(jìn)制的代碼替換即可.
  1.                 ds=sj>>7;//十六進(jìn)制數(shù)據(jù)發(fā)送
  2.                 sj<<=1;
  3. //                ds=sj%2;//十進(jìn)制數(shù)據(jù)發(fā)送
  4. //                sj/=2;
復(fù)制代碼
  1. unsigned char code shuju[]={
  2. 0x00,0x38,0x44,0x54,0x44,0x38,0x00,0x00,0x00,0x7e,0x7e,0x7e,0x7e,0x7e,0x7e,0x00,0x00,0x00,0x40,0x40,0x40,0x4f,0x70,0x00,
  3. 0x00,0x00,0x0c,0x14,0x24,0x7f,0x04,0x00,0x00,0x82,0x82,0xFE,0x82,0x82,0x00,0x00,0x18,0x24,0x12,0x12,0x12,0x24,0x18,0x00,
  4. 0x00,0x7C,0x02,0x02,0x02,0x7C,0x00,0x00
  5. };//數(shù)據(jù)
  6. unsigned char code sjwei[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//位,用移位函數(shù),移位運(yùn)算符,數(shù)字.

  7. 主函數(shù):
  8.         unsigned char b=0, j=0, xd=0, h=0;
  9. QuDong595(shuju[b+j]);
  10. QuDong595(sjwei[b]);
復(fù)制代碼


這是2片級聯(lián)完成的運(yùn)行

ID:897033 發(fā)表于 2021-4-20 15:36
xianfajushi 發(fā)表于 2021-4-20 13:57
595函數(shù)可參http://www.torrancerestoration.com/bbs/dpj-201714-1.html

http://www.torrancerestoration.com/bbs/dpj-205491-1.html能幫我看看這樣寫可以么?感謝
ID:897033 發(fā)表于 2021-4-20 15:25
laopihappy123 發(fā)表于 2021-4-20 15:21
建議級聯(lián),3個595 控制線2根 數(shù)據(jù)線一根 然后3個lcd的三根控制線連在一起 總共也只要6根線

也就是說lcd1602的rw,rs,en也都連在一起是么?想單獨(dú)控制每個屏幕顯示的話en要分成三條線么?還是連在一起沒有影響?
ID:518902 發(fā)表于 2021-4-20 15:21
建議級聯(lián),3個595 控制線2根 數(shù)據(jù)線一根 然后3個lcd的三根控制線連在一起 總共也只要6根線
ID:883031 發(fā)表于 2021-4-20 15:07
按道理是可以的。
ID:332444 發(fā)表于 2021-4-20 13:57
ID:332444 發(fā)表于 2021-4-20 13:57
我覺得這樣電路不如級聯(lián)好,級聯(lián)寫一個函數(shù)即可,一次連續(xù)發(fā)三個數(shù)據(jù),數(shù)據(jù)發(fā)完成后同時控制,也能節(jié)省IO口,程序?qū)懙靡彩∈,分開沒什么優(yōu)勢同樣也需要發(fā)3次且代碼寫得也相對復(fù)雜點(diǎn),當(dāng)然這樣電路形式不是不能寫,只是我覺得相對顯得比較麻煩,IO口也用的較多。
ID:897033 發(fā)表于 2021-4-20 12:27
kmsj 發(fā)表于 2021-4-20 12:14
實(shí)在搞不清楚為什么要搞三個1602同時顯示?不能搞個大一點(diǎn)的液晶?
  

學(xué)校課程設(shè)計(jì)的內(nèi)容
ID:897033 發(fā)表于 2021-4-20 12:26
birdzhyli 發(fā)表于 2021-4-20 11:59
3個LCD都接同樣的3個口,有問題沒有?我昨天插著LCD的時候點(diǎn)亮和它在一起接的LED燈是點(diǎn)不亮的,插掉LCD就可 ...

en口是分別接的,不知道能不能行
ID:383215 發(fā)表于 2021-4-20 12:14
實(shí)在搞不清楚為什么要搞三個1602同時顯示?不能搞個大一點(diǎn)的液晶?
  


我有現(xiàn)成的兩片CD4094擴(kuò)展出來的1602顯示+74HC165+融合的6個感應(yīng)開關(guān),一共用了7個I/O口,我做這個板是為了減少I/O口,方便和我的實(shí)驗(yàn)板連接,由于只需要一片,熱轉(zhuǎn)印做成單面就了事了,不想去打樣。壓根沒有想過要擴(kuò)兩個以上的1602,那也不難啊,一片1602有11個I/O口,三個就是33個,4片4094是32個O口,只差一個,有點(diǎn)尷尬,那就再借用一個單片機(jī)的I/O口,也就是是5個單片機(jī)I/O口+4片4094就可以擴(kuò)展出3個1602,但是,布線麻煩,建議每兩片4094擴(kuò)展一個1602,做出來的電路板是一模一樣的,三個電路板串聯(lián)起來就搞定,就是串聯(lián)8個10個1602也沒有問題,僅僅只需要4個I/O口。595沒有用過,看了管腳排列,工作原理和4094差不多,只是布線更容易一些,595的速度更快一些,不管是用4094還是595,和1602的連接沒有必要一一對應(yīng),數(shù)據(jù)在程序里調(diào)整,在原理圖里調(diào)整出PCB的最佳走線,編程也簡單,三個1602端的rs rw en加上8位數(shù)據(jù),一共湊成6個8位數(shù)據(jù),只管往595里面發(fā)送就是了,發(fā)完以后使能數(shù)據(jù)并行輸出,比如要改變rs rw en或者8位數(shù)據(jù),每改變一個,就發(fā)送一次,1602的D7不必檢測,和D0-D6一樣用就可以,51單片機(jī)不要用移位的方法編程,盡量用位操作,加快595的移位速度,每個1602單元的電路板很小,絕對不超過10×10,可以打來5個樣串聯(lián)5片1602,只要先編出一片的程序,5片8片10片都沒有問題。IIC也是個好主意,6個I/O口顯示三片1602,只是速度可能更慢一些。

ID:889094 發(fā)表于 2021-4-20 11:59
3個LCD都接同樣的3個口,有問題沒有?我昨天插著LCD的時候點(diǎn)亮和它在一起接的LED燈是點(diǎn)不亮的,插掉LCD就可以點(diǎn)亮LED燈,我感覺相互之間可能會有影響,具體原因我也不清楚
ID:897033 發(fā)表于 2021-4-20 11:26
xianfajushi 發(fā)表于 2021-4-20 08:36
鎖存器無論是并行的還是串行的都是一樣道理,不過是數(shù)據(jù)傳輸方法不同罷了。1602控制方法也有很多變化,看電 ...

你好,我這自己編寫了一個程序,但是不知道哪里的問題,三個顯示屏都顯示不出來,您有時間的話能幫我看下么?謝謝。
ID:897033 發(fā)表于 2021-4-20 11:24
xianfajushi 發(fā)表于 2021-4-20 08:36
鎖存器無論是并行的還是串行的都是一樣道理,不過是數(shù)據(jù)傳輸方法不同罷了。1602控制方法也有很多變化,看電 ...

C:\Users\向陽星Young\Desktop
ID:894154 發(fā)表于 2021-4-20 08:50
用IIC的1602吧,三個1602 只要6個IO就夠用了
ID:332444 發(fā)表于 2021-4-20 08:36
鎖存器無論是并行的還是串行的都是一樣道理,不過是數(shù)據(jù)傳輸方法不同罷了。1602控制方法也有很多變化,看電路要如何設(shè)計(jì),可并可分主要看IO口是否夠用還是要擴(kuò)展等等,電路確定了才能決定編寫程序。

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表