![]() |
發布時間: 2020-7-2 07:23
正文摘要:我現在學習的還是理論知識,單片機是提前學習的,所以單片機比較菜。所以希望大佬們能給點51單片機的學習資料,讓我更加系統的學習。還有就是,我這程序應該怎么改? #include<reg51.h> unsigned int code z ... |
xianfajushi 發表于 2020-7-7 10:11 有滾動顯示的嗎 |
你這種代碼有點重了,可以去論壇搜索。挺多挺好有易懂的代碼 |
說你電路圖讓人看不清,以為是8*8點陣4個合并的,你這種點陣只有32個引腳的我沒有; 哪里學?沒哪里學,都自學的,我寫的點陣從8*8到16*8到16*16全部在這里了,也算是都教了。 |
其實你也可提升你的代碼演化成像我這樣簡潔的形式,51蛋騙雞像你這樣的代碼到處都是,而提升演化則需要了解其原理及自己歸納的習慣,我是看不慣那一堆代碼,看得眼花繚亂的,因此下功夫提升演化后就一直沿用,像你這樣的也就是學習時一直沿用而已,這種現象常見,就如本論壇,蛋騙雞一個IO引腳驅動后面電路常提問的都是只會應用放大器的形式,而不知道使用射隨器,難道他們沒學過?未必就沒學過射隨器電路的,那因何不用?緣其不加思考而已,射隨器電路本論壇我曾回復過,因此也不想反復了,射隨器輸入高阻抗輸出低阻抗,意味著蝦米?意味著對前級影響極小對后級驅動能力增強,當影響到前級時就該考慮使用射隨器,而不是一味地使用放大器形式,而這些都源于對基礎原理的理解,看似簡單的背后是知識的有力支持,就像電腦容易使用,其背后是強大的知識支持。 |
你說的蝦米指的是? |
你的電路圖讓人看不清,我的電路圖讓人看得清清楚楚的,有人說代碼和硬件不匹配,叫拿出證據,結果這么長時間也不見拿出蝦米證據來證明其言論,各種都能見到這種歪曲事實胡說八道的人物!我的代碼與硬件不匹配的話,怎么能正確顯示你的數據字符? |
xianfajushi 發表于 2020-7-7 10:11 。。。。,你怎么做出來的啊? 我。。。。不會啊,最近太忙了,沒有上來看 |
原來是這幾個漢字![]() ![]() |
zzjz 發表于 2020-7-5 08:36 哦,提出證據來說話 |
你寫的程序和你的硬件不匹配 |
本帖最后由 xianfajushi 于 2020-7-5 11:04 編輯 你的正題就不回復了,留給你自己去對比去悟。 |
![]() |
![]() ![]() ![]() ![]() |
![]() |
![]() |
驅動不是隨意寫的,需配合具體電路圖去寫,由于沒提供電路圖,單從代碼上去推測寫出之上示例,讓人去猜測屬于不善問,結果欲速而不達。 |
由于沒提供仿照蝦米電路,也沒去查資料,因此,就循著普通的思路寫了之上的演示,當我查資料后發現有一種電路接法可實現16*16,稍后得閑寫個驅動演示。 |
我學蛋騙雞也不長時間,弄完我的機器改造就沒去玩那板子,點陣也是看了你的貼子,才試寫的,所以,連電路圖怎么正確接都不知道,反正就是接上了電路了。 買板子倒是有很多例子,沒去看,因為用不到。 |
![]() 這是用8*8的4和7的字符顯示的,電路圖沒調整方向,顯示你的數據,被轉向了,看不出來數據是蝦米字。 |
0xEF,0xEF,0x0F,0xE0,0xEF,0x0F,0xFF,0x01,0xDD,0xDD,0xDD,0xDD,0x01,0xFF,0xFF,0xFF, 0xBF,0xDD,0xEA,0xF7,0xE9,0x9E,0xBF,0x80,0xBD,0xBD,0xBD,0xBD,0x80,0xBF,0xBF,0xFF,這數據是蝦米漢字?顯示被轉向看不出來。 |
修改了一下程序![]() ![]() |
本帖最后由 xianfajushi 于 2020-7-3 16:03 編輯 為了演示如何寫驅動,就按你代碼中這樣使用4個IO寫個16*8的例子,使用8*8字符0和7略作演示。 ![]() 代碼 ![]() |
可以多在論壇找找相似的 |
按你這樣4個io寫驅動只能驅動紅16*8點陣,使用第二行數據,看不出是蝦米字符。 |
不管蝦米數據,都是可以調整過來的很容易,明白了點陣的掃描道理,就可以寫自己的代碼了,不比生搬硬套。 |
你這數據是行的還是列的? |
點陣也沒蝦米,就是行對列地掃描而已,8和16一樣道理,直接用IO的8口聯系2各IO口就是16,要處理的邏輯就是對2各IO口的控制而已。 |
xianfajushi 發表于 2020-7-2 16:48 我數組中每16個數據一個字啊 |
我例子中的數組每8個數據就是一個字。 |
道理是一樣的,你說說你那些數據是怎么用的? |
xianfajushi 發表于 2020-7-2 15:11 唉,那有沒有那些點良16*16點陣的資料啊?我慢慢研究。最好有列子的 |
改你的程序?看那一堆代碼就眼花,提不起興趣,你看我的代碼,怕你消化不良,呵呵。 |
xianfajushi 發表于 2020-7-2 13:21 那應該怎樣做,不會改啊。 |
這里有個8*8的例子,或許可參考點蝦米。![]() |
另外這個函數最后一個參數未超過255不需要用int用char足夠 同樣P3=0xff;是共同的也可提出來。 最后顯示的數據提取,確定這樣寫的算式提到正確的使用數據了? display(zimo[(t+flag)*2],zimo[(t+flag)*2+1],t+1); |
其他暫且不管,說說修改的地方: { P3=0x7f; P1=0xff;這是共有的,直接提出來寫一句足矣 } 就會變成這樣 if(col==1) P3=0x7f; else if(col==2) P3=0xbf; 。 。 。 。 P1=0xff; 用了中斷就不需要計數延時,直接用中斷延時就好了。 |