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