找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索

BASCOM-AVR 4個(gè)數(shù)碼管同時(shí)顯示數(shù)字0-9 代碼+實(shí)物圖片+測(cè)試視頻

查看數(shù): 5178 | 評(píng)論數(shù): 17 | 收藏 0
關(guān)燈 | 提示:支持鍵盤翻頁(yè)<-左 右->
    組圖打開(kāi)中,請(qǐng)稍候......
發(fā)布時(shí)間: 2020-7-22 20:27

正文摘要:

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' $regfile = "m16def.dat"                     &nb ...

回復(fù)

ID:941018 發(fā)表于 2021-6-21 21:59
我這個(gè)是0才是點(diǎn)亮,所有的燈的輸出都是0是亮1是滅,我也覺(jué)得這樣很別扭
ID:342822 發(fā)表于 2021-6-21 09:53
紅日888 發(fā)表于 2021-6-21 00:06
我又試了一下,我手里的這個(gè)板子和你的正好相反

那說(shuō)明你的板上數(shù)碼管是共陽(yáng)極的,位選硬是高電平時(shí)點(diǎn)亮相應(yīng)位段碼。位選應(yīng)從低位向高位逐次點(diǎn)亮。即:
0001 0010 0100 1000.
調(diào)節(jié)延時(shí)使數(shù)碼管穩(wěn)定顯示。
ID:941018 發(fā)表于 2021-6-21 00:07
本帖最后由 紅日888 于 2021-6-21 00:41 編輯

我手里的板子就是樓主給我的
ID:941018 發(fā)表于 2021-6-21 00:06
我又試了一下,我手里的這個(gè)板子和你的正好相反
ID:941018 發(fā)表于 2021-6-20 23:56

我手里的這個(gè)是0點(diǎn)亮,是不是就差這里
ID:342822 發(fā)表于 2021-6-20 22:15

ID:342822 發(fā)表于 2021-6-20 22:10
共陽(yáng)極:

位選為高電平(即1)選中數(shù)碼管,

各段選為低電平(即0接地時(shí))選中各數(shù)碼段。
        0xc0,//0
        0xf9,//1
        0xa4,//2
        0xb0,//3
        0x99,//4
        0x92,//5
        0x82,//6
        0xf8,//7
        0x80,//8
        0x90,//9
那么實(shí)現(xiàn)累加應(yīng)該是;
Do
   Waitms 15                                               '刷新延遲
   L = L + 1                                                '計(jì)算累加
   I = L \ 5                                                '降低數(shù)據(jù)變化頻率
   I = I Mod 10000                                          '數(shù)值到10000后清0
   Qw = I \ 1000                                            '計(jì)算千位
   Bw = I Mod 1000                                          '計(jì)算百位
   Bw = Bw \ 100
   Sw = I Mod 100                                           '計(jì)算十位
   Sw = Sw \ 10
   Gw = I Mod 10                                            '計(jì)算個(gè)位
   '只點(diǎn)亮個(gè)位數(shù)碼管PA3
   Porta = &B0001
   Portb = Value(gw + 10)                                   '設(shè)置個(gè)位數(shù)值
   Waitms 5
   '只點(diǎn)亮十位數(shù)碼管PA2
   Porta = &B0010
   Portb = Value(sw + 10)                                   '設(shè)置十位數(shù)值
   Waitms 5
   '只點(diǎn)亮百位數(shù)碼管PA1
   Porta = &B0100
   Portb = Value(bw + 10)                                   '設(shè)置百位數(shù)值
   Waitms 5
   '只點(diǎn)亮千位數(shù)碼管PA0
   Porta = &B1000
   Portb = Value(qw + 10)                                   '設(shè)置千位數(shù)值
   Waitms 15
Loop
ID:941018 發(fā)表于 2021-6-20 20:40
taotie 發(fā)表于 2021-6-20 20:26
用仿真跑一邊你會(huì)發(fā)現(xiàn)一些問(wèn)題

我還沒(méi)用過(guò)仿真,手里有一個(gè)現(xiàn)成的板子
ID:941018 發(fā)表于 2021-6-20 20:31
我這是用實(shí)體機(jī)跑出來(lái)的
ID:342822 發(fā)表于 2021-6-20 20:26
紅日888 發(fā)表于 2021-6-20 18:14
'我也來(lái)了
$regfile = "m16def.dat"                                     'ATMega16 單片機(jī)
$crystal =  ...

用仿真跑一邊你會(huì)發(fā)現(xiàn)一些問(wèn)題
ID:941018 發(fā)表于 2021-6-20 18:14
'我也來(lái)了
$regfile = "m16def.dat"                                     'ATMega16 單片機(jī)
$crystal = 8000000                                          '8兆赫晶振
Dim I As Long , L As Long
Dim Gw As Integer , Sw As Integer , Bw As Integer , Qw As Integer       '個(gè)位十位百位千位
'PortB 端口的8個(gè)引腳連接這個(gè)8個(gè)LED,
Config Porta = Output
Config Portb = Output
'=======================================================
Dim Value(19) As Byte                                       '數(shù)組中存的是0-9數(shù)字對(duì)應(yīng)亮燈的值
Value(10) = &HC0                                            '數(shù)字"0"對(duì)應(yīng)的數(shù)碼管設(shè)置值
Value(11) = &HF9                                            '數(shù)字"1"對(duì)應(yīng)的數(shù)碼管設(shè)置值
Value(12) = &HA4                                            '數(shù)字"2"對(duì)應(yīng)的數(shù)碼管設(shè)置值
Value(13) = &HB0                                            '數(shù)字"3"對(duì)應(yīng)的數(shù)碼管設(shè)置值
Value(14) = &H99                                            '數(shù)字"4"對(duì)應(yīng)的數(shù)碼管設(shè)置值
Value(15) = &H92                                            '數(shù)字"5"對(duì)應(yīng)的數(shù)碼管設(shè)置值
Value(16) = &H82                                            '數(shù)字"6"對(duì)應(yīng)的數(shù)碼管設(shè)置值
Value(17) = &HF8                                            '數(shù)字"7"對(duì)應(yīng)的數(shù)碼管設(shè)置值
Value(18) = &H80                                            '數(shù)字"8"對(duì)應(yīng)的數(shù)碼管設(shè)置值
Value(19) = &H90                                            '數(shù)字"9"對(duì)應(yīng)的數(shù)碼管設(shè)置值
Do
   Waitms 10                                                '刷新延遲
   L = L + 1                                                '計(jì)算累加
   I = L \ 5                                                '降低數(shù)據(jù)變化頻率
   I = I Mod 10000                                          '數(shù)值到10000后清0
   Qw = I \ 1000                                            '計(jì)算千位
   Bw = I Mod 1000                                          '計(jì)算百位
   Bw = Bw \ 100
   Sw = I Mod 100                                           '計(jì)算十位
   Sw = Sw \ 10
   Gw = I Mod 10                                            '計(jì)算個(gè)位
   '只點(diǎn)亮個(gè)位數(shù)碼管PA3
   Porta = &B0111
   Portb = Value(gw + 10)                                   '設(shè)置個(gè)位數(shù)值
   Waitms 1
   '只點(diǎn)亮十位數(shù)碼管PA2
   Porta = &B1011
   Portb = Value(sw + 10)                                   '設(shè)置十位數(shù)值
   Waitms 1
   '只點(diǎn)亮百位數(shù)碼管PA1
   Porta = &B1101
   Portb = Value(bw + 10)                                   '設(shè)置百位數(shù)值
   Waitms 1
   '只點(diǎn)亮千位數(shù)碼管PA0
   Porta = &B1110
   Portb = Value(qw + 10)                                   '設(shè)置千位數(shù)值
   Waitms 1
Loop
End
ID:883296 發(fā)表于 2021-2-6 22:09
各位大師好,BASCOM-AVR2.0.8.1軟件通過(guò)什么渠道能夠買到?
ID:342822 發(fā)表于 2020-11-28 15:41
100個(gè)也可以同時(shí)顯示
ID:696930 發(fā)表于 2020-11-28 14:15
與ARDUINO類似,模塊化,更簡(jiǎn)潔好用。
ID:808608 發(fā)表于 2020-7-27 19:36
如果與Proteus 8 仿真軟件結(jié)合將更加順手~
ID:342822 發(fā)表于 2020-7-23 11:37
如果與Proteus 8 仿真軟件結(jié)合將更加順手~~
ID:342822 發(fā)表于 2020-7-23 11:15
Bascom avr 節(jié)省腦細(xì)胞的軟件

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

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

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